Struct nalgebra::Rotation3 [] [src]

pub struct Rotation3<N> { /* fields omitted */ }

Three dimensional rotation matrix.

Methods

impl<N: Clone + BaseFloat> Rotation3<N>
[src]

Builds a 3 dimensional rotation matrix from an axis and an angle.

Arguments

  • axisangle - A vector representing the rotation. Its magnitude is the amount of rotation in radian. Its direction is the axis of rotation.

Builds a rotation matrix from an orthogonal matrix.

This is unsafe because the orthogonality of matrix is not checked.

Creates a new rotation from Euler angles.

The primitive rotations are applied in order: 1 roll − 2 pitch − 3 yaw.

impl<N: Clone + BaseFloat> Rotation3<N>
[src]

Creates a rotation that corresponds to the local frame of an observer standing at the origin and looking toward dir.

It maps the view direction dir to the positive z axis.

Arguments

  • dir - The look direction, that is, direction the matrix z axis will be aligned with.
  • up - The vertical direction. The only requirement of this parameter is to not be collinear to dir. Non-collinearity is not checked.

Builds a right-handed look-at view matrix without translation.

This conforms to the common notion of right handed look-at matrix from the computer graphics community.

Arguments

  • eye - The eye position.
  • target - The target position.
  • up - A vector approximately aligned with required the vertical axis. The only requirement of this parameter is to not be collinear to target - eye.

Builds a left-handed look-at view matrix without translation.

This conforms to the common notion of left handed look-at matrix from the computer graphics community.

Arguments

  • eye - The eye position.
  • target - The target position.
  • up - A vector approximately aligned with required the vertical axis. The only requirement of this parameter is to not be collinear to target - eye.

impl<N> Rotation3<N>
[src]

This rotation's underlying matrix.

Trait Implementations

impl<N: Eq> Eq for Rotation3<N>
[src]

impl<N: PartialEq> PartialEq for Rotation3<N>
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl<N: Encodable> Encodable for Rotation3<N>
[src]

impl<N: Decodable> Decodable for Rotation3<N>
[src]

impl<N: Clone> Clone for Rotation3<N>
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<N: Debug> Debug for Rotation3<N>
[src]

Formats the value using the given formatter.

impl<N: Hash> Hash for Rotation3<N>
[src]

Feeds this value into the state given, updating the hasher as necessary.

Feeds a slice of this type into the state provided.

impl<N: Copy> Copy for Rotation3<N>
[src]

impl<N: Clone + BaseFloat + Cast<f64>> Rotation<Vector3<N>> for Rotation3<N>
[src]

Gets the rotation associated with self.

Gets the inverse rotation associated with self.

Appends a rotation to this object.

Appends the rotation amount to a copy of t.

Prepends a rotation to this object.

Prepends the rotation amount to a copy of t.

Sets the rotation of self.

impl<N: BaseFloat> RotationTo for Rotation3<N>
[src]

Type of the angle between two elements.

Type of the rotation between two elements.

Computes an angle nedded to transform the first element to the second one using a rotation. Read more

Computes the smallest rotation needed to transform the first element to the second one.

impl<N: Clone + Rand + BaseFloat> Rand for Rotation3<N>
[src]

Generates a random instance of this type using the specified source of randomness. Read more

impl<N: BaseFloat> AbsoluteRotate<Vector3<N>> for Rotation3<N>
[src]

This is the same as: Read more

impl<N: BaseNum> Rotate<Vector3<N>> for Rotation3<N>
[src]

Applies a rotation to v.

Applies an inverse rotation to v.

impl<N: BaseNum> Rotate<Point3<N>> for Rotation3<N>
[src]

Applies a rotation to v.

Applies an inverse rotation to v.

impl<N: BaseNum> Transform<Vector3<N>> for Rotation3<N>
[src]

Applies a transformation to v.

Applies an inverse transformation to v.

impl<N: BaseNum> Transform<Point3<N>> for Rotation3<N>
[src]

Applies a transformation to v.

Applies an inverse transformation to v.

impl<N> Dimension for Rotation3<N>
[src]

The dimension of the object.

impl<N: BaseNum> Mul<Rotation3<N>> for Rotation3<N>
[src]

The resulting type after applying the * operator

The method for the * operator

impl<N: Copy + BaseNum> MulAssign<Rotation3<N>> for Rotation3<N>
[src]

The method for the *= operator

impl<N: BaseNum> Mul<Vector3<N>> for Rotation3<N>
[src]

The resulting type after applying the * operator

The method for the * operator

impl<N: BaseNum> Mul<Point3<N>> for Rotation3<N>
[src]

The resulting type after applying the * operator

The method for the * operator

impl<N: BaseNum> One for Rotation3<N>
[src]

Returns the multiplicative identity element of Self, 1. Read more

impl<N: BaseNum> Eye for Rotation3<N>
[src]

Return the identity matrix of specified dimension

impl<N: Zero + BaseNum + Cast<f64> + BaseFloat> RotationMatrix<N, Vector3<N>, Vector3<N>> for Rotation3<N>
[src]

The output rotation matrix type.

Gets the rotation matrix represented by self.

impl<N: Copy + Zero> Column<Vector3<N>> for Rotation3<N>
[src]

The number of column of this matrix or vector.

Reads the i-th column of self.

Writes the i-th column of self.

impl<N: Copy + Zero> Row<Vector3<N>> for Rotation3<N>
[src]

The number of column of self.

Reads the i-th row of self.

Writes the i-th row of self.

impl<N> Index<(usize, usize)> for Rotation3<N>
[src]

The returned type after indexing

The method for the indexing (Foo[Bar]) operation

impl<N: Absolute<N>> Absolute<Matrix3<N>> for Rotation3<N>
[src]

Computes some absolute value of this object. Typically, this will make all component of a matrix or vector positive. Read more

impl<N: BaseNum> ToHomogeneous<Matrix4<N>> for Rotation3<N>
[src]

Gets the homogeneous coordinates form of this object.

impl<N: Copy> Inverse for Rotation3<N>
[src]

In-place version of inverse.

Returns the inverse of m.

impl<N: Copy> Transpose for Rotation3<N>
[src]

Computes the transpose of a matrix.

In-place version of transposed.

impl<N: ApproxEq<N>> ApproxEq<N> for Rotation3<N>
[src]

Default epsilon for approximation.

Default ULPs for approximation.

Tests approximate equality.

Tests approximate equality using a custom epsilon.

Tests approximate equality using units in the last place (ULPs)

impl<N: Copy + Zero> Diagonal<Vector3<N>> for Rotation3<N>
[src]

Creates a new matrix with the given diagonal.

The diagonal of this matrix.

impl<N: Display + BaseFloat> Display for Rotation3<N>
[src]

Formats the value using the given formatter.

impl<N: BaseFloat> Mul<Isometry3<N>> for Rotation3<N>
[src]

The resulting type after applying the * operator

The method for the * operator

impl<N: BaseFloat> Mul<Similarity3<N>> for Rotation3<N>
[src]

The resulting type after applying the * operator

The method for the * operator