Scalanie sąsiednich wielokątów za pomocą ArcGIS Desktop?

12

Chcę używać ArcGIS Desktop do łączenia sąsiadujących ze sobą wielokątów.

Między wielokątami nie ma wspólnego pola, dlatego narzędzie Rozpuszczanie nie jest idealnym rozwiązaniem. Wielokąty, które chcę scalić, są ze sobą sąsiadujące lub znajdują się w pewnej odległości od siebie.

Chcę uniknąć używania ArcObjects. Skrypty w języku Python są jednak mile widziane.


Narzędzie Dissolve scala sąsiednie wielokąty, gdy atrybut do rozpuszczenia jest pominięty (a tworzenie wieloczęściowe jest wyłączone). Nie ma jednak ustawień tolerancji przestrzennej. Ponadto funkcja rozpuszczania nie działa na wielokątach, które mają tylko wspólny wierzchołek.


Wypróbowałem to podejście za pomocą narzędzia integracji, jak wspomniano w jednej z odpowiedzi. Problem polega na tym, że kształt końcowego elementu tworzonego przez zintegrowanie kilku elementów nie jest podobny do kształtu, który powstałby, gdyby granice między elementami zostały rozwiązane.

DotPi
źródło
Zbadałbym to podejście: (1) Wielokąty buforowe. Bufor dotykających się lub w pobliżu wielokątów będzie się nakładał. (2) Użyj narzędzia Union lub Intersect. Nakładające się części buforów będą miały atrybuty wszystkich wielokątów początkowych. Oznacza to: Tabela wyników pokazuje zależność twoich wielokątów. (3) Dostosuj tabelę od kroku 2 za pomocą Excela i połącz ją z powrotem z wielokątami. (4) Rozpuść swoje wielokąty według atrybutów.
Jens

Odpowiedzi:

11

By przejść do zintegrować narzędzia, które stwierdza, funkcji, które są w podanych X, Y tolerancji. Następnie użyj narzędzia Rozpuszczanie, które powinno dobrze działać dla sąsiadujących wielokątów.

Alex Tereshenkov
źródło
5

Narzędzie do agregowania wielokątów jest prawdopodobnie tym, czego chcesz? Może łączyć wielokąty w tej samej warstwie na podstawie określonej tolerancji odległości. Możesz także ustawić minimalny rozmiar wielokątów i otworów do zachowania.

Christopher Wesson
źródło
3

Jednym z rozwiązań, które udało mi się dostać do pracy, było użycie narzędzia Dissolve, a następnie użycie Multipart do Singlepart. To najpierw rozpuściło wszystkie wielokąty w jeden wielokąt, ale rozpuściło sąsiednie pliki kształtów. Następnie użycie Multipart do Singlepart stworzyło plik kształtu, w którym każdy scalony wielobok był nadawany przez jedną cechę w tabeli atrybutów.

Andrzej
źródło