ht.Math.Plane(normal, constant)

new Plane(normal, constant)

定义一个在三维空间中无限延伸的二维平面

Parameters:
Name Type Attributes Description
normal ht.Math.Vector3 <optional>

单位长度的平面法向量,默认值为 { x: 1, y: 0, z: 0 }

constant number <optional>

原点到平面的有符号距离,默认值为 0

Members

constant :Array.<number>

原点到平面的有符号距离

normal :ht.Math.Vector3

平面法向量

Methods

clone() → {ht.Math.Plane}

返回一个与当前平面有相同 normal 和 constant 的平面

Returns:
ht.Math.Plane

coplanarPoint(Vector3) → {ht.Math.Vector3}

返回一个共面点,通过原点的法向量在平面上投影算得

Parameters:
Name Type Description
Vector3 ht.Math.Vector3

结果会拷贝到该向量中

Returns:
ht.Math.Vector3

distanceToPoint(point) → {number}

返回点 point 到平面的有符号距离

Parameters:
Name Type Description
point ht.Math.Vector3
Returns:
number -

有符号距离

distanceToSphere(Sphere) → {number}

返回球面 sphere 的边缘到平面的最短距离

Parameters:
Name Type Description
Sphere ht.Math.Sphere
Returns:
number -

距离

equals(Plane) → {boolean}

判断两个平面是否相等

Parameters:
Name Type Description
Plane ht.Math.Plane
Returns:
boolean

intersectsSphere(Sphere) → {boolean}

判断当前平面是否与球体 Sphere 相交

Parameters:
Name Type Description
Sphere ht.Math.Sphere
Returns:
boolean

negate() → {number}

法向量与常量求反

Returns:
number

normalize() → {ht.Math.Plane}

归一化法向量 normal ,并相应的调整常量 constant

Returns:
ht.Math.Plane

projectPoint(point, target) → {ht.Math.Vector3}

将一个点 point 投射到当前平面上

Parameters:
Name Type Attributes Description
point ht.Math.Vector3

需要投射到当前平面的点

target ht.Math.Vector3 <optional>

当前平面上离投射点最近的点,结果将会写入该向量中

Returns:
ht.Math.Vector3

set(normal, constant) → {ht.Math.Plane}

设置平面法向量 normal 和常量 constant 属性值

Parameters:
Name Type Description
normal ht.Math.Vector3
constant ht.Math.Vector3
Returns:
ht.Math.Plane

setComponents(x, y, z, constant) → {ht.Math.Plane}

设置平面法向量的 x, y, z 和常量 constant 属性值

Parameters:
Name Type Description
x number
y number
z number
constant ht.Math.Vector3
Returns:
ht.Math.Plane

setFromCoplanarPoints(a, b, c) → {ht.Math.Plane}

将当前平面设置为 a ,b , c 三个点确定的平面

Parameters:
Name Type Description
a ht.Math.Vector3
b ht.Math.Vector3
c ht.Math.Vector3
Returns:
ht.Math.Plane

setFromNormalAndCoplanarPoint(normal, point) → {ht.Math.Plane}

通过平面上的一点以及法线确定原点到平面的最短距离

Parameters:
Name Type Description
normal ht.Math.Vector3

平面单位法向量

point ht.Math.Vector3

平面上的点

Returns:
ht.Math.Plane -

距离

translate(offset) → {ht.Math.Plane}

将平面平移给定向量大小

Parameters:
Name Type Description
offset ht.Math.Vector3

平移量

Returns:
ht.Math.Plane