Skip to main content

Quat

Client Server

Constructors

Quat Quat()

Quat Quat(number w, number x, number y, number z)

Quat Quat(Mat3 mat3)

Quat Quat(Mat4 mat4)

Quat Quat(number angle, Vec3 axis)

Metamethods

Quat __add(Quat a, Quat b)

Quat __sub(Quat a, Quat b)

Quat __mul(Quat a, Quat b)

Quat __mul(Quat q, number s)

Quat __mul(number s, Quat q)

Vec3 __mul(Quat q, Vec3 v)

Vec4 __mul(Quat q, Vec4 v)

Quat __div(Quat a, number b)

Quat __pow(Quat a, number b)

Quat __unm(Quat a)

boolean __eq(Quat a, Quat b)

string __tostring()

Methods

number Len()

number Length()

number SqrLength()

boolean IsZero()

nil Set(number w, number x, number y, number z)

Quat Copy()

number Dot(Quat other)

Quat Lerp(Quat a, Quat b, number t)

Quat Slerp(Quat a, Quat b, number t)

Quat Sterp(Quat a, Quat b, number t, Vec3? twistAxis)

nil Normalize()

Quat GetNormalized()

nil Invert()

Quat GetInversed()

nil RotateByEuler(number ex, number ey, number ez)

Quat Rotate(number angle, Vec3 v)

Quat GetRotated(number angle, Vec3 v)

Quat GetConjugate()

number GetPitch()

number GetYaw()

number GetRoll()

Vec3 GetEuler()

number GetAngle()

Vec3 GetAxis()

Quat Euler(number pitch, number yaw, number roll)

Quat Euler(Vec3 eulerAngles)

Quat Axes(Vec3 u, Vec3 v)

Quat AngleAxis(number angle, Vec3 axis)

Quat LookAt(Vec3 dir, Vec3? up)

Properties

number x

number y

number z

number w

Quat identity