云境模型实例,继承自 Cesium.Entity

viewer.entities.add(
new ModelEntity({
name: 'man',
position: [lng, lat, height],
heading,
scale: 1.2,
uri: '../data/Cesium_Man.glb',
eyeOffset: [0, 0, 2],
viewFrom: [0, -10, 10],
viewer,
})
);

Hierarchy

  • Entity
    • ModelEntity

Constructors

Methods

  • moveAlong 过程中相机跟随在轨迹后上方,开启跟随之后相机视角将自动修改,期间不可进行地图视角操作

    Parameters

    • followOptions: undefined | FollowOptions

      相机跟随模型的相对距离、倾角、转向速度; undefined 的时候镜头不再跟随

    Returns void

    //镜头跟随在模型后上方 50m 的地方
    modelEntity.follow({range:50,pitch:-40,steeringSpeed:30})
  • 获取模型实例对应的Primitive实例

    Returns any

  • 开始沿着动画轨迹移动,通过time可以控制启动时的位置

    Parameters

    • path: ModelAnimationPath

      用 AnimationPath 构造的轨迹

    • Optionaltracking: boolean

      //是否跟踪

    • Optionalrepeat: boolean

      //是否连续循环播放

    • Optionaltime: JulianDate

      //开始动画的时间,

    • OptionalonEnd: ((params: {
          index: number;
      }) => void)

      //动画运行到最后一个节点的时候触发的回调

        • (params): void
        • Parameters

          • params: {
                index: number;
            }
            • index: number

          Returns void

    • OptionalonReachKeyNode: ((params: {
          index: number;
      }) => void)

      //动画运行到关键节点的时候触发的回调

        • (params): void
        • Parameters

          • params: {
                index: number;
            }
            • index: number

          Returns void

    Returns void

    mdel.moveAlong(
    new AnimationPath([
    {
    position: [lng, lat, height],
    time: new Date(),
    },
    {
    position: [lng + 0.00001, lat, height],
    time: new Date(new Date().getTime() + 2000),
    },
    {
    position: [
    lng + 0.00001,
    lat + 0.00001,
    height,
    ],
    time: new Date(new Date().getTime() + 4000),
    },
    ]),
    true,
    true,
    0,
    () => {
    console.log('reachEndNode');
    },
    (e) => {
    console.log('reachNode', e.index);
    }
    );
  • 设置模型被操控的时候的速度、转向速度等

    Parameters

    Returns void

  • 开始操作模型,可以用ASDW/上下左右控制模型移动和旋转 如果模型在进行轨迹动画,或已经在操控中,则调用无效

    Parameters

    • mode: number = 0

      值为1的时候第1人称视角,值为3的时候第三人称视角,同Cesium的trackingEntity

    Returns void

  • 停止操控模型,恢复正常Cesium交互

    Returns void

  • 停止跟随

    Returns void

  • 停止沿着轨迹移动

    Returns undefined | JulianDate

    停止时动画运行到的时刻,可传入moveAlong的time字段用于从中途继续动画

  • 切换操作模型,

    Parameters

    • mode: number

      值为1的时候第1人称视角,值为3的时候第三人称视角,同Cesium的trackingEntity

    Returns void