ScreenSpaceCameraController

new Cesium.ScreenSpaceCameraController(scene)

根据鼠标输入修改相机的位置和方向。
Name Type Description
scene Scene 场景。

Members

设置 2D 和哥伦布视图中反弹动画的持续时间,单位为秒。
Default Value: 3.0

enableCollisionDetection : boolean

当禁用时,maximumZoomDistanceminimumZoomDistance 的值将被忽略。
Default Value: true
如果为真,则根据标志 enableTranslate、enableZoom、 enableRotate、enableTilt 和 enableLook 条件允许输入。 如果为假,则所有输入都被禁用。 注意:此设置用于临时用例,例如相机飞行和 拖动选择区域(请参见 Picking 演示)。 通常在此类事件开始时设置为 false, 在完成时设置为 true。 要在相机飞行结束后保持输入禁用, 必须使用其他布尔值(enableTranslate、enableZoom、enableRotate、enableTilt 和 enableLook)。
Default Value: true
如果为真,则允许用户使用自由视角。 如果为假,则相机视角只能通过平移 或旋转来改变。 此标志仅适用于 3D 和哥伦布视图模式。
Default Value: true
如果为真,则允许用户旋转世界,从而改变用户的位置。 此标志仅适用于 2D 和 3D。
Default Value: true
如果为真,则允许用户倾斜相机。 如果为假,则相机锁定在当前航向。 此标志仅适用于 3D 和哥伦布视图。
Default Value: true
如果为真,则允许用户在地图上平移。 如果为假,则相机保持锁定在当前位置。 此标志仅适用于 2D 和哥伦布视图模式。
Default Value: true
如果为真,则允许用户缩放。 如果为假,则相机锁定在当前离椭球体的距离上。
Default Value: true
范围为 [0, 1) 的参数,用于确定 相机因惯性而继续旋转的时间。 值为零时,相机将没有惯性。
Default Value: 0.9
范围为 [0, 1) 的参数,用于确定 相机因惯性而继续平移的时间。 值为零时,相机将没有惯性。
Default Value: 0.9
范围为 [0, 1) 的参数,用于确定 相机因惯性而继续缩放的时间。 值为零时,相机将没有惯性。
Default Value: 0.8
允许用户更改相机观看方向的输入。此功能仅适用于 3D 和哥伦布视图模式。

类型可以是 CameraEventTypeundefined、具有 eventTypemodifier 属性的对象,这些属性的类型为 CameraEventTypeKeyboardEventModifier,或者是以上任意类型的数组。

Default Value: { eventType : CameraEventType.LEFT_DRAG, modifier : KeyboardEventModifier.SHIFT }
范围为 [0, 1) 的参数,用于限制各种用户输入的范围 至每帧动画窗口宽度/高度的百分比。 这有助于在低帧率情况下控制相机。
Default Value: 0.1

maximumTiltAngle : number|undefined

相对于椭球体法线的角度,限制用户倾斜相机的最大量。 如果 undefined,则相机倾斜的角度没有限制。
Default Value: undefined
Example:
// Prevent the camera from tilting below the ellipsoid surface
viewer.scene.screenSpaceCameraController.maximumTiltAngle = Math.PI / 2.0;
缩放时相机位置的最大幅度,单位为米。默认为正无穷大。
Default Value: Number.POSITIVE_INFINITY

minimumCollisionTerrainHeight : number

相机在检测与地形碰撞之前必须达到的最小高度。当使用 WGS84 以外的椭球体时,默认为 scene.ellipsoid.minimumRadius * 0.0025。
Default Value: 15000.0 或 scene.ellipsoid.minimumRadius * 0.0025。

minimumPickingTerrainDistanceWithInertia : number

相机在使用惯性缩放时,测试与地形碰撞之前必须保持的最小距离。当使用 WGS84 以外的椭球体时,默认为 scene.ellipsoid.minimumRadius * 0.00063。
Default Value: 4000.0 或 scene.ellipsoid.minimumRadius * 0.00063

minimumPickingTerrainHeight : number

相机在检测地形或场景内容而不是椭球体之前必须达到的最小高度。当使用 WGS84 以外的椭球体时,默认为 scene.ellipsoid.minimumRadius * 0.025。
Default Value: 150000.0 或 scene.ellipsoid.minimumRadius * 0.025
相机在点击发生在天空或太空时,从轨迹球旋转切换到自由视角之前必须达到的最小高度。当使用 WGS84 以外的椭球体时,默认为 ellipsoid.minimumRadius * 1.175。
Default Value: 7500000.0 或 scene.ellipsoid.minimumRadius * 1.175
缩放时相机位置的最小幅度,单位为米。默认为 1.0。
Default Value: 1.0
允许用户绕地球或其他对象旋转的输入。此功能仅适用于 3D 和哥伦布视图模式。

类型可以是 CameraEventTypeundefined、具有 eventTypemodifier 属性的对象,这些属性的类型为 CameraEventTypeKeyboardEventModifier,或者是以上任意类型的数组。

Default Value: CameraEventType.LEFT_DRAG
允许用户在 3D 和哥伦布视图中倾斜或在 2D 中扭转的输入。

类型可以是 CameraEventTypeundefined、具有 eventTypemodifier 属性的对象,这些属性的类型为 CameraEventTypeKeyboardEventModifier,或者是以上任意类型的数组。

Default Value: [CameraEventType.MIDDLE_DRAG, CameraEventType.PINCH, { eventType : CameraEventType.LEFT_DRAG, modifier : KeyboardEventModifier.CTRL }, { eventType : CameraEventType.RIGHT_DRAG, modifier : KeyboardEventModifier.CTRL }]
允许用户在地图上平移的输入。此功能仅适用于 2D 和哥伦布视图模式。

类型可以是 CameraEventTypeundefined、具有 eventTypemodifier 属性的对象,这些属性的类型为 CameraEventTypeKeyboardEventModifier,或者是以上任意类型的数组。

Default Value: CameraEventType.LEFT_DRAG
允许用户缩放的输入。

类型可以是 CameraEventTypeundefined、具有 eventTypemodifier 属性的对象,这些属性的类型为 CameraEventTypeKeyboardEventModifier,或者是以上任意类型的数组。

Default Value: [CameraEventType.RIGHT_DRAG, CameraEventType.WHEEL, CameraEventType.PINCH]
相机缩放速度的乘数。
Default Value: 5.0

Methods

移除此对象持有的鼠标监听器。

一旦对象被销毁,就不应使用;调用除 isDestroyed 以外的任何函数将导致 DeveloperError 异常。 因此, 应将返回值(undefined)分配给该对象,如示例所示。
Throws:
  • DeveloperError : 此对象已被销毁,即,已调用 destroy()。
Example:
controller = controller && controller.destroy();
See:
如果此对象已被销毁,则返回 true;否则返回 false。

如果此对象已被销毁,则不应使用;调用除 isDestroyed 以外的任何函数将导致 DeveloperError 异常。
Returns:
如果此对象已被销毁,则返回 true;否则返回 false
See:
需要帮助?获得答案的最快方法是来自社区和团队 Cesium Forum.