CFrame

Artık kullanılmayanları göster

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Datatype.CFrame veri yaz, koordine edilmiş çerçevenin kısaltması, 3D pozisyon ve yönü açıklar. Roblox'ta 3D verileri ile çalışmak için esas aritmetik işlemleri içerir. Kompozit bir pozisyon bileşen ve döndürsel bir 1>rotasyon1> bile


-- Belirli bir konumda CFrame oluştur ve Euler dönüşümü
local cf = CFrame.new(0, 5, 0) * CFrame.fromEulerAngles(math.rad(45), 0, 0)

For an introduction to the CFrame data yaz, see CFrames .

Pozisyon Komponenti

Pozisyon bileşenleri, bir Vector3 ile birlikte kullanılabilir. Ayrıca, bir CFrame iletiğinin pozisyonu da X , 1>

Döndürme Komponenti

CFrame 3D dön

Aşağıdaki tabela, bir CFrame nesnenin dönme matrisini ve ilişklerini temsil eder ve bunların kullanılabilir vektör özellikleriyle ilgili olup olmadığının aksine. Mặc dışında, dönme matrisinin bile birincil bileşenleri kullanılabilir


<tbody>
<tr>
<td>R00</td>
<td>R01</td>
<td>R02</td>
</tr>
<tr>
<td>R10</td>
<td>R11</td>
<td>R12</td>
</tr>
<tr>
<td>R20</td>
<td>R21</td>
<td>R22</td>
</tr>
</tbody>
XVector, SağVectorYVector, YükseltmeZVector, -LookVector ^

† Diğerlerinden farklı olarak, Datatype.CFrame.LookVector|LookVector negatif sütun bileşenlerini temsil eder. Datatype.CFrame.LookVector 1>Class.Camera|Class1> ve 4>Class.附|Eklent

Özet

Yapılandırıcılar

Özellikler

Yöntemler

Yapılandırıcılar

new

new

Parametreler

pos: Vector3

new

Parametreler

pos: Vector3
lookAt: Vector3

new

Parametreler

new

Parametreler

new

Parametreler

R00: number
R01: number
R02: number
R10: number
R11: number
R12: number
R20: number
R21: number
R22: number

lookAt

Parametreler

lookAt: Vector3
Varsayılan değer: Vector3.yAxis

lookAlong

Parametreler

direction: Vector3
Varsayılan değer: Vector3.yAxis

fromRotationBetweenVectors

Parametreler

from: Vector3

fromEulerAngles

Parametreler

rx: number
ry: number
rz: number
Varsayılan değer: Enum.RotationOrder.XYZ

fromEulerAnglesXYZ

Parametreler

rx: number
ry: number
rz: number

fromEulerAnglesYXZ

Parametreler

rx: number
ry: number
rz: number

Angles

Parametreler

rx: number
ry: number
rz: number

fromOrientation

Parametreler

rx: number
ry: number
rz: number

fromAxisAngle

Parametreler

fromMatrix

Parametreler

Özellikler

identity

Tercüman veya dönüşüm olmayan bir kimlik. Bu özellik bir CFrame ile değil, bir değiştirici ile değiştirilmelidir.

Position

Datatype.CFrame 'in 3D pozisyonu.

Rotation

Tercüman olmadan CFrame ile bir kopya.

Pozisyonun X koordinatı.

Pozisyonun Y kodu.

Pozisyonun Z koordinatı.

LookVector

Datatype.CFrame nesninin ileri yönlü, rotasyon matrisinin negatif üçüncü sütunu ile eşdeğerdir.


local cf = CFrame.new(0, 0, 0)
local x, y, z, R00, R01, R02, R10, R11, R12, R20, R21, R22 = cf:GetComponents()
print(cf.LookVector) --> (-0, -0, -1)
print(-cf.ZVector) --> (-0, -0, -1)
print(-R02, -R12, -R22) --> (-0 -0 -1)

Bir CFrame nın LookVector ile kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine kendine

RightVector

Datatype.CFrame nesnenin yönünün sağ yönü. Rotasyon matrisinin ilk sütunu ile eşdeğer.


local cf = CFrame.new(0, 0, 0)
local x, y, z, R00, R01, R02, R10, R11, R12, R20, R21, R22 = cf:GetComponents()
print(cf.RightVector) --> (1, 0, 0)
print(cf.XVector) --> (1, 0, 0)
print(R00, R10, R20) --> (1 0 0)

UpVector

Datatype.CFrame nesninin yönünün üst yönü. Eşdeğer olarak YVector veya döndürme matrisinin ikinci sütunu ile eşdeğer.


local cf = CFrame.new(0, 0, 0)
local x, y, z, R00, R01, R02, R10, R11, R12, R20, R21, R22 = cf:GetComponents()
print(cf.UpVector) --> (0, 1, 0)
print(cf.YVector) --> (0, 1, 0)
print(R01, R11, R21) --> (0 1 0)

XVector

Datatype.CFrame nesninin yönü. Rotasyon matrisinin ilk sütunu ile eşdeğer.


local cf = CFrame.new(0, 0, 0)
local x, y, z, R00, R01, R02, R10, R11, R12, R20, R21, R22 = cf:GetComponents()
print(cf.XVector) --> (1, 0, 0)
print(cf.RightVector) --> (1, 0, 0)
print(R00, R10, R20) --> (1 0 0)

YVector

Datatype.CFrame nesninin yönü. Rotasyon matrisinin ikinci sütunu ile eşdeğer.


local cf = CFrame.new(0, 0, 0)
local x, y, z, R00, R01, R02, R10, R11, R12, R20, R21, R22 = cf:GetComponents()
print(cf.YVector) --> (0, 1, 0)
print(cf.UpVector) --> (0, 1, 0)
print(R01, R11, R21) --> (0 1 0)

ZVector

Datatype.CFrame nesninin yönü. Rotasyon matrisinin üçüncü sütunu ile eşdeğer.


local cf = CFrame.new(0, 0, 0)
local x, y, z, R00, R01, R02, R10, R11, R12, R20, R21, R22 = cf:GetComponents()
print(cf.ZVector) --> (0, 0, 1)
print(-cf.LookVector) --> (0, 0, 1)
print(R02, R12, R22) --> (0 0 1)

Yöntemler

Inverse

Datatype.CFrame ile tersi döndürür.

Dönüşler

Lerp

Datatype.CFrame ortasında bir goal ile bir yarım alpha arasında bir yarım 1> 2> 1> 0> 2> 1> 0> 2> 1> 2> 1> 2> 1> 2> 1> 2> 1> 2> 1> 2> 1> 2> 1> 2> 1> 2> 1> 2> 1> 2> 1> <

Parametreler

goal: CFrame
alpha: number

Dönüşler

Orthonormalize

Datatype.CFrame'in orthonnormalize edilmiş bir kopyasını döndürür. BasePart.CFrame özelliği otomatik olarak orthonormalizasyonu uygular, ancak CFrames gibi diğer API'ler otomatik olarak uygulanmaz, bu yüz

Dönüşler

ToWorldSpace

Bir veya daha fazla CFrame nesneyi alır ve dünya alanına dönüştürür. Eşdeğer:

CFrame * cf

Parametreler

Dönüşler

ToObjectSpace

Bir veya daha fazla CFrame nesneyi alır ve onları dünyadan nesneye alanına dönüştürür. Eşdeğer:

CFrame:Inverse() * cf

Parametreler

Dönüşler

PointToWorldSpace

Bir veya daha fazla Vector3 nesneyi alır ve dünya alanına dönüştürür. Eşdeğer:

CFrame * v3

Parametreler

Dönüşler

PointToObjectSpace

Bir veya daha fazla Vector3 nesneyi alır ve onları dünyadan nesneye alanına dönüştürür. Eşdeğer:

CFrame:Inverse() * v3

Parametreler

Dönüşler

VectorToWorldSpace

Bir veya daha fazla Vector3 nesneyi alır ve dünya alanından döndürür. Eşdeğer:

(CFrame - CFrame.Position) * v3

Parametreler

Dönüşler

VectorToObjectSpace

Bir veya daha fazla Vector3 nesneyi alır ve onları dünyadan nesneye alanına döndürür. Eşdeğer:

(CFrame:Inverse() - CFrame:Inverse().Position) * v3

Parametreler

Dönüşler

GetComponents

Değerleri x, y, z, 1> R0

Dönüşler

ToEulerAngles

Opcional olarak CFrame oluşturmak için kullanılan yaklaşık açıları döndürür. Enum.RotationOrder kullanılırsa, yöntem order kullanır.

Parametreler

Varsayılan değer: Enum.RotationOrder.XYZ

ToEulerAnglesXYZ

Datatype.CFrame oluşturmak için kullanılabilir yaklaşık açıları geri döndürür. Enum.RotationOrder.XYZ kullanılarak.

ToEulerAnglesYXZ

Datatype.CFrame oluşturmak için kullanılabilir yaklaşık açıları geri döndürür. Enum.RotationOrder.YXZ kullanılarak.

ToOrientation

ToAxisAngle

Aksiyo-me temsilindeki Vector3 'in dönüşümünü temsil eden bir tuplu ve eksen-me temsilindeki CFrame ile ilgili bir sayıyı döndürür.

Dönüşler

components

Datatype.CFrame:GetComponents() ile eşdeğer.

Dönüşler

FuzzyEq

Diğer 'Datatype.CFrame' ın bu 'Datatype.CFrame' ın her iki pozisyon ve dönüşümü açısından yeterince yakın olması durumunda true değeri döndürür. eps değeri bu benzerliği kontrol etmek için kullanılır. Bu değer zorunludur ve sağlanırsa küçük

Parametreler

other: CFrame
epsilon: number
Varsayılan değer: 0.00001 (1e-5)

Dönüşler

Matematik İşlemleri