О переносе данных участков с использованием топологии базы геоданных

Эта тема относится только к ArcGIS for Desktop Standard и ArcGIS for Desktop Advanced.

Корректную, проверенную топологию в классах объектов участков можно перенести непосредственно в набор данных участков. Топология базы геоданных создается в наборе классов объектов, содержащем класс объектов линий участка, класс объектов полигонов участка и (дополнительно) класс объектов точек (углов участка). Если существующие данные участков состоят только из полигонов, вы можете конвертировать полигоны в линии с помощью инструмента геообработки Полигон в линию (Polygon To Line). Топология сверяется с обязательным набором правил, и после проверки топологии ее можно перенести в набор данных участков с помощью инструмента геообработки Загрузить топологию в набор данных участков (Load A Topology To A Parcel Fabric).

Топология - это модель, с помощью которой можно описать, каким образом пространственные объекты используют общую геометрию в базе геоданных. Топология базы геоданных - это механизм установления и поддержания пространственных отношений между пространственными объектами.

Более подробно о топологии в ArcGIS

Правила топологии

При проверке топологии пространственные объекты, участвующие в топологии, сверяются с набором определенных правил, и нарушение правила считается ошибкой.

При использовании инструмента геообработки Загрузить топологию в набор данных участков (Load A Topology To A Parcel Fabric) для переноса линейных и полигональных объектов в набор данных участков, обязателен следующий набор правил топологии:

  1. [Линейный класс объектов] Должен совпадать с границей [Полигонального класса объектов].
  2. [Линейный класс объектов] Не должен перекрывать сам себя.
  3. [Линейный класс объектов] Не должен пересекать сам себя.
  4. [Линейный класс объектов] Должен состоять из одной части.
  5. [Линейный класс объектов] Не должен пересекать внутренние объекты или касаться их.
  6. Граница [Полигонального класса объектов] должна совпадать с [Линейным классом объектов].

Правило Граница [Полигонального класса объектов] должна совпадать с [Линейным классом объектов] можно отметить как исключение, если переносимая линия будет являться в наборе данных участков связующей линией. Линии соединения - это линии, которые соединяют точки участка с опорными точками, или линии, соединяющие блоки участков. При переносе линии в виде линии соединения, в таблице атрибутов линий источника должно присутствовать поле Категория (Category) со значением 3 (категория линии соединения).

Топологию можно проверить в ArcCatalog или в ArcMap. В ArcCatalog проверяется весь набор данных. В ArcMap можно выполнить проверку поднабора данных, воспользовавшись инструментами Проверить топологию в текущем экстенте (Validate Topology in Current Extent) Проверить топологию в текущем экстенте или Проверить топологию в заданной области (Validate Topology In Specified Area) Проверить топологию в указанной области на панели инструментов Топология (Topology).

После проверки топологии любые нарушения правил топологии или ошибки отображаются определенным образом в слое топологии в ArcMap. Ошибки топологии обозначаются точками, линиями и полигонами.

Слой топологии с ошибками
Слой топологии с ошибками

Ошибки топологии также можно просмотреть в диалоговом окне Инспектор ошибок (Error Inspector) Инспектор ошибок на панели инструментов Топология (Topology). Инспектор ошибок (Error Inspector) выдает список ошибок топологии в текущем видимом экстенте. Вы также можете вывести в список все ошибки топологии. Ошибки группируются по правилам, которые были нарушены.

Инспектор ошибок (Error Inspector) топологии
Инспектор ошибок (Error Inspector) топологии

Более подробно о диалоговом окне Инспектор ошибок (Error Inspector)

Подробнее о способах сведения к минимуму ошибок топологии при переносе данных в набор данных участков

После того, как топология будет очищена от ошибок, классы пространственных объектов будут готовы к переносу. Инструмент Загрузить топологию в набор данных участков (Load A Topology To A Parcel Fabric) расположен в ArcCatalog (или в окне Каталога в ArcMap): Наборы инструментов (Toolboxes) > Системные наборы инструментов (System Toolboxes) > Инструменты набора данных участков (Parcel Fabric Tools.tbx) > Перенос данных (Data Migration).

Загрузка топологии в набор данных участков

Инструмент геообработки Загрузить топологию в набор данных участков (Load A Topology To A Parcel Fabric) может использовать линейные или полигональные объекты участков в качестве входных данных. Однако для успешной загрузки требуются и линейные, и полигональные классы объектов.

Диалоговое окно Загрузить топологию в набор данных участков (Load a Topology To a Parcel Fabric)
Диалоговое окно Загрузить топологию в набор данных участков (Load a Topology To a Parcel Fabric)

Если на входном линейном или полигональном классе объектов присутствует выборка, в набор данных участков будут загружены только выбранные объекты.

ПримечаниеПримечание:

Любые дополнительные определенные пользователем атрибуты, существующие на полигональных и линейных классах объектов, также будут перенесены в участки и линии при условии, что те же атрибуты существуют в таблицах набора данных участков.

Инструкции по добавлению дополнительных атрибутов в таблицы наборов данных участков

ПримечаниеПримечание:

Существует предельное количество линий участка для его успешного переноса в набор данных участков. Участки с более чем пятью тысячами линий или сегментов нельзя переносить с помощью инструмента загрузки топологии. Обычно в участках с естественными границами есть множество граничных сегментов.

Точки линии

Точки линий не обнаруживаются в процессе переноса данных. Можно использовать инструмент Слияние курсов участков (Merge Parcel Courses) для слияния коллинеарных линейных сегментов (в пределах указанного допуска) в одну линию. После слияния любые точки смежных участков на полученной линии становятся точками линии.

Перенос точечных объектов

Перенос существующих точечных объектов в набор данных участков требуется, когда определенные пользователем значения атрибутов необходимо отразить в соответствующих точках набора данных участков. Как и в случае с полигональными и линейными объектами, если в слое точечного класса объектов присутствует выборка, будут перенесены только выбранные точки.

Перенос планов

Перенос планов в набор данных участков осуществляется путем заполнения поля PlanName (Имя плана) в таблице исходных полигонов. Каждый полигон участка может иметь в атрибуте PlanName либо значение NULL, либо строку с именем плана. При переносе полигонов в таблицу Plans (Планы) набора данных участков добавляется по одной записи на каждое уникальное имя плана. Если атрибут PlanName имеет значение NULL, то произойдет перенос участка в план <Map> по умолчанию.

Перекрывающиеся участки

Перекрывающиеся полигоны можно переносить, если соответствующие линии перекрывающихся полигонов не перекрываются и не пересекаются с другими линиями. Если линии пересекаются или перекрываются, то будет нарушено правило топологии [Линейный класс объектов] Не должен пересекать внутренние объекты или касаться их. К примеру, нижеприведенные перекрывающиеся полигоны будут успешно перенесены:

Такие перекрывающиеся участки будут успешно перенесены

Такие перекрывающиеся участки будут нарушать правила топологии и не будут перенесены в набор данных участков:

Такие перекрывающиеся участки нарушают правила топологии

Перекрывающиеся полигоны, имеющие пересекающиеся линии границ, необходимо извлечь и перенести как отдельные топологии. Другими словами, каждый слой перекрывающихся полигонов нужно переносить отдельно.

См. ход работы по переносу участков в набор данных участков.

Дополнительные сведения, рекомендуемые рабочие процессы и практические примеры переноса данных в набор данных участков см. в документе Загрузка топологии в набор данных участков.

Заполнение системных атрибутов

Во время переноса произойдет заполнение системных атрибутов в таблицах участков и линий участков, если те же атрибуты созданы и заполнены в линейном и полигональном классах объектов. Например, чтобы переносить участки и линии с учетом их типов, потребуется атрибут Тип (Type) как для линейного, так и для полигонального класса объектов. В качестве другого примера, если требуется перенести линии как связующие, понадобится атрибут Категория (Category) в линейном классе объектов.

Атрибуты линейного класса объектов

Следующие атрибуты могут быть созданы в линейном классе объектов, и их значения будут отражены в соответствующих системных атрибутах в таблице линий набора данных участков:

Имя поля

Тип поля

Описание

Категория

Короткое целое

Категория линии (например, граница или связующая линия)

Вычислено (Calculated)

Короткое целое

Принимает значение Истина (True), если измерения построены на основе геометрий линий

Тип

Короткое целое

Используется для пользовательских подтипов линий (например, для дублеров или линий границ съемки)

Категория точности (AccuracyCat или ACCURACY)

Короткое целое

Уровень точности линии

Таблица, в которой перечислены возможные дополнительные поля для линий участков в исходных данных

ПодсказкаПодсказка:

Поле Type (Тип) используется, если у вас есть собственные пользовательские подтипы линий участков в исходных данных. Для того чтобы эти подтипы были перенесены успешно, необходимо создать те же подтипы в системном поле Type (Тип) в таблице линий набора данных участков.

ПодсказкаПодсказка:
Если нет атрибутов COGO на некоторых или на всех линиях участков в исходных данных, процесс переноса данных автоматически создаст атрибуты COGO, инвертируя форму линий. Если есть поле Вычислено (Calculated) для линий участков в исходных данных, вы можете установить значение поля Истина (True) для всех линий с созданными атрибутами COGO. Это поможет различать линии набора данных участков, имеющие инвертированные измерения COGO, и линии с измерениями COGO, которые соответствуют записям съемки.

Если какие-либо из следующих полей отсутствуют для линий участков в исходных данных, соответствующие поля таблицы линий набора данных участков будут иметь следующие значения:

  • Нет поля Категория (Category): Категория = Линия границы (все линии набора данных участков будут иметь категорию Линия границы).
  • Нет поля Вычислено (Calculated): Вычислено = NULL.
  • Нет поля Type: Тип = NULL.
  • Нет поля AccuracyCat: Категория точности = NULL, категория точности наследуется от участка.

    Если для участка не задана точность, то используется системная категория по умолчанию, равная 4.

Атрибуты полигонального класса объектов

Следующие атрибутивные поля могут быть созданы для полигонального класса объектов, и их значения будут отражены в соответствующих системных атрибутах в таблице полигонов набора данных участков:

Имя поля

Тип поля

Описание

PIN (или Имя участка (ParcelName), Имя (Name), LOT или APN)

String (Строка)

Идентификационный номер участка

Площадь (Area или StatedArea)

Двойной точности

Площадь участка, указанная в плане или в записи полевой съемки.

Имя плана (PlanName или Plan)

String (Строка)

Имя плана или записи полевой съемки

Категория точности (AccuracyCat или Accuracy)

Короткое целое

Категория точности участка

Тип

Короткое целое

Используется для пользовательских подтипов полигонов (например, коммерческий/жилищный земельный участок)

Архивный (Historic)

Короткое целое

Принимает значение Истина (True), если участок является архивным

Формальная дата начала (LegalStart или LegalStartDate)

Date (Дата)

Дата юридической транзакции, которая привела к созданию участка (другими словами, дата записи полевой съемки)

Формальная дата окончания (LegalEnd или LegalEndDate)

Date (Дата)

Дата юридической транзакции, которая привела к устранению участка, т.е. дата записи полевой съемки нового участка на месте старого

Таблица, в которой перечислены дополнительные поля, которые могут иметь полигоны участков в исходных данных

Если какое-либо из следующих полей пропущено в полигонах исходного участка, соответствующие поля в таблице участков набора данных участков будут иметь следующие значения:

  • Нет поля PIN, ParcelName, LOT или APN: участку присваивается имя класса полигональных объектов с суффиксом _1, где цифра изменяется с каждым новым участком, т.е. _1, _2, _3 и т. д.
  • Нет поля Площадь (Area): в поле StatedArea размещается площадь геометрии полигона, если в диалоговом окне Загрузить топологию в набор данных участков (Load a Topology to a Parcel Fabric) выбрана опция Вычислить площадь для новых участков (Compute Area for New Parcels).
  • Нет поля PlanName: Участки переносятся в план <map> по умолчанию.
  • Нет поля AccuracyCat: категория точности участков наследуется из связанного плана. Если для плана не задана точность, то используется системная категория по умолчанию, равная 4.

    Если участки переносятся в план <map> по умолчанию, они наследуют категорию точности 4, которая является системной категорией точности по умолчанию.

  • Нет поля Type: Тип = NULL.
  • Нет поля LegalStart: LegalStartDate = NULL.
  • Нет поля LegalEnd: LegalEndDate = NULL.

ПодсказкаПодсказка:

Вы также можете назначить планы участкам после переноса данных, изменив поле PlanID в таблице Участков (Parcels).

Перенос больших наборов данных

У инструмента геообработки Загрузить топологию в набор данных участков (Load A Topology To A Parcel Fabric) высокая производительность, и возможное количество загружаемых участков будет зависеть от конфигурации компьютера и доступной оперативной памяти. При работе с большими наборами данных участков, вы можете либо разделить набор данных на структурные разделы данных, либо загрузить выборки полигонов или линий.

Модель геообработки Итеративная загрузка в набор данных участков (Iteratively Load To The Parcel Fabric) может использоваться для поэтапной (итеративной) загрузки топологии в набор данных участков на основе покрывающей их полигональной сетки.

Автономный скрипт Python LoadTopologyToParcelFabric позволяет использовать возможности скриптов Python для циклического прохождения по выбранным участкам и их загрузки в набор данных участков. Участки выбираются с помощью покрывающего их класса полигональных объектов, состоящего из блоков.

См. ход работы по переносу большого количества участков в набор данных участков.

Связанные темы

9/11/2013