Functions that do scene-dependent transforms between rendering-related coordinate systems.
Methods
static Cesium.SceneTransforms.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 Cartesian2 instance if one was not provided. This may be
undefined
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.
const scene = widget.scene;
const ellipsoid = scene.globe.ellipsoid;
const position = Cesium.Cartesian3.fromDegrees(0.0, 0.0);
const handler = new Cesium.ScreenSpaceEventHandler(scene.canvas);
handler.setInputAction(function(movement) {
console.log(Cesium.SceneTransforms.wgs84ToWindowCoordinates(scene, position));
}, Cesium.ScreenSpaceEventType.MOUSE_MOVE);
static Cesium.SceneTransforms.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 Cartesian2 instance if one was not provided. This may be
undefined
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.
const scene = widget.scene;
const ellipsoid = scene.globe.ellipsoid;
const position = Cesium.Cartesian3.fromDegrees(0.0, 0.0);
const handler = new Cesium.ScreenSpaceEventHandler(scene.canvas);
handler.setInputAction(function(movement) {
console.log(Cesium.SceneTransforms.wgs84ToWindowCoordinates(scene, position));
}, Cesium.ScreenSpaceEventType.MOUSE_MOVE);