Package | laya.d3.math |
Class | public class OrientedBoundBox |
Inheritance | OrientedBoundBox Object |
OrientedBoundBox
类用于创建OBB包围盒。
Property | Defined By | ||
---|---|---|---|
extents : Vector3 每个轴长度的一半 | OrientedBoundBox | ||
transformation : Matrix4x4 这个矩阵表示包围盒的位置和缩放,它的平移向量表示该包围盒的中心 | OrientedBoundBox |
Method | Defined By | ||
---|---|---|---|
创建一个 OrientedBoundBox 实例。
| OrientedBoundBox | ||
cloneTo(destObject:*):void
克隆。
| OrientedBoundBox | ||
containsBoundBox(box:BoundBox):int
该包围盒是否包含空间中另一OBB包围盒
| OrientedBoundBox | ||
该包围盒是否包含空间中一条线
| OrientedBoundBox | ||
containsOrientedBoundBox(obb:OrientedBoundBox):int
该包围盒是否包含空间中另一OBB包围盒
| OrientedBoundBox | ||
containsPoint(point:Vector3):int
该包围盒是否包含空间中一点
| OrientedBoundBox | ||
containsPoints(points:Vector.<Vector3>):int
该包围盒是否包含空间中多点
| OrientedBoundBox | ||
containsSphere(sphere:BoundSphere, ignoreScale:Boolean = false):int
该包围盒是否包含空间中一包围球
| OrientedBoundBox | ||
[static]
根据AABB包围盒创建一个 OrientedBoundBox 实例。
| OrientedBoundBox | ||
[static]
根据包围盒的最大最小两顶点创建一个 OrientedBoundBox 实例。
| OrientedBoundBox | ||
equals(obb:OrientedBoundBox):Boolean
判断两个包围盒是否相等
| OrientedBoundBox | ||
该包围盒的几何中心
| OrientedBoundBox | ||
getCorners(corners:Vector.<Vector3>):void
获取OBB包围盒的8个顶点。
| OrientedBoundBox | ||
getObbtoObbMatrix4x4(a:OrientedBoundBox, b:OrientedBoundBox, noMatrixScaleApplied:Boolean, out:Matrix4x4):void [static]
计算Obb包围盒变换到另一Obb包围盒的矩阵
| OrientedBoundBox | ||
该包围盒需要考虑的尺寸
| OrientedBoundBox | ||
getSizeSquared(out:Vector3):void
该包围盒需要考虑尺寸的平方
| OrientedBoundBox | ||
该包围盒是否与空间中另一射线相交
| OrientedBoundBox | ||
[static]
把一个Obb类型的包围盒b合入另一Obb型包围盒a
| OrientedBoundBox | ||
缩放该包围盒
| OrientedBoundBox | ||
该包围盒的尺寸。
| OrientedBoundBox | ||
变换该包围盒的矩阵信息。
| OrientedBoundBox | ||
平移该包围盒。
| OrientedBoundBox |
extents | property |
public var extents:Vector3
每个轴长度的一半
transformation | property |
public var transformation:Matrix4x4
这个矩阵表示包围盒的位置和缩放,它的平移向量表示该包围盒的中心
OrientedBoundBox | () | Constructor |
public function OrientedBoundBox(extents:Vector3, transformation:Matrix4x4)
创建一个 OrientedBoundBox
实例。
extents:Vector3 — 每个轴长度的一半
| |
transformation:Matrix4x4 — 包围盒的位置和缩放,
|
cloneTo | () | method |
public function cloneTo(destObject:*):void
克隆。
Parameters
destObject:* — 克隆源。
|
containsBoundBox | () | method |
public function containsBoundBox(box:BoundBox):int
该包围盒是否包含空间中另一OBB包围盒
Parameters
box:BoundBox — 包围盒
|
int — 返回位置关系
|
containsLine | () | method |
public function containsLine(point1:Vector3, point2:Vector3):int
该包围盒是否包含空间中一条线
Parameters
point1:Vector3 — 点1
| |
point2:Vector3 — 点2
|
int — 返回位置关系
|
containsOrientedBoundBox | () | method |
public function containsOrientedBoundBox(obb:OrientedBoundBox):int
该包围盒是否包含空间中另一OBB包围盒
Parameters
obb:OrientedBoundBox — OBB包围盒
|
int — 返回位置关系
|
containsPoint | () | method |
public function containsPoint(point:Vector3):int
该包围盒是否包含空间中一点
Parameters
point:Vector3 — 点
|
int — 返回位置关系
|
containsPoints | () | method |
public function containsPoints(points:Vector.<Vector3>):int
该包围盒是否包含空间中多点
Parameters
points:Vector.<Vector3> — 点
|
int — 返回位置关系
|
containsSphere | () | method |
public function containsSphere(sphere:BoundSphere, ignoreScale:Boolean = false):int
该包围盒是否包含空间中一包围球
Parameters
sphere:BoundSphere — 包围球
| |
ignoreScale:Boolean (default = false ) — 是否考虑该包围盒的缩放
|
int — 返回位置关系
|
createByBoundBox | () | method |
public static function createByBoundBox(box:BoundBox, out:OrientedBoundBox):void
根据AABB包围盒创建一个 OrientedBoundBox
实例。
Parameters
box:BoundBox — AABB包围盒。
| |
out:OrientedBoundBox |
createByMinAndMaxVertex | () | method |
public static function createByMinAndMaxVertex(min:Vector3, max:Vector3):OrientedBoundBox
根据包围盒的最大最小两顶点创建一个 OrientedBoundBox
实例。
Parameters
min:Vector3 — 包围盒的最小顶点。
| |
max:Vector3 — 包围盒的最大顶点。
|
OrientedBoundBox |
equals | () | method |
public function equals(obb:OrientedBoundBox):Boolean
判断两个包围盒是否相等
Parameters
obb:OrientedBoundBox — obb包围盒
|
Boolean — Boolean
|
getCenter | () | method |
getCorners | () | method |
public function getCorners(corners:Vector.<Vector3>):void
获取OBB包围盒的8个顶点。
Parameters
corners:Vector.<Vector3> — 返回顶点的输出队列。
|
getObbtoObbMatrix4x4 | () | method |
public static function getObbtoObbMatrix4x4(a:OrientedBoundBox, b:OrientedBoundBox, noMatrixScaleApplied:Boolean, out:Matrix4x4):void
计算Obb包围盒变换到另一Obb包围盒的矩阵
Parameters
a:OrientedBoundBox — Obb包围盒
| |
b:OrientedBoundBox — Obb包围盒
| |
noMatrixScaleApplied:Boolean — 是否考虑缩放
| |
out:Matrix4x4 — 输出变换矩阵
|
getSize | () | method |
getSizeSquared | () | method |
intersectsRay | () | method |
public function intersectsRay(ray:Ray, out:Vector3):Number
该包围盒是否与空间中另一射线相交
Parameters
ray:Ray | |
out:Vector3 |
Number —
|
merge | () | method |
public static function merge(a:OrientedBoundBox, b:OrientedBoundBox, noMatrixScaleApplied:Boolean):void
把一个Obb类型的包围盒b合入另一Obb型包围盒a
Parameters
a:OrientedBoundBox — obb包围盒
| |
b:OrientedBoundBox — obb包围盒
| |
noMatrixScaleApplied:Boolean — 是否考虑缩放
|
scale | () | method |
Size | () | method |
transform | () | method |
translate | () | method |