【小沐学GIS】基于C++绘制OpenStreetMap地图矢量数据(QT、OSM、Mapbox)第十一期
本文介绍了三维数字地球GIS开发系列教程,涵盖C++、C#、Python、Java等多种编程语言实现,以及WebGIS领域的WebGL、Three.JS等技术应用。以及OpenStreetMap、Mapbox等地图数据的集成应用。涉及核心渲染技术、数据规范(如MVT/PBF)及多平台适配方案。
| 🍺GIS系列相关工具🍺: | |
|---|---|
| 1 | 【小沐杂货铺】GIS瓦片地图下载工具(高德/天地图/谷歌/必应/OSM/MapBox/ArcGIS) |
| 2 | 【小沐杂货铺】GIS高程地形tif文件转obj/gltf三维模型工具(geotiff to obj/gltf、3d模型处理) |
1、简介
1.1 OSM简介
https://openstreetmap.org
开放街道地图(OpenStreetMap,简称OSM)是一个建构自由内容的网上地图协作计划,目标是创造一个内容自由且能让所有人编辑的世界地图,并且让一般便宜的移动设备有方便的导航方案。

1.2 Mapbox简介
Mapbox 是一家全球性的工程驱动型科技公司,致力于通过实时数据和地图渲染技术,为创新者提供应对不断变化世界的能力。PBF(Protocol Buffer Format)是一种与 Mapbox 矢量瓦片紧密相关的格式。MVT(Mapbox Vector Tile)是矢量瓦片的数据规范,它定义了瓦片中如何表示地理要素,如点、线、面等的数据结构,包含几何图形编码规则、属性存储方式及坐标系转换标准等。
而 PBF 是 MVT 规范的具体二进制编码格式,它使用 Google 的 Protocol Buffers 技术对数据进行压缩,使得传输的数据量通常比图片瓦片或 GeoJSON 等格式小很多,相比 GeoJSON 约可缩减 90%。在实际应用中,符合 MVT 规范的矢量瓦片通常以.pbf 作为文件扩展名进行存储和传输。
2、代码
2.1 代码1
代码编号:C2_1_GIS_OSM_2dMap_MapboxPBF
关键词:qt程序加载mapbox的离线/在线pbf文件二维显示


2.2 代码2
代码编号:C2_2_GIS_OSM_2dMap_osmfile
关键词:qt程序加载OpenStreetMap的.osm离线文件二维显示

结语
如果您觉得该方法或代码有一点点用处,可以给作者点个赞,或打赏杯咖啡;╮( ̄▽ ̄)╭如果您感觉方法或代码不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O???如果您需要相关功能的代码定制化开发,可以留言私信作者;(✿◡‿◡)感谢各位大佬童鞋们的支持!( ´ ▽´ )ノ ( ´ ▽´)っ!!!
如需源代码,请加文章末尾的QQ!
更多推荐

所有评论(0)