Skip to content

这里有三种 VectorXf 类型:

  • Vector2f
  • Vector3f
  • Vector4f

创建 ​

Vector2f.new(x, y) ​

创建一个包含 x 和 y 的 Vector2f 对象。

Vector3f.new(x, y, z) ​

创建一个包含 x, y, 和 z 的 Vector3f 对象。

Vector4f.new(x, y, z, w) ​

创建一个包含 x, y, z, 和 w 的 Vector4f 对象。

字段 ​

x: number ​

VectorXf 的 X 分量。

y: number ​

VectorXf 的 Y 分量。

z: number ​

VectorXf 的 Z 分量。只有 Vector3f 和 Vector4f 有这个字段。

w: number ​

VectorXf 的 W 分量。只有 Vector4f 有这个字段。

方法 ​

self:dot(other) ​

返回 self 和 other 的点积。

self:cross(other) ​

返回 self 和 other 的叉积。

self:length() ​

返回 self 的长度。

self:normalize() ​

将 self 标准化。什么都不返回。

self:normalized() ​

返回 self 的标准化结果。

self:reflect(normal) ​

返回相对于法向量 normal 的反射向量。

self:refract(normal, eta) ​

返回相对于法向量 normal 和折射率 eta 的折射向量。

self:lerp(other, t) ​

返回 self 和 other 之间按照比例 t 进行线性插值的结果。

self:to_vec2() ​

将 self 转换为 Vector2f。如果 self 已经是一个 Vector2f,则不可用。

self:to_vec3() ​

将 self 转换为 Vector3f。如果 self 已经是一个 Vector3f,则不可用。

self:to_vec4() ​

将 self 转换为 Vector4f。如果 self 已经是一个 Vector4f,则不可用。

self:to_mat() ​

将 self 转换为 Matrix4x4f。将 self 视为向前的向量。

self:to_quat() ​

将 self 转换为 Quaternion。将 self 视为向前的向量。

等同于 self:to_mat():to_quat()。

元方法 ​

VectorXf + VectorXf ​

VectorXf 加法运算。

VectorXf - VectorXf ​

VectorXf 减法运算。

VectorXf * scalar ​

VectorXf 标量乘法运算。