支持 MBTiles 规范的预缓存
Posted 勇者工作室
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了支持 MBTiles 规范的预缓存相关的知识,希望对你有一定的参考价值。
SuperMap iServer 支持生成符合MBTiles规范的预缓存(MBTiles是由MapBox制定的一种将瓦片地图数据存储到SQLite数据库中并可快速使用,管理和分享的规范。 该规范由MapBox制定,详见 http://mapbox.com/mbtiles-spec/)。要生成符合MBTiles规范的预缓存,需满足以下条件:
所用数据的地图投影系统为:Web Mercator。
按照下表中的比例尺列表生成预缓存。这种比例尺定义的初始化显示级别0中包含了1张覆盖全球的256*256大小的切片,并且定义原点坐标为(-20037508.34,-20037508.34)。MBTiles的切片组织符合OSGeo的TMS规范,并且受Web Mercator坐标系约束(详见http://wiki.osgeo.org/wiki/Tile_Map_Service_Specification#global-mercator)。所支持比例尺见表1中的地图比例尺一栏。
表 1 MBTiles各显示级别参数列表
显示级别 |
地图宽高 (像素) |
切片数量 |
地面分辨率(米 / 像素) |
地图比例尺(96 dpi) |
0 |
256 |
1 |
156543.033928 |
1:591657527.591555 |
1 |
512 |
4 |
78271.516964 |
1:295828763.795777 |
2 |
1024 |
16 |
39135.758482 |
1:147914381.897889 |
3 |
2048 |
64 |
19567.879241 |
1:73957190.948944 |
4 |
4096 |
256 |
9783.939621 |
1:36978595.474472 |
5 |
8192 |
1024 |
4891.969810 |
1:18489297.737236 |
6 |
16384 |
4096 |
2445.984905 |
1:9244648.868618 |
7 |
32768 |
16384 |
1222.992453 |
1:4622324.434309 |
8 |
65536 |
65536 |
611.496226 |
1:2311162.217155 |
9 |
131072 |
262144 |
305.748113 |
1:1155581.108577 |
10 |
262144 |
1048576 |
152.874057 |
1:577790.554289 |
11 |
524288 |
4194304 |
76.437028 |
1:288895.277144 |
12 |
1048576 |
16777216 |
38.218514 |
1:144447.638572 |
13 |
2097152 |
67108864 |
19.109257 |
1:72223.819286 |
14 |
4194304 |
268435456 |
9.554629 |
1:36111.909643 |
15 |
8388608 |
1073741824 |
4.777314 |
1:18055.954822 |
16 |
16777216 |
4294967296 |
2.388657 |
1:9027.977411 |
17 |
33554432 |
17179869184 |
1.194329 |
1:4513.988705 |
18 |
67108864 |
68719476736 |
0.597164 |
1:2256.994353 |
19 |
134217728 |
274877906944 |
0.298582 |
1:1128.497176 |
20 |
268435456 |
1099511627776 |
0.149291 |
1:564.248588 |
21 |
536870912 |
4398046511104 |
0.074646 |
1:282.124294 |
22 |
1073741824 |
17592186044416 |
0.037323 |
1:141.062147 |
|
下面以示范数据中的China400为例来介绍具体使用步骤。
首先在桌面中打开China400数据,确认投影信息。如下图所示,符合规范要求的球面墨卡托投影。(如果数据不满足投影要求,请在桌面中做地图的动态投影转换)
然后在预缓存中配置缓存比例尺。选取表1中的前三个比例尺为例,如下图所示:
缓存任务执行完成后,可以在MBTiles Viewer(或其它支持MBTiles规范的客户端)中浏览。将output/sqlite下刚生成好的China_256X256_PNG.mbtiles文件拖入MBTiles Viewer窗口,文件中的切片会自动呈现,效果如下图所示:
以上是关于支持 MBTiles 规范的预缓存的主要内容,如果未能解决你的问题,请参考以下文章
[转]MBTiles 1.2 规范翻译
[转]MBTiles 离线地图演示 - 基于 Google Maps JavaScript API v3 + SQLite
A.004.14.Mysql开发设计最佳规范
JAVA缓存- JSR107 最终规范
下载的mbtiles中的多语言支持
JavaScript编码规范