Transform objects

4 properties to transform objects

  • poistion

  • scale

  • rotation

  • quaternion

🔥 position

  • x: 왼쪽, 오른쪽으로 이동

  • y: 위, 아래로 이동

  • z: 앞, 뒤로 이동

mesh.position.x = 0.7;
mesh.position.y = -0.6;
mesh.position.z = 1;

// set을 이용해 한번에 적용할 수 있다.
mesh.position.set(0.7, -0.6, 1);

axesHelper 클래스를 사용해 x,y,z 축을 쉽게 확인할 수 있다.

const axesHelper = new THREE.AxesHelper(10);
scene.add(axesHelper);

🔥 scale

🔥 rotate

👉🏻 rotation 혹은 quaternion, 둘 중에 하나를 변경하면 다른 방법도 자동으로 변경된다. 즉, rotation을 사용하면 해당 변경사항을 기반으로 quaternion을 자동으로 업데이트하고 반대로 quaternion을 변경하면 이를 기반으로 rotation을 자동으로 업데이트 한다.

Vector와 Euler

  • Vector

    • 크기와 방향을 가지는 수학적인 개념

    • 2D 공간에서는 (x, y) 좌표로 표현되며, 3D 공간에서는 (x, y, z) 좌표로 표현

    • 공간에서 한 지점에서 다른 지점으로의 방향과 거리를 표현

  • Euler

    • 객체의 회전을 표현하는 방법 중 하나로, 세 개의 각도를 사용하여 객체를 회전

    • Roll, Pitch, Yaw라고도 불리는 세 축(x, y, z)을 기준으로 객체를 회전 👉🏻 각 축의 회전량을 나타내며, 객체가 각 축을 따라 얼마나 회전했는지 나타냄

rotation

👉🏻 rotation은 gimbal lock이라는 문제를 유발할 수 있다. 이를 해결하기 위해 quaternion을 사용한다.

quaternion


Last updated