Моя цель - встроить карту мира в веб-страницу, но без доступа к Интернету. Желательно только набор тайлов в сочетании с какой-то скользкой картой js-lib. Место для хранения на самом деле не проблема, и максимальный уровень масштабирования не требуется.
Какой самый простой способ сделать это?
Я нашел проект, который, кажется, отвечает всем требованиям - Карты на флешке, но он кажется мертвым?
Ответы:
Я бы порекомендовал посмотреть на TileMill, созданный теми же людьми, которые работали на Maps on a Stick. TileMill был либо частью «Карты на палочке», либо стал «Картой на палочке» - что-то в этом роде. Я забыл связь. Тем не мение...
TileMill позволит вам загружать географические данные, стилизовать их так, как вам нравится, а затем создавать набор плиток карты PNG для различных уровней масштабирования.
Выходные данные TileMill - это файл .mbtiles. Это просто база данных sqlite, которая содержит PNG. Если вы работаете в автономном режиме, вероятно, проще извлечь pngs в папку (используя mbutil ), чем использовать sqlite для доступа к ним.
Если ваша карта довольно проста (т.е. минимальное взаимодействие), я бы рекомендовал использовать Leaflet для вашей библиотеки отображений.
В листовке вам нужно добавить слой листов (подсказка: используйте tms, а не xyz).
Надеюсь, это поможет.
Изменить: пару вещей, чтобы отметить.
1) Вам следует знать об лицензионных ограничениях для любых картографических данных, которые вы используете (см. Мой комментарий к вопросу выше).
2) Если вы подобрались достаточно близко, чтобы увидеть дороги и т. Д., Ожидайте, что у вас будет несколько ГБ плиток.
источник
Другим вариантом будет что-то вроде mapwingis . Не нужно для плиток, он будет читать шейп-файлы.
источник
Я нашел новый проект под названием OpenMapTiles , который значительно упрощает создание автономных карт.
Настроить сервер плиток на вашем компьютере очень просто. Установите Node.js (с npm) и выполните два шага в своих документах: https://openmaptiles.org/docs/
Вы можете скачать карты с их веб-сайта (включая карту всей планеты, которая сейчас составляет ~ 44 ГБ): https://openmaptiles.org/downloads/
источник
Если вы можете создать файл MBTiles (например, с Tilemill), то вы можете преобразовать этот файл в простой пакет плиток во вложенных папках, которые соответствуют ожидаемому макету z / x / y, используя
tilestache-seed.py
скрипт, включенный в Tilestache. Вот что я сделал недавно:http://mike.teczno.com/img/hachure/labels/
источник