Як розчинити перекриваються багатокутники?


10

У мене є запит щодо розчинення ознак багатокутника в ArcGIS 9.3. У мене є лише ліцензія на голі кістки і надзвичайно базові знання VB.

У мене є великий форм-файл із приблизно 4500 багатокутниками, і я хочу знати, чи все-таки є розчинення тих, що перекриваються? Я в основному хочу перетворити цей шар у файл форми, який містить окремі області, тому там, де один багатокутник знаходиться самостійно, він залишатиметься, але там, де кілька полігонів перекриваються, вони розчиняються в 1, при цьому кожна окрема область має свій набір атрибутів. Форма файлів змінюється досить часто, і до цих пір я переглядав їх усі і вручну розчиняючи області, що перекриваються, використовуючи інструмент редактора, але я впевнений, що це набагато швидший спосіб зробити це!

Будь-яке розуміння того, як цього можна досягти?


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


Чудові відповіді. Бреде Несом, як ви отримуєте значення таблиці оригінальних атрибутів для розчиненого файлу форм?
Гуннар

Мені потрібно те, що ти зробив, але коли я запускаю інструмент для розчинення, він просто з’єднує всі його функції у моїй формі, тому не працює. Як ти змусив його працювати?
Федеріко Гомес

Відповіді:


13

Можливо, мені щось не вистачає, але чи не зробить це основний інструмент Dissolve (десь у панелі інструментів управління даними) для вас? Не потрібно возитися з будь-яким кодом, як у відповіді artwork21. Просто відкрийте інструмент розчинення, оберіть свій клас функцій, не вибирайте жодне поле для розчинення, а потім зніміть прапорець "Створити багатоповерхові пойгони", інакше всі ваші полі стануть одним великим багаточастинковим полі.

Зараз у мене немає дуги перед собою, але якщо я правильно читаю ваше запитання, я зробив це, перш ніж використовувати цей метод. Єдине занепокоєння тут - атрибути в таблиці. Ви знаєте дані, тому вам доведеться вибрати, як поєднати кожне поле в частині інструмента «Статистичні поля».

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


14

@Tom Parker - MWrenn є правильним.
У вас є можливість вибрати атибут, який слід розчинити. (Це зробить атрибут розчинення) або жоден атрибут (це буде просторовим розчиненням).

виберіть статистику та будь-які атрибути, які ви хочете перенести. (це не вийде так, як хочеться).

варіанти

До того, як робити розпуску. створити нове поле і обчислити в ньому FID.
Потім експортуйте dbf своїх атрибутів, і ви можете (дещо приєднати їх до резервної копії з полігонами згодом).

Якщо вам потрібна допомога в цьому, дайте мені знати, і я опублікую більше знімків екрана або знайду допомогу в ресурсному центрі arcgis.com.

Якщо на наступному екрані ви помітили, ім'я є однаковим у всіх полігонах (9.3.1, схоже, не розчиняється з аркмапи). Спробуйте це з аркаталога.

після розчинення

Можливо, у когось іншого буде кращий метод.

Єдиний інший спосіб, який я можу придумати, - це вибір за місцем розташування (багатокутники, які перетинаються один з одним).
Експортуйте їх у окремий файл, а потім розпустіть їх.
Потім після розчинення кожного файлу ви можете використовувати шари вільного злиття (у et-geo-wizards)


4

Ви можете створити модель в Model Builder і експортувати сценарій, а потім скопіювати та вставити цей сценарій у UIButtonControl в ArcMap vba. Дивіться приклад сценарію нижче.

Private Sub Dissolve_Click()

' Create the Geoprocessor object
set gp = CreateObject("esriGeoprocessing.GPDispatch.1")

' Load required toolboxes...
gp.AddToolbox "C:/Progra~1/ArcGIS/ArcToolbox/Toolboxes/Data Management Tools.tbx"

' Local variables...

Dim test_shp as string

test_shp = "C:\Temp\test.shp"
Output_Feature_Class = "C:\Temp\test_Dissolve.shp"

' Process: Dissolve...
gp.Dissolve_management test_shp, Output_Feature_Class, "", "", 
  "MULTI_PART", "DISSOLVE_LINES"

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