MBTiles
来源:互联网 发布:永川茶竹网软件 编辑:程序博客网 时间:2024/05/22 10:41
MBTiles 是一种地图瓦片存储的数据规范,它使用SQLite数据库,可大大提高海量地图瓦片的读取速度,比通过瓦片文件方式的读取要快很多,适用于Android、IPhone等智能手机的离线地图存储。
官方地址:http://mbtiles.org —— 规范说明
The MBTiles format makes it easy to manage and share thousands or even millions of map tiles.
MBTiles is a specification for storing tiled map data in SQLite databases for immediate use and for transfer. The files are designed for portability of thousands, hundreds of thousands, or even millions of standard map tile images in a single file.
1 Features
- Fast
Transferring an MBTiles file is faster than transferring millions of tile images when loading them onto USB stick, mobile device, or when transferring over a network. The trade-off in database access versus filesystem access when using MBTiles is, in our experience, negligible. - Offline
Because MBTiles files are self contained, they can used without an Internet connection. - Compatible
Images are stored as blob data, so tiles can be read by most SQLite clients. There are manyimplementations of MBTiles from different organizations -- notablyTileMill,TileStream,Arc2Earth,TileStache, and MapBox for iPad. - Open
MBTiles is an open-source specification. The specification text itself requires attribution, but there are absolutely no restrictions or requirements placed on implementations.
2 Example
Download the Haiti Terrain Grey tileset. Then, open the MBTiles file in the sqlite client.
sqlite3 haiti-terrian-grey.mbtiles
Next, run this SQL statment.
SELECT * FROM tiles WHERE zoom_level = 5;
This displays a row for each tile on zoom level five.
5|8|17|????
5|8|18|????
5|9|17|????
5|9|18|????
5|10|17|????
5|10|18|????
The ????
characters represents PNG images stored as blob data.
3 Implementations
3.1 Compliant
- python: raster2mb (write)
- python: mbutil (read/write)
- python: landez (write) (uses mbutil)
- python: TileStache (code) (read/write) - a full, high-quality tile server
- Arc2Earth (write)
- python: mapproxy (announcement) (read/write)
3.2 Others
- objc: MapDBImporter (write)
- java/android: MBTilesDroidSpitter (example) (read)
- objc/iPhone: Maptual (read)
- java/Android: Locus (read)
- Windows compatible viewer: MBTilesViewer (read)
- java/Android: Nutiteq SDK
3.3 Applications
- MapBox for iPad (read)
- js: TileMill (write)
- objc: route-me - using the
RMMBTilesTileSource
connector (example) (read) - TileMill OS X QuickLook & Spotlight plugins (read)
Last edited by willwhite, September 15, 2011
- MBTiles
- MBTiles
- GeoServer 安装mbtiles
- GeoServer发布mbtiles文件
- 构建MBtiles离线地图应用
- Cesium加载MBTiles矢量切片
- 【移动GIS】MBTiles移动存储简介
- 【移动GIS】MBTiles离线地图设置
- Google Maps API加载MBTiles离线地图
- MBTiles离线包生成和使用
- 读取MBTiles数据库里的图片
- 利用MBTiles技术原理减轻离线地图的存储量
- osgEarth MBTiles瓦片加载案例 21.mb_tiles.earth
- VS2013编译32位与36位的sqlite,再CMAKE生成osgearth加载mbtiles文件需要的osgdb_osgearth_mbtiles.dll
- Linux平台weblogic 启动异常慢的问题
- linux的高端内存分析
- AttributeSet、Settings
- C#连接firebird
- response.sendRedirect的执行原理
- MBTiles
- 分布式数据库架构--排序分页分组探讨
- 手把手教你玩转ARP包
- 2011-9-22 21:41:11
- netbeans 快捷键
- vb 框架设计
- Linux时间转化方法
- 深入理解critical_section
- 马氏距离