Skip to content
Shapemetry

Quaternion

Unit quaternion rotations. Wire: length-4 [x,y,z,w].

import { Quaternion } from '@huukhanhnguyen/geometry'

API reference

Quaternion.conjugate

Quaternion.conjugate(x: number, y: number, z: number, w: number): Float64Array

Wasm: quat_conjugate

Quaternion.dot

Quaternion.dot(ax: number, ay: number, az: number, aw: number, bx: number, by: number, bz: number, bw: number): number

Wasm: quat_dot

Quaternion.equals

Quaternion.equals(ax: number, ay: number, az: number, aw: number, bx: number, by: number, bz: number, bw: number, tolerance: number): boolean

Wasm: quat_equals

Quaternion.fromAxisAngle

Quaternion.fromAxisAngle(ax: number, ay: number, az: number, angle: number): Float64Array

Wasm: quat_from_axis_angle

Quaternion.fromEuler

Quaternion.fromEuler(x: number, y: number, z: number): Float64Array

Wasm: quat_from_euler

Quaternion.fromTransformation

Quaternion.fromTransformation(matrix: Float64Array): Float64Array

Wasm: quat_from_transformation

Quaternion.identity

Quaternion.identity(): Float64Array

Wasm: quat_identity

Quaternion.inverse

Quaternion.inverse(x: number, y: number, z: number, w: number): Float64Array

Wasm: quat_inverse

Quaternion.length

Quaternion.length(x: number, y: number, z: number, w: number): number

Wasm: quat_length

Quaternion.multiply

Quaternion.multiply(ax: number, ay: number, az: number, aw: number, bx: number, by: number, bz: number, bw: number): Float64Array

Wasm: quat_multiply

Quaternion.normalize

Quaternion.normalize(x: number, y: number, z: number, w: number): Float64Array

Wasm: quat_normalize

Quaternion.rotateVector

Quaternion.rotateVector(x: number, y: number, z: number, w: number, vx: number, vy: number, vz: number): Float64Array

Wasm: quat_rotate_vector

Quaternion.slerp

Quaternion.slerp(ax: number, ay: number, az: number, aw: number, bx: number, by: number, bz: number, bw: number, t: number): Float64Array

Wasm: quat_slerp

Quaternion.squaredLength

Quaternion.squaredLength(x: number, y: number, z: number, w: number): number

Wasm: quat_squared_length

Quaternion.toAxisAngle

Quaternion.toAxisAngle(x: number, y: number, z: number, w: number): Float64Array

Wasm: quaternion_to_axis_angle

Quaternion.toEuler

Quaternion.toEuler(x: number, y: number, z: number, w: number): Float64Array

Wasm: quaternion_to_euler

Quaternion.toTransformation

Quaternion.toTransformation(x: number, y: number, z: number, w: number): Float64Array

Wasm: quat_to_transformation

See GEOMETRY_CATALOG.md for catalog ownership.

Last updated: 📖 1 min readEdit on GitHub