CesiumLab V1.1 新功能 (免費Cesium處理工具集)

Cesiumlab 自從上週(3月20日)發佈之後,贏得小夥伴一致好評。
本週繼續推出重大更新: 
建築物矢量數據 轉 3dtiles, 
建築物矢量數據 轉 3dtiles,
建築物矢量數據 轉 3dtiles, 重要的事情說三遍嘛。
廢話少說,先上圖,效果就是這樣滴
CesiumLab V1.1 新功能 (免費Cesium處理工具集)
默認樣式
CesiumLab V1.1 新功能 (免費Cesium處理工具集)
按高程着色樣式
CesiumLab V1.1 新功能 (免費Cesium處理工具集)
處理界面

下來我們介紹一下建築物轉3dtiles的工具特點:
1,輸入支持shp格式          
其它gdal支持的矢量形式,理論上也支持,個人沒有測試,小夥伴有時間可以自己測     
要求文件帶投影信息(一般shp的投影存在同名的prj文件),或者在cesiumlab中手動指定文件投影       
3857的web 墨卡託投影測試過,其它投影請自測
2,支持可選的字段屬性 存入3dtiles batchtable中
1)字符串字段 中文尤其注意,如果帶中文,請在cesiumlab選擇對應的中文編碼(utf8 或者 gbk)
2)可以把shp中非字符串類型,但實際爲數字的字段轉數字
3,支持處理過程中實時取地形高程,這樣3dtiles和地形更匹配

   支持從多個地形文件中取,用戶就不需要去合併dem了。
4,其他細節   

    支持中文utf8或者gbk編碼選擇

   支持高程字段設置

         其它更新:

 3dtiles預覽界面 增加了 樣式編輯器,很方便的查看數據效果
     碼農乾貨:

1, 關於3dtiles的標準,最全的要看這裏
https://github.com/AnalyticalGraphicsInc/3d-tiles/blob/master/TileFormats/Batched3DModel/README.md
但是這個裏面有些信息還是比較老的,比如對於b3dm的格式解析,他上面寫的支持的是 gltf 1.0版本,而且我下載cesium官網的3dtiles數據,發現都是1.0版本,我以爲只支持1.0,所以花了大半天自己去實現gltf1.0的組織(主要是tinygltf支持的2.0)。
後來再次谷歌,搜到cesium的官方博客,已經說明支持2.0了,所以又用tinygltf去實現2.0。
tinygltf 的 github:
https://github.com/syoyo/tinygltf
說實話,tinygltf的代碼質量一般,不過方便的是它一個頭文件就搞定了引用。
2,gltf的標準
1.0 https://github.com/KhronosGroup/glTF/blob/master/extensions/README.md

2.0 https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#glb-file-format-specification
對比後發現,2.0最大的改進就是去掉了煩人的1.0的name引用,採用索引引用,想組織一個1.0的模型,起個名就會讓人崩潰。
符合2.0的官方示例模型:
https://github.com/KhronosGroup/glTF-Sample-Models/tree/master/2.0
3,最後推薦一個c++程序員的json庫,超級好用
https://github.com/nlohmann/json
這個庫有個坑,就是必須utf8編碼處理,如果gbk,嘿嘿,絕對崩潰,這個問題給我帶來好多次莫名其妙的bug,讓我腦細胞死一大片
最後:
Cesiumlab是一款專爲Cesium開源數字地球平臺打造的免費數據處理工具集。目前包含地形數據處理、影像數據處理、點雲數據處理、數據下載、建築物矢量面處理等幾大工具。同時提供一套java開發的數據服務器。形成從數據處理、服務發佈、到代碼集成的完整工具鏈。希望它能幫到您,歡迎反饋交流。

CesiumLab V1.1 新功能 (免費Cesium處理工具集)
官方qq羣

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章