第一人称交互,开启后交互方式为:ASDW前后左右平移,Q上升E下降,左键旋转,右键拖拽上下左右平移,滚轮沿着视线拉近拉远; 默认进行碰撞检测,按住shift交互时不进行碰撞检测

const interaction = new YunJing.FirstPersonInteraction({
viewer,
yunjingLayer: yunjing,
speed: 4,
});
interaction.open();

Constructors

Accessors

  • get isIndoor(): boolean
  • Returns boolean

  • set isIndoor(value): void
  • Parameters

    • value: boolean

    Returns void

  • set speed(v): void
  • Parameters

    • v: number

    Returns void

Methods

  • Parameters

    • pos: Cartesian3

    Returns any

  • Parameters

    • tileConfig: TileNode

    Returns void

  • Parameters

    • cameraPosEnu: Cartesian3
    • direction: Cartesian3
    • newPosEnu: Cartesian3

    Returns undefined | Cartesian3

  • Parameters

    • stat: StickStatus

    Returns void

  • 关闭第一人称交互,恢复Cesium默认交互

    Returns void

  • 镜头沿着方向移动一定距离

    Parameters

    • dir: [number, number, number] | Cartesian3

      移动的方向

    • deltaDis: number

      移动的距离

    • check: boolean = true

      是否进行碰撞检测

    Returns void

  • 沿着轨迹向前或者往后移动一次

    Parameters

    • type: "forward" | "backward"

      'forward' | 'backward' 往前或者往后移动一次

    • deltaDis: number

      移动的距离

    Returns undefined | boolean

  • 设置不同的移动模式

    Parameters

    • mode: "scene" | "person" | "fixedLine"

      'person' | 'scene' | 'fixedLine' 设置不同的移动模式

    Returns void