Mapbox矢量瓦片pbf文件信息解析

Mapbox矢量瓦片pbf文件信息解析

2023年6月29日发(作者:)

Mapbox⽮量⽡⽚pbf⽂件信息解析Mapbox由于配合其⽮量⽡⽚pbf格式⽂件,有突出的渲染性能,被很多公司和开发者所使⽤。⽮量⽡⽚的格式有很多种,其中pbf格式是⼀种⼆进制⽂件,直接把数据信息压缩位⼆进制了。⽮量⽡⽚优势主要优势有数据传输量⼩相对与栅格⽡⽚数据量⼤⼤缩⼩不受分辨率影响⽮量⽡⽚⽆论在地图放⼤到各种级别都是清晰的,都不会出现栅格放⼤后显⽰像元的问题。动态样式⽮量⽡⽚会根据⽤户的定制的样式动态绘制,也可以动态改变⽀持前端查询由于使⽤的是⽮量⽡⽚,可以在前端直接进⾏信息查询⽮量⽡⽚的问题⽮量⽡⽚的优势虽然多,但问题也很明显,坐标和属性信息是可以被⽤户解析的,也就是安全性的问题。Mapbox的pbf⽡⽚解析今天就展⽰⼀下,如何解析Mapbox的pbf⽡⽚⽂件。这⾥我是⽤进⾏开发和测试的。从Mabox地图的url中抓取了⼀个pbf⽂件。依赖{ "name": "testpbf", "version": "1.0.0", "description": "", "main": "", "scripts": { "test": "echo "Error: no test specified" && exit 1" }, "author": "", "license": "ISC", "dependencies": { "fs": "^0.0.1-security", "pbf": "^3.0.5", "vector-tile": "^1.3.0" }}js解析代码var Pbf = require('pbf');var fs = require('fs');var VectorTile = require('vector-tile').VectorTile;var data = leSync('');var tile = new VectorTile(new Pbf(data));var layerNames = ();("图层名称", layerNames);if ( > 0) { //获取其中⼀个图层的⼀个要素的geoJson格式; var orig = [layerNames[0]].feature(0).toGeoJSON(0, 0, 1); ("geojson", orig); //查看坐标 ("部分坐标",nates[0]);}运⾏代码node

输出结果"C:Program " 图层名称 [ 'dt_xzy' ]geojson { type: 'Feature', geometry: { type: 'MultiPolygon', coordinates: [ [Array], [Array], [Array] ] }, properties: { objectid: 5050, qhdm: '411525112', qhmc: '陈集乡', sjxzqdm: '411525', bz: ' ', provincecode: '41', citycode: '4115', countycode: '411525', uuid: ' ', mj: 148351.45 }}部分坐标 [ [ [ -110.6103515625, 85.34532513469131 ], [ -110.8740234375, 85.734 ], [ -109.775390625, 85.309 ], [ -109.3798828125, 85.59 ], .......................................... [ -149.58984375, 84.67351256610525 ], [ -148.53515625, 84.6898 ], [ -148.447265625, 84.79 ], [ -151., 85.26 ], [ -151., 85.182 ], [ -154.3359375, 85.34532513469131 ], [ -110.6103515625, 85.34532513469131 ] ]]Process finished with exit code 0⽮量⽡⽚使⽤注意从上⾯的代码可以看出pbf⽂件是可以被解析出来的,所以在使⽤时⼀定要注意数据脱敏坐标数据脱密防爬⾍抓取

发布者:admin,转转请注明出处:http://www.yc00.com/news/1687987606a64189.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信