Plane

麻状平面。

描述

平面表示标准化的平面方程。基本上,“法线”是平面的法线(a、b、c归一化),而“d”是原点到平面的距离(在“法线”方向)。“上方”或“上方”平面被认为是法线指向的平面一侧。

教程

属性

float

d

0.0

Vector3

normal

Vector3( 0, 0, 0 )

float

x

0.0

float

y

0.0

float

z

0.0

方法

Plane

Plane ( float a, float b, float c, float d )

Plane

Plane ( Vector3 v1, Vector3 v2, Vector3 v3 )

Plane

Plane ( Vector3 normal, float d )

Vector3

center ( )

float

distance_to ( Vector3 point )

Vector3

get_any_point ( )

bool

has_point ( Vector3 point, float epsilon=1e-05 )

Vector3

intersect_3 ( Plane b, Plane c )

Vector3

intersects_ray ( Vector3 from, Vector3 dir )

Vector3

intersects_segment ( Vector3 begin, Vector3 end )

bool

is_equal_approx ( Plane plane )

bool

is_point_over ( Vector3 point )

Plane

normalized ( )

Vector3

project ( Vector3 point )

常量

  • PLANE_YZ = Plane( 1, 0, 0, 0 ) —- 在 Y 轴和 Z 轴上延伸的平面(法向量指向 +X)。

  • PLANE_XZ = Plane( 0, 1, 0, 0 ) —- 在 X 轴和 Z 轴上延伸的平面(法向量朝向 +Y)。

  • PLANE_XY = Plane( 0, 0, 1, 0 ) —- 在 X 轴和 Y 轴上延伸的平面(法向量朝向 +Z)。

属性说明

Default

0.0

从原点到平面的距离,沿normal方向。这个值通常是非负的。

在平面ax + by + cz = d的标量方程中,这是d,而(a, b, c)坐标由normal属性表示。


Default

Vector3( 0, 0, 0 )

平面的法线,必须归一化。

在平面ax + by + cz = d的标量方程中,这是向量(a, b, c),其中dd属性。


Default

0.0

平面的normal向量的X分量。


Default

0.0

平面的normal向量的Y分量。


Default

0.0

平面的normal向量的Z分量。

方法说明

根据四个参数创建一个平面。产生的平面的 normal 的三个分量是 abc,并且平面与原点的距离为d


根据顺时针顺序给出的三个点创建一个平面。


从法线和平面到原点的距离创建一个平面。


返回平面的中心。


返回从平面到位置point的最短距离。


返回平面的中心。

此方法已被废弃,请使用center代替。


如果point在平面内,则返回true。比较使用自定义的最小epsilon』 ε 阈值。


返回三个平面bc与该平面的交点。如果没有找到交集,则返回null


返回由位置from和方向法线dir组成的射线与该平面的交点。如果没有找到交点,则返回null


返回从位置begin到位置end的线段与这个平面的交点。如果没有找到交点,则返回null


通过在每个组件上运行@GDScript.is_equal_approx,如果此平面和plane近似相等,则返回true


如果point位于平面上方,则返回true


返回平面的一个标准化副本。


返回在平面上的正交投影。