GeoJSON與GeoBuf互相轉換

2022-06-05 13:30:09 字數 917 閱讀 7841

geojson格式通常比較大,網頁需要較長時間載入,可以使用geobuf進行壓縮。

使用geobuf有很多好處:結構緊湊、檔案小、方便編碼和解碼、能適用各種geojson等等。

使用:1.安裝 geobuf 和 pbf

1

npm install geobuf

2 npm install pbf

2.對geojson編碼

1 let buffer = geobuf.encode(featurecollection, new pbf())
說明:需要引入geobuf 和 pbf,

featurecollection為geojson

3.把geobuf寫入檔案

1 let buffer = geobuf.encode(featurecollection, new

pbf()) // 對geojson編碼2//

使用node寫入檔案 需要先引入'fs'庫

3 fs.writefile('./data/lamp.geobuf.bpf', buffer, function

(error)else

9 })

4.對geobuf解碼

1 axios.get('./data/lamp.geobuf.bpf', ).then((function

(res) ))

注意:讀取geobuf是responsetype必須是「arraybuffer」

看一下檔案大小:只有大約1/5了,效果很明顯吶!

完整應用案例請參考:

shp與geojson格式轉換

有兩種方法,第一種是用arcgismap自帶的toolbox裡的工具,路徑為 system toolboxes conversion tools json json to features與features to json。這裡shp轉json一般不會報錯。主要說明一下json轉shp。1.首先你的...

彙編與C互操作

彙編與c互操作 c語言內嵌彙編 c語言呼叫彙編過程 彙編呼叫c語言過程 1 開啟vs2008,建立乙個vc 空工程。2 在solution explorer上右擊工程名,選擇custom build rules 在彈出的對話方塊上勾選microsoft macro assembler。3 在solu...

spark RDD與dataframe互操作

1 反射 case class方式 此方式必須先知道資料型別與字段,定義class,case class people name string,age int,classname int 再轉換rdd val rdd spark.sparkcontext.textfile f import spar...