mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-04 14:48:47 +00:00
Fix formatting
This commit is contained in:
@@ -203,24 +203,24 @@ quaternion_from_euler_angles :: proc(roll, pitch, yaw: Float) -> Quaternion {
|
|||||||
|
|
||||||
euler_angles_from_quaternion :: proc(q: Quaternion) -> (roll, pitch, yaw: Float) {
|
euler_angles_from_quaternion :: proc(q: Quaternion) -> (roll, pitch, yaw: Float) {
|
||||||
// roll, x-axis rotation
|
// roll, x-axis rotation
|
||||||
sinr_cosp: Float = 2 * (q.w * q.x + q.y * q.z);
|
sinr_cosp: Float = 2 * (q.w * q.x + q.y * q.z);
|
||||||
cosr_cosp: Float = 1 - 2 * (q.x * q.x + q.y * q.y);
|
cosr_cosp: Float = 1 - 2 * (q.x * q.x + q.y * q.y);
|
||||||
roll = math.atan2(sinr_cosp, cosr_cosp);
|
roll = math.atan2(sinr_cosp, cosr_cosp);
|
||||||
|
|
||||||
// pitch, y-axis rotation
|
// pitch, y-axis rotation
|
||||||
sinp: Float = 2 * (q.w * q.y - q.z * q.x);
|
sinp: Float = 2 * (q.w * q.y - q.z * q.x);
|
||||||
if abs(sinp) >= 1 {
|
if abs(sinp) >= 1 {
|
||||||
pitch = math.copy_sign(math.TAU * 0.25, sinp);
|
pitch = math.copy_sign(math.TAU * 0.25, sinp);
|
||||||
} else {
|
} else {
|
||||||
pitch = 2 * math.asin(sinp);
|
pitch = 2 * math.asin(sinp);
|
||||||
}
|
}
|
||||||
|
|
||||||
// yaw, z-axis rotation
|
// yaw, z-axis rotation
|
||||||
siny_cosp: Float = 2 * (q.w * q.z + q.x * q.y);
|
siny_cosp: Float = 2 * (q.w * q.z + q.x * q.y);
|
||||||
cosy_cosp: Float = 1 - 2 * (q.y * q.y + q.z * q.z);
|
cosy_cosp: Float = 1 - 2 * (q.y * q.y + q.z * q.z);
|
||||||
yaw = math.atan2(siny_cosp, cosy_cosp);
|
yaw = math.atan2(siny_cosp, cosy_cosp);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
quaternion_from_forward_and_up :: proc(forward, up: Vector3) -> Quaternion {
|
quaternion_from_forward_and_up :: proc(forward, up: Vector3) -> Quaternion {
|
||||||
|
|||||||
Reference in New Issue
Block a user