¿Existe alguna biblioteca JS que pueda representar mapas normales y planos (como Leaflet) en un mapa en perspectiva como este, en la web:
Además, ¿alguien ha visto algo que pueda convertir los datos de CartoDB en representación 3D, como este?
javascript
leaflet
3d
carto
Knutole
fuente
fuente
Respuestas:
Quizás podrías usar Osmbuildings . Es una biblioteca de JavaScript para visualizar la geometría de construcción OpenStreetMaps (o GeoJSON personalizada) en una perspectiva 3D.
Utiliza los datos de OpenStreetMaps directamente. Simplemente agregue el método loadData ():
O bien, puede cargar su propio GeoJSON. Simplemente cambie el método loadData () a setData (geojson):
Sus datos deben tener una propiedad de altura, y puede cambiar el color de la pared y el techo de forma dinámica:
E incluso cambie la perspectiva de la sombra configurando el día:
fuente
setData
método, ¡peroset
funciona! Se ajusta se convierte en:var osmb = new OSMBuildings(map).setData(geoJSON);
Este es uno de los casos de uso principales para ViziCities (ciudades 3D en el navegador con tecnología de OpenStreetMap), aunque las capas de datos todavía no funcionan. Quizás algo a tener en cuenta para el futuro: https://github.com/robhawkes/vizicities
Descargo de responsabilidad: soy el desarrollador de ViziCities
fuente
Puede usar OSM2world para pasar datos 2D desde OpenStreetMap (map.osm) a objetos 3D (map.obj), luego usar otro convertidor ( convert_obj_three.py ) para convertirlo en un modelo JSON de tres js (map.js), y luego usar en una escena de tres js.
Puedes ver cómo aquí:
https://www.youtube.com/watch?v=S6LbKH6NnZU
fuente
Lo más cercano que he visto es el trabajo de Mike Bostock .
Tiene un mapa realmente genial que tiene una especie de proyección oblicua .
Pero no hay nada que lo haga fácil. D3 hace mi cabeza con respecto a la configuración de proyecciones. Sin embargo, puedes hacer cosas increíbles si trabajas en ello.
fuente
http://osm2world.org/ funciona sin WebGL, pero usa Java en lugar de js.
Diseñado para la salida de datos de edificios de Openstreetmap, también debería ser adoptable para otros datos 3D.
El resultado es un mapa resbaladizo similar al folleto: http://maps.osm2world.org/
fuente
Bueno, con CartoDB puedes hacer algo como esto http://andrewxhill.com/cartodb-examples/scroll-story/pluto/index.html#4
Tiene que usar este parámetro CartoCSS: {building-height: 512; }
Más información aquí: https://github.com/CartoDB/cartodb-pluto
fuente