Visualización de archivos de forma 3D con Mapserver y Postgis


17

Me pregunto si hay una manera de visualizar datos en 3D con el servidor de mapas. Los archivos .shp 3D están en la base de datos postgis, y ya conecté el servidor de mapas a la base de datos, pero con una capa simple en el archivo de mapas.


Para mí, MapServer es un servidor de mapas web y no es posible visualizar datos en 3D con él. Con ArcGis Explorer, ¡sí!

¿Qué tipo de datos está tratando de visualizar y cómo desea incluir la tercera dimensión? la respuesta probablemente no sea, pero puede haber soluciones dependiendo de lo que intente hacer.
scw

Solo quiero visualizar mi mapa hipsométrico con líneas 3d sobre él. Algo así como la función GRASS nviz.
contraflujo

Respuestas:


4

Una forma de hacerlo podría ser dejar que PostGIS haga la proyección en 3D. Hice algunas pruebas simples hace unos meses para visualizar las próximas funciones de distancia 3D como ST_3DShortestLine.

Lo que hice fue usar ST_RotateX, ST_RotateY y ST_RotateZ para hacer que la geometría 3D "muestre más que la parte superior de la cámara".

Más elegante y eficiente sería hacer todas las transformaciones con ST_Affine.

Con el uso avanzado de esa función, supongo que también sería posible obtener la vista 3D en perspectiva.

El problema, por lo que he intentado, es que solo está girando todo alrededor de origo. Pero también eso debería ser posible de solucionar.

De esta manera, debe hacer que MapServer presente sus datos visualmente como 3D, pero MapServer solo ve una geometría 2D plana.

Si alguien tiene éxito con esto, estoy interesado. He pensado en hacer una falsa funcionalidad 3D de esta manera en postgisonline.org. Pero no tengo el conocimiento y el tiempo para descubrir cómo se deben hacer las transformaciones con ST_Affine para dar una vista en perspectiva y girar alrededor del centro del mapextent en lugar de girar alrededor del origo.

/ Nicklas


6

MapServer no hará nada por ti. Tendría que actualizar a la última versión para tener una oportunidad, ya que las versiones anteriores simplemente eliminaron la tercera dimensión en la consulta de la base de datos. Su mejor opción podría ser probar GeoServer y el soporte KML allí y ver si puede visualizar en Google Earth. O, en su defecto, escriba un pequeño script PHP para extraer sus datos de PostGIS con la función ST_AsKML () y envolver algunos estilos en el camino. ¡Sin embargo, no hay magia disponible!


3

Puede representar su mapa hipsométrico como Sombreado y luego superponer las líneas 3D para que solo vea los datos 2D. Si desea ir más allá, puede utilizar el software de renderizado 3D para proyectar sombras de las líneas 3D en el mapa hipsométrico, lo que debería ayudar a dar la ilusión de altura a sus líneas. Pero Mapserver en sí no mostrará realmente las cosas en 3D

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.