Estoy tratando de conceptualizar el mejor proceso para la edición de topología de PostGIS en un navegador web. Idealmente lo que me gustaría lograr es que la carga de una topología (imaginar los 48 estados de los estados unidos), el ajuste de las fronteras, y la actualización de una tabla PostGIS con los cambios. Estoy bastante cómodo con la entrega, la representación, y la carga de la geometría, pero estoy un poco atascado en la edición de parte.
A pesar de que parece Abrir las Capas 3 soportes de edición de topología (a pesar de esta respuesta), no parece hacer cumplir las reglas (por ejemplo, permite al usuario arrastrar un límite a la superposición de otro polígono), y tampoco parece como Abrir las Capas admite la exportación de capas vectoriales como un GeoJSON, aunque estoy seguro de que es posible escribir esa funcionalidad. Asimismo, el Folleto ofrece la excelente Prospecto.dibujar plugin junto con GeoJSON funcionalidad de exportación, pero no ofrece la posibilidad de editar una topología.
A menos que me estoy perdiendo algo, parece que mi mejor apuesta en este punto es escribir una herramienta que permite la topológico de edición de polígonos, más probable es que para el Prospecto porque me siento más cómodo con él. Me imagino que el proceso sería algo así como:
- Haga clic en la frontera
- Encontrar todas las características que tiene una geometría en este lugar
- Crear un vértice en este lugar en todos los encontró característica de geometrías
- Mientras arrastra, la actualización de todas las características que comparten este vértice
- Cuando se hace arrastrando, asegúrese de que no hay segmentos de la alteración de las geometrías se cruzan otras características
Lo ideal sería función muy similar a la de Abrir las Capas de ejemplo de arriba, pero también tendría que cumplir algunas reglas y hacer la exportación fácil. ¿Suena esto como un proceso razonable? Me estoy perdiendo algo? ¿Tienes alguna sugerencias específicas para cualquier parte del proceso, es decir, alguna de las herramientas existentes que realizar estas piezas de funcionalidad? Gracias!