Quaternion Helper
Enter quaternion components or Euler angles to multiply, normalize, conjugate, and convert between rotation representations instantly.
Operation
Quaternion A
Quaternion B
Result
Click a row to copy its value
W
—
X
—
Y
—
Z
—
Magnitude |q|
—
Pitch — X rotation (deg)
—
Yaw — Y rotation (deg)
—
Roll — Z rotation (deg)
—
Input magnitude |q|
—
Formula Reference
q1 * q2:
w = w1*w2 - x1*x2 - y1*y2 - z1*z2
x = w1*x2 + x1*w2 + y1*z2 - z1*y2
y = w1*y2 - x1*z2 + y1*w2 + z1*x2
z = w1*z2 + x1*y2 - y1*x2 + z1*w2
|q| = sqrt(w^2 + x^2 + y^2 + z^2)
q_norm = (w/|q|, x/|q|, y/|q|, z/|q|)
q* = (w, -x, -y, -z)
For unit q: q* = q^-1 (inverse rotation)
cy=cos(yaw/2), sy=sin(yaw/2)
cp=cos(pitch/2), sp=sin(pitch/2)
cr=cos(roll/2), sr=sin(roll/2)
w=cr*cp*cy + sr*sp*sy
x=sr*cp*cy - cr*sp*sy
y=cr*sp*cy + sr*cp*sy
z=cr*cp*sy - sr*sp*cy
pitch = atan2(2*(w*x+y*z), 1-2*(x^2+y^2))
yaw = asin(clamp(2*(w*y-z*x), -1, 1))
roll = atan2(2*(w*z+x*y), 1-2*(y^2+z^2))
Copied!
Summary
Enter quaternion components or Euler angles to multiply, normalize, conjugate, and convert between rotation representations instantly.
How it works
- Select an operation tab: Multiply, Normalize, Conjugate, Euler → Quat, or Quat → Euler.
- Enter quaternion components (w, x, y, z) or Euler angles (pitch, yaw, roll) in the input fields.
- The tool computes the result using standard quaternion algebra formulas.
- Results are displayed as individual components you can click to copy.
- A formula reference panel below shows the exact math used for each operation.
Use cases
- Composing two 3D rotations by multiplying quaternions.
- Converting inspector Euler angles to a unit quaternion for a game engine.
- Extracting pitch, yaw, and roll from a quaternion for HUD display.
- Normalizing a quaternion after accumulated floating-point drift.
- Computing the inverse rotation using the conjugate of a unit quaternion.
- Verifying quaternion math when debugging character controller rotations.
- Learning quaternion algebra interactively for a graphics programming course.
- Checking that SLERP endpoints are unit quaternions before interpolating.
Frequently Asked Questions
Last updated: 2026-06-10 ·
Reviewed by Nham Vu