Cesium开发:模型的CZML文件

CZML是一种用来描述动态场景的JSON架构的语言,主要用于Cesium在浏览器中的展示。通过制作CZML文件,在Cesium进行数据的批量加载,省去单独循环一个一个加载对象的方式。
下边是一个简单的模型CZML文件的配置:
CZML是数组形式的JSON文件,首先有一个根节点,里边是id、name和version,修改的时候,只需要设置名称就行。

下边每个对象是一个模型的参数配置:

id必须是唯一的,name可以有相同的,properties里边可以加一些自定义的属性数据,position是模型的位置信息,orientation是模型的转角信息(heading、pitch、roll),model是模型的路径,比例等参数配置。
其中orientation需要根据模型坐标和转角进行计算,算出来一个4个元素的数组,代码如下:

let position = Cesium.Cartesian3.fromDegrees(evdata.x, evdata.y, evdata.height);

let heading = Cesium.Math.toRadians(evdata.heading);

let pitch = evdata.pitch;

let roll = 0;

let hpr = new Cesium.HeadingPitchRoll(heading, pitch, roll);

let orentation = Cesium.Transforms.headingPitchRollQuaternion(position, hpr);


//模型的czml样式文件
[

{

"id": "document",

"name": "name",

"version": "1.0"

},

{

"id": "uid1",

"name": "uid",

"properties": {

"status": "use"

},

"position": {

"cartographicDegrees": [

116.119,

39.1112,

1.01

]

},

"orientation": {

"unitQuaternion": [0000]

}"model": {

"gltf": "模型路径",

"scale": 1.0,

"minimumPixelSize": 16

}

}]

关注公众号,多多支持!
在这里插入图片描述

发布了135 篇原创文章 · 获赞 9 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/wclwksn2019/article/details/105618379