RotationPrimitive

new Cesium.RotationPrimitive(options)

旋转坐标轴对象.支持鼠标交互式旋转模型对象,理论上可以支持Cesium支持modelMatrix的渲染对象.比如primitive
Name Type Description
options Object
Name Type Default Description
scene Scene Scene.
model Model | Primitive Model
show Boolean true optional 是否显示..
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'
旋转事件。回调函数两个参数,旋转弧度和旋转后的模型矩阵,旋转方向可以通过rotateAxis成员获取
是否显示

Methods

destroy()undefined

销毁对象,回收资源
Returns:
Need help? The fastest way to get answers is from the community and team on the Cesium Forum.