如果提到客户端离线地图,很多人熟悉的是奥维地图(多源地图,可离线下载、高程分析、轨迹规划、POI标注等,兼顾户外导航与专业测绘 / 规划,基础功能免费,VIP费用数十到数百元)。
但今天我所说的"离线地图",并非指客户端缓存地图 ,而是 服务端的离线 ------即自己部署地图服务,不依赖第三方线上能力。
有两方面的需求会促使这种地图的部署:
- 内网环境限制 :政府、军工、金融等单位的内部网络无法访问互联网;
- 定制化需求强烈 :线上地图无法满足的特殊图层。
这类系统在国内政府项目或大型企业内部项目中较为常见。
服务器选择
要部署离线地图,需关注提供哪些服务能力,选择合适方案。目前主要分为以下几类:
1. 成熟的地图供应商
- 百度政企地图 DUGIS;
- 高德 iMap。
这些方案提供 数据和能力一体化的完整解决方案 ,无合规风险,能提供与线上服务几乎一致的能力,例如 POI 搜索、路径规划,地图类型可包含卫星图、电子道路图等。
唯一缺点是价格 :一套服务通常百万起步;若需全国范围或高精度地图,价格可能高达千万。
2. Bigemap
Bigemap 支持一整套解决方案。但需注意:
- 若用于商用,存在一定合规风险 ,因其仅有乙级测绘资质,无法提供全面的地图服务;
- 另外Bigemap 本身不生产地图数据 ,而是提供地图下载器和编辑器,可从其他地图服务下载数据,也可编辑部分地图数据(后文详述)。
其离线地图部署服务价格在 万元级别 ,较为亲民,能力上也支持 POI 搜索和路径规划。
3. 开源服务方案
常用组合: GeoServer + OSM 。
GeoServer 是广泛使用的地图服务器,在能力、扩展性、学习曲线、性能等方面表现较优,特点包括:
- 发布 WMS/WFS/WMTS 等 OGC 标准服务;
- 支持瓦片、要素、空间分析;
- 支持数据的发布与编辑;
- 支持样式定制、权限管理;
但 GeoServer 原生不支持 POI 搜索和路径规划 ,需搭配扩展实现。且 本身不提供地图数据 ,通常配合 OSM 使用。
典型流程: - 下载 OSM 数据(目标区域的 PBF 格式);
- 通过 osm2pgsql 将数据导入 PostgreSQL + PostGIS;
- 在 GeoServer 中配置 PostGIS 数据源,发布 WMS/WMTS 瓦片服务、WFS 要素服务;
- 搭配 pgRouting 实现路径规划,通过 PostGIS 索引实现 POI 搜索。
注意:OSM 是海外开源平台,提供全球免费地理数据(路网、POI、建筑等),由志愿者维护。国内从业者广泛使用并贡献数据,但其地图数据 未经国内审核 ,商用场景需谨慎。
4. 静态服务方案
如果不需要 POI 搜索、路径规划等功能,最简单的方案是部署静态 HTTP 服务器,暴露 WMTS 或 TMS 协议服务。这两种协议非常简单------只要有对应瓦片数据,即可通过 Nginx 或 Apache 提供服务。
相关配置可参考我的另一篇文章: https://blog.csdn.net/tzy233/article/details/79780444
瓦片数据获取方式见下节。
前文提到的各方案对比如下:
|-------------|---------------------------------------|--------------------------------------------|------------------|---------------------|------------------|------------------------|
| 方案类型 | 代表产品 | 核心能力 | 是否含地图数据 | 合规性 | 成本 | 适用场景 |
| 互联网供应商 | 高德 iMap、百度政企地图 DUGIS | 提供 WMS/WMTS/POI/路径规划/卫星图/电子图等完整能力 | 是(可按区域采购) | 高(具备甲级测绘资质) | 百万起,全国高精地图费用可达千万 | 对合规性、功能完整性要求高的政企项目 |
| Bigemap | Bigemap离线地图服务 | 支持瓦片下载、编辑、发布、POI 搜索、路径规划 | 否(需自行获取数据) | 中低(仅乙级资质,数据来源可能不合规) | 万元级(软件授权费) | 中小项目、测试环境、非严格合规场景 |
| 开源方案 | GeoServer + OSM + PostGIS + pgRouting | 发布 WMS/WFS/WMTS;支持样式、权限、空间分析;可扩展 POI 与路径规划 | 否(需导入 OSM 或自有数据) | 低(OSM 数据未经国内审核) | 免费 | 技术团队较强、预算有限、可接受合规风险的项目 |
| 静态服务 | Nginx / Apache + 预切瓦片 | 仅提供 WMTS 瓦片服务(无搜索、无路径规划等) | 否(需提前准备瓦片) | 取决于瓦片来源 | 极低(仅服务器成本) | 展示型应用,如大屏、监控、内部看板 |
地图数据获取
地图最核心的是数据。本节先不考虑 POI 等矢量数据,仅讨论地图瓦片数据。只要有了瓦片数据,我们就能通过前文提到的静态服务方案部署一个基础的地图服务了。
关于瓦片原理,可参考: https://blog.csdn.net/oYinHeZhiGuang/article/details/115731622
1. 合规采购(推荐) 最直接且合规的方式是向有资质的供应商采购地图数据
常见供应商还是那几家:
- 互联网地图:高德、百度;
- 传统供应商:四维图新、天地图。
通常可按需购买(如仅一个省或城市)。
前文提过他们的优点了,主要是合规且数据全面。缺点是价格较贵,一般在几十万元以上。
2. 工具下载(存在合规风险)
既然线上地图能被看到,理论上就可通过脚本或工具下载其瓦片数据。这些工具分两类:
(1)付费工具:如 Bigemap
Bigemap 是我们的常客了,未来我们介绍 3D 地图时也会提到。
它提供地图瓦片下载、编辑、格式转换等功能。
内置多种地图源:天地图、高德、Google、OSM、ArcGIS、必应等,可直接选择下载。
价格方面:官网可下载试用;正式使用需购买绑定电脑的Key或可插拔的U盾,永久授权,价格约几千元。
(2)开源工具:如 QGIS
免费,除了广为人知的QGIS,还有很多开源工具(毕竟原理非常简单)。
但稳定性、性能、功能性和数据源支持均不如付费工具。
还需自行申请或购买各地图服务商的 API Key,除了google外,每个线上地图供应商都有自己的认证系统 ,而每个Key有调用限额,下载大范围数据时往往不够用。
另外,这些线上地图数据通常存在合规风险。
- OSM 虽开源免费,但在国内使用不合规;且只有道路图,无卫星图,质量相对付费产品也差一些;
- Google 质量最好,也未明确声明瓦片使用条款,但在国内使用仍属不合规;
- 高德、百度、腾讯等明确禁止下载其地图数据,尤其禁止商用。
关于合规可以参考的我另一篇文章:
https://blog.csdn.net/tzy233/article/details/156914011
另外,下载离线地图还需要考虑精度与数据量:地图放大倍数越高(层级 z 越大),精度越高,数据量也越大。
全国 1--15 级数据约 1TB;在中国,15 级对应精度约 3 米/像素。
下表为瓦片层级与精度参考(数据来自 AI):
|---------|------------|--------------|---------------------|
| 瓦片层级(z) | 赤道精度(米/像素) | 单瓦片覆盖赤道长度(米) | 核心适用场景 |
| z0 | 156543.03 | 400750166.86 | 全球概览(仅 1 张瓦片) |
| z1 | 78271.52 | 200375083.43 | 半球概览 |
| z2 | 39135.76 | 100187541.71 | 大洲群概览 |
| z3 | 19567.88 | 50093770.86 | 单一大洲概览 |
| z4 | 9783.94 | 25046885.43 | 大国 / 大洲分区概览 |
| z5 | 4891.97 | 12523442.71 | 省级行政区概览 |
| z6 | 2445.98 | 6261721.36 | 地级市群概览 |
| z7 | 1222.99 | 3130860.68 | 单个地级市概览 |
| z8 | 611.50 | 1565430.34 | 区县概览 |
| z9 | 305.75 | 782715.17 | 乡镇 / 街道群概览 |
| z10 | 152.87 | 391357.59 | 单个乡镇 / 主干道网 |
| z11 | 76.44 | 195678.79 | 社区 / 次干道网 |
| z12 | 38.22 | 97839.40 | 小区 / 支路网 |
| z13 | 19.11 | 48919.70 | 如商场、学校 |
| z14 | 9.55 | 24459.85 | 楼栋 / 小路(如小区内道路) |
| z15 | 4.78 | 12229.93 | 高清街区 / 建筑轮廓 |
| z16 | 2.39 | 6114.97 | 楼栋细节 / 人行道 |
| z17 | 1.19 | 3057.48 | 高清卫星图 / 门牌级标注 |
| z18 | 0.60 | 1528.74 | 街景级细节 / 井盖 / 路灯 |
| z19 | 0.30 | 764.37 | 精细化地籍 / 园区设施(如井盖编号) |