2
  1. *.pbf("Protocolbuffer Binary Format") 主要用于替代 XML 格式。
  2. *.osm.pbf和有两种格式*.vector.pbf。我可以使用哪些工具来打开这些文件?(我知道JOSM可以打开 *.osm.pbf 文件,但无法打开 *.vector.pbf 文件。)
  3. 如果我想在 Mapbox 中编写自己的 *.vector.pbf 文件,我该怎么做?

谢谢!

4

2 回答 2

5

关于问题 #2,提取 PBF 数据

使用 GDAL 的 ogr2ogr 是最简单的方法(我发现)。给定一个名为1583.vector.pbfdecode 它的文件,例如,shapefile(文件夹)名为output

# cmd   show prog.  output format     output name     input name
ogr2ogr -progress -f "ESRI Shapefile" output          1583.vector.pbf 

关于问题 #3,创建 PBF 数据

使用与上述相同的命令,但交换输入/输出和输出格式:

# example source: https://gdal.org/drivers/vector/mvt.html
ogr2ogr -f MVT mytileset source.gpkg -dsco MAXZOOM=10
于 2020-01-12T19:47:17.377 回答
4

Mapbox 使用的矢量瓦片被序列化为协议缓冲区。协议缓冲区允许您有效地压缩图块内的矢量数据。

Mapbox Tile Specification可在 github 上找到。Esri为其产品采用了相同的规范。

您可以在此处找到解析器、渲染器和 CLI 实用程序的列表:https ://github.com/mapbox/awesome-vector-tiles

在常见的场景中,您可以使用mapbox-gl-js在客户端渲染矢量图块。要生成矢量图块,您可以使用Mapbox Studio。这将需要在 Studio 中在线上传您的数据。您还可以使用Mapbox Studio Classic(旧版本)在本地生成图块。

Mapbox Studio 在内部使用tilelive API,因此您可以通过编程方式生成切片。在上面的列表中,还有其他不错的选择。

于 2016-03-16T13:37:00.327 回答