SceneTransforms
Functions that do scene-dependent transforms between rendering-related coordinate systems.
Methods
-
staticSceneTransforms.wgs84ToDrawingBufferCoordinates(scene, position, result) → Cartesian2
-
Transforms a position in WGS84 coordinates to drawing buffer coordinates. This may produce different results from SceneTransforms.wgs84ToWindowCoordinates when the browser zoom is not 100%, or on high-DPI displays.
Name Type Description scene
Scene The scene. position
Cartesian3 The position in WGS84 (world) coordinates. result
Cartesian2 optional An optional object to return the input position transformed to window coordinates. Returns:
The modified result parameter or a new Cartesian3 instance if one was not provided. This may beundefined
if the input position is near the center of the ellipsoid.Example:
// Output the window position of longitude/latitude (0, 0) every time the mouse moves. var scene = widget.scene; var ellipsoid = scene.globe.ellipsoid; var position = ellipsoid.cartographicToCartesian(new Cesium.Cartographic(0.0, 0.0)); var handler = new Cesium.ScreenSpaceEventHandler(scene.canvas); handler.setInputAction(function(movement) { console.log(Cesium.SceneTransforms.wgs84ToWindowCoordinates(scene, position)); }, Cesium.ScreenSpaceEventType.MOUSE_MOVE);
-
staticSceneTransforms.wgs84ToWindowCoordinates(scene, position, result) → Cartesian2
-
Transforms a position in WGS84 coordinates to window coordinates. This is commonly used to place an HTML element at the same screen position as an object in the scene.
Name Type Description scene
Scene The scene. position
Cartesian3 The position in WGS84 (world) coordinates. result
Cartesian2 optional An optional object to return the input position transformed to window coordinates. Returns:
The modified result parameter or a new Cartesian3 instance if one was not provided. This may beundefined
if the input position is near the center of the ellipsoid.Example:
// Output the window position of longitude/latitude (0, 0) every time the mouse moves. var scene = widget.scene; var ellipsoid = scene.globe.ellipsoid; var position = ellipsoid.cartographicToCartesian(new Cesium.Cartographic(0.0, 0.0)); var handler = new Cesium.ScreenSpaceEventHandler(scene.canvas); handler.setInputAction(function(movement) { console.log(Cesium.SceneTransforms.wgs84ToWindowCoordinates(scene, position)); }, Cesium.ScreenSpaceEventType.MOUSE_MOVE);