Plane Class |
[SerializableAttribute] public class Plane
The Plane type exposes the following members.
Name | Description | |
---|---|---|
Plane | 默认构造函数,此构造函数会构造一个元素全为0的无效坐标面(等价于Plane.NULL) | |
Plane(Double) | 通过一个包含矩阵元素的数组构造一个平面。 | |
Plane(Mat43) | 通过一个Mat43类型的矩阵直接构造一个平面。 | |
Plane(Plane) | 复制构造函数,根据已有的平面创建一个新的平面实例。 | |
Plane(Vec3, Vec3) | 通过原点、法线构造一个坐标系面 | |
Plane(Vec3, Vec3, Vec3) | 通过原点及X、Y轴构造一个坐标系面 | |
Plane(Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double, Double) | 通过提供的矩阵元素直接构造一个平面。 |
Name | Description | |
---|---|---|
Coeff | 获取平面方程的系数,形式为 Vec4(normal, d)。 | |
Matrix | 获取或设置表示平面的Mat43矩阵。 | |
Normal | 获取平面的法向量。 | |
Origin | 获取或设置平面的原点。 |
Name | Description | |
---|---|---|
Clone | 创建并返回这个平面对象的一个克隆(深拷贝)。 | |
CreateByXZ | 根据指定的原点和两个向量创建一个平面。 | |
Dist | 计算给定点到平面的距离。 | |
Equals |
检查当前平面与指定对象是否相等。
(Overrides ObjectEquals(Object)) | |
FromDir2d | 从平面上的二维方向向量生成三维空间中的向量。 | |
FromPlaneSpace | 将AABB从平面空间转换到世界空间。 | |
FromPoint2d | 将平面上的二维点转换为三维空间中的点。 | |
GetHashCode |
返回当前平面的哈希码。
(Overrides ObjectGetHashCode) | |
Intersect(Plane) | 计算当前平面与另一个平面的交线。 | |
Intersect(Plane, Plane) | 计算当前面与其他两个面的交点 | |
IntersectOBox | 检测平面与定向边界框(OBB)的交点,并计算交点在平面上的二维投影区域。 | |
IntersectRay | 判断一条射线是否与平面相交,并计算交点。 | |
Invert | 创建当前平面的倒置副本。 | |
InvertThis | 对当前平面进行倒置操作。 | |
Move | 将平面沿其法线方向移动指定的距离。 | |
MoveThis | 将当前平面沿其法线方向移动指定的距离。 | |
Normalize | 返回一个规范化的平面副本。 | |
NormalizeThis | 将当前平面的内部矩阵分量(X,Y)规范化。 | |
ProjectPoint | 将给定的三维点投影到平面上。 | |
SetXY | 设置平面的X轴和Y轴,并据此计算Z轴。 | |
SignedDist | 计算给定点到平面的有符号距离,法线方向为正。 | |
ToDir2d | 将三维向量转换为平面上的方向向量(二维)。 | |
ToPlaneSpace(AABB) | 将AABB(轴对齐包围盒)转换到平面空间。 | |
ToPlaneSpace(OBB) | 将OBB(定向包围盒)转换到平面空间。 | |
ToPoint2d | 将三维空间中的点转换为平面上的二维点。 | |
TranformThis | 对此平面应用给定的Mat43矩阵变换。 | |
Transform | 通过给定的Mat43矩阵变换此平面,并返回新的平面对象。 |
Name | Description | |
---|---|---|
Multiply(Mat43, Plane) | 通过将Mat43类型的矩阵与Plane相乘来变换平面。 |
Name | Description | |
---|---|---|
IDENTITY | 表示一个标识坐标系面。这个平面使用了单位矩阵(Mat43.IDENTITY),代表了一个不进行任何变换的默认坐标系。 | |
NULL | 表示一个空的坐标系面。这是一个特殊的平面实例,其矩阵初始化为零。 |