Топология является полезным аспектом слоев векторных данных, поскольку минимизирует ошибки, такие как перекрытие или пробелы.
Например, если две функции имеют общую границу, и вы редактируете границу с помощью топологии, то вам не нужно будет редактировать сначала одну функцию, а затем другую и тщательно выстраивать границы так, чтобы они совпадали. Вместо этого можно редактировать их общую границу, и обе функции будут изменяться одновременно.
Цель данного занятия: понять топологию с помощью примеров.
Привязка упрощает топологическое редактирование. Это позволит курсору мыши привязываться к другим объектам во время оцифровки. Чтобы задать опции привязки, выполните следующие действия.
Перейдите к меню Project ► Snapping Options….
Настройте параметры Привязка: включите привязку с помощью кнопки Включить привязку, выберите Дополнительная конфигурация, активируйте слой Земля с Типом`вершина и допуском 12 пикселей:
Убедитесь что поле в колонке Avoid overlap проверено.
Выйдите из окна диалога.
Выберите слой landuse и введите режим ()
Проверьте (в View ► Toolbars) что Advanced Digitizing инструмент активирован.
Зумирование этой местности (включайте слои и надписи при необходимости):
Оцифруйте эту новую (вымышленную) область, показанную красным цветом:
В ответ на запрос, присвойте ему OGC_FID999, но можете оставить остальные значения без изменений.
Если при оцифровке соблюдать осторожность и разрешить привязку курсора к вершинам смежных местностей, то вы заметите, что между новой местностью и существующими смежными местностями не будет никаких промежутков.
Обратите внимание на инструменты undo и redo в Advanced Digitizing на панели инструментов.
5.2.2. ★★☆ Следуй за мной: Правильные топологические особенности
Иногда может потребоваться обновление функций топологии. На нашем участке работы, эта местность была превращена в лес, поэтому слой землепользования landuse нуждается в обновлении. Поэтому мы будем расширять и присоединять некоторые лесные функции на этой местности:
Вместо создания новых полигонов для присоединения к лесным участкам мы будем использовать Инструмент Vertex для редактирования и присоединения существующих полигонов.
Переход в режим редактирования (если он еще не активен).
Выберите инструмент Vertex Tool.
Выберите участок леса, выберите вершину и переместите ее на смежную вершину, чтобы две функции леса совместились:
Кликните на другие вершины и привяжите их к месту.
Топологически правильная граница выглядит следующим образом:
Продолжайте и присоедините еще несколько местностей с помощью Инструмента Vertex.
Можете использовать инструмент Add Polygon Feature для того, чтобы заполнить пробел между двумя полигонами «лес». Если включен параметр Избежать перекрытия, не нужно добавлять каждую вершину - они будут добавляться автоматически, если ваш новый полигон перекрывает существующие.
Если вы используете наш пример данных, то ваш лесной участок должен выглядеть примерно так:
Не волнуйтесь, если вы присоединились к большему, меньшему или разным участкам леса.
5.2.3. ★★☆ Следуй за мной: Инструмент: Упростить функцию
Продолжаем на том же слое, протестируем инструмент Упрощение функции Simplify Feature:
Кликните на него и активируйте.
Кликните на один из участков, который вы уже присоединили или с помощью Инструмента Vertex или инструмента Add Feature, вы увидите это диалоговое окно:
Измените Tolerance и вы увидите что произойдет:
Это позволяет уменьшить число вершин.
Кликните OK.
Преимущество этого инструмента в том, что он предоставляет вам простой и интуитивно понятный интерфейс для обобщения. Но обратите внимание, что инструмент разрушает топологию. Упрощенный многоугольник больше не имеет общих границ с соседними многоугольниками, как это должно быть. Поэтому этот инструмент лучше использовать для создания отдельных элементов.
Прежде чем продолжить, верните полигон в исходное состояние, отменив последнее изменение.
Инструмент Add Ring позволяет добавить внутреннее кольцо к функции полигона (вырезать отверстие в полигоне), если отверстие полностью находится внутри полигона (если есть касание границы, это OK). Например, если вы оцифровали внешние границы Южной Африки и вам нужно добавить отверстие для Лесото, вы бы использовали это инструмент.
При эксперименте с инструментом вы можете заметить, что опции привязки могут помешать созданию кольца внутри полигона. Поэтому рекомендуется отключить привязку перед вырезанием отверстия.
Отключить привязку для слоя landuse с помощью кнопки Enable Snapping (или используйте ярлыки s).
Используйте инструмент Add Ring для создания отверстия с середине геометрии полигона.
Нарисуйте полигон над целевой функцией, как если бы вы использовали инструмент Добавить полигон Add polygon.
Когда вы нажмете правый клик, отверстие станет видимым.
Удалите отверстие, которое вы только что создали, с помощью инструмента Удалить кольцо. Щелкните внутри отверстия, чтобы удалить его.
Ответить
Точная форма не имеет значения, но у вас должно получиться отверстие в центре, как здесь:
Отмените правку, прежде чем продолжить выполнение упражнения для следующего инструмента.
Инструмент Add Part позволяет добавить новую частьдеталь к функции, которая не связана напрямую с основной функцией. Например, если вы оцифровали границы материковой части Южной Африки, но еще не добавили острова Принца Эдуарда, вы бы использовали этот инструмент для их создания.
Выберите полигон, к которому требуется добавить деталь, с помощью инструмента Выберите функцию по местности или одним кликом Select Features by area or single click.
Используйте инструмент Add Part для добавления внешней области.
Удалите только что созданную часть с помощью инструмента Delete Part.
Примечание
Кликните внутри детали, чтобы удалить ее.
Ответить
Сначала выберите область Bontebok National Park:
Теперь добавьте новую часть:
Отмените правку, прежде чем продолжить выполнение упражнения для следующего инструмента.
5.2.6. ★★☆ Следуй за мной: Инструмент: Изменить форму
Инструмент Reshape Features используется для расширения функции полигона или вырезания его части (вдоль границы).
Расширение:
Выберите полигон с помощью инструмента Select Features by area or single click.
Кликните левой кнопкой мыши внутри полигона, чтобы начать рисование.
Нарисуйте форму вне полигона. Последняя вершина должна быть снова внутри полигона.
Кликните правой кнопкой мыши для завершения фигуры:
Это даст результат, аналогичный нижеследующему:
Вырежьте часть:
Выберите полигон с помощью инструмента Select Features by area or single click.
Кликните за пределами полигона.
Нарисуйте фигуру внутри полигона. Последняя вершина должна быть возвращена за пределы полигона.
Инструмент Split Features аналогичен инструменту Reshape Features кроме одного, того что он не удаляет ни одной из двух частей. И наоборот, сохраняет обе.
Мы будем использовать инструмент, чтобы отделить угол от полигона.
Сначала выберите слой landuse и повторно включите для него привязку.
Выберите инструмент Split Features и кликните на вершину для того, чтобы начать рисовать линию.
Нарисуйте ограничивающую линию.
Кликните вершину на «противоположной» стороне полигона, который вы хотите разделить, и кликните правой кнопкой мыши для завершения линии:
На данный момент может показаться, что ничего не произошло. Но помните, что слой landuse визуализируется без линий границы, поэтому новая линия разделения не будет показана.
Используйте инструмент Select Features by area or single click чтобы выделить только что разделенную частьдеталь; теперь новый элемент будет выделен:
5.2.8. ★★★ Попробуй себя: Инструмент: Особенности слияния
Теперь мы снова присоединим элемент, который вы только что разделили, к оставшейся части полигона:
Поэкспериментируйте с инструментами Merge Selected Features и Merge Attributes of Selected Features.
Отметьте разницу.
Ответить
Используйте инструмент Слияние выделенных объектов, предварительно выделив оба полигона, которые вы хотите объединить.
Используйте функцию с OGC_FID1 в качестве источника атрибутов (щелкните на ее записи в диалоге, затем нажмите кнопку Взять атрибуты из выбранной функции`):
Если вы используете другой набор данных, велика вероятность, что OGC_FID вашего исходного полигона не будет 1. Просто выберите функцию, которая имеет OGC_FID.
Использование инструмента Слияние атрибутов выбранных характеристик позволит сохранить геометрии разными, но дать им одинаковые атрибуты.
Редактирование топологии - это мощный инструмент, который позволяет быстро и легко создавать и изменять объекты, обеспечивая при этом их топологическую корректность.
Теперь вы знаете, как легко оцифровать форму объектов, но добавить атрибут - это пока еще заморочка! Далее мы покажем, как использовать формы, делая редактирование атрибутов более простым и эффективным.