Struct nalgebra::Rotation2 [] [src]

pub struct Rotation2<N> {
    // some fields omitted
}

Two dimensional rotation matrix.

Methods

impl<N: Clone + BaseFloat + Neg<Output=N>> Rotation2<N>
[src]

fn new(angle: Vector1<N>) -> Rotation2<N>

Builds a 2 dimensional rotation matrix from an angle in radian.

impl<N> Rotation2<N>
[src]

fn submatrix<'r>(&'r self) -> &'r Matrix2<N>

This rotation's underlying matrix.

Trait Implementations

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

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

fn hash<__HN: Hasher>(&self, __arg_0: &mut __HN)

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

fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher
1.3.0

Feeds a slice of this type into the state provided.

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

fn fmt(&self, __arg_0: &mut Formatter) -> Result

Formats the value using the given formatter.

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

fn clone(&self) -> Rotation2<N>

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)
1.0.0

Performs copy-assignment from source. Read more

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

fn decode<__DN: Decoder>(__arg_0: &mut __DN) -> Result<Rotation2<N>, __DN::Error>

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

fn encode<__SN: Encoder>(&self, __arg_0: &mut __SN) -> Result<(), __SN::Error>

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

fn eq(&self, __arg_0: &Rotation2<N>) -> bool

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

fn ne(&self, __arg_0: &Rotation2<N>) -> bool

This method tests for !=.

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

impl<N: BaseFloat + Clone> Rotation<Vector1<N>> for Rotation2<N>
[src]

fn rotation(&self) -> Vector1<N>

Gets the rotation associated with self.

fn inverse_rotation(&self) -> Vector1<N>

Gets the inverse rotation associated with self.

fn append_rotation_mut(&mut self, rotation: &Vector1<N>)

Appends a rotation to this object.

fn append_rotation(&self, rotation: &Vector1<N>) -> Rotation2<N>

Appends the rotation amount to a copy of t.

fn prepend_rotation_mut(&mut self, rotation: &Vector1<N>)

Prepends a rotation to this object.

fn prepend_rotation(&self, rotation: &Vector1<N>) -> Rotation2<N>

Prepends the rotation amount to a copy of t.

fn set_rotation(&mut self, rotation: Vector1<N>)

Sets the rotation of self.

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

type AngleType = N

Type of the angle between two elements.

type DeltaRotationType = Rotation2<N>

Type of the rotation between two elements.

fn angle_to(&self, other: &Self) -> N

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

fn rotation_to(&self, other: &Self) -> Rotation2<N>

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

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

fn rand<R: Rng>(rng: &mut R) -> Rotation2<N>

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

impl<N: BaseFloat> AbsoluteRotate<Vector2<N>> for Rotation2<N>
[src]

fn absolute_rotate(&self, v: &Vector2<N>) -> Vector2<N>

This is the same as: Read more

impl<N: BaseNum> Rotate<Vector2<N>> for Rotation2<N>
[src]

fn rotate(&self, v: &Vector2<N>) -> Vector2<N>

Applies a rotation to v.

fn inverse_rotate(&self, v: &Vector2<N>) -> Vector2<N>

Applies an inverse rotation to v.

impl<N: BaseNum> Rotate<Point2<N>> for Rotation2<N>
[src]

fn rotate(&self, p: &Point2<N>) -> Point2<N>

Applies a rotation to v.

fn inverse_rotate(&self, p: &Point2<N>) -> Point2<N>

Applies an inverse rotation to v.

impl<N: BaseNum> Transform<Vector2<N>> for Rotation2<N>
[src]

fn transform(&self, v: &Vector2<N>) -> Vector2<N>

Applies a transformation to v.

fn inverse_transform(&self, v: &Vector2<N>) -> Vector2<N>

Applies an inverse transformation to v.

impl<N: BaseNum> Transform<Point2<N>> for Rotation2<N>
[src]

fn transform(&self, p: &Point2<N>) -> Point2<N>

Applies a transformation to v.

fn inverse_transform(&self, p: &Point2<N>) -> Point2<N>

Applies an inverse transformation to v.

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

fn dimension(_: Option<Rotation2<N>>) -> usize

The dimension of the object.

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

type Output = Rotation2<N>

The resulting type after applying the * operator

fn mul(self, right: Rotation2<N>) -> Rotation2<N>

The method for the * operator

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

fn mul_assign(&mut self, right: Rotation2<N>)

The method for the *= operator

impl<N: BaseNum> Mul<Vector2<N>> for Rotation2<N>
[src]

type Output = Vector2<N>

The resulting type after applying the * operator

fn mul(self, right: Vector2<N>) -> Vector2<N>

The method for the * operator

impl<N: BaseNum> Mul<Point2<N>> for Rotation2<N>
[src]

type Output = Point2<N>

The resulting type after applying the * operator

fn mul(self, right: Point2<N>) -> Point2<N>

The method for the * operator

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

fn one() -> Rotation2<N>

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

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

fn new_identity(dimension: usize) -> Rotation2<N>

Return the identity matrix of specified dimension

impl<N: Zero + BaseNum + Cast<f64> + BaseFloat> RotationMatrix<N, Vector2<N>, Vector1<N>> for Rotation2<N>
[src]

type Output = Rotation2<N>

The output rotation matrix type.

fn to_rotation_matrix(&self) -> Rotation2<N>

Gets the rotation matrix represented by self.

impl<N: Copy + Zero> Column<Vector2<N>> for Rotation2<N>
[src]

fn ncols(&self) -> usize

The number of column of this matrix or vector.

fn column(&self, i: usize) -> Vector2<N>

Reads the i-th column of self.

fn set_column(&mut self, i: usize, column: Vector2<N>)

Writes the i-th column of self.

impl<N: Copy + Zero> Row<Vector2<N>> for Rotation2<N>
[src]

fn nrows(&self) -> usize

The number of column of self.

fn row(&self, i: usize) -> Vector2<N>

Reads the i-th row of self.

fn set_row(&mut self, i: usize, row: Vector2<N>)

Writes the i-th row of self.

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

type Output = N

The returned type after indexing

fn index(&self, i: (usize, usize)) -> &N

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

impl<N: Absolute<N>> Absolute<Matrix2<N>> for Rotation2<N>
[src]

fn abs(m: &Rotation2<N>) -> Matrix2<N>

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<Matrix3<N>> for Rotation2<N>
[src]

fn to_homogeneous(&self) -> Matrix3<N>

Gets the homogeneous coordinates form of this object.

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

fn inverse_mut(&mut self) -> bool

In-place version of inverse.

fn inverse(&self) -> Option<Rotation2<N>>

Returns the inverse of m.

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

fn transpose(&self) -> Rotation2<N>

Computes the transpose of a matrix.

fn transpose_mut(&mut self)

In-place version of transposed.

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

fn approx_epsilon(_: Option<Rotation2<N>>) -> N

Default epsilon for approximation.

fn approx_ulps(_: Option<Rotation2<N>>) -> u32

Default ULPs for approximation.

fn approx_eq(&self, other: &Rotation2<N>) -> bool

Tests approximate equality.

fn approx_eq_eps(&self, other: &Rotation2<N>, epsilon: &N) -> bool

Tests approximate equality using a custom epsilon.

fn approx_eq_ulps(&self, other: &Rotation2<N>, ulps: u32) -> bool

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

impl<N: Copy + Zero> Diagonal<Vector2<N>> for Rotation2<N>
[src]

fn from_diagonal(diagonal: &Vector2<N>) -> Rotation2<N>

Creates a new matrix with the given diagonal.

fn diagonal(&self) -> Vector2<N>

The diagonal of this matrix.

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

fn fmt(&self, f: &mut Formatter) -> Result

Formats the value using the given formatter.

impl<N: BaseFloat> Mul<Isometry2<N>> for Rotation2<N>
[src]

type Output = Isometry2<N>

The resulting type after applying the * operator

fn mul(self, right: Isometry2<N>) -> Isometry2<N>

The method for the * operator

impl<N: BaseFloat> Mul<Similarity2<N>> for Rotation2<N>
[src]

type Output = Similarity2<N>

The resulting type after applying the * operator

fn mul(self, right: Similarity2<N>) -> Similarity2<N>

The method for the * operator