OrthographicOffCenterFrustum

new Cesium.OrthographicOffCenterFrustum(options)

The viewing frustum is defined by 6 planes. Each plane is represented by a Cartesian4 object, where the x, y, and z components define the unit vector normal to the plane, and the w component is the distance of the plane from the origin/camera position.
Name Type Description
options Object optional An object with the following properties:
Name Type Default Description
left Number optional The left clipping plane distance.
right Number optional The right clipping plane distance.
top Number optional The top clipping plane distance.
bottom Number optional The bottom clipping plane distance.
near Number 1.0 optional The near clipping plane distance.
far Number 500000000.0 optional The far clipping plane distance.
Example:
const maxRadii = ellipsoid.maximumRadius;

const frustum = new Cesium.OrthographicOffCenterFrustum();
frustum.right = maxRadii * Cesium.Math.PI;
frustum.left = -c.frustum.right;
frustum.top = c.frustum.right * (canvas.clientHeight / canvas.clientWidth);
frustum.bottom = -c.frustum.top;
frustum.near = 0.01 * maxRadii;
frustum.far = 50.0 * maxRadii;

Members

The bottom clipping plane.
Default Value: undefined
The distance of the far plane.
Default Value: 500000000.0;
The left clipping plane.
Default Value: undefined
The distance of the near plane.
Default Value: 1.0
Gets the orthographic projection matrix computed from the view frustum.
The right clipping plane.
Default Value: undefined
The top clipping plane.
Default Value: undefined

Methods

Returns a duplicate of a OrthographicOffCenterFrustum instance.
Name Type Description
result OrthographicOffCenterFrustum optional The object onto which to store the result.
Returns:
The modified result parameter or a new OrthographicOffCenterFrustum instance if one was not provided.

computeCullingVolume(position, direction, up)CullingVolume

Creates a culling volume for this frustum.
Name Type Description
position Cartesian3 The eye position.
direction Cartesian3 The view direction.
up Cartesian3 The up direction.
Returns:
A culling volume at the given position and orientation.
Example:
// Check if a bounding volume intersects the frustum.
const cullingVolume = frustum.computeCullingVolume(cameraPosition, cameraDirection, cameraUp);
const intersect = cullingVolume.computeVisibility(boundingVolume);
Compares the provided OrthographicOffCenterFrustum componentwise and returns true if they are equal, false otherwise.
Name Type Description
other OrthographicOffCenterFrustum optional The right hand side OrthographicOffCenterFrustum.
Returns:
true if they are equal, false otherwise.

equalsEpsilon(other, relativeEpsilon, absoluteEpsilon)Boolean

Compares the provided OrthographicOffCenterFrustum componentwise and returns true if they pass an absolute or relative tolerance test, false otherwise.
Name Type Default Description
other OrthographicOffCenterFrustum The right hand side OrthographicOffCenterFrustum.
relativeEpsilon Number The relative epsilon tolerance to use for equality testing.
absoluteEpsilon Number relativeEpsilon optional The absolute epsilon tolerance to use for equality testing.
Returns:
true if this and other are within the provided epsilon, false otherwise.

getPixelDimensions(drawingBufferWidth, drawingBufferHeight, distance, pixelRatio, result)Cartesian2

Returns the pixel's width and height in meters.
Name Type Description
drawingBufferWidth Number The width of the drawing buffer.
drawingBufferHeight Number The height of the drawing buffer.
distance Number The distance to the near plane in meters.
pixelRatio Number The scaling factor from pixel space to coordinate space.
result Cartesian2 The object onto which to store the result.
Returns:
The modified result parameter or a new instance of Cartesian2 with the pixel's width and height in the x and y properties, respectively.
Throws:
Example:
// Example 1
// Get the width and height of a pixel.
const pixelSize = camera.frustum.getPixelDimensions(scene.drawingBufferWidth, scene.drawingBufferHeight, 0.0, scene.pixelRatio, new Cesium.Cartesian2());
Need help? The fastest way to get answers is from the community and team on the Cesium Forum.