RotationOrder

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Gli angoli Euler Encoding una rotazione nello spazio 3D tramite una sequenza di tre rotazioni lungo gli assi X, Y e Z. Il RotationOrder enum specifica l'ordine in cui il motore esegue queste rotazioni.

Per aiutare a visualizzare i molti ordini di rotazione, puoi testarli manualmente in Studio con lo strumento Ruota o inserendo task.wait() dichiarazioni tra le rotazioni individuali di un cubo con una faccia unica:


local cube = workspace.Cube
local rx, ry, rz = math.rad(90), math.rad(90), math.rad(90)
task.wait(5)
cube.CFrame *= CFrame.fromEulerAngles(rx, 0, 0) -- X
task.wait(5)
cube.CFrame *= CFrame.fromEulerAngles(0, ry, 0) -- Y
task.wait(5)
cube.CFrame *= CFrame.fromEulerAngles(0, 0, rz) -- Z

Un'operazione equivalente è:


local cube = workspace.Cube
local rx, ry, rz = math.rad(90), math.rad(90), math.rad(90)
cube.CFrame = CFrame.fromEulerAngles(rx, ry, rz, Enum.RotationOrder.XYZ)

Articoli

NomeValoreSommario
XYZ0

X, Y, Z ordine.

XZY1

X, Z, Y ordine.

YZX2

Y, Z, X ordine.

YXZ3

Y, X, Z ordine.

ZXY4

Z, X, Y ordine.

ZYX5

Z, Y, X ordine.

Su questa pagina