cesium czml数据(3D-gltf)3d模型朝向

czml是一种用来描述动态场景的JSON架构语言,主要用于Cesium数据与程序分离,就如同Google Earth和KML的关系。采用数据驱动的方式,不用写代码即可构建丰富的动态场景。

一个CZML文档包含一个JSON数组,数组中每一个对象都是一个CZML数据包(packket),一个packet对应一个场景中的对象,例如一个飞机。

Cesium.CzmlDataSource.load可以加载czml对象或者czml文档的url

CZML比较特殊的是跟时间序列相关的属性。

var czml = [{

id: "document",

name: "czml car",

version: "1.0",

},

{

id: "carModel",     //3d模型的id

name: "car on ground",

availability: "2012-08-04T16:00:00Z/2012-08-04T16:01:00Z",   //czml路径动画总共需要的时间,这是个时间范围

model: {

gltf: "img/car01.glb",     //3d模型   win10中有3D查看器,其中可找到模型做测试

scale: 4.0,   //模型显示时是原始图的比例的多少

minimumPixelSize: 228,   

},

position: {

epoch: "2012-08-04T16:00:00Z",    //开始时间

cartographicDegrees: [     //路线的数组集合,4个元素为一组

// 第一个参数,为开始时间,第二个参数为 经度(WGS84),第三个参数为 纬度,第四个参数为 高度

0, 114.61993981613305, 38.810271080278774, 19,     

60, 114.61780979082804, 38.81062262806864, 21

],

}

},

];

3D模型加载后默认为朝向X轴(正东);

更改czml中model的朝向为自定义position路线

// 模型

var car = viewer.dataSources.add(Cesium.CzmlDataSource.load(czml));

    car.then(function(ds){

var s = ds.entities.getById("carModel");

s.orientation =new Cesium.VelocityOrientationProperty(s.position);

})


你可能感兴趣的:(cesium czml数据(3D-gltf)3d模型朝向)