6 votos

Edición de topología PostGIS en un navegador web

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!

1voto

jczaplew Puntos 312

Terminé escribiendo un folleto plugin, Leaflet.draw.topology , para llevar a cabo esta tarea. Lo único que no se implementa en el plugin es la validación de geometría, aunque en el futuro sin duda podría ser. Actualmente se maneja el lado del servidor con PostGIS.

0voto

Hemos tenido un problema similar en uno de nuestros proyectos.Hemos utilizado las capas abiertas 2 función modificar (http://openlayers.org/dev/examples/modify-feature.html) para la implementación de edición de topología y funciona bastante bien.Puedes aplicar unas sencillas comprobaciones básicas en el lado del cliente (abierto capa tiene un buen soporte para trabajar con geometrías), pero hemos decidido hacer la mayoría de ellos en un lado del servidor (compruebe si la geometría es correcta, no hay intersecciones, etc.) debido a la cantidad de datos involucrados y la naturaleza de los controles. Puede exportar geometrías en las capas abiertas a GeoJSON el uso de OpenLayers.Formato.GeoJSON:

var geoJSON = new OpenLayers.Format.GeoJSON(),
    geoJSONText = geoJSON.write(geometryObject);

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X