1 瓦片地图保存为本地文件
利用地图下载器,将不同公司、不同类型的地图下载到本地,供应用软件或发布WMS服务使用。
注意:地图下载器下载的地图采用的投影方式,有EPSG:4326(WGS84)、EPSG:3857(WGS84 Web Mercator)等
- 优点:加载速度快
- 缺点:文件多,千万上亿个图片文件,不易部署
2 采用MBTile数据库
地图层级高时有很多重复的图片,这些重复的图片在数据库只存一次就够了。
MBTile数据表:
CREATE TABLE map (
map_type INTEGER,
zoom_level INTEGER,
tile_row INTEGER,
tile_column INTEGER,
tile_id INTEGER
);
CREATE TABLE images (
tile_id INTEGER PRIMARY KEY AUTOINCREMENT,
tile_data BLOB,
title_finge varchar
);
CREATE TABLE mapmeta (
metakey TEXT,
metavalue TEXT
);
MBTile数据库的设计思想:
(1)将第一张地图提取指纹,并将图片指纹、图片GUID、图片一起存入数据表images
(2)将后续的瓦片地图都提取指纹,查询数据库中已有的指纹,若相似,则不存储图片,map表中的tile_id指向该相似图片即可;若不相似,则存储
- 优点:数据库占用空间小,部署方便
- 缺点:瓦片首次存入数据库时,耗时长。
GMap.net控件自带的数据库没有进行图片相似度的比较,而是存储的所用地图瓦片