Köşeye dokunan çokgenleri tek bir özellikte birleştirme


12

Ben raster gelen bir çokgen katmanı oluşturduk ve her çokgen için sadece tek bir sınıflandırma kimliği (ve hesaplanan dönüm) var. Tüm dokunma özelliklerini daha büyük, çokgenlere "eritmek" istiyorum. Kırmızıyla daire içine alınmış 3 alan (aşağıda) yalnızca karelerin noktalarına dokunan yeşil çokgenler / pikseller içerir. Sezgisel olarak (son kullanıcı perspektifinden), daire içine alınmış bir alandaki tüm yeşil çokgenler bağlanmalı ve tek bir çokgen gibi ele alınmalıdır çünkü özelliklerin / hücrelerin temas etmediği "kırılmalar" yoktur.

ArcGIS kullanarak tüm bu özellikleri "birleştirmek" veya "çözmek" için en iyi yöntem hangisidir? ArcInfo ve Spatial Analyst uzantım var. Bunu Uzamsal Analist'te yapmak için daha iyi bir metodoloji varsa, çokgenleri de bu şekilde önceden işleyebilirim.

Raster - Çokgen


2
Sorunun ne olduğu belli değil çünkü ne metin ne de şekil bir "çokgen" in ne olduğunu anlamamıza yardımcı değil. Yine de, komşularınız için "SEKİZ" seçeneğiyle Regiongroup'u arıyor olabilirsiniz .
whuber

Görüntüdeki her yeşil nesne, bir hücreden dönüştürülmüş bir çokgendir. Örneğin, üst örnekte .02, .02, .02, .52, .12, .02, .17 dönüm büyüklüğünde 7 çokgen (sol üst köşeden) vardır. Ben .89 dönüm büyüklüğünde 1 daha büyük çokgen elde etmeyi umuyordum (7 parçanın toplamı). Daire içine alınmış alanların her biri, ilgili toplam büyüklükteki dönümlerin kendi çokgenleri olacaktır.
RyanKDalton

2
RegionGroup tam olarak bunu yapar, Ryan.
whuber

Yanıtlar:


6

Verilerinizin ne olduğuna bağlı olarak denemeye değer olabilecek birkaç yaklaşım düşünebilirim (küçük değişikliklere neden olurlar):

  1. Rasterden poli'ye geçiş yaptığınızda 'genelleştirilmiş çokgenler' açtınız mı?
  2. Rasterinizin çözünürlüğünü değiştirebilir ve çokgenlere dönüştürmeden önce Sınır Temizliği veya Nibble gibi araçlardan birinde muhafazakar bir ayar kullanabilirsiniz (çözünürlüğü yukarı örnekleyerek, orijinal alanlar üzerinde sıfır etki yapar, ancak boyutunu küçültür son verilerdeki değişiklik - verilerinize bağlı olarak bunun bir endişe olduğunu düşünmeyebilirsiniz)
  3. Küçük bir miktarda tamponlayabilirsiniz (küme toleransınızdan daha büyük).

Eminim başka yaklaşımlar da var, ama bu akşam buharım tükeniyor. Umarım bu fikirler yardımcı olur.


3

Birleştirmeye çalıştığınız çokgenlerin birden fazla tepe noktasını paylaşması gerekir. Çözünemez ve patlayamazsınız çünkü sadece bir tepe noktasını paylaşan çokgenler de ayrılacaktır. Daire içine alınmış grupları manuel olarak birleştirirseniz, gerçekte kesişmedikleri için multigeometri haline gelecektir. @Sylvester, diğer yöntemlerin yanı sıra dönüştürürken genellemeyi önerdi. Bunu deneyebilirsin. Bir ham yöntem çokgen küçük pozitif bir sayı ile özellikleri tüm çokgenler katılacak aynı küçük negatif bir sayı ile tekrar tampon ama iç köşeleri yuvarlak olacak tampon etmektir. Ayrıca, arzu edilmeyen birçok köşe de getirecektir.


Çözmek için 1'den fazla tepe noktasına ihtiyacım olduğunu anlıyorum, bu yüzden soruyu soruyorum. "Küçük tampon" kavramını deneyeceğim. Bu işe yarayabilir.
RyanKDalton

RegionGroup "SEKİZ" seçeneğiyle uygulandığında, iki hücrenin aynı çokgenin parçası olarak kabul edilmesi için bir tepe noktasını paylaşmak yeterlidir.
whuber

0

Doğru bir şekilde anlarsam, ayrı ayrı yeşil polisleri çok parçalı bir çokgene dönüştürmek için çözme aracını kullanabilirsiniz, sonra yeni bir alan alanı ekleyin ve dönümleri yeniden hesaplayın.

Umarım Tyler yardımcı olur


0

Neredeyse aynı ikilem vardı. Aşağıdaki en azından yaklaşık olarak çalıştı. Çokgen pürüzsüz aracını piksel karelerini, ardından toplama aracını "yuvarlaklaştırmak" için kullandım. Yumuşattıktan sonra, çokgenler bir düğümden daha fazlasına dokundu, böylece toplama aracı sihrini çalıştırabilir.


Birkaç düzleştirme yöntemini denedikten sonra, ya çok fazla alan eklerler ya da bazı çokgenlerde birikmek için yeterli kenar oluşturmazlar. Bu yüzden, geri döndüm ve 2012'de Jakub tarafından önerilen yöntemi kullandım ... çok daha iyi! Esri, bir düğüme (nokta) dokunan çokgenleri toplama seçeneğini birleştirme aracına dahil ederse harika olurdu.
Lisa
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.