pyunity.quaternion module

Class to represent a rotation in 3D space.

class pyunity.quaternion.Quaternion(w, x, y, z)[source]

Bases: object

Class to represent a 4D Quaternion.

Parameters:
  • w (float) – Real value of Quaternion
  • x (float) – x coordinate of Quaternion
  • y (float) – y coordinate of Quaternion
  • z (float) – z coordinate of Quaternion
static Euler(vector)[source]

Create a quaternion using Euler rotations.

Parameters:vector (Vector3) – Euler rotations
Returns:Generated quaternion
Return type:Quaternion
static FromAxis(angle, a)[source]

Create a quaternion from an angle and an axis.

Parameters:
  • angle (float) – Angle to rotate
  • a (Vector3) – Axis to rotate about
RotateVector(vector)[source]

Rotate a vector by the quaternion

angleAxisPair

Gets or sets the angle and axis pair.

Notes

When getting, it returns a tuple in the form of (angle, x, y, z). When setting, assign like q.eulerAngles = (angle, vector).

conjugate

The conjugate of a unit quaternion

copy()[source]

Deep copy of the Quaternion.

Returns:A deep copy
Return type:Quaternion
eulerAngles

Gets or sets the Euler Angles of the quaternion

static identity()[source]

Identity quaternion representing no rotation

normalized()[source]

A normalized Quaternion, for rotations. If the length is 0, then the identity quaternion is returned.

Returns:A unit quaternion
Return type:Quaternion