Type Definition nalgebra::geometry::UnitComplex [] [src]

type UnitComplex<N> = Unit<Complex<N>>;

A complex number with a norm equal to 1.

Methods

impl<N: Real> UnitComplex<N>
[src]

[src]

The rotation angle in ]-pi; pi] of this unit complex number.

[src]

The sine of the rotation angle.

[src]

The cosine of the rotation angle.

[src]

The rotation angle returned as a 1-dimensional vector.

[src]

The underlying complex number.

Same as self.as_ref().

[src]

Compute the conjugate of this unit complex number.

[src]

Inverts this complex number if it is not zero.

[src]

The rotation angle needed to make self and other coincide.

[src]

The unit complex number needed to make self and other coincide.

The result is such that: self.rotation_to(other) * self == other.

[src]

Compute in-place the conjugate of this unit complex number.

[src]

Inverts in-place this unit complex number.

[src]

Raise this unit complex number to a given floating power.

This returns the unit complex number that identifies a rotation angle equal to self.angle() × n.

[src]

Builds the rotation matrix corresponding to this unit complex number.

[src]

Converts this unit complex number into its equivalent homogeneous transformation matrix.

impl<N: Real> UnitComplex<N>
[src]

[src]

The unit complex number multiplicative identity.

[src]

Builds the unit complex number corresponding to the rotation with the angle.

[src]

Builds the unit complex number corresponding to the rotation with the angle.

Same as Self::new(angle).

[src]

Builds the unit complex number frow the sinus and cosinus of the rotation angle.

The input values are not checked.

[src]

Builds a unit complex rotation from an angle in radian wrapped in a 1-dimensional vector.

Equivalent to Self::new(axisangle[0]).

[src]

Creates a new unit complex number from a complex number.

The input complex number will be normalized.

[src]

Creates a new unit complex number from a complex number.

The input complex number will be normalized. Returns the complex number norm as well.

[src]

Builds the unit complex number from the corresponding 2D rotation matrix.

[src]

The unit complex needed to make a and b be collinear and point toward the same direction.

[src]

The smallest rotation needed to make a and b collinear and point toward the same direction, raised to the power s.

impl<N: Real> UnitComplex<N>
[src]

[src]

Performs the multiplication rhs = self * rhs in-place.

[src]

Performs the multiplication lhs = lhs * self in-place.

Trait Implementations

impl<N: Real + Display> Display for UnitComplex<N>
[src]

[src]

Formats the value using the given formatter. Read more

impl<N: Real> ApproxEq for UnitComplex<N>
[src]

Used for specifying relative comparisons.

[src]

The default tolerance to use when testing values that are close together. Read more

[src]

The default relative tolerance for testing values that are far-apart. Read more

[src]

The default ULPs to tolerate when testing values that are far-apart. Read more

[src]

A test for equality that uses a relative comparison if the values are far apart.

[src]

A test for equality that uses units in the last place (ULP) if the values are far apart.

[src]

The inverse of ApproxEq::relative_eq.

[src]

The inverse of ApproxEq::ulps_eq.

impl<N: Real> One for UnitComplex<N>
[src]

[src]

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

impl<N: Real + Rand> Rand for UnitComplex<N>
[src]

[src]

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

impl<N: Real> Mul<UnitComplex<N>> for UnitComplex<N>
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, N: Real> Mul<UnitComplex<N>> for &'a UnitComplex<N>
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'b, N: Real> Mul<&'b UnitComplex<N>> for UnitComplex<N>
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, 'b, N: Real> Mul<&'b UnitComplex<N>> for &'a UnitComplex<N>
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<N: Real> Div<UnitComplex<N>> for UnitComplex<N>
[src]

The resulting type after applying the / operator.

[src]

Performs the / operation.

impl<'a, N: Real> Div<UnitComplex<N>> for &'a UnitComplex<N>
[src]

The resulting type after applying the / operator.

[src]

Performs the / operation.

impl<'b, N: Real> Div<&'b UnitComplex<N>> for UnitComplex<N>
[src]

The resulting type after applying the / operator.

[src]

Performs the / operation.

impl<'a, 'b, N: Real> Div<&'b UnitComplex<N>> for &'a UnitComplex<N>
[src]

The resulting type after applying the / operator.

[src]

Performs the / operation.

impl<N: Real> Mul<Rotation<N, U2>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U2>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, N: Real> Mul<Rotation<N, U2>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U2>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'b, N: Real> Mul<&'b Rotation<N, U2>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U2>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, 'b, N: Real> Mul<&'b Rotation<N, U2>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U2>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<N: Real> Div<Rotation<N, U2>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U2>, 
[src]

The resulting type after applying the / operator.

[src]

Performs the / operation.

impl<'a, N: Real> Div<Rotation<N, U2>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U2>, 
[src]

The resulting type after applying the / operator.

[src]

Performs the / operation.

impl<'b, N: Real> Div<&'b Rotation<N, U2>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U2>, 
[src]

The resulting type after applying the / operator.

[src]

Performs the / operation.

impl<'a, 'b, N: Real> Div<&'b Rotation<N, U2>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U2>, 
[src]

The resulting type after applying the / operator.

[src]

Performs the / operation.

impl<N: Real> Mul<Point2<N>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, N: Real> Mul<Point2<N>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'b, N: Real> Mul<&'b Point2<N>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, 'b, N: Real> Mul<&'b Point2<N>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<N: Real, S: Storage<N, U2>> Mul<Vector<N, U2, S>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, N: Real, S: Storage<N, U2>> Mul<Vector<N, U2, S>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'b, N: Real, S: Storage<N, U2>> Mul<&'b Vector<N, U2, S>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, 'b, N: Real, S: Storage<N, U2>> Mul<&'b Vector<N, U2, S>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<N: Real, S: Storage<N, U2>> Mul<Unit<Vector<N, U2, S>>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, N: Real, S: Storage<N, U2>> Mul<Unit<Vector<N, U2, S>>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'b, N: Real, S: Storage<N, U2>> Mul<&'b Unit<Vector<N, U2, S>>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, 'b, N: Real, S: Storage<N, U2>> Mul<&'b Unit<Vector<N, U2, S>>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<N: Real> Mul<Isometry<N, U2, UnitComplex<N>>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, N: Real> Mul<Isometry<N, U2, UnitComplex<N>>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'b, N: Real> Mul<&'b Isometry<N, U2, UnitComplex<N>>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, 'b, N: Real> Mul<&'b Isometry<N, U2, UnitComplex<N>>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<N: Real> Mul<Similarity<N, U2, UnitComplex<N>>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, N: Real> Mul<Similarity<N, U2, UnitComplex<N>>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'b, N: Real> Mul<&'b Similarity<N, U2, UnitComplex<N>>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, 'b, N: Real> Mul<&'b Similarity<N, U2, UnitComplex<N>>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<N: Real> Mul<Translation<N, U2>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, N: Real> Mul<Translation<N, U2>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'b, N: Real> Mul<&'b Translation<N, U2>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<'a, 'b, N: Real> Mul<&'b Translation<N, U2>> for &'a UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U1>, 
[src]

The resulting type after applying the * operator.

[src]

Performs the * operation.

impl<N: Real> MulAssign<UnitComplex<N>> for UnitComplex<N>
[src]

[src]

Performs the *= operation.

impl<'b, N: Real> MulAssign<&'b UnitComplex<N>> for UnitComplex<N>
[src]

[src]

Performs the *= operation.

impl<N: Real> DivAssign<UnitComplex<N>> for UnitComplex<N>
[src]

[src]

Performs the /= operation.

impl<'b, N: Real> DivAssign<&'b UnitComplex<N>> for UnitComplex<N>
[src]

[src]

Performs the /= operation.

impl<N: Real> MulAssign<Rotation<N, U2>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U2>, 
[src]

[src]

Performs the *= operation.

impl<'b, N: Real> MulAssign<&'b Rotation<N, U2>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U2>, 
[src]

[src]

Performs the *= operation.

impl<N: Real> DivAssign<Rotation<N, U2>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U2>, 
[src]

[src]

Performs the /= operation.

impl<'b, N: Real> DivAssign<&'b Rotation<N, U2>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2, U2>, 
[src]

[src]

Performs the /= operation.

impl<N: Real> Identity<Multiplicative> for UnitComplex<N>
[src]

[src]

The identity element.

[src]

Specific identity.

impl<N: Real> AbstractMagma<Multiplicative> for UnitComplex<N>
[src]

[src]

Performs an operation.

[src]

Performs specific operation.

impl<N: Real> Inverse<Multiplicative> for UnitComplex<N>
[src]

[src]

Returns the inverse of self, relative to the operator O.

[src]

In-place inversin of self.

impl<N: Real> AbstractSemigroup<Multiplicative> for UnitComplex<N>
[src]

[src]

Returns true if associativity holds for the given arguments. Approximate equality is used for verifications. Read more

[src]

Returns true if associativity holds for the given arguments.

impl<N: Real> AbstractQuasigroup<Multiplicative> for UnitComplex<N>
[src]

[src]

Returns true if latin squareness holds for the given arguments. Approximate equality is used for verifications. Read more

[src]

Returns true if latin squareness holds for the given arguments.

impl<N: Real> AbstractMonoid<Multiplicative> for UnitComplex<N>
[src]

[src]

Checks whether operating with the identity element is a no-op for the given argument. Approximate equality is used for verifications. Read more

[src]

Checks whether operating with the identity element is a no-op for the given argument. Read more

impl<N: Real> AbstractLoop<Multiplicative> for UnitComplex<N>
[src]

impl<N: Real> AbstractGroup<Multiplicative> for UnitComplex<N>
[src]

impl<N: Real> Transformation<Point2<N>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2>, 
[src]

[src]

Applies this group's action on a point from the euclidean space.

[src]

Applies this group's action on a vector from the euclidean space. Read more

impl<N: Real> ProjectiveTransformation<Point2<N>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2>, 
[src]

[src]

Applies this group's inverse action on a point from the euclidean space.

[src]

Applies this group's inverse action on a vector from the euclidean space. Read more

impl<N: Real> AffineTransformation<Point2<N>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2>, 
[src]

Type of the first rotation to be applied.

Type of the non-uniform scaling to be applied.

The type of the pure translation part of this affine transformation.

[src]

Decomposes this affine transformation into a rotation followed by a non-uniform scaling, followed by a rotation, followed by a translation. Read more

[src]

Appends a translation to this similarity.

[src]

Prepends a translation to this similarity.

[src]

Appends a rotation to this similarity.

[src]

Prepends a rotation to this similarity.

[src]

Appends a scaling factor to this similarity.

[src]

Prepends a scaling factor to this similarity.

[src]

Appends to this similarity a rotation centered at the point p, i.e., this point is left invariant. Read more

impl<N: Real> Similarity<Point2<N>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2>, 
[src]

The type of the pure (uniform) scaling part of this similarity transformation.

[src]

The pure translational component of this similarity transformation.

[src]

The pure rotational component of this similarity transformation.

[src]

The pure scaling component of this similarity transformation.

[src]

Applies this transformation's pure translational part to a point.

[src]

Applies this transformation's pure rotational part to a point.

[src]

Applies this transformation's pure scaling part to a point.

[src]

Applies this transformation's pure rotational part to a vector.

[src]

Applies this transformation's pure scaling part to a vector.

[src]

Applies this transformation inverse's pure translational part to a point.

[src]

Applies this transformation inverse's pure rotational part to a point.

[src]

Applies this transformation inverse's pure scaling part to a point.

[src]

Applies this transformation inverse's pure rotational part to a vector.

[src]

Applies this transformation inverse's pure scaling part to a vector.

impl<N: Real> Isometry<Point2<N>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2>, 
[src]

impl<N: Real> DirectIsometry<Point2<N>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2>, 
[src]

impl<N: Real> OrthogonalTransformation<Point2<N>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2>, 
[src]

impl<N: Real> Rotation<Point2<N>> for UnitComplex<N> where
    DefaultAllocator: Allocator<N, U2>, 
[src]

[src]

Raises this rotation to a power. If this is a simple rotation, the result must be equivalent to multiplying the rotation angle by n. Read more

[src]

Computes a simple rotation that makes the angle between a and b equal to zero, i.e., b.angle(a * delta_rotation(a, b)) = 0. If a and b are collinear, the computed rotation may not be unique. Returns None if no such simple rotation exists in the subgroup represented by Self. Read more

[src]

Computes the rotation between a and b and raises it to the power n. Read more

impl<N1, N2> SubsetOf<UnitComplex<N2>> for UnitComplex<N1> where
    N1: Real,
    N2: Real + SupersetOf<N1>, 
[src]

[src]

The inclusion map: converts self to the equivalent element of its superset.

[src]

Checks if element is actually part of the subset Self (and can be converted to it).

[src]

Use with care! Same as self.to_superset but without any property checks. Always succeeds.

[src]

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more

impl<N1, N2> SubsetOf<Rotation2<N2>> for UnitComplex<N1> where
    N1: Real,
    N2: Real + SupersetOf<N1>, 
[src]

[src]

The inclusion map: converts self to the equivalent element of its superset.

[src]

Checks if element is actually part of the subset Self (and can be converted to it).

[src]

Use with care! Same as self.to_superset but without any property checks. Always succeeds.

[src]

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more

impl<N1, N2, R> SubsetOf<Isometry<N2, U2, R>> for UnitComplex<N1> where
    N1: Real,
    N2: Real + SupersetOf<N1>,
    R: AlgaRotation<Point2<N2>> + SupersetOf<UnitComplex<N1>>, 
[src]

[src]

The inclusion map: converts self to the equivalent element of its superset.

[src]

Checks if element is actually part of the subset Self (and can be converted to it).

[src]

Use with care! Same as self.to_superset but without any property checks. Always succeeds.

[src]

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more

impl<N1, N2, R> SubsetOf<Similarity<N2, U2, R>> for UnitComplex<N1> where
    N1: Real,
    N2: Real + SupersetOf<N1>,
    R: AlgaRotation<Point2<N2>> + SupersetOf<UnitComplex<N1>>, 
[src]

[src]

The inclusion map: converts self to the equivalent element of its superset.

[src]

Checks if element is actually part of the subset Self (and can be converted to it).

[src]

Use with care! Same as self.to_superset but without any property checks. Always succeeds.

[src]

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more

impl<N1, N2, C> SubsetOf<Transform<N2, U2, C>> for UnitComplex<N1> where
    N1: Real,
    N2: Real + SupersetOf<N1>,
    C: SuperTCategoryOf<TAffine>, 
[src]

[src]

The inclusion map: converts self to the equivalent element of its superset.

[src]

Checks if element is actually part of the subset Self (and can be converted to it).

[src]

Use with care! Same as self.to_superset but without any property checks. Always succeeds.

[src]

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more

impl<N1: Real, N2: Real + SupersetOf<N1>> SubsetOf<Matrix3<N2>> for UnitComplex<N1>
[src]

[src]

The inclusion map: converts self to the equivalent element of its superset.

[src]

Checks if element is actually part of the subset Self (and can be converted to it).

[src]

Use with care! Same as self.to_superset but without any property checks. Always succeeds.

[src]

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more