旋转坐标轴对象.支持鼠标交互式旋转模型对象,理论上可以支持Cesium支持modelMatrix的渲染对象.比如primitive
Name | Type | Description | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
|
Example:
let rotationprimitve;
// primitive添加模型
const position = Cesium.Cartesian3.fromDegrees(117.0744619, 39.0503706, 0);
const modelMatrix = Cesium.Transforms.eastNorthUpToFixedFrame(position, Cesium.Ellipsoid.WGS84);
// primitive添加模型
const tempAddedModel = viewer.scene.primitives.add(Cesium.Model.fromGltf({
url : "../../../Bus.glb",
modelMatrix : modelMatrix,
}));
const rotated = {
x : 0,
y : 0,
z : 0
};
// 回调事件 打印轴向上的旋转角度
function callbackForLog(radians, newModelMatrix) {
rotated[rotationprimitve.rotateAxis] += radians;
console.log('模型以' + rotationprimitve.rotateAxis + "轴旋转,角度是" + Cesium.Math.toDegrees(rotated[rotationprimitve.rotateAxis]));
console.log("新的模型矩阵是");
console.dir(newModelMatrix);
}
// 模型准备好了以后再创建 rotationprimitve
tempAddedModel.readyPromise.then(function(tempAddedModel) {
rotationprimitve = new Cesium.RotationPrimitive({
scene : viewer.scene,
model : tempAddedModel
})
// 添加回调事件
rotationprimitve.rotateEvent.addEventListener(callbackForLog);
});
Members
获取或者设置编辑的Model对象
旋转轴的描述,'x'或者'y'或者'z'
rotateEvent : Event
旋转事件。回调函数两个参数,旋转弧度和旋转后的模型矩阵,旋转方向可以通过rotateAxis成员获取
是否显示
Methods
销毁对象,回收资源