Rotation

class huira.Rotation

3D rotation (double precision). Internally stored as a 3x3 orthonormal matrix.

__init__(self: huira._huira.Rotation) None

Construct an identity rotation

apply(self: huira._huira.Rotation, vector: numpy.ndarray[numpy.float64]) numpy.ndarray[numpy.float64]

Apply this rotation to a numpy vector [3], returns numpy array

static extrinsic_euler_angles(angle1: object, angle2: object, angle3: object, sequence: str = 'XYZ') huira._huira.Rotation

Create from extrinsic Euler angles (accepts any angle unit)

static from_basis_vectors(*args, **kwargs)

Overloaded function.

  1. from_basis_vectors(x_axis: huira._huira.Vec3, y_axis: huira._huira.Vec3, z_axis: huira._huira.Vec3) -> huira._huira.Rotation

Create from three orthonormal basis vectors (Vec3)

  1. from_basis_vectors(x_axis: numpy.ndarray[numpy.float64], y_axis: numpy.ndarray[numpy.float64], z_axis: numpy.ndarray[numpy.float64]) -> huira._huira.Rotation

Create from three numpy basis-vector arrays of length 3

static from_local_to_parent(*args, **kwargs)

Overloaded function.

  1. from_local_to_parent(matrix: huira._huira.Mat3) -> huira._huira.Rotation

Create from a local-to-parent rotation matrix (Mat3)

  1. from_local_to_parent(quaternion: huira._huira.Quaternion) -> huira._huira.Rotation

Create from a local-to-parent Hamilton quaternion

  1. from_local_to_parent(shuster_quaternion: huira._huira.ShusterQuaternion) -> huira._huira.Rotation

Create from a local-to-parent Shuster quaternion

  1. from_local_to_parent(axis: huira._huira.Vec3, angle: object) -> huira._huira.Rotation

Create from axis + angle (local-to-parent)

static from_local_to_parent_axis_angle(axis: numpy.ndarray[numpy.float64], angle: object) huira._huira.Rotation

Create from a numpy axis [3] + angle (local-to-parent)

static from_local_to_parent_matrix(matrix: numpy.ndarray[numpy.float64]) huira._huira.Rotation

Create from a 3x3 numpy array (row-major, local-to-parent)

static from_parent_to_local(*args, **kwargs)

Overloaded function.

  1. from_parent_to_local(matrix: huira._huira.Mat3) -> huira._huira.Rotation

Create from a parent-to-local rotation matrix (Mat3)

  1. from_parent_to_local(quaternion: huira._huira.Quaternion) -> huira._huira.Rotation

Create from a parent-to-local Hamilton quaternion

  1. from_parent_to_local(shuster_quaternion: huira._huira.ShusterQuaternion) -> huira._huira.Rotation

Create from a parent-to-local Shuster quaternion

  1. from_parent_to_local(axis: huira._huira.Vec3, angle: object) -> huira._huira.Rotation

Create from axis + angle (parent-to-local)

static from_parent_to_local_axis_angle(axis: numpy.ndarray[numpy.float64], angle: object) huira._huira.Rotation

Create from a numpy axis [3] + angle (parent-to-local)

static from_parent_to_local_matrix(matrix: numpy.ndarray[numpy.float64]) huira._huira.Rotation

Create from a 3x3 numpy array (row-major, parent-to-local)

static intrinsic_euler_angles(angle1: object, angle2: object, angle3: object, sequence: str = 'XYZ') huira._huira.Rotation

Create from intrinsic Euler angles (accepts any angle unit)

inverse(self: huira._huira.Rotation) huira._huira.Rotation
local_to_parent_matrix(self: huira._huira.Rotation) huira._huira.Mat3
local_to_parent_numpy(self: huira._huira.Rotation) numpy.ndarray[numpy.float64]

Return the local-to-parent matrix as a 3x3 numpy array

local_to_parent_quaternion(self: huira._huira.Rotation) huira._huira.Quaternion
local_to_parent_shuster_quaternion(self: huira._huira.Rotation) huira._huira.ShusterQuaternion
parent_to_local_matrix(self: huira._huira.Rotation) huira._huira.Mat3
parent_to_local_numpy(self: huira._huira.Rotation) numpy.ndarray[numpy.float64]

Return the parent-to-local matrix as a 3x3 numpy array

parent_to_local_quaternion(self: huira._huira.Rotation) huira._huira.Quaternion
parent_to_local_shuster_quaternion(self: huira._huira.Rotation) huira._huira.ShusterQuaternion
x_axis(self: huira._huira.Rotation) huira._huira.Vec3
y_axis(self: huira._huira.Rotation) huira._huira.Vec3
z_axis(self: huira._huira.Rotation) huira._huira.Vec3