Mi objetivo es tener un mapa del mundo incrustado en una página web, pero sin acceso a Internet. Preferiblemente solo un conjunto de mosaicos en combinación con algún mapa deslizante js-lib. El espacio de almacenamiento no es realmente un problema, y no se requiere el nivel máximo de zoom.
¿Cuál es la forma más fácil de lograr esto?
Encontré un proyecto que parece encajar: los mapas en un palo, pero parece estar muerto.
Respuestas:
Recomendaría buscar en TileMill, que está hecho por las mismas personas que trabajaban en Maps On A Stick. TileMill era parte de Maps On A Stick, o es en lo que se convirtió Maps On A Stick, algo así. Olvidé la conexión. De todas formas...
TileMill le permitirá cargar datos geográficos, diseñarlos como desee y luego crear un conjunto de mosaicos de mapas PNG para una variedad de niveles de zoom.
La salida de TileMill es un archivo .mbtiles. Esta es solo una base de datos sqlite que contiene los PNG. Si está trabajando sin conexión, probablemente sea más fácil extraer los pngs a una carpeta (usando mbutil ) en lugar de usar sqlite para acceder a ellos.
Si su mapa es bastante simple (es decir, interacción mínima), recomendaría usar Leaflet para su biblioteca de mapas.
En el folleto, debe agregar una capa de mosaico (pista: use tms en lugar de xyz).
Espero que ayude.
Editar: un par de cosas a tener en cuenta.
1) Debe tener en cuenta las restricciones de licencia con cualquier dato de mapa que utilice (consulte mi comentario sobre la pregunta anterior).
2) Si te acercas lo suficiente como para ver carreteras, etc., entonces espera tener varios GB de mosaicos.
fuente
Otra opción sería algo así como mapwingis . No hay necesidad de azulejos, leerá archivos de forma.
fuente
Encontré un nuevo proyecto llamado OpenMapTiles , que hace que sea mucho más fácil tener mapas sin conexión.
Configurar un servidor de mosaico en su máquina es muy fácil. Instale Node.js (con npm) y siga los dos pasos en sus documentos: https://openmaptiles.org/docs/
Puede descargar los mapas de su sitio web (incluido un mapa de todo el planeta, que ahora es de ~ 44 GB): https://openmaptiles.org/downloads/
fuente
Si puede crear un archivo MBTiles (por ejemplo, con Tilemill), puede convertir ese archivo en una simple bolsa de mosaicos en carpetas anidadas que se ajustan al diseño z / x / y esperado utilizando
tilestache-seed.py
un script incluido con Tilestache. Aquí hay uno que hice recientemente:http://mike.teczno.com/img/hachure/labels/
fuente