美文网首页
cesium czml数据(3D-gltf)3d模型朝向

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

作者: ME88 | 来源:发表于2021-06-07 11:48 被阅读0次

    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模型朝向

          本文链接:https://www.haomeiwen.com/subject/hcxfeltx.html