转载自
http://www.makina-corpus.org/blog/integration-mbtiles-format-android
MapBox is a great GIS project with many great tools.
I was delighted when Makina Corpus allowed me to spend a few days to bring contributions back to the project.
I headed to integrate the Mapbox tile format on Android. Having a quick chat on #mapbox irc channel, revealed that no MBTiles Android component existed yet.
MBTiles embeds tiles in an SQLite database to improve performance, to share a unique file for offline maps, and to offer cross-platform capabilities as database handling is shared among all languages.
I added support for MBTiles to Android in two steps:
- Create a library with a visual example for debugging/fun purpose : load one tile at a time given user input and displaying metadata
- Create/Submit a patch for Osmdroid (A great library that many GIS/Android projects depend on, equivalent of Google MapView but not bound to GoogleMaps) with a simple example showing a map built from the tile set.
Thus, the code should be pretty straightforward as it's actually making a simple query to get the matching tile.
Only a few points stand by:
- You need to add a table with simple information to make your SQLite database Android compatible (not much doc about it)
-
The tileset is stored using the Google Specification (http://www.maptiler.org/google-maps-coordinates-tile-bounds-projection/) - Y-axis is inverted, a one-liner solves this
- I wrote a Metadata parser by spec that validates the metadata information contained in the database
For more in-depth information, have a look to my Github account:
My work was rewarded by a tweet from developmentseed / mapbox !
Thanks for this and for your awesome work,
Cheers !
分享到:
相关推荐
arcgis for android 10.x加载mbtiles文件官方是有demo的,100.x加载mbtiles基本代码也类似,下面以水经注导出的天地图墨卡托投影的mbtiles为例实现加载显示。
在IT行业中,数据存储和迁移是一项关键任务,尤其是在地理信息系统(GIS)领域。XYZ格式的栅格瓦片是一种常见的地图切片存储方式,通常由多个小图像文件组成,每个文件代表地图上的一个特定区域。而MBTiles文件则是...
SuperMap iClient 6R Android客户端是一款强大的GIS(地理信息系统)解决方案,它支持MBTiles离线地图包的使用,为开发者提供了丰富的地图功能。MBTiles是一种将地图切片存储为SQLite数据库格式的离线地图标准,包含...
### GIS学习网站推荐 在地理信息系统(GIS)领域内,获取高质量的学习资源是至关重要的。以下将详细介绍六个最佳GIS学习网站的信息,这些网站涵盖了从基础知识到高级应用的多个层面,对于初学者和专业人士来说都是...
《看漫画学习GIS》是一本独特且创新的学习资料,它通过漫画的形式,使GIS学习变得更加生动有趣,尤其适合初学者和对GIS感兴趣的人群。 GIS的历史可以追溯到20世纪60年代,当时的主要应用集中在土地规划和资源管理...
《Remote Sensing and GIS Integration》这本书为想要深入了解遥感与GIS集成应用的人提供了宝贵的资源。通过学习本书中的理论、方法及应用案例,读者不仅能够掌握遥感技术和GIS的基本原理,还能够学会如何有效地将这...
本压缩包中的“gis学习文档”显然是一系列关于GIS学习的资料,旨在帮助用户掌握GIS的基本概念、操作技巧和应用方法。 GIS学习主要包括以下几个方面: 1. **GIS基础理论**:理解GIS的核心概念,如空间数据模型...
The rapid development of the social economy strongly promotes the urbanization and mo鄄 torization. Meanwhile , parking problems become serious due to the long鄄term imbalance between parking demands ...
### Android GIS 开发包产品手册知识点总结 #### 一、产品总体介绍 随着移动设备的普及和技术的进步,Android操作系统在嵌入式系统中的应用越来越广泛。对于地理信息系统(GIS)而言,开发一个专业的GIS开发平台变...
### Android GIS 开发总结——GEOtools、Google Maps API、UCMap #### 一、引言 随着移动设备性能的提升和技术的发展,地理信息系统(GIS)在移动平台上的应用变得越来越广泛。Android作为全球最流行的移动操作系统...
During the detailed design phase, developers focus on the implementation of individual components and their integration into the overall system. The usability and responsiveness of the Android app are...
GIS(地理信息)+坐标转换+十进制度转度分秒(度分秒转十进制度)+公式 GIS工作者,经常出现坐标格式转换的问题,将十进制度转换为度分秒格式(十进制度->度分秒)例如:87.509614 44.075376 -----> 87°30′34....
managing spatial features and operations on the new Geometry type of H2, the Open Geospatial Consortium (OGC) Simple Features for SQL (SFSQL) functions and additional spatial functions that we (the ...
### 土地利用价值:基于GIS与能值分析的自然及人造资本评估 #### 概述 本研究探讨了意大利坎帕尼亚地区的自然资本与人造资本的价值,并通过地理信息系统(GIS)与能值分析(emergy synthesis)的方法进行了量化...
很全面的、各种各样的地理信息系统学习网站
【GIS技术概述】 GIS,全称为地理信息系统(Geographic Information System),是一种集计算机硬件、软件、地理数据于一体的系统,用于采集、存储、管理、分析和展示所有类型地理信息。它结合了地图学、数据库技术...
对于GIS的学习者来说,掌握有效的资源是非常关键的。以下是一些国内外非常有用的GIS网站,它们提供了丰富的GIS相关知识、工具和数据: 1. ArcGIS Online (https://www.arcgis.com/) Esri的ArcGIS Online是GIS行业...
Utilizing the property that the distances from all points located on the borderline of buffer zone to corresponding buffer target are the same, this paper presents a novel method of buffer generation ...