Что происходит с классом объектов при импорте в набор классов объектов?

11

Я создаю модель, которая должна гарантировать, что все входные наборы данных окажутся в одной и той же системе координат (среди прочего). Изначально я планировал пакетное проектирование всех наборов данных, независимо от того, нужно ли их проецировать или нет, но тогда возникает проблема назначения правильного географического преобразования. Затем я вспомнил, что все данные, которые вводятся в набор классов объектов, должны быть в одной системе координат, поэтому я решил объединить все данные в одну.

Мой вопрос: когда класс объектов импортируется в набор классов объектов, который имеет другую систему координат, автоматически ли проецирует данные? Что случается?

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

дубильщик
источник

Ответы:

6

Из справки об импорте классов объектов :

Предположим, вы хотите импортировать класс объектов, который находится в другой системе координат. Например, вы можете импортировать класс пространственных объектов, который использует систему координат 1927 года в Северной Америке (NAD), в набор классов объектов, который использует систему координат NAD 1983. Чтобы импортировать класс пространственных объектов, используйте инструмент «Проект», чтобы одновременно импортировать данные и преобразовать их в новую систему координат.

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

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

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

Так что это говорит о том, что он делает "лучшее предположение". Я настоятельно рекомендую указать метод преобразования проекции вручную, если вы хотите избежать ошибок проекции. Смотрите «Месть сдвига» для превосходного обзора ошибок, вызванных неправильными преобразованиями проекции!

blah238
источник
3

Когда FeatureClass импортируется в FeatureDataset, он проецируется в систему координат, потому что все FeatureClass внутри FeatureDataset должны иметь одинаковую пространственную привязку.

Если вас интересует точный процесс с точки зрения кода, процесс импорта извлекает объект ISpatialReference из Destination FeatureDataset и, проходя по каждой геометрии в исходном FeatureClass, вызывает для него IGeometry :: Project и передает его ISpatialReference объект в качестве параметра.

Раги Язер Бурхум
источник