# 离线地图 **Repository Path**: BpFdiTop/offline-map ## Basic Information - **Project Name**: 离线地图 - **Description**: No description available - **Primary Language**: JavaScript - **License**: BSD-3-Clause - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 1 - **Created**: 2022-03-26 - **Last Updated**: 2024-08-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: 离线地图, graphhopper, JavaScript, Leaflet ## README # 离线地图 ## 介绍 因为项目问题需要使用离线环境下使用地图进行路径规划,然后拼接出该版本地图:地图范围为一省,级别设置6-15,生产环境最好下载到16级别瓦片数据,下载数据源选择LocaSpace Viewer。 ## 软件架构 ### 1. 离线地图路径规划: 开源地图引擎:graphhopper(https://github.com/graphhopper/graphhopper) 环境准备:graphhopper-web-5.0.jar、离线地图数据(https://download.openstreetmap.fr/extracts/asia/china/) 运行命令:java -Ddw.graphhopper.datareader.file=shandong-latest.osm.pbf -jar graphhopper-web-5.0.jar server config-example.yml 如果想让您本机的服务其他机器都能访问,注意修改配置文件最后的:bindHost: localhost 把localhost改成你的机器IP地址 由于数据过大,跑的时候可能出现内存问题,可以试试加上-Xmx3g -Xms3g java -Xmx3g -Xms3g -Ddw.graphhopper.datareader.file=china-latest.osm.pbf -jar graphhopper-web-5.0.jar server config-example.yml java -Ddw.graphhopper.datareader.file=china-latest.osm.pbf -jar graphhopper-web-5.0.jar server config-example.yml ### 2. osm地图瓦片生成: (1)使用maperitive下载,不推荐,高级别瓦片下载速度1.1file/s,级别11以上下不动 //设置范围 set-geo-bounds 114.8,34.2,122.8,38.4 //设置下载级别 generate-tiles minzoom=5 maxzoom=12 (2)使用工具:切割下载离线瓦片地图Offine Map Maker(http://www.allmapsoft.com/omm/index.html) 推荐使用,但最高下载级别13,可用于低精度,并且生成代码,节省开发时间 选择OpenStreetMap Map; From zoom:7 To zoom:13 shandong L:114.8 R:122.8 T:38.4 B:34.2 修改生成的文件 shandong_leaflet.html 参考教程: https://www.cnblogs.com/badaoliumangqizhi/p/15802023.html (3)使用LocaSpace Viewer(http://www.3dyuanjing.com/locaspaceviewer.html), 国产软件非常良心极度推荐, 注册登录->图层只选osm普通地图->地名搜索山东->工具栏-地图数据|影像地图下载|影像/地图->点击选择面-> 点框选区域->选择下载格式瓦片,级别6-15 参考文档: http://www.tuxingis.com/document/product/1/64/7/7-1/7-1-1.html osm的全国地图数据最好不要用,存在国界问题,台湾!!! ### 3. 插件的引入与路径规划请求: 右键菜单leaflet.contextmenu(https://github.com/aratcliffe/Leaflet.contextmenu) 线动画leaflet-ant-path(https://github.com/rubenspgcavalcante/leaflet-ant-path) 离线路径规划参考: https://blog.csdn.net/wml00000/article/details/84108694 ## 使用说明 1.配置nginx并启动 start nginx nginx -s stop 2.启动离线路径规划 java -Ddw.graphhopper.datareader.file=china-latest.osm.pbf -jar graphhopper-web-5.0.jar server config-example.yml