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.
参数名称 | 类型 | 描述信息 | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
可选
An object with the following properties:
|
使用示例:
const maxRadii = ellipsoid.maximumRadius;
const frustum = new Cesium.OrthographicFrustum();
frustum.near = 0.01 * maxRadii;
frustum.far = 50.0 * maxRadii;
成员(属性)
The number of elements used to pack the object into an array.
The aspect ratio of the frustum's width to it's height.
-
默认值:
undefined
The distance of the far plane.
-
默认值:
500000000.0;
The distance of the near plane.
-
默认值:
1.0
readonly projectionMatrix : Matrix4
Gets the orthographic projection matrix computed from the view frustum.
The horizontal width of the frustum in meters.
-
默认值:
undefined
方法
Stores the provided instance into the provided array.
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
value |
OrthographicFrustum | The value to pack. | |
array |
Array.<number> | The array to pack into. | |
startingIndex |
number |
0
|
可选 The index into the array at which to start packing the elements. |
返回值:
The array that was packed into
static Cesium.OrthographicFrustum.unpack(array, startingIndex, result) → OrthographicFrustum
Retrieves an instance from a packed array.
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
array |
Array.<number> | The packed array. | |
startingIndex |
number |
0
|
可选 The starting index of the element to be unpacked. |
result |
OrthographicFrustum | 可选 The object into which to store the result. |
返回值:
The modified result parameter or a new OrthographicFrustum instance if one was not provided.
clone(result) → OrthographicFrustum
Returns a duplicate of a OrthographicFrustum instance.
参数名称 | 类型 | 描述信息 |
---|---|---|
result |
OrthographicFrustum | 可选 The object onto which to store the result. |
返回值:
The modified result parameter or a new OrthographicFrustum instance if one was not provided.
computeCullingVolume(position, direction, up) → CullingVolume
Creates a culling volume for this frustum.
参数名称 | 类型 | 描述信息 |
---|---|---|
position |
Cartesian3 | The eye position. |
direction |
Cartesian3 | The view direction. |
up |
Cartesian3 | The up direction. |
返回值:
A culling volume at the given position and orientation.
使用示例:
// Check if a bounding volume intersects the frustum.
const cullingVolume = frustum.computeCullingVolume(cameraPosition, cameraDirection, cameraUp);
const intersect = cullingVolume.computeVisibility(boundingVolume);
Compares the provided OrthographicFrustum componentwise and returns
true
if they are equal, false
otherwise.
参数名称 | 类型 | 描述信息 |
---|---|---|
other |
OrthographicFrustum | 可选 The right hand side OrthographicFrustum. |
返回值:
true
if they are equal, false
otherwise.
Compares the provided OrthographicFrustum componentwise and returns
true
if they pass an absolute or relative tolerance test,
false
otherwise.
参数名称 | 类型 | 默认值 | 描述信息 |
---|---|---|---|
other |
OrthographicFrustum | The right hand side OrthographicFrustum. | |
relativeEpsilon |
number | The relative epsilon tolerance to use for equality testing. | |
absoluteEpsilon |
number |
relativeEpsilon
|
可选 The absolute epsilon tolerance to use for equality testing. |
返回值:
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.
参数名称 | 类型 | 描述信息 |
---|---|---|
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. |
返回值:
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:
-
DeveloperError : drawingBufferWidth must be greater than zero.
-
DeveloperError : drawingBufferHeight must be greater than zero.
-
DeveloperError : pixelRatio must be greater than zero.
使用示例:
// 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());