CFrame

사용되지 않는 항목 표시

*이 콘텐츠는 AI(베타)를 사용해 번역되었으며, 오류가 있을 수 있습니다. 이 페이지를 영어로 보려면 여기를 클릭하세요.

데이터 입력, 좌표 프레임의 약자로, 3D 위치와 방향을 설명합니다.위치 구성 요소와 회전 구성 요소로 구성되며 Roblox에서 3D 데이터를 작업하는 데 필수적인 산술 작업을 포함합니다.


-- 특정 위치에서 CFrame 생성 및 유클리드 회전
local cf = CFrame.new(0, 5, 0) * CFrame.fromEulerAngles(math.rad(45), 0, 0)

For an introduction to the 데이터 입력CFrame 의 소개, see CFrames .

위치 구성 요소

위치 구성 요소는 Vector3로 사용할 수 있습니다.또한, 객체의 위치 CFrame 의 구성 요소도 X , YZ 속성처럼 Vector3 과 같은 속성에서 사용할 수 있습니다.

회전 부품

는 3×3 회전 매트릭스에 3D 회전 데이터를 저장합니다.이 값은 위치 값 xyz 후에 반환되는 CFrame:GetComponents() 함수에 의해 반환됩니다.이 매트릭스는 회전과 관련된 계산을 수행할 때 내부적으로 사용되며, radians 를 단위로 사용합니다(서로 변환하려면 또는 를 사용하십시오).Roblox 엔진이 회전을 수행하는 방법에 대한 자세한 정보는 Enum.RotationOrder 을 참조하십시오.

아래 표는 CFrame 개체의 회전 매트릭스 구성 요소와 사용 가능한 벡터 속성(예: LookVectorRightVector)의 관계를 나타냅니다.회전 매트릭스의 개별 구성 요소는 자체로 거의 유용하지 않지만, 그것들에서 파생된 벡터 속성은 훨씬 더 유용합니다.


<th>Y벡터, Up벡터</th>
<th>ZVector, -LookVector <sup>†</sup></th>
</tr>
</thead>
<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>
X벡터, 라이트벡터
다른 사람들과 달리, LookVector는 부정 된 열 구성 요소를 나타냅니다.LookVector는 클래스 InstancesCamera와 같은 많은 클래스 Attachments가 해당 벡터를 인스턴스가 가리키는 방향으로 처리하기 때문에 유용합니다.

요약

생성자

속성

메서드

  • 반대의 값을 반환합니다 CFrame.

  • Lerp(goal : CFrame,alpha : number):CFrame

    자체와 의 소수로 인터폴레이션된 를 반환합니다.

  • CFrame의 정규화된 복사본을 반환합니다.

  • 하나 이상의 CFrame 개체를 받아 개체에서 세계 공간으로 변환하여 반환합니다.

  • 하나 이상의 CFrame 개체를 받아 세계에서 개체 공간으로 변환하여 반환합니다.

  • 하나 이상의 Vector3 개체를 받아 개체에서 세계 공간으로 변환하여 반환합니다.

  • 하나 이상의 Vector3 개체를 받아 세계에서 개체 공간으로 변환하여 반환합니다.

  • 하나 이상의 Vector3 개체를 받아 객체에서 세계 공간으로 회전하여 반환합니다.

  • 하나 이상의 Vector3 개체를 받아 세계에서 개체 공간으로 회전하여 반환합니다.

  • 값 , , , , , , , , , 그리고 , , , 그리고 , , ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – <4

  • 선택적 Enum.RotationOrder를 사용하여 CFrame를 반환합니다.

  • 반환 대략적인 각도를 사용하여 CFrame를 생성할 수 있는 용도로 Enum.RotationOrder.XYZ를 사용하여 생성할 수 있는 대략적인 각도를 반환합니다.

  • 반환 대략적인 각도를 사용하여 CFrame를 생성할 수 있는 용도로 Enum.RotationOrder.YXZ를 사용하여 생성할 수 있는 대략적인 각도를 반환합니다.

  • CFrame:ToEulerAnglesYXZ()와 동일합니다.

  • Vector3 및 축-각도 표현에서 회전을 나타내는 숫자로 구성된 튜플을 반환합니다.Returns a tuple of a CFrame and a number which represent the rotation of the in the axis-angle representation.

  • CFrame:GetComponents()와 동일합니다.

  • FuzzyEq(other : CFrame,epsilon : number):boolean

    다른 CFrame 가 이 CFrame 에 위치와 회전에서 충분히 가까이 있으면 true 를 반환합니다.

생성자

new

new

매개 변수

pos: Vector3

new

매개 변수

pos: Vector3
lookAt: Vector3

new

매개 변수

new

매개 변수

new

매개 변수

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

lookAt

매개 변수

lookAt: Vector3
기본값: Vector3.yAxis

lookAlong

매개 변수

direction: Vector3
기본값: Vector3.yAxis

fromRotationBetweenVectors

매개 변수

from: Vector3

fromEulerAngles

매개 변수

rx: number
ry: number
rz: number
기본값: Enum.RotationOrder.XYZ

fromEulerAnglesXYZ

매개 변수

rx: number
ry: number
rz: number

fromEulerAnglesYXZ

매개 변수

rx: number
ry: number
rz: number

Angles

매개 변수

rx: number
ry: number
rz: number

fromOrientation

매개 변수

rx: number
ry: number
rz: number

fromAxisAngle

매개 변수

fromMatrix

매개 변수

속성

identity

번역이나 회전이 없는 식별자 CFrame.이 속성은 상수 이며 개별 CFrame 개체를 통해 액세스하는 것이 아니라 전역적으로 액세스해야 합니다.

Position

CFrame의 3D 위치.

Rotation

번역 없이 CFrame의 복사본.

위치의 X 좌표.

위치의 Y 좌표.

위치의 Z 좌표.

LookVector

CFrame 개체의 전방향 구성 요소 방향, 부정 된 ZVector 또는 부정 된 회전 매트릭스의 세 번째 열과 동일합니다.


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)

개체의 를 자체에 추가하면 향하는 방향으로 1 단위 앞으로 이동되어 생성됩니다.

RightVector

개체의 오른쪽 방향 구성 요소의 방향. 회전 매트릭스의 첫 번째 열이나 동등합니다.


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

개체의 상향 방향 구성 요소의 방향. 회전 매트릭스의 두 번째 열이나 동등합니다.


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

CFrame 개체의 X 구성 요소 방향. 회전 매트릭스의 첫 번째 열 또는 RightVector와 동일합니다.


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

개체의 방향의 Y 구성 요소. 회전 매트릭스의 두 번째 열이나 동등합니다.


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

CFrame 개체의 Z 구성 요소 방향. 부정 된 LookVector 또는 회전 매트릭스의 세 번째 열과 동일합니다.


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)

메서드

Inverse

반대의 값을 반환합니다 CFrame.

반환

Lerp

자체와 의 소수로 인터폴레이션된 를 반환합니다.

매개 변수

goal: CFrame
alpha: number

반환

Orthonormalize

CFrame의 정규화된 복사본을 반환합니다.BasePart.CFrame 속성은 자동으로 정규화를 적용하지만, CFrames 를 사용하는 다른 API는 그렇지 않으므로 이 메서드는 점진적으로 CFrame 를 업데이트하고 사용할 때 가끔 필요합니다.

반환

ToWorldSpace

하나 이상의 CFrame 개체를 받아 개체에서 세계 공간으로 변환하여 반환합니다. 동일:

CFrame * cf

매개 변수

반환

ToObjectSpace

하나 이상의 CFrame 개체를 받아 세계에서 개체 공간으로 변환하여 반환합니다. 동일:

CFrame:Inverse() * cf

매개 변수

반환

PointToWorldSpace

하나 이상의 Vector3 개체를 받아 개체에서 세계 공간으로 변환하여 반환합니다. 동일:

CFrame * v3

매개 변수

반환

PointToObjectSpace

하나 이상의 Vector3 개체를 받아 세계에서 개체 공간으로 변환하여 반환합니다. 동일:

CFrame:Inverse() * v3

매개 변수

반환

VectorToWorldSpace

하나 이상의 Vector3 개체를 받아 객체에서 세계 공간으로 회전하여 반환합니다. 동일:

(CFrame - CFrame.Position) * v3

매개 변수

반환

VectorToObjectSpace

하나 이상의 Vector3 개체를 받아 세계에서 개체 공간으로 회전하여 반환합니다. 동일:

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

매개 변수

반환

GetComponents

값 , , , , , , , , , 그리고 , , , 그리고 , , ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – <4

반환

ToEulerAngles

선택적 Enum.RotationOrder를 사용하여 CFrame를 반환합니다.order 을 제공하지 않으면 메서드는 Enum.RotationOrder.XYZ 을 사용합니다.

매개 변수

기본값: Enum.RotationOrder.XYZ

ToEulerAnglesXYZ

반환 대략적인 각도를 사용하여 CFrame를 생성할 수 있는 용도로 Enum.RotationOrder.XYZ를 사용하여 생성할 수 있는 대략적인 각도를 반환합니다.

ToEulerAnglesYXZ

반환 대략적인 각도를 사용하여 CFrame를 생성할 수 있는 용도로 Enum.RotationOrder.YXZ를 사용하여 생성할 수 있는 대략적인 각도를 반환합니다.

ToOrientation

CFrame:ToEulerAnglesYXZ()와 동일합니다.

ToAxisAngle

Vector3 및 축-각도 표현에서 회전을 나타내는 숫자로 구성된 튜플을 반환합니다.Returns a tuple of a CFrame and a number which represent the rotation of the in the axis-angle representation.

components

CFrame:GetComponents()와 동일합니다.

반환

FuzzyEq

다른 CFrame 가 이 CFrame 에 위치와 회전에서 충분히 가까이 있으면 true 를 반환합니다.epsilon 값은 이 유사성에 대한 용량 제어에 사용되며, 이 값은 선택 사항이며 제공되는 경우 작은 양의 긍정적인 값이어야 합니다.위치의 유사성은 구성 요소별로 이고 회전은 각도 차이의 빠른 약식을 사용합니다.

매개 변수

other: CFrame
epsilon: number
기본값: 0.00001 (1e-5)

반환

수학 연산