Meu objetivo é ter um mapa-múndi incorporado em uma página da web, mas sem acesso à internet. De preferência, apenas um conjunto de blocos em combinação com algum mapa slpy js-lib. O espaço de armazenamento não é realmente um problema e o nível máximo de zoom não é necessário.
Qual é a maneira mais fácil de conseguir isso?
Encontrei um projeto que parece se encaixar na conta - o Google Maps está em um bastão, mas parece estar morto?
Respostas:
Eu recomendaria procurar no TileMill, feito pelas mesmas pessoas que trabalhavam no Maps On A Stick. O TileMill fazia parte do Maps On A Stick ou é o que o Maps On A Stick se tornou - algo assim. Eu esqueço a conexão. De qualquer forma...
O TileMill permitirá que você carregue dados geográficos, estilize como quiser e, em seguida, crie um conjunto de blocos de mapa PNG para uma variedade de níveis de zoom.
A saída do TileMill é um arquivo .mbtiles. Este é apenas um banco de dados sqlite que contém os PNGs. Se você estiver trabalhando offline, provavelmente será mais fácil extrair os pngs para uma pasta (usando mbutil ) em vez de usar o sqlite para acessá-los.
Se o seu mapa for bastante simples (por exemplo, interação mínima), recomendo o uso do Leaflet na sua biblioteca de mapas.
No folheto, você precisará adicionar uma camada de mosaico (dica: use tms em vez de xyz).
Espero que ajude.
Edit: Algumas coisas a serem observadas.
1) Você deve estar ciente das restrições de licenciamento com qualquer dado de mapa que você usa (veja meu comentário na pergunta acima).
2) Se você chegar perto o suficiente para ver estradas, etc., espere ter vários GBs de blocos.
fonte
Outra opção seria algo como mapwingis . Não há necessidade de ladrilhos, ele lerá shapefiles.
fonte
Eu encontrei um novo projeto chamado OpenMapTiles , que facilita muito o uso de mapas offline.
A configuração de um servidor lado a lado em sua máquina é muito fácil. Instale o Node.js (com npm) e siga as duas etapas em seus documentos: https://openmaptiles.org/docs/
Você pode fazer o download dos mapas no site deles (incluindo um mapa de todo o planeta, que agora tem aproximadamente 44 GB): https://openmaptiles.org/downloads/
fonte
Se você puder criar um arquivo MBTiles (por exemplo, com Tilemill), poderá converter esse arquivo em um pacote simples de blocos em pastas aninhadas que estejam em conformidade com o layout z / x / y esperado
tilestache-seed.py
, um script incluído no Tilestache. Aqui está um que eu fiz recentemente:http://mike.teczno.com/img/hachure/labels/
fonte