OpenLayers'ta çokgenleri düzenlerken topoloji nasıl korunur?


9

Bu sorunla karşı karşıyayım: Bazı verileri olan çokgenler kümesine dayanan bir kloroplet harita var. WFS-T (postgis, geoserver, openlayers) kullanarak çokgenlerin geometrisini düzenleyebilirim. Bu iyi çalışıyor.

Çokgenlerim devlet sınırlarına benziyor. Sınır köşelerini paylaştılar. Bazı çokgenin geometrisini düzenlediğimde (örneğin, vertect, changeFeature kullanarak hareket ettirin), komşu çokgenin geometrisini etkilemem gerekir. Delik veya çakışma olmamalıdır.

Bunu yapmak mümkün mü?

Teşekkürler


Muhtemelen;) OpenLayers'ın böyle bir şeyi kutunun dışında desteklediğine inanmıyorum, ancak uygulanabilir. Her kenarlığı bir çizgiyle temsil edebilir ve çizgileri değiştirebilirsiniz. Daha sonra, linestring güncellendiğinde, sınıra temas eden iki (veya daha fazla) çokgen güncellenir, eski kenarlığı kaldırılır ve yenisi eklenir.
canisrufus

Yanıtlar:



2

Sadece ipuçları, OpenLayers'ın bunu yapabildiğini düşünmeyin. Çoğu açık kaynaklı Masaüstü CBS farklı köşe çizgisi üzerinde yapışma yapamaz, bu yüzden bunu çevrimiçi yapmak benim için bir rüya gibi görünüyor.

Basit geometri için yapışma yeterli olabilir http://openlayers.org/dev/examples/snapping.html Yeterince olgun değil, umarım https://github.com/bjornharrtell/jsts kavşak yapmanın bir yolu olacaktır (ve indirecly sorununuzu çözmek) içeriği geri göndermeden önce istemci tarafında. Şimdilik bunun için PostGIS tetikleyicilerini kullanarak çizim yaptıktan sonra işleme hakkında daha fazla düşüneceğim ve düzeltilmiş çekilişleri geri göndereceğim. PostGIS'de topoloji uygulaması http://www.postgresql-sessions.org/2/sandro_santilli_-_topology_with_postgis_2.0 Her zaman sunucu tarafında, WPS'nin olasılıklarına bakın http://community.esdi-humboldt.eu/documents/show / 4

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.