cesium obj转b3dm转换及加载
Posted implementer
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cesium obj转b3dm转换及加载相关的知识,希望对你有一定的参考价值。
参考文献:github:https://github.com/PrincessGod/objTo3d-tiles
https://blog.csdn.net/taiyang1987912/article/details/84339865
1、npm install -g obj23dtiles
2、新建一个json,设置obj的坐标等信息,经纬度采用弧度制,高程按地形高程输入,最多保留小数点后五位,内容如下
"longitude": -1.31968,
"latitude": 0.698874,
"transHeight": 1142.59807,
"region": true, // Using region bounding volume.
"box": false, // Using box bounding volume.
"sphere": false // Using sphere bounding volume.
//"minHeight": 0.0, // BoundingVolume minimum height in meters.
//"maxHeight": 40.0, // BoundingVolume maximum height in meters.
//"tileWidth": 200.0, // Tile horizontal(cross longitude) length in meters.
//"tileHeight": 200.0, // Tile virtical(cross latitude) length in meters.
//"geometricError": 200.0, // Tile geometric error in meters.
3、cd至程序执行的目录下,./代表当前目录,前面的路径为obj路径,后面的路径为json路径,生成tileset.json及b3dm文件
obj23dtiles -i ./east/east.obj --tileset -p ./east/eastoptions.json
4、将生成的文件导入至cesium目录下,然后加入以下代码对3dtile数据进行加载
var tileset = new Cesium.Cesium3DTileset( url: "model/out8/tileset.json", shadows:Cesium.ShadowMode.DISABLED,//去除阴影 ); // viewer.scene.primitives.add(tileset); viewer.zoomTo(tileset)
ps:程序也支持gltf、glb、i3dm
以上是关于cesium obj转b3dm转换及加载的主要内容,如果未能解决你的问题,请参考以下文章