ArcCatalog каже, що просторові посилання не збігаються між набором даних і класом об'єктів з однаковою системою координат?


31

У мене є набір даних функцій, який використовує GCS_WGS_1984 як географічну систему координат. Він включає кілька функціональних класів.

Цей набір даних функцій є самим у базі даних геоданих, що містить ще кілька класів функцій у корені gdb. Один з них - класи функцій під назвою "точки", які також використовують GCS_WGS_1984 як свою систему координат.

Я думав, що було б тривіально використовувати ArcCatalog для перетягування класу характеристик з кореня gdb у набір даних про функції, оскільки вони мають однакову систему координат. На жаль, ArcGIS дає діалогове вікно про помилку, яке говорить:

Failed to paste points
The spatial references do not match

Чому це не вдається? Якщо GCS класу характеристик та набір даних функції однакові, чи не повинен він просто працювати? Я перевірив, що це так у діалогах, а також експортує файл prj як для набору даних, так і для класу та використовує інструмент diff для порівняння двох. Вони однакові.

Чи просторова посилання класу характеристик відрізняється від системи / проекції координат?

Спроба скопіювати клас об’єктів у набір даних функції, утримуючи ctrl, перетягуючи результати в ArcCatalog, кожен раз перериваючись (ганьба на ESRI).

Я думаю, я міг би спробувати альтернативні засоби переміщення класів функцій. Використовуйте CopyFeatures у наборі даних. Проект із класу функцій у новий клас функцій у наборі даних про функції?


Чи можете ви розмістити файл gdb десь? Можливо, видаліть усі або деякі функції, якщо вони великі, це здається, що їх можна відтворити навіть із порожніми класами функцій.
Кірк Куйкендалл

4
Мені б хотілося, щоб я встиг зазнати кожної невеликої примхи, яку я зіткнувся з w / ArcGIS, часто мені просто доводиться жити з цим і знаходити наступний найменш приємний спосіб вирішення. Я використав для керування даними -> Копіювати функцію, щоб скопіювати у новий клас функцій (названий темп), видалив старий клас функцій, перейменував новий клас об’єктів на старий. Використання ArcGIS не повинно вимагати ступеня тестування програмного забезпечення. = (
mindless.panda

2
"не повинен вимагати ступеня тестування програмного забезпечення" , chat.stackexchange.com/transcript/message/1116371
matt wilkie

це лише ім'я, вони можуть збігатися, але якщо вони мають інше ім'я, це виганяє це повідомлення, ігноруйте його.
Якщо ви не знаєте - просто ГІС

Відповіді:


21

Одна і та ж система координат не завжди є ідентичною системою координат. Я стикався з ситуаціями, коли деякі операції та інструменти для геообробки вважають, що класи функцій не мають спільної системи координат, оскільки описова назва проекції відрізняється ("Юкон Альберс" від "Альберс - звичай"), хоча параметри однакові, або тому різних десяткових позицій (помилкові норми 500000,00 проти 500000,0000).

Що я зазвичай роблю, це забезпечити створення систем координат набору даних Feature (та F.class) за допомогою нашого стандартного .prj-файлу, розміщеного у верхній частині C:\path\to\ArcGIS\Desktop10.0\Coordinate Systems(робить CS доступним меншим числом кліків) та / або копіювання CS з шаблону головного класу функцій зберігається десь під рукою.

Частково у відповідь на це питання, у мене також є порожній набір даних функцій ( D:\s.gdb\_template), через який я перебираю всі наші дані як фільтр першого кроку, перш ніж робити з ними щось інше. Серед загальної системи координат це також забезпечує точність та просторову область тощо.

Оновлення: див . Відповідь Енді про використання пітона лише 2 рядки для копіювання просторової довідкової системи набору даних Feature з класу функцій шаблону. Це працювало для мене в ArcCatalog 10.3, коли інтерактивний метод визначення SR шляхом вибору класу функцій для імпорту одного не працював.


Чи не мали б ці незначні зміни в гарній назві друку чи десяткових позиціях, які ви згадуєте, у файлі .prj, експортованому за допомогою параметра Зберегти як? Якщо так, чому різні файли prj нічого не показують? Мені було цікаво, чи можуть незначні відмінності у розділі x, y також спричиняти конфлікт.
mindless.panda

1
Можливо, файл .prj, створений за допомогою "Зберегти як", не точно такий, як файл, що зберігається всередині. Я використовую набір даних "фільтр" для забезпечення загальної просторової роздільної здатності тощо
matt wilkie

3
Я додам до цього додатковий аспект: Іноді набори даних з інших джерел будуть генеруватися як такі, що містять значення M і Z, коли вони насправді не мають M або Z. Я виявив, що деякі інструменти ESRI виявляють порожню систему координат Z як не узгодження, незважаючи на те, що системи координат X / Y насправді відповідають точно.
DPierce

16

Це швидше пояснення, ніж відповідь.

Ми (Есрі) робимо досить строгі випробування імен та значень опорної системи координат. Тест "рівний" не поверне помилку при порівнянні 500000,00 та 500000,000000, але може вийти з ладу, якщо один дійсно 500000.0, а інший 500000.00000005. Ми працюємо над додаванням псевдонімів для імен, щоб "рівний" пройшов більше.

Як згадували mindless.panda та matt wilkie, відмінності можуть бути в інших значеннях просторового відліку. Просторова посилання включає систему відліку координат і значення зберігання / обробки. Для зберігання: xy, z та вимірюйте роздільну здатність та розширення. Для обробки: xy, z і вимірюйте значення допуску. Будь-яка різниця в них може спричинити нерівну помилку.


6
Ваша відповідь дуже цінується. Мені б дуже хотілося, щоб в ArcGIS покращення роботи з помилками, особливо в тому, що повідомляється користувачеві. Потрібні більш інформативні помилки з можливістю отримати ще більш детальну інформацію за бажанням. Ще раз дякую ESRI за те, що знайшли час для відповіді.
mindless.panda

2
Я другий на пропозицію надати більше інформації про помилки. За останні два тижні у мене виникла та сама помилка ( Error code: 999999: Error executing function. Description: This is a generic error for which the cause of the error does not have an appropriate error ID. ) через цілий ряд проблем. Це надихаюче повідомлення, яке я отримую, тому що я нічого не можу зробити, крім того, щоб спробувати запустити те, що я зробив вдруге, щоб побачити, чи помилка повторюється, або відмовитись і використовувати інший метод (або програмне забезпечення, що все частіше буває).
djq

9

Ось що я зробив, щоб вирішити проблему (використовуючи arcpy в ArcGIS 10.0) -

Це передбачає наступне:

  • FGDB - C: \ gisdata \ Test.gdb
  • Клас функцій - C: \ gisdata \ Test.gdb \ bldg

Ви можете змінити свої коди та назви об’єктів у коді та вставити їх у вікно python у ArcCatalog.

sr = arcpy.Describe(r'C:\gisdata\Test.gdb\bldg').spatialReference
arcpy.CreateFeatureDataset_management(r'C:\gisdata\Test.gdb', 'MyFeatureDataset', sr)

Після того, як створено набір даних про функції, ви можете перетягувати класи класів.


1
Дякую! Це працювало для мене сьогодні в ситуації, коли використання інтерактивного інструменту для визначення нової системи координат набору функцій шляхом вибору наявного класу функцій не працювало (v10.3).
matt wilkie

7

Ця проблема вбивала мене! Збереживши купу класів функцій із файлу CAD, я кілька разів намагався визначити їхні системи координат, а потім організувати їх у набори даних функцій. Я спробував визначити всі необхідні f.classes і f.datasets з офіційної проекції WGS_1984_UTM_42N від ESRI, а також встановити проекцію для набору даних, а потім імпортувати цю проекцію для f.classes за допомогою інструменту «Визначити проекцію». Або ні f.classes не вставлятиметься, ні 1, а інші - ні.

Завдяки @Matt Wilkie в цій публікації інструмент « Клас Feature to Feature Class », схоже, вирішив проблему. Він успішно імпортує f.classes до потрібного набору даних, навіть якщо я ще не визначив систему координат для відповідного f.class.

Крім того, я виявив, що скрипт Feature Class до Geodatabase (декілька) працює чудово для переміщення f.classes у f.dataset масово, за винятком цього потрібно робити з Geodatabase на інший (не в f.dataset у межах тієї ж бази даних geodata) . Це, мабуть, тому, що скрипт не перейменовує автоматично файли f.classes, коли вони копіюються (або запитуйте у оператора нове ім'я, як у Класі функцій до Класу функцій). Однак, як вказували інші (та сама нитка, пов'язана вище), наведена помилка є загальною 999999.


4

У мене виникла ця проблема, коли я просто хотів перенести клас об’єктів у набір даних функції в базі даних GeoData. Я зробив свій набір даних про функції та переконався, що у нього однакова система координат. Я знову і знову отримував "Не вдалося вставити xyz . Просторові посилання не збігаються" Найшвидша робота, яку я знайшов, - імпортувати однакове просторове посилання в новостворений набір даних із класу характеристик, який я хотів імпортувати в нього. На другому кроці майстра "Створити новий набір даних про функції".

Я не знаю, чому просторові посилання відрізняються.


Привіт, @Alan! Дякуємо, що поділилися своїм досвідом та ласкаво просимо на наш сайт.
whuber

1
Привіт Алан, майстер створення нового набору даних / класів функцій не завжди тягне всі значення зберігання / обробки, коли використовується "система імпорту координат". Ми працюємо над її виправленням. Я думаю, що це те, в чому ти стикаєшся.
mkennedy

1
Я бачу цю проблему - навіть якщо я створюю набір даних про особливості та використовую механізм імпорту та вибрав клас функції, я все одно не можу перетягнути / скопіювати клас об’єктів у новостворений набір даних про функції без згаданої вище помилки.
mindless.panda

3

Я думаю, що одне з повідомлень ESRI полягає в наданні більш конкретних різниць параметрів інформації про налагодження, коли виникає ця помилка. Я теж зіткнувся з цією помилкою навіть після ретельного контролю просторових довідкових систем та проекцій, як я думаю, що це робить більшість користувачів ГІС.

Я знайшов процедуру використання функцій копіювання ArcToolbox для виправлення повідомлень про помилки, які виникають під час використання механізмів імпорту чи копіювання. Тут ми залежно від процедури інструментів копіювання функцій копіювання, щоб правильно розв’язати різницю посилань або проекції перед введенням класу функцій у набір даних.

Я навіть спробував створити набір даних функції за допомогою системи проекцій, визначеної під час створення набору даних, а потім запроектував класи класів на набір даних функції за допомогою інструменту проекції ArcToolbox з тією ж проекцією, і все ж отримав помилку, описану тут, коли я намагаюся імпортувати або скопіюйте клас функції в набір даних.

Ці проблеми системи координат маскуються під час використання даних у ArcMap. Оскільки ArcMap виконує під час льотного проектування, на карту ArcMap можна додавати декілька класів функцій, кожен з різними проекціями, не усвідомлюючи користувача. ArcMap попередить про різні координатні системи.


1

ДОБРЕ. Я знайшов рішення! Клацніть правою мишкою на наборі даних функцій у GDB та натисніть Імпортувати. Виберіть потрібні функції та натисніть кнопку OK.


0

Спробуйте скористатися інструментом "Копіювати функції" в розділі Інструменти / функції управління даними. Інакше я постійно отримував помилку незалежно від того, що робив.


-1

Ви спробували довести його до ArcMap і встановити шари як GCS_WGS_1984, а потім експортувати всі ваші шари у базу даних геоданих?

Якщо у вас є один або кілька шарів, які знаходяться в іншій проекції, ви можете їх експортувати, але змінити кадр даних на GCS_WGS_1984?

Я не впевнений у цьому в ArcGIS 10. У мене їх ще немає, але я використовую 9.3.1.


1
Чи можете ви уточнити пункти 1 і 2? Вони не здаються точними.
Аарон
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.