Vector3

顯示已棄用項目

*此內容是使用 AI(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

返回新的 Vector3 使用指定的 x、y 和 z 元件。

參數

預設值:0
預設值:0
預設值:0

FromNormalId

返回指定方向中的新 Vector3

參數

FromAxis

返回給定軸的新 Vector3

參數

axis: Enum.Axis

屬性

一個零磁度的 Vector3

此 API 會員是一個 常量 ,必須通過 Vector3 全球存取,而不是通過個別的 Vector3 對物件存取。


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

每軸值為 1 的 Vector3

此 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 以相對於量級進行縮放,而不是絕對的埃普西。

參數

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分割地板 將提供的向量的每個組件按數字分開。