创建OrientedBoundingBox的实例。某个物体的定向接地盒是一个封闭凸的长方体。在许多情况下,它可以提供比
new OrientedBoundingBox(center, halfAxes)
BoundingSphere
或AxisAlignedBoundingBox
更紧的边界体积。
Parameters:
Example
// Create an OrientedBoundingBox using a transformation matrix, a position where the box will be translated, and a scale.
var center = new bmgl.Cartesian3(1.0, 0.0, 0.0);
var halfAxes = bmgl.Matrix3.fromScale(new bmgl.Cartesian3(1.0, 3.0, 2.0), new bmgl.Matrix3());
var obb = new bmgl.OrientedBoundingBox(center, halfAxes);
Members
(static) packedLength : Number
用于将对象打包到数组中的元素数。
center : Cartesian3
盒子的中心。
-
Default Value:
Cartesian3.ZERO
halfAxes : Matrix3
转换矩阵,将方框旋转到正确的位置。
-
Default Value:
Matrix3.ZERO
Methods
(static) clone(box, result) → {OrientedBoundingBox}
复制OrientedBoundingBox实例。
Parameters:
由矢量计算的从边界框中心到投射到方向上的位置的距离。
如果您设想具有法向的无限多个平面,这将从与边界框相交的位置计算到最近和最远平面的最小距离。
如果您设想具有法向的无限多个平面,这将从与边界框相交的位置计算到最近和最远平面的最小距离。
Parameters:
计算从边界框上最近点到点的估计距离平方。
Parameters:
Example
// Sort bounding boxes from back to front
boxes.sort(function(a, b) {
return bmgl.OrientedBoundingBox.distanceSquaredTo(b, camera.positionWC) - bmgl.OrientedBoundingBox.distanceSquaredTo(a, camera.positionWC);
});
比较提供的orientedboundingbox组件,如果相等则返回
true
,否则返回false
。
Parameters:
计算给定位置的定向边界框的实例。这是使用面向边界框解决方案(博士论文)实现Stefan Gottschalk的冲突查询。参考:http://gamma.cs.unc.edu/users/gottschalk/main.pdf
Parameters:
Example
// Compute an object oriented bounding box enclosing two points.
var box = bmgl.OrientedBoundingBox.fromPoints([new bmgl.Cartesian3(2, 0, 0), new bmgl.Cartesian3(-2, 0, 0)]);
Parameters:
minimumHeight
(Number)
(default 0.0
)
瓦片内的最小高度(高程)。
maximumHeight
(Number)
(default 0.0
)
瓦片内的最大高度(高程)。
Throws
-
DeveloperError : Rectangle.Width必须介于0和Pi之间。
-
DeveloperError : Rectangle.Height必须介于0和Pi之间。
-
DeveloperError : 椭球必须是旋转椭球(
radii.x == radii.y
)
确定定向边界框位于平面的哪一侧。
Parameters:
确定封堵器是否从视图中隐藏边界框。
Parameters:
将提供的实例存储到提供的数组中。
Parameters:
array
(Array.<Number>)
要打包的数组。
startingIndex
(Number)
(default 0
)
数组中开始打包元素的索引。
从压缩数组中检索实例。
Parameters:
array
(Array.<Number>)
压缩数组。
startingIndex
(Number)
(default 0
)
要解包的元素的起始索引。
复制此OrientedBoundingBox实例。
Parameters:
由矢量计算的从边界框中心到投射到方向上的位置的距离。
如果您设想具有法向的无限多个平面,这将从与边界框相交的位置计算到最近和最远平面的最小距离。
如果您设想具有法向的无限多个平面,这将从与边界框相交的位置计算到最近和最远平面的最小距离。
Parameters:
计算从边界框上最近点到点的估计距离平方。
Parameters:
Example
// Sort bounding boxes from back to front
boxes.sort(function(a, b) {
return b.distanceSquaredTo(camera.positionWC) - a.distanceSquaredTo(camera.positionWC);
});
将此orientedboundingbox与提供的orientedboundingbox组件进行比较,如果相等,则返回
true
,否则返回false
。
Parameters:
确定定向边界框位于平面的哪一侧。
Parameters:
确定封堵器是否从视图中隐藏边界框。