Suite

Comment préserver la topologie lors de l'édition de polygones dans OpenLayers ?

Comment préserver la topologie lors de l'édition de polygones dans OpenLayers ?


Je suis confronté à ce problème : j'ai une carte chloropleth basée sur un ensemble de polygones avec des données. En utilisant WFS-T (postgis, geoserver, openlayers), je suis capable de modifier la géométrie des polygones. Cela fonctionne bien.

Mes polygones ressemblent à des frontières d'état. Ils ont partagé des sommets de bordure. Lorsque je modifie la géométrie d'un polygone (par exemple, déplacer des sommets à l'aide de modifyFeature), je dois affecter la géométrie de tout polygone voisin. Il ne devrait pas y avoir de trous ou de chevauchements.

Est-il possible de le faire ?

Merci


Je sais que cette question a 3 ans, mais je pense qu'elle aidera les futurs lecteurs de ce sujet.

Vous pouvez trouver une implémentation OpenLayers de la topologie ici : http://dev.openlayers.org/sandbox/bjornharrtell/eventbasedtopology2/examples/topology.html


Seuls indices, ne pensez pas qu'OpenLayers soit capable de le faire. La plupart des SIG de bureau open source ne sont pas capables de capturer sur une ligne de différents sommets, donc le faire en ligne me semble un rêve.

Pour une géométrie simple, l'accrochage peut être suffisant http://openlayers.org/dev/examples/snapping.html Pas assez mature, j'espère que https://github.com/bjornharrtell/jsts sera un moyen de faire des intersections (et résoudre indirectement votre problème) côté client avant de renvoyer du contenu. Pour le moment, je vais réfléchir davantage au traitement après le dessin en utilisant les déclencheurs PostGIS pour cela et renvoyer les dessins corrigés. L'implémentation de la topologie dans PostGIS peut aider http://www.postgresql-sessions.org/2/sandro_santilli_-_topology_with_postgis_2.0 Toujours côté serveur, voir les possibilités de WPS peut-être http://community.esdi-humboldt.eu/documents/show /4


Voir la vidéo: OpenLayers + GEOJSON