HybridScreenSpacePanCameraController
A contextual camera controller that combines screenspace map panning and screenspace elevator panning. The controller automatically switches between the two based on the camera's angle relative to nadir. If the camera is looking mostly down (within angleThreshold of nadir), ScreenSpaceMapCameraController is used. If the camera is looking towards the horizon (beyond angleThreshold from nadir), the ScreenSpaceElevatorCameraController is used.
viewer.scene.screenSpaceCameraController.enableInputs = false;
viewer.scene.screenSpaceCameraController.enableCollisionDetection = false;
const hybridController = new HybridScreenSpacePanCameraController();
viewer.addController(hybridController);See also
Properties
The angle threshold in radians that determines which controller is used. If the camera is looking within this angle of nadir, the map controller is used. Otherwise, the elevator controller is used.
The controller that is used when the camera is looking more horizontally (beyond angleThreshold from nadir).
The controller that is used when the camera is looking mostly down (within angleThreshold of nadir).
Functions
Invoked when the controller is added to the DOM. Implement connectedCallback to set up any DOM event listeners.
Invoked when the controller is removed from the DOM. Implement disconnectedCallback to tear down any DOM event listeners.
Invoked when the controller is being updated the first time, immediately before update is called. Implement firstUpdate to perform one-time work after the relevant scene has begun its render loop. Some examples might include initializing simulation time values or adding a primitive to the scene.
Invoked once per frame. Implement update to modify the camera or other parts of the scene.