跳转至

Vector3

简要描述

用于3D数学的矢量。

描述

3元素结构,可用于表示3D空间或任何其他成对的数值中的位置。

成员

类型 属性名 默认值
float x 0.0
float y 0.0
float z 0.0

方法

返回值类型 方法名称
Vector3 Vector3(#method-Vector3)(x: float, y: float, z: float)
Vector3 abs()
float angle_to(to: Vector3)
Vector3 bounce(n: Vector3)
Vector3 ceil()
Vector3 cross(b: Vector3)
Vector3 cubic_interpolate(b: Vector3, pre_a: Vector3, post_b: Vector3, t: float)
Vector3 direction_to(b: Vector3)
float distance_squared_to(b: Vector3)
float distance_to(b: Vector3)
float dot(b: Vector3)
Vector3 floor()
Vector3 inverse()
bool is_equal_approx(v: Vector3)
bool is_normalized()
float length()
float length_squared()
Vector3 linear_interpolate(b: Vector3, t: float)
int max_axis()
int min_axis()
Vector3 move_toward(to: Vector3, delta: float)
Vector3 normalized()
Basis outer(b: Vector3)
Vector3 posmod(mod: float)
Vector3 posmodv(modv: Vector3)
Vector3 project(b: Vector3)
Vector3 reflect(n: Vector3)
Vector3 rotated(axis: Vector3, phi: float)
Vector3 round()
Vector3 sign()
Vector3 slerp(b: Vector3, t: float)
Vector3 slide(n: Vector3)
Vector3 snapped(by: Vector3)
Basis to_diagonal_matrix()

常量

  • AXIS_X = 0

X轴的枚举值。 由max_axismin_axis返回。

  • AXIS_Y = 1

Y轴的枚举值。 由max_axismin_axis返回。

  • AXIS_Z = 2

Z轴的枚举值。 由max_axismin_axis返回。

  • ZERO = Vector3( 0, 0, 0 )

零向量。

  • ONE = Vector3( 1, 1, 1 )

一种向量。

  • INF = Vector3( inf, inf, inf )

无限矢量。

  • LEFT = Vector3( -1, 0, 0 )

左单位向量。

  • RIGHT = Vector3( 1, 0, 0 )

正确的单位向量。

  • UP = Vector3( 0, 1, 0 )

向上单位向量。

  • DOWN = Vector3( 0, -1, 0 )

下单位向量。

  • FORWARD = Vector3( 0, 0, -1 )

转发单位向量。

  • BACK = Vector3( 0, 0, 1 )

背部单位矢量。

成员说明

  • float x
Default 0.0
getter ****
  • float y
Default 0.0
getter ****
  • float z
Default 0.0
getter ****

方法说明

  • Vector3 Vector3(x: float, y: float, z: float)

返回具有给定组件的Vector3。


  • abs abs()

返回一个新矢量,其中所有分量均为绝对值(即正数)。


  • angle_to angle_to(to: Vector3)

返回给定矢量的最小角度。


  • bounce bounce(n: Vector3)

返回从给定法线定义的平面“反弹”的向量。


  • ceil ceil()

返回一个新的向量,其中所有分量均被四舍五入。


  • cross cross(b: Vector3)

返回带有b的叉积。


  • cubic_interpolate cubic_interpolate(b: Vector3, pre_a: Vector3, post_b: Vector3, t: float)

在向量pre_aabpost_ba 是当前的),按给定的金额tt0.0-1.0的范围内,表示内插量。


  • direction_to direction_to(b: Vector3)

返回从该向量指向b的归一化向量。


  • distance_squared_to distance_squared_to(b: Vector3)

返回到b的平方距离。 如果您需要对向量进行排序或某些公式需要平方距离,则应优先使用此函数,而不要使用distance_to


  • distance_to distance_to(b: Vector3)

返回到b的距离。


  • dot dot(b: Vector3)

返回带有b的点积。


  • floor floor()

返回一个新的向量,其中所有分量均四舍五入。


  • inverse inverse()

返回向量的逆。 这与Vector3(1.0 /v.x,1.0 /v.y,1.0 /v.z)相同。


  • is_equal_approx is_equal_approx(v: Vector3)

如果此向量和v大致相等,则通过在每个组件上运行[@],返回true


  • is_normalized is_normalized()

如果向量归一化,则返回true


  • length length()

返回向量的长度。


  • length_squared length_squared()

返回向量的长度平方。 如果您需要对向量进行排序或某些公式需要平方长,则最好使用此函数而不是[方法长度]。


  • linear_interpolate linear_interpolate(b: Vector3, t: float)

返回此向量和b之间线性插值的结果,数量为tt0.0-1.0的范围内,表示内插量。


  • max_axis max_axis()

返回向量最大值的轴。 请参见AXIS _ *常量。


  • min_axis min_axis()

返回向量的最小值的轴。 请参见AXIS _ *常量。


  • move_toward move_toward(to: Vector3, delta: float)

将向量朝to移动固定的delta数量。


  • normalized normalized()

返回缩放到单位长度的向量。等效于v /v.length()


  • outer outer(b: Vector3)

返回带有b的外部乘积。


  • posmod posmod(mod: float)

返回一个由该向量的组件的fposmodmod组成的向量。


  • posmodv posmodv(modv: Vector3)

返回一个由该向量的fposmod组件和modv的组件组成的向量。


  • project project(b: Vector3)

返回投影到向量b上的向量。


  • reflect reflect(n: Vector3)

返回从给定法线定义的平面反射的向量。


  • rotated rotated(axis: Vector3, phi: float)

沿给定轴以phi弧度旋转矢量。


  • round round()

返回向量,其中所有分量都四舍五入到最接近的整数,中途情况从零舍入。


  • sign sign()

返回矢量,每个矢量设置为一个或一个负数,具体取决于这些分量的符号。


  • slerp slerp(b: Vector3, t: float)

返回此向量和b之间的球面线性插值的结果,数量为tt0.0-1.0的范围内,表示内插量。

**注意:**两个向量都必须归一化。


  • slide slide(n: Vector3)

返回向量在给定法线定义的平面上的分量。


  • snapped snapped(by: Vector3)

返回捕捉到最低接近倍数的向量的副本。


  • to_diagonal_matrix to_diagonal_matrix()

返回以向量为主要对角线的对角矩阵。