参数化模型是有特殊属性的挛生体,可以通过设置挛生体的属性操作模型的姿态。
.getProperties()
获取挛生体的属性
getProperty(propertyName:string, value:number)
通过属性名查询挛生体的属性值
setProperty(propertyName:string, value:number)
设置属性
示例代码:
//import DT from 'nsdt@ted' //引入world类
// //初始化场景
const viewer = new Cesium.Viewer("cesium", {
selectionIndicator: false,
infoBox: false,
});
viewer.extend(DT.DTWorldMixin);
const world = await viewer.loadScene(sceneId);
//场景初始化完成
console.log(scene);
const twinId = "D-F1250EED-B661-4DA3-A4DD-F19EEC9B8F3B"; //twinId为编辑器中模型信息中的识别码
const twin = world.getTwins(twinId); //根据id获取塔吊对象
const property = twin.getProperties(); //获取挛生体的属性
console.log(property);
//接入塔吊数据后修改挛生体属性
twin.setProperty("ropePosition", userData.ropePosition); //起升高度
twin.setProperty("carPosition", userData.carPosition); //横向位移
twin.setProperty("armRotation", userData.armRotation); //设置回转角度(角度)