qd-changjing/public/static/Build/Documentation/OrthographicOffCenterFrustu...

1890 lines
72 KiB
HTML
Raw Normal View History

2022-07-05 16:56:29 +08:00
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>OrthographicOffCenterFrustum - Cesium Documentation</title>
<!--[if lt IE 9]>
<script src="javascript/html5.js"></script>
<![endif]-->
<link href="styles/jsdoc-default.css" rel="stylesheet">
<link href="styles/prism.css" rel="stylesheet">
</head>
<body>
<div id="main">
<h1 class="page-title">
<a href="index.html"><img src="Images/CesiumLogo.png" class="cesiumLogo"></a>
OrthographicOffCenterFrustum
<div class="titleCenterer"></div>
</h1>
<section>
<header>
</header>
<article>
<div class="container-overview">
<div class="nameContainer">
<h4 class="name" id="OrthographicOffCenterFrustum">
<a href="#OrthographicOffCenterFrustum" class="doc-link"></a>
new Cesium.OrthographicOffCenterFrustum<span class="signature">(<span class="optional">options</span>)</span>
<div class="source-link rightLinks">
<a href="https://github.com/CesiumGS/cesium/blob/1.91/Source/Core/OrthographicOffCenterFrustum.js#L38">Core/OrthographicOffCenterFrustum.js 38</a>
</div>
</h4>
</div>
<div class="description">
The viewing frustum is defined by 6 planes.
Each plane is represented by a <a href="Cartesian4.html"><code>Cartesian4</code></a> 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.
</div>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last">
<span class="optional">optional</span>
An object with the following properties:
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>left</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="default">
</td>
<td class="description last">
<span class="optional">optional</span>
The left clipping plane distance.</td>
</tr>
<tr>
<td class="name"><code>right</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="default">
</td>
<td class="description last">
<span class="optional">optional</span>
The right clipping plane distance.</td>
</tr>
<tr>
<td class="name"><code>top</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="default">
</td>
<td class="description last">
<span class="optional">optional</span>
The top clipping plane distance.</td>
</tr>
<tr>
<td class="name"><code>bottom</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="default">
</td>
<td class="description last">
<span class="optional">optional</span>
The bottom clipping plane distance.</td>
</tr>
<tr>
<td class="name"><code>near</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="default">
<code class="language-javascript">1.0</code>
</td>
<td class="description last">
<span class="optional">optional</span>
The near clipping plane distance.</td>
</tr>
<tr>
<td class="name"><code>far</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="default">
<code class="language-javascript">500000000.0</code>
</td>
<td class="description last">
<span class="optional">optional</span>
The far clipping plane distance.</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<dl class="details">
<h5>Example:</h5>
<pre><code class="language-javascript">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;</code></pre>
</dl>
</div>
<h3 class="subsection-title">Members</h3>
<div class="nameContainer">
<h4 class="name" id="bottom">
<a href="#bottom" class="doc-link"></a>
bottom<span class="type-signature"> : Number</span>
<div class="source-link rightLinks">
<a href="https://github.com/CesiumGS/cesium/blob/1.91/Source/Core/OrthographicOffCenterFrustum.js#L70">Core/OrthographicOffCenterFrustum.js 70</a>
</div>
</h4>
</div>
<div class="description">
The bottom clipping plane.
</div>
<dl class="details">
<span class="details-header">Default Value:</span>
<code class="language-javascript">undefined</code>
</dl>
<div class="nameContainer">
<h4 class="name" id="far">
<a href="#far" class="doc-link"></a>
far<span class="type-signature"> : Number</span>
<div class="source-link rightLinks">
<a href="https://github.com/CesiumGS/cesium/blob/1.91/Source/Core/OrthographicOffCenterFrustum.js#L86">Core/OrthographicOffCenterFrustum.js 86</a>
</div>
</h4>
</div>
<div class="description">
The distance of the far plane.
</div>
<dl class="details">
<span class="details-header">Default Value:</span>
<code class="language-javascript">500000000.0;</code>
</dl>
<div class="nameContainer">
<h4 class="name" id="left">
<a href="#left" class="doc-link"></a>
left<span class="type-signature"> : Number</span>
<div class="source-link rightLinks">
<a href="https://github.com/CesiumGS/cesium/blob/1.91/Source/Core/OrthographicOffCenterFrustum.js#L46">Core/OrthographicOffCenterFrustum.js 46</a>
</div>
</h4>
</div>
<div class="description">
The left clipping plane.
</div>
<dl class="details">
<span class="details-header">Default Value:</span>
<code class="language-javascript">undefined</code>
</dl>
<div class="nameContainer">
<h4 class="name" id="near">
<a href="#near" class="doc-link"></a>
near<span class="type-signature"> : Number</span>
<div class="source-link rightLinks">
<a href="https://github.com/CesiumGS/cesium/blob/1.91/Source/Core/OrthographicOffCenterFrustum.js#L78">Core/OrthographicOffCenterFrustum.js 78</a>
</div>
</h4>
</div>
<div class="description">
The distance of the near plane.
</div>
<dl class="details">
<span class="details-header">Default Value:</span>
<code class="language-javascript">1.0</code>
</dl>
<div class="nameContainer">
<h4 class="name" id="projectionMatrix">
<a href="#projectionMatrix" class="doc-link"></a>
<span class="type-signature attribute-readonly">readonly</span> projectionMatrix<span class="type-signature"> : <a href="Matrix4.html">Matrix4</a></span>
<div class="source-link rightLinks">
<a href="https://github.com/CesiumGS/cesium/blob/1.91/Source/Core/OrthographicOffCenterFrustum.js#L156">Core/OrthographicOffCenterFrustum.js 156</a>
</div>
</h4>
</div>
<div class="description">
Gets the orthographic projection matrix computed from the view frustum.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="right">
<a href="#right" class="doc-link"></a>
right<span class="type-signature"> : Number</span>
<div class="source-link rightLinks">
<a href="https://github.com/CesiumGS/cesium/blob/1.91/Source/Core/OrthographicOffCenterFrustum.js#L54">Core/OrthographicOffCenterFrustum.js 54</a>
</div>
</h4>
</div>
<div class="description">
The right clipping plane.
</div>
<dl class="details">
<span class="details-header">Default Value:</span>
<code class="language-javascript">undefined</code>
</dl>
<div class="nameContainer">
<h4 class="name" id="top">
<a href="#top" class="doc-link"></a>
top<span class="type-signature"> : Number</span>
<div class="source-link rightLinks">
<a href="https://github.com/CesiumGS/cesium/blob/1.91/Source/Core/OrthographicOffCenterFrustum.js#L62">Core/OrthographicOffCenterFrustum.js 62</a>
</div>
</h4>
</div>
<div class="description">
The top clipping plane.
</div>
<dl class="details">
<span class="details-header">Default Value:</span>
<code class="language-javascript">undefined</code>
</dl>
<h3 class="subsection-title">Methods</h3>
<div class="nameContainer">
<h4 class="name" id="clone">
<a href="#clone" class="doc-link"></a>
clone<span class="signature">(<span class="optional">result</span>)</span> &rarr; <span class="type-signature returnType"><a href="OrthographicOffCenterFrustum.html">OrthographicOffCenterFrustum</a></span>
<div class="source-link rightLinks">
<a href="https://github.com/CesiumGS/cesium/blob/1.91/Source/Core/OrthographicOffCenterFrustum.js#L363">Core/OrthographicOffCenterFrustum.js 363</a>
</div>
</h4>
</div>
<div class="description">
Returns a duplicate of a OrthographicOffCenterFrustum instance.
</div>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>result</code></td>
<td class="type">
<span class="param-type"><a href="OrthographicOffCenterFrustum.html">OrthographicOffCenterFrustum</a></span>
</td>
<td class="description last">
<span class="optional">optional</span>
The object onto which to store the result.</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
The modified result parameter or a new OrthographicOffCenterFrustum instance if one was not provided.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="computeCullingVolume">
<a href="#computeCullingVolume" class="doc-link"></a>
computeCullingVolume<span class="signature">(position, direction, up)</span> &rarr; <span class="type-signature returnType"><a href="CullingVolume.html">CullingVolume</a></span>
<div class="source-link rightLinks">
<a href="https://github.com/CesiumGS/cesium/blob/1.91/Source/Core/OrthographicOffCenterFrustum.js#L182">Core/OrthographicOffCenterFrustum.js 182</a>
</div>
</h4>
</div>
<div class="description">
Creates a culling volume for this frustum.
</div>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>position</code></td>
<td class="type">
<span class="param-type"><a href="Cartesian3.html">Cartesian3</a></span>
</td>
<td class="description last">
The eye position.</td>
</tr>
<tr>
<td class="name"><code>direction</code></td>
<td class="type">
<span class="param-type"><a href="Cartesian3.html">Cartesian3</a></span>
</td>
<td class="description last">
The view direction.</td>
</tr>
<tr>
<td class="name"><code>up</code></td>
<td class="type">
<span class="param-type"><a href="Cartesian3.html">Cartesian3</a></span>
</td>
<td class="description last">
The up direction.</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
A culling volume at the given position and orientation.
</div>
<dl class="details">
<h5>Example:</h5>
<pre><code class="language-javascript">// Check if a bounding volume intersects the frustum.
const cullingVolume = frustum.computeCullingVolume(cameraPosition, cameraDirection, cameraUp);
const intersect = cullingVolume.computeVisibility(boundingVolume);</code></pre>
</dl>
<div class="nameContainer">
<h4 class="name" id="equals">
<a href="#equals" class="doc-link"></a>
equals<span class="signature">(<span class="optional">other</span>)</span> &rarr; <span class="type-signature returnType">Boolean</span>
<div class="source-link rightLinks">
<a href="https://github.com/CesiumGS/cesium/blob/1.91/Source/Core/OrthographicOffCenterFrustum.js#L393">Core/OrthographicOffCenterFrustum.js 393</a>
</div>
</h4>
</div>
<div class="description">
Compares the provided OrthographicOffCenterFrustum componentwise and returns
<code>true</code> if they are equal, <code>false</code> otherwise.
</div>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>other</code></td>
<td class="type">
<span class="param-type"><a href="OrthographicOffCenterFrustum.html">OrthographicOffCenterFrustum</a></span>
</td>
<td class="description last">
<span class="optional">optional</span>
The right hand side OrthographicOffCenterFrustum.</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
<code>true</code> if they are equal, <code>false</code> otherwise.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="equalsEpsilon">
<a href="#equalsEpsilon" class="doc-link"></a>
equalsEpsilon<span class="signature">(other, relativeEpsilon, <span class="optional">absoluteEpsilon</span>)</span> &rarr; <span class="type-signature returnType">Boolean</span>
<div class="source-link rightLinks">
<a href="https://github.com/CesiumGS/cesium/blob/1.91/Source/Core/OrthographicOffCenterFrustum.js#L416">Core/OrthographicOffCenterFrustum.js 416</a>
</div>
</h4>
</div>
<div class="description">
Compares the provided OrthographicOffCenterFrustum componentwise and returns
<code>true</code> if they pass an absolute or relative tolerance test,
<code>false</code> otherwise.
</div>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>other</code></td>
<td class="type">
<span class="param-type"><a href="OrthographicOffCenterFrustum.html">OrthographicOffCenterFrustum</a></span>
</td>
<td class="default">
</td>
<td class="description last">
The right hand side OrthographicOffCenterFrustum.</td>
</tr>
<tr>
<td class="name"><code>relativeEpsilon</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="default">
</td>
<td class="description last">
The relative epsilon tolerance to use for equality testing.</td>
</tr>
<tr>
<td class="name"><code>absoluteEpsilon</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="default">
<code class="language-javascript">relativeEpsilon</code>
</td>
<td class="description last">
<span class="optional">optional</span>
The absolute epsilon tolerance to use for equality testing.</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
<code>true</code> if this and other are within the provided epsilon, <code>false</code> otherwise.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="getPixelDimensions">
<a href="#getPixelDimensions" class="doc-link"></a>
getPixelDimensions<span class="signature">(drawingBufferWidth, drawingBufferHeight, distance, pixelRatio, result)</span> &rarr; <span class="type-signature returnType"><a href="Cartesian2.html">Cartesian2</a></span>
<div class="source-link rightLinks">
<a href="https://github.com/CesiumGS/cesium/blob/1.91/Source/Core/OrthographicOffCenterFrustum.js#L312">Core/OrthographicOffCenterFrustum.js 312</a>
</div>
</h4>
</div>
<div class="description">
Returns the pixel's width and height in meters.
</div>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>drawingBufferWidth</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last">
The width of the drawing buffer.</td>
</tr>
<tr>
<td class="name"><code>drawingBufferHeight</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last">
The height of the drawing buffer.</td>
</tr>
<tr>
<td class="name"><code>distance</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last">
The distance to the near plane in meters.</td>
</tr>
<tr>
<td class="name"><code>pixelRatio</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last">
The scaling factor from pixel space to coordinate space.</td>
</tr>
<tr>
<td class="name"><code>result</code></td>
<td class="type">
<span class="param-type"><a href="Cartesian2.html">Cartesian2</a></span>
</td>
<td class="description last">
The object onto which to store the result.</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
The modified result parameter or a new instance of <a href="Cartesian2.html"><code>Cartesian2</code></a> with the pixel's width and height in the x and y properties, respectively.
</div>
<h5>Throws:</h5>
<ul>
<li>
<div class="param-desc">
<span class="param-type"><a href="DeveloperError.html">DeveloperError</a></span>
: drawingBufferWidth must be greater than zero.
</div>
</li>
<li>
<div class="param-desc">
<span class="param-type"><a href="DeveloperError.html">DeveloperError</a></span>
: drawingBufferHeight must be greater than zero.
</div>
</li>
<li>
<div class="param-desc">
<span class="param-type"><a href="DeveloperError.html">DeveloperError</a></span>
: pixelRatio must be greater than zero.
</div>
</li>
</ul>
<dl class="details">
<h5>Example:</h5>
<pre><code class="language-javascript">// 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());</code></pre>
</dl>
</article>
</section>
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.10</a>
</footer>
</div>
<div class="nav">
<div class="menu">
<input type="text" class="classFilter" id="ClassFilter" placeholder="Search">
<ul id="ClassList"><li data-name="Animation"><a href="Animation.html">Animation</a></li><li data-name="AnimationViewModel"><a href="AnimationViewModel.html">AnimationViewModel</a></li><li data-name="Appearance"><a href="Appearance.html">Appearance</a></li><li data-name="ArcGisMapServerImageryProvider"><a href="ArcGisMapServerImageryProvider.html">ArcGisMapServerImageryProvider</a></li><li data-name="ArcGISTiledElevationTerrainProvider"><a href="ArcGISTiledElevationTerrainProvider.html">ArcGISTiledElevationTerrainProvider</a></li><li data-name="ArcType"><a href="global.html#ArcType">ArcType</a></li><li data-name="AssociativeArray"><a href="AssociativeArray.html">AssociativeArray</a></li><li data-name="Axis"><a href="global.html#Axis">Axis</a></li><li data-name="AxisAlignedBoundingBox"><a href="AxisAlignedBoundingBox.html">AxisAlignedBoundingBox</a></li><li data-name="backFaceCulling"><a href="global.html#backFaceCulling">backFaceCulling</a></li><li data-name="barycentricCoordinates"><a href="global.html#barycentricCoordinates">barycentricCoordinates</a></li><li data-name="BaseLayerPicker"><a href="BaseLayerPicker.html">BaseLayerPicker</a></li><li data-name="BaseLayerPickerViewModel"><a href="BaseLayerPickerViewModel.html">BaseLayerPickerViewModel</a></li><li data-name="Billboard"><a href="Billboard.html">Billboard</a></li><li data-name="BillboardCollection"><a href="BillboardCollection.html">BillboardCollection</a></li><li data-name="BillboardGraphics"><a href="BillboardGraphics.html">BillboardGraphics</a></li><li data-name="BillboardVisualizer"><a href="BillboardVisualizer.html">BillboardVisualizer</a></li><li data-name="binarySearch"><a href="global.html#binarySearch">binarySearch</a></li><li data-name="binarySearchComparator"><a href="global.html#binarySearchComparator">binarySearchComparator</a></li><li data-name="BingMapsGeocoderService"><a href="BingMapsGeocoderService.html">BingMapsGeocoderService</a></li><li data-name="BingMapsImageryProvider"><a href="BingMapsImageryProvider.html">BingMapsImageryProvider</a></li><li data-name="BingMapsStyle"><a href="global.html#BingMapsStyle">BingMapsStyle</a></li><li data-name="BlendEquation"><a href="global.html#BlendEquation">BlendEquation</a></li><li data-name="BlendFunction"><a href="global.html#BlendFunction">BlendFunction</a></li><li data-name="BlendingState"><a href="BlendingState.html">BlendingState</a></li><li data-name="BlendOption"><a href="global.html#BlendOption">BlendOption</a></li><li data-name="BoundingRectangle"><a href="BoundingRectangle.html">BoundingRectangle</a></li><li data-name="BoundingSphere"><a href="BoundingSphere.html">BoundingSphere</a></li><li data-name="boundingSphere"><a href="global.html#boundingSphere">boundingSphere</a></li><li data-name="BoxEmitter"><a href="BoxEmitter.html">BoxEmitter</a></li><li data-name="BoxGeometry"><a href="BoxGeometry.html">BoxGeometry</a></li><li data-name="BoxGeometryUpdater"><a href="BoxGeometryUpdater.html">BoxGeometryUpdater</a></li><li data-name="BoxGraphics"><a href="BoxGraphics.html">BoxGraphics</a></li><li data-name="BoxOutlineGeometry"><a href="BoxOutlineGeometry.html">BoxOutlineGeometry</a></li><li data-name="buildModuleUrl"><a href="global.html#buildModuleUrl">buildModuleUrl</a></li><li data-name="CallbackProperty"><a href="CallbackProperty.html">CallbackProperty</a></li><li data-name="Camera"><a href="Camera.html">Camera</a></li><li data-name="CameraEventAggregator"><a href="CameraEventAggregator.html">CameraEventAggregator</a></li><li data-name="CameraEventType"><a href="global.html#CameraEventType">CameraEventType</a></li><li data-name="cancelAnimationFrame"><a href="global.html#cancelAnimationFrame">cancelAnimationFrame</a></li><li data-name="Cartesian2"><a href="Cartesian2.html">Cartesian2</a></li><li data-name="Cartesian3"><a href="Cartesian3.html">Cartesian3</a></li><li data-name="Cartesian4"><a href="Cartesian4.html">Cartesian4</a></li><li data-name="Cartographic"><a href="Cartographic.html">Cartographic</a></li><li data-name="CartographicGeocoderService"><a href="CartographicGeocoderServic
</div>
</div>
<script>
if (window.frameElement) {
document.body.className = 'embedded';
var ele = document.createElement('a');
ele.className = 'popout';
ele.target = '_blank';
ele.href = window.location.href;
ele.title = 'Pop out';
document.getElementById('main').appendChild(ele);
}
// Set targets on external links. Sandcastle and GitHub shouldn't be embedded in any iframe.
Array.prototype.forEach.call(document.getElementsByTagName('a'), function(a) {
if (/^https?:/i.test(a.getAttribute('href'))) {
a.target='_blank';
}
});
</script>
<script src="javascript/prism.js"></script>
<script src="javascript/cesiumDoc.js"></script>
</body>
</html>