Vector3

显示已弃用

*此内容使用人工智能(Beta)翻译,可能包含错误。若要查看英文页面,请点按 此处

Vector3 数据类型代表 3D 空间中的向量,通常用作 3D 空间的点或矩形棱镜的维度。Vector3 支持基于组件的基本算术操作(加、减、乘、除),这些操作可以应用在左手或右手上对另一个 Vector3 或数字。它还包含普通向量操作的方法,例如 Cross()Dot()

作为替代 Vector3 , 考虑使用 vector 图书馆的方法和属性。

某些示例使用 Vector3 是零件的 Position , Rotation , 以及 Size 例如:


local Workspace = game:GetService("Workspace")
local part = Workspace.Part
part.Position = part.Position + Vector3.new(5, 2, 10) -- Move part by (5, 2, 10)

Vector3 也常用于构建更复杂的 3D 数据类型,例如 CFrame。许多这些数据类型的方法会在参数内使用 Vector3,例如 CFrame:PointToObjectSpace()

概要

构造工具

属性

方法

数学算式

构造工具

new

返回使用给定的 x、y 和 z 组件的新 Vector3

参数

默认值:0
默认值:0
默认值:0

FromNormalId

返回指定方向中的新 Vector3

参数

FromAxis

返回给定轴的新 Vector3

参数

axis: Enum.Axis

属性

一个Vector3值为零的量。

这个 API 成员是一个 常量 ,必须通过 Vector3 全球访问,而不是通过单个 Vector3 对象访问。


print(Vector3.zero) --> 0, 0, 0

一个Vector3,每个轴上的值为 1。

这个 API 成员是一个 常量 ,必须通过 Vector3 全球访问,而不是通过单个 Vector3 对象访问。


print(Vector3.one) --> 1, 1, 1

xAxis

一个Vector3值为 1 的 X 轴上的值。

这个 API 成员是一个 常量 ,必须通过 Vector3 全球访问,而不是通过单个 Vector3 对象访问。


print(Vector3.xAxis) --> 1, 0, 0

yAxis

一个 Vector3 值为 1 的 Y 轴上的值。

这个 API 成员是一个 常量 ,必须通过 Vector3 全球访问,而不是通过单个 Vector3 对象访问。


print(Vector3.yAxis) --> 0, 1, 0

zAxis

一个 Vector3 值为 1 的 Z 轴上的值。

这个 API 成员是一个 常量 ,必须通过 Vector3 全球访问,而不是通过单个 Vector3 对象访问。


print(Vector3.zAxis) --> 0, 0, 1

Vector3 的 x 坐标。

Vector3 的 y 坐标。

Vector3 的 z 坐标。

Magnitude

Vector3的长度。

一个正常化的 Vector3 副本 - 一个与原始相同的方向,但大小为 1 的副本。

方法

从原始组件的绝对值中返回新向量。例如,(-2, 4, -6) 向量返回向量 (2, 4, 6)

返回

从原始组件的天花板返回新向量。例如,(-2.6, 5.1, 8.8)向量返回(-2, 6, 9)向量。

返回

Floor

从原始组件的楼层返回新向量。例如,(-2.6, 5.1, 8.8)向量返回(-3, 5, 8)向量。

返回

返回原始组件的签名 (-1、0或1) 的新向量。例如,(-2.6, 5.1, 0) 向量返回向量 (-1, 1, 0)

返回

Cross

返回两个向量的交叉产品。

参数

other: Vector3

返回

Angle

返回两个向量之间的角度在 ради度。如果你提供了一个轴,它将决定角度的符号。

参数

other: Vector3
axis: Vector3
默认值:nil

返回

返回两个向量的平方乘积。

参数

other: Vector3

返回

FuzzyEq

返回 true 如果两个向量的平方乘积之间的差异在 epsilon 内。epsilon 是相对于量级而不是绝对 epsilon 的缩放。

参数

other: Vector3
epsilon: number
默认值:0.00001 aka 1e-5

返回

返回一个 线性插值在这 和给定的 之间,由分数 进行插值。

注意:值不限于范围[0,1]

参数

goal: Vector3
alpha: number

返回

返回一个 Vector3 ,其中每个组件都是提供的 Vector3 对象中最高的组件。


local a = Vector3.new(1, 2, 1)
local b = Vector3.new(2, 1, 2)
print(a:Max(b)) --> Vector3.new(2, 2, 2)

参数

vector: Vector3

返回

返回一个 Vector3 ,其中每个组件都是提供的 Vector3 对象中最低的组件。


local a = Vector3.new(1, 2, 1)
local b = Vector3.new(2, 1, 2)
print(a:Min(b)) --> Vector3.new(1, 1, 1)

参数

vector: Vector3

返回

数学算式


通过将第一个向量的每个组件添加到第二个组件的相应组件来生成一个 Vector3


通过从第二个向量的每个组件中减去第一组件的相应组件产生一个 Vector3 ,从而生成一个新向量。


通过将第一个向量的每个组件乘以第二个组件的相应组件产生一个 Vector3


通过将第一个向量的每个组件分割给第二个组件的相应组件来生成一个 Vector3


生成一个 Vector3分割楼层 将第一个向量的每个组件由第二个组件的相应组件分割。


生成一个 Vector3 ,将提供的向量的每个组件乘以数字。


通过将提供的向量的每个组件分割为数字来生成一个 Vector3


生成一个 Vector3分割楼层 将提供的向量的每个组件按数字分开。