[−][src]Struct nalgebra::geometry::Point
A point in an euclidean space.
The difference between a point and a vector is only semantic. See the user guide
for details on the distinction. The most notable difference that vectors ignore translations.
In particular, an Isometry2
or Isometry3
will
transform points by applying a rotation and a translation on them. However, these isometries
will only apply rotations to vectors (when doing isometry * vector
, the translation part of
the isometry is ignored).
Construction
- From individual components
new
… - Swizzling
xx
,yxz
… - Other construction methods
origin
,from_slice
,from_homogeneous
…
Transformation
Transforming a point by an Isometry, rotation, etc. can be
achieved by multiplication, e.g., isometry * point
or rotation * point
. Some of these transformation
may have some other methods, e.g., isometry.inverse_transform_point(&point)
. See the documentation
of said transformations for details.
Fields
coords: VectorN<N, D>
The coordinates of this point, i.e., the shift from the origin.
Implementations
impl<N: Scalar, D: DimName> Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
pub fn map<N2: Scalar, F: FnMut(N) -> N2>(&self, f: F) -> Point<N2, D> where
DefaultAllocator: Allocator<N2, D>,
[src]
DefaultAllocator: Allocator<N2, D>,
Returns a point containing the result of f
applied to each of its entries.
Example
let p = Point2::new(1.0, 2.0); assert_eq!(p.map(|e| e * 10.0), Point2::new(10.0, 20.0)); // This works in any dimension. let p = Point3::new(1.1, 2.1, 3.1); assert_eq!(p.map(|e| e as u32), Point3::new(1, 2, 3));
pub fn apply<F: FnMut(N) -> N>(&mut self, f: F)
[src]
Replaces each component of self
by the result of a closure f
applied on it.
Example
let mut p = Point2::new(1.0, 2.0); p.apply(|e| e * 10.0); assert_eq!(p, Point2::new(10.0, 20.0)); // This works in any dimension. let mut p = Point3::new(1.0, 2.0, 3.0); p.apply(|e| e * 10.0); assert_eq!(p, Point3::new(10.0, 20.0, 30.0));
pub fn to_homogeneous(&self) -> VectorN<N, DimNameSum<D, U1>> where
N: One,
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>>,
[src]
N: One,
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>>,
Converts this point into a vector in homogeneous coordinates, i.e., appends a 1
at the
end of it.
This is the same as .into()
.
Example
let p = Point2::new(10.0, 20.0); assert_eq!(p.to_homogeneous(), Vector3::new(10.0, 20.0, 1.0)); // This works in any dimension. let p = Point3::new(10.0, 20.0, 30.0); assert_eq!(p.to_homogeneous(), Vector4::new(10.0, 20.0, 30.0, 1.0));
pub fn from_coordinates(coords: VectorN<N, D>) -> Self
[src]
Use Point::from(vector) instead.
Creates a new point with the given coordinates.
pub fn len(&self) -> usize
[src]
The dimension of this point.
Example
let p = Point2::new(1.0, 2.0); assert_eq!(p.len(), 2); // This works in any dimension. let p = Point3::new(10.0, 20.0, 30.0); assert_eq!(p.len(), 3);
pub fn is_empty(&self) -> bool
[src]
Returns true if the point contains no elements.
Example
let p = Point2::new(1.0, 2.0); assert!(!p.is_empty());
pub fn stride(&self) -> usize
[src]
This methods is no longer significant and will always return 1.
The stride of this point. This is the number of buffer element separating each component of this point.
pub fn iter(
&self
) -> MatrixIter<'_, N, D, U1, <DefaultAllocator as Allocator<N, D>>::Buffer>ⓘNotable traits for MatrixIter<'a, N, R, C, S>
impl<'a, N: Scalar, R: Dim, C: Dim, S: 'a + Storage<N, R, C>> Iterator for MatrixIter<'a, N, R, C, S> type Item = &'a N;
[src]
&self
) -> MatrixIter<'_, N, D, U1, <DefaultAllocator as Allocator<N, D>>::Buffer>ⓘ
Notable traits for MatrixIter<'a, N, R, C, S>
impl<'a, N: Scalar, R: Dim, C: Dim, S: 'a + Storage<N, R, C>> Iterator for MatrixIter<'a, N, R, C, S> type Item = &'a N;
Iterates through this point coordinates.
Example
let p = Point3::new(1.0, 2.0, 3.0); let mut it = p.iter().cloned(); assert_eq!(it.next(), Some(1.0)); assert_eq!(it.next(), Some(2.0)); assert_eq!(it.next(), Some(3.0)); assert_eq!(it.next(), None);
pub unsafe fn get_unchecked(&self, i: usize) -> &N
[src]
Gets a reference to i-th element of this point without bound-checking.
pub fn iter_mut(
&mut self
) -> MatrixIterMut<'_, N, D, U1, <DefaultAllocator as Allocator<N, D>>::Buffer>ⓘNotable traits for MatrixIterMut<'a, N, R, C, S>
impl<'a, N: Scalar, R: Dim, C: Dim, S: 'a + StorageMut<N, R, C>> Iterator for MatrixIterMut<'a, N, R, C, S> type Item = &'a mut N;
[src]
&mut self
) -> MatrixIterMut<'_, N, D, U1, <DefaultAllocator as Allocator<N, D>>::Buffer>ⓘ
Notable traits for MatrixIterMut<'a, N, R, C, S>
impl<'a, N: Scalar, R: Dim, C: Dim, S: 'a + StorageMut<N, R, C>> Iterator for MatrixIterMut<'a, N, R, C, S> type Item = &'a mut N;
Mutably iterates through this point coordinates.
Example
let mut p = Point3::new(1.0, 2.0, 3.0); for e in p.iter_mut() { *e *= 10.0; } assert_eq!(p, Point3::new(10.0, 20.0, 30.0));
pub unsafe fn get_unchecked_mut(&mut self, i: usize) -> &mut N
[src]
Gets a mutable reference to i-th element of this point without bound-checking.
pub unsafe fn swap_unchecked(&mut self, i1: usize, i2: usize)
[src]
Swaps two entries without bound-checking.
impl<N: Scalar + SimdPartialOrd, D: DimName> Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
pub fn inf(&self, other: &Self) -> Point<N, D>
[src]
Computes the infimum (aka. componentwise min) of two points.
pub fn sup(&self, other: &Self) -> Point<N, D>
[src]
Computes the supremum (aka. componentwise max) of two points.
pub fn inf_sup(&self, other: &Self) -> (Point<N, D>, Point<N, D>)
[src]
Computes the (infimum, supremum) of two points.
impl<N: Scalar, D: DimName> Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
pub unsafe fn new_uninitialized() -> Self
[src]
Creates a new point with uninitialized coordinates.
pub fn origin() -> Self where
N: Zero,
[src]
N: Zero,
Creates a new point with all coordinates equal to zero.
Example
// This works in any dimension. // The explicit crate::<f32> type annotation may not always be needed, // depending on the context of type inference. let pt = Point2::<f32>::origin(); assert!(pt.x == 0.0 && pt.y == 0.0); let pt = Point3::<f32>::origin(); assert!(pt.x == 0.0 && pt.y == 0.0 && pt.z == 0.0);
pub fn from_slice(components: &[N]) -> Self
[src]
Creates a new point from a slice.
Example
let data = [ 1.0, 2.0, 3.0 ]; let pt = Point2::from_slice(&data[..2]); assert_eq!(pt, Point2::new(1.0, 2.0)); let pt = Point3::from_slice(&data); assert_eq!(pt, Point3::new(1.0, 2.0, 3.0));
pub fn from_homogeneous(v: VectorN<N, DimNameSum<D, U1>>) -> Option<Self> where
N: Scalar + Zero + One + ClosedDiv,
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>>,
[src]
N: Scalar + Zero + One + ClosedDiv,
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>>,
Creates a new point from its homogeneous vector representation.
In practice, this builds a D-dimensional points with the same first D component as v
divided by the last component of v
. Returns None
if this divisor is zero.
Example
let coords = Vector4::new(1.0, 2.0, 3.0, 1.0); let pt = Point3::from_homogeneous(coords); assert_eq!(pt, Some(Point3::new(1.0, 2.0, 3.0))); // All component of the result will be divided by the // last component of the vector, here 2.0. let coords = Vector4::new(1.0, 2.0, 3.0, 2.0); let pt = Point3::from_homogeneous(coords); assert_eq!(pt, Some(Point3::new(0.5, 1.0, 1.5))); // Fails because the last component is zero. let coords = Vector4::new(1.0, 2.0, 3.0, 0.0); let pt = Point3::from_homogeneous(coords); assert!(pt.is_none()); // Works also in other dimensions. let coords = Vector3::new(1.0, 2.0, 1.0); let pt = Point2::from_homogeneous(coords); assert_eq!(pt, Some(Point2::new(1.0, 2.0)));
impl<N: Scalar> Point<N, U1>
[src]
impl<N: Scalar> Point<N, U2>
[src]
pub fn new(x: N, y: N) -> Self
[src]
Initializes this point from its components.
Example
let p = Point2::new(1.0, 2.0); assert!(p.x == 1.0 && p.y == 2.0);
impl<N: Scalar> Point<N, U3>
[src]
pub fn new(x: N, y: N, z: N) -> Self
[src]
Initializes this point from its components.
Example
let p = Point3::new(1.0, 2.0, 3.0); assert!(p.x == 1.0 && p.y == 2.0 && p.z == 3.0);
impl<N: Scalar> Point<N, U4>
[src]
pub fn new(x: N, y: N, z: N, w: N) -> Self
[src]
Initializes this point from its components.
Example
let p = Point4::new(1.0, 2.0, 3.0, 4.0); assert!(p.x == 1.0 && p.y == 2.0 && p.z == 3.0 && p.w == 4.0);
impl<N: Scalar> Point<N, U5>
[src]
pub fn new(x: N, y: N, z: N, w: N, a: N) -> Self
[src]
Initializes this point from its components.
Example
let p = Point5::new(1.0, 2.0, 3.0, 4.0, 5.0); assert!(p.x == 1.0 && p.y == 2.0 && p.z == 3.0 && p.w == 4.0 && p.a == 5.0);
impl<N: Scalar> Point<N, U6>
[src]
pub fn new(x: N, y: N, z: N, w: N, a: N, b: N) -> Self
[src]
Initializes this point from its components.
Example
let p = Point6::new(1.0, 2.0, 3.0, 4.0, 5.0, 6.0); assert!(p.x == 1.0 && p.y == 2.0 && p.z == 3.0 && p.w == 4.0 && p.a == 5.0 && p.b == 6.0);
impl<N: Scalar, D: DimName> Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
pub fn xx(&self) -> Point2<N> where
D::Value: Cmp<U0, Output = Greater>,
[src]
D::Value: Cmp<U0, Output = Greater>,
Builds a new point from components of self
.
pub fn xxx(&self) -> Point3<N> where
D::Value: Cmp<U0, Output = Greater>,
[src]
D::Value: Cmp<U0, Output = Greater>,
Builds a new point from components of self
.
pub fn xy(&self) -> Point2<N> where
D::Value: Cmp<U1, Output = Greater>,
[src]
D::Value: Cmp<U1, Output = Greater>,
Builds a new point from components of self
.
pub fn yx(&self) -> Point2<N> where
D::Value: Cmp<U1, Output = Greater>,
[src]
D::Value: Cmp<U1, Output = Greater>,
Builds a new point from components of self
.
pub fn yy(&self) -> Point2<N> where
D::Value: Cmp<U1, Output = Greater>,
[src]
D::Value: Cmp<U1, Output = Greater>,
Builds a new point from components of self
.
pub fn xxy(&self) -> Point3<N> where
D::Value: Cmp<U1, Output = Greater>,
[src]
D::Value: Cmp<U1, Output = Greater>,
Builds a new point from components of self
.
pub fn xyx(&self) -> Point3<N> where
D::Value: Cmp<U1, Output = Greater>,
[src]
D::Value: Cmp<U1, Output = Greater>,
Builds a new point from components of self
.
pub fn xyy(&self) -> Point3<N> where
D::Value: Cmp<U1, Output = Greater>,
[src]
D::Value: Cmp<U1, Output = Greater>,
Builds a new point from components of self
.
pub fn yxx(&self) -> Point3<N> where
D::Value: Cmp<U1, Output = Greater>,
[src]
D::Value: Cmp<U1, Output = Greater>,
Builds a new point from components of self
.
pub fn yxy(&self) -> Point3<N> where
D::Value: Cmp<U1, Output = Greater>,
[src]
D::Value: Cmp<U1, Output = Greater>,
Builds a new point from components of self
.
pub fn yyx(&self) -> Point3<N> where
D::Value: Cmp<U1, Output = Greater>,
[src]
D::Value: Cmp<U1, Output = Greater>,
Builds a new point from components of self
.
pub fn yyy(&self) -> Point3<N> where
D::Value: Cmp<U1, Output = Greater>,
[src]
D::Value: Cmp<U1, Output = Greater>,
Builds a new point from components of self
.
pub fn xz(&self) -> Point2<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn yz(&self) -> Point2<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn zx(&self) -> Point2<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn zy(&self) -> Point2<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn zz(&self) -> Point2<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn xxz(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn xyz(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn xzx(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn xzy(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn xzz(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn yxz(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn yyz(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn yzx(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn yzy(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn yzz(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn zxx(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn zxy(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn zxz(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn zyx(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn zyy(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn zyz(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn zzx(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn zzy(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
pub fn zzz(&self) -> Point3<N> where
D::Value: Cmp<U2, Output = Greater>,
[src]
D::Value: Cmp<U2, Output = Greater>,
Builds a new point from components of self
.
Trait Implementations
impl<N: Scalar + AbsDiffEq, D: DimName> AbsDiffEq<Point<N, D>> for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
N::Epsilon: Copy,
[src]
DefaultAllocator: Allocator<N, D>,
N::Epsilon: Copy,
type Epsilon = N::Epsilon
Used for specifying relative comparisons.
pub fn default_epsilon() -> Self::Epsilon
[src]
pub fn abs_diff_eq(&self, other: &Self, epsilon: Self::Epsilon) -> bool
[src]
pub fn abs_diff_ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool
[src]
impl<'a, 'b, N, D1: DimName, D2: Dim, SB: Storage<N, D2>> Add<&'b Matrix<N, D2, U1, SB>> for &'a Point<N, D1> where
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
type Output = Point<N, D1>
The resulting type after applying the +
operator.
pub fn add(self, right: &'b Vector<N, D2, SB>) -> Self::Output
[src]
impl<'b, N, D1: DimName, D2: Dim, SB: Storage<N, D2>> Add<&'b Matrix<N, D2, U1, SB>> for Point<N, D1> where
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
type Output = Point<N, D1>
The resulting type after applying the +
operator.
pub fn add(self, right: &'b Vector<N, D2, SB>) -> Self::Output
[src]
impl<'a, N, D1: DimName, D2: Dim, SB: Storage<N, D2>> Add<Matrix<N, D2, U1, SB>> for &'a Point<N, D1> where
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
type Output = Point<N, D1>
The resulting type after applying the +
operator.
pub fn add(self, right: Vector<N, D2, SB>) -> Self::Output
[src]
impl<N, D1: DimName, D2: Dim, SB: Storage<N, D2>> Add<Matrix<N, D2, U1, SB>> for Point<N, D1> where
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
type Output = Point<N, D1>
The resulting type after applying the +
operator.
pub fn add(self, right: Vector<N, D2, SB>) -> Self::Output
[src]
impl<'b, N, D1: DimName, D2: Dim, SB> AddAssign<&'b Matrix<N, D2, U1, SB>> for Point<N, D1> where
N: Scalar + ClosedAdd,
SB: Storage<N, D2>,
DefaultAllocator: Allocator<N, D1>,
ShapeConstraint: SameNumberOfRows<D1, D2>,
[src]
N: Scalar + ClosedAdd,
SB: Storage<N, D2>,
DefaultAllocator: Allocator<N, D1>,
ShapeConstraint: SameNumberOfRows<D1, D2>,
pub fn add_assign(&mut self, right: &'b Vector<N, D2, SB>)
[src]
impl<N, D1: DimName, D2: Dim, SB> AddAssign<Matrix<N, D2, U1, SB>> for Point<N, D1> where
N: Scalar + ClosedAdd,
SB: Storage<N, D2>,
DefaultAllocator: Allocator<N, D1>,
ShapeConstraint: SameNumberOfRows<D1, D2>,
[src]
N: Scalar + ClosedAdd,
SB: Storage<N, D2>,
DefaultAllocator: Allocator<N, D1>,
ShapeConstraint: SameNumberOfRows<D1, D2>,
pub fn add_assign(&mut self, right: Vector<N, D2, SB>)
[src]
impl<N: Scalar + Bounded, D: DimName> Bounded for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
impl<N: Clone + Scalar, D: Clone + DimName> Clone for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
impl<N: Scalar + Copy, D: DimName> Copy for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
<DefaultAllocator as Allocator<N, D>>::Buffer: Copy,
[src]
DefaultAllocator: Allocator<N, D>,
<DefaultAllocator as Allocator<N, D>>::Buffer: Copy,
impl<N: Debug + Scalar, D: Debug + DimName> Debug for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
impl<N: Scalar> Deref for Point<N, U1> where
DefaultAllocator: Allocator<N, U1>,
[src]
DefaultAllocator: Allocator<N, U1>,
impl<N: Scalar> Deref for Point<N, U2> where
DefaultAllocator: Allocator<N, U2>,
[src]
DefaultAllocator: Allocator<N, U2>,
type Target = XY<N>
The resulting type after dereferencing.
pub fn deref(&self) -> &Self::Target
[src]
impl<N: Scalar> Deref for Point<N, U3> where
DefaultAllocator: Allocator<N, U3>,
[src]
DefaultAllocator: Allocator<N, U3>,
type Target = XYZ<N>
The resulting type after dereferencing.
pub fn deref(&self) -> &Self::Target
[src]
impl<N: Scalar> Deref for Point<N, U4> where
DefaultAllocator: Allocator<N, U4>,
[src]
DefaultAllocator: Allocator<N, U4>,
type Target = XYZW<N>
The resulting type after dereferencing.
pub fn deref(&self) -> &Self::Target
[src]
impl<N: Scalar> Deref for Point<N, U5> where
DefaultAllocator: Allocator<N, U5>,
[src]
DefaultAllocator: Allocator<N, U5>,
type Target = XYZWA<N>
The resulting type after dereferencing.
pub fn deref(&self) -> &Self::Target
[src]
impl<N: Scalar> Deref for Point<N, U6> where
DefaultAllocator: Allocator<N, U6>,
[src]
DefaultAllocator: Allocator<N, U6>,
type Target = XYZWAB<N>
The resulting type after dereferencing.
pub fn deref(&self) -> &Self::Target
[src]
impl<N: Scalar> DerefMut for Point<N, U1> where
DefaultAllocator: Allocator<N, U1>,
[src]
DefaultAllocator: Allocator<N, U1>,
impl<N: Scalar> DerefMut for Point<N, U2> where
DefaultAllocator: Allocator<N, U2>,
[src]
DefaultAllocator: Allocator<N, U2>,
impl<N: Scalar> DerefMut for Point<N, U3> where
DefaultAllocator: Allocator<N, U3>,
[src]
DefaultAllocator: Allocator<N, U3>,
impl<N: Scalar> DerefMut for Point<N, U4> where
DefaultAllocator: Allocator<N, U4>,
[src]
DefaultAllocator: Allocator<N, U4>,
impl<N: Scalar> DerefMut for Point<N, U5> where
DefaultAllocator: Allocator<N, U5>,
[src]
DefaultAllocator: Allocator<N, U5>,
impl<N: Scalar> DerefMut for Point<N, U6> where
DefaultAllocator: Allocator<N, U6>,
[src]
DefaultAllocator: Allocator<N, U6>,
impl<N: Scalar + Display, D: DimName> Display for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
impl<N: Scalar, D: DimName> Distribution<Point<N, D>> for Standard where
DefaultAllocator: Allocator<N, D>,
Standard: Distribution<N>,
[src]
DefaultAllocator: Allocator<N, D>,
Standard: Distribution<N>,
pub fn sample<'a, G: Rng + ?Sized>(&self, rng: &mut G) -> Point<N, D>
[src]
pub fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T> where
R: Rng,
[src]
R: Rng,
impl<N: Scalar + ClosedDiv, D: DimName> Div<N> for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
type Output = Point<N, D>
The resulting type after applying the /
operator.
pub fn div(self, right: N) -> Self::Output
[src]
impl<'a, N: Scalar + ClosedDiv, D: DimName> Div<N> for &'a Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
type Output = Point<N, D>
The resulting type after applying the /
operator.
pub fn div(self, right: N) -> Self::Output
[src]
impl<N: Scalar + ClosedDiv, D: DimName> DivAssign<N> for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
pub fn div_assign(&mut self, right: N)
[src]
impl<N: Scalar + Eq, D: DimName> Eq for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
impl<N: Scalar + Copy + PrimitiveSimdValue, D: DimName> From<[Point<<N as SimdValue>::Element, D>; 16]> for Point<N, D> where
N: From<[<N as SimdValue>::Element; 16]>,
N::Element: Scalar + Copy,
DefaultAllocator: Allocator<N, D> + Allocator<N::Element, D>,
<DefaultAllocator as Allocator<N::Element, D>>::Buffer: Copy,
[src]
N: From<[<N as SimdValue>::Element; 16]>,
N::Element: Scalar + Copy,
DefaultAllocator: Allocator<N, D> + Allocator<N::Element, D>,
<DefaultAllocator as Allocator<N::Element, D>>::Buffer: Copy,
impl<N: Scalar + Copy + PrimitiveSimdValue, D: DimName> From<[Point<<N as SimdValue>::Element, D>; 2]> for Point<N, D> where
N: From<[<N as SimdValue>::Element; 2]>,
N::Element: Scalar + Copy,
DefaultAllocator: Allocator<N, D> + Allocator<N::Element, D>,
<DefaultAllocator as Allocator<N::Element, D>>::Buffer: Copy,
[src]
N: From<[<N as SimdValue>::Element; 2]>,
N::Element: Scalar + Copy,
DefaultAllocator: Allocator<N, D> + Allocator<N::Element, D>,
<DefaultAllocator as Allocator<N::Element, D>>::Buffer: Copy,
impl<N: Scalar + Copy + PrimitiveSimdValue, D: DimName> From<[Point<<N as SimdValue>::Element, D>; 4]> for Point<N, D> where
N: From<[<N as SimdValue>::Element; 4]>,
N::Element: Scalar + Copy,
DefaultAllocator: Allocator<N, D> + Allocator<N::Element, D>,
<DefaultAllocator as Allocator<N::Element, D>>::Buffer: Copy,
[src]
N: From<[<N as SimdValue>::Element; 4]>,
N::Element: Scalar + Copy,
DefaultAllocator: Allocator<N, D> + Allocator<N::Element, D>,
<DefaultAllocator as Allocator<N::Element, D>>::Buffer: Copy,
impl<N: Scalar + Copy + PrimitiveSimdValue, D: DimName> From<[Point<<N as SimdValue>::Element, D>; 8]> for Point<N, D> where
N: From<[<N as SimdValue>::Element; 8]>,
N::Element: Scalar + Copy,
DefaultAllocator: Allocator<N, D> + Allocator<N::Element, D>,
<DefaultAllocator as Allocator<N::Element, D>>::Buffer: Copy,
[src]
N: From<[<N as SimdValue>::Element; 8]>,
N::Element: Scalar + Copy,
DefaultAllocator: Allocator<N, D> + Allocator<N::Element, D>,
<DefaultAllocator as Allocator<N::Element, D>>::Buffer: Copy,
impl<N: Scalar, D: DimName> From<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
impl<N: Scalar + Zero + One, D: DimName> From<Point<N, D>> for VectorN<N, DimNameSum<D, U1>> where
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N, D> + Allocator<N, DimNameSum<D, U1>>,
[src]
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N, D> + Allocator<N, DimNameSum<D, U1>>,
impl<N: Scalar + Hash, D: DimName + Hash> Hash for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
<DefaultAllocator as Allocator<N, D>>::Buffer: Hash,
[src]
DefaultAllocator: Allocator<N, D>,
<DefaultAllocator as Allocator<N, D>>::Buffer: Hash,
pub fn hash<H: Hasher>(&self, state: &mut H)
[src]
pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl<N: Scalar, D: DimName> Index<usize> for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
type Output = N
The returned type after indexing.
pub fn index(&self, i: usize) -> &Self::Output
[src]
impl<N: Scalar, D: DimName> IndexMut<usize> for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
impl<'b, N, D: DimName> Mul<&'b Point<N, D>> for Rotation<N, D> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<N, D>) -> Self::Output
[src]
impl<'a, 'b, N, D: DimName> Mul<&'b Point<N, D>> for &'a Rotation<N, D> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<N, D>) -> Self::Output
[src]
impl<'a, 'b, N, D: DimName> Mul<&'b Point<N, D>> for &'a Translation<N, D> where
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D, Representative = D> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D, Representative = D> + SameNumberOfColumns<U1, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<N, D>) -> Self::Output
[src]
impl<'b, N, D: DimName> Mul<&'b Point<N, D>> for Translation<N, D> where
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D, Representative = D> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D, Representative = D> + SameNumberOfColumns<U1, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<N, D>) -> Self::Output
[src]
impl<'b, N: SimdRealField, D: DimName, R> Mul<&'b Point<N, D>> for Isometry<N, D, R> where
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
[src]
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<N, D>) -> Self::Output
[src]
impl<'a, 'b, N: SimdRealField, D: DimName, R> Mul<&'b Point<N, D>> for &'a Isometry<N, D, R> where
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
[src]
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<N, D>) -> Self::Output
[src]
impl<'b, N: SimdRealField, D: DimName, R> Mul<&'b Point<N, D>> for Similarity<N, D, R> where
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
[src]
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<N, D>) -> Self::Output
[src]
impl<'a, 'b, N: SimdRealField, D: DimName, R> Mul<&'b Point<N, D>> for &'a Similarity<N, D, R> where
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
[src]
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<N, D>) -> Self::Output
[src]
impl<'b, N, D: DimNameAdd<U1>, C: TCategory> Mul<&'b Point<N, D>> for Transform<N, D, C> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, rhs: &'b Point<N, D>) -> Self::Output
[src]
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategory> Mul<&'b Point<N, D>> for &'a Transform<N, D, C> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, rhs: &'b Point<N, D>) -> Self::Output
[src]
impl<'b, N, R1: DimName, C1: Dim, D2: DimName, SA: Storage<N, R1, C1>> Mul<&'b Point<N, D2>> for Matrix<N, R1, C1, SA> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, R1, C1> + Allocator<N, D2, U1> + Allocator<N, R1, U1>,
ShapeConstraint: AreMultipliable<R1, C1, D2, U1>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, R1, C1> + Allocator<N, D2, U1> + Allocator<N, R1, U1>,
ShapeConstraint: AreMultipliable<R1, C1, D2, U1>,
type Output = Point<N, R1>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<N, D2>) -> Self::Output
[src]
impl<'a, 'b, N, R1: DimName, C1: Dim, D2: DimName, SA: Storage<N, R1, C1>> Mul<&'b Point<N, D2>> for &'a Matrix<N, R1, C1, SA> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, R1, C1> + Allocator<N, D2, U1> + Allocator<N, R1, U1>,
ShapeConstraint: AreMultipliable<R1, C1, D2, U1>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, R1, C1> + Allocator<N, D2, U1> + Allocator<N, R1, U1>,
ShapeConstraint: AreMultipliable<R1, C1, D2, U1>,
type Output = Point<N, R1>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<N, D2>) -> Self::Output
[src]
impl<'b, N: SimdRealField> Mul<&'b Point<N, U2>> for UnitComplex<N> where
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U1>,
[src]
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U1>,
type Output = Point2<N>
The resulting type after applying the *
operator.
pub fn mul(self, rhs: &'b Point2<N>) -> Self::Output
[src]
impl<'a, 'b, N: SimdRealField> Mul<&'b Point<N, U2>> for &'a UnitComplex<N> where
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U1>,
[src]
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U1>,
type Output = Point2<N>
The resulting type after applying the *
operator.
pub fn mul(self, rhs: &'b Point2<N>) -> Self::Output
[src]
impl<'a, 'b, N: SimdRealField> Mul<&'b Point<N, U3>> for &'a UnitQuaternion<N> where
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
[src]
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
type Output = Point3<N>
The resulting type after applying the *
operator.
pub fn mul(self, rhs: &'b Point3<N>) -> Self::Output
[src]
impl<'b, N: SimdRealField> Mul<&'b Point<N, U3>> for UnitQuaternion<N> where
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
[src]
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
type Output = Point3<N>
The resulting type after applying the *
operator.
pub fn mul(self, rhs: &'b Point3<N>) -> Self::Output
[src]
impl<'b, D: DimName> Mul<&'b Point<f32, D>> for f32 where
DefaultAllocator: Allocator<f32, D>,
[src]
DefaultAllocator: Allocator<f32, D>,
type Output = Point<f32, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<f32, D>) -> Self::Output
[src]
impl<'b, D: DimName> Mul<&'b Point<f64, D>> for f64 where
DefaultAllocator: Allocator<f64, D>,
[src]
DefaultAllocator: Allocator<f64, D>,
type Output = Point<f64, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<f64, D>) -> Self::Output
[src]
impl<'b, D: DimName> Mul<&'b Point<i16, D>> for i16 where
DefaultAllocator: Allocator<i16, D>,
[src]
DefaultAllocator: Allocator<i16, D>,
type Output = Point<i16, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<i16, D>) -> Self::Output
[src]
impl<'b, D: DimName> Mul<&'b Point<i32, D>> for i32 where
DefaultAllocator: Allocator<i32, D>,
[src]
DefaultAllocator: Allocator<i32, D>,
type Output = Point<i32, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<i32, D>) -> Self::Output
[src]
impl<'b, D: DimName> Mul<&'b Point<i64, D>> for i64 where
DefaultAllocator: Allocator<i64, D>,
[src]
DefaultAllocator: Allocator<i64, D>,
type Output = Point<i64, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<i64, D>) -> Self::Output
[src]
impl<'b, D: DimName> Mul<&'b Point<i8, D>> for i8 where
DefaultAllocator: Allocator<i8, D>,
[src]
DefaultAllocator: Allocator<i8, D>,
type Output = Point<i8, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<i8, D>) -> Self::Output
[src]
impl<'b, D: DimName> Mul<&'b Point<isize, D>> for isize where
DefaultAllocator: Allocator<isize, D>,
[src]
DefaultAllocator: Allocator<isize, D>,
type Output = Point<isize, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<isize, D>) -> Self::Output
[src]
impl<'b, D: DimName> Mul<&'b Point<u16, D>> for u16 where
DefaultAllocator: Allocator<u16, D>,
[src]
DefaultAllocator: Allocator<u16, D>,
type Output = Point<u16, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<u16, D>) -> Self::Output
[src]
impl<'b, D: DimName> Mul<&'b Point<u32, D>> for u32 where
DefaultAllocator: Allocator<u32, D>,
[src]
DefaultAllocator: Allocator<u32, D>,
type Output = Point<u32, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<u32, D>) -> Self::Output
[src]
impl<'b, D: DimName> Mul<&'b Point<u64, D>> for u64 where
DefaultAllocator: Allocator<u64, D>,
[src]
DefaultAllocator: Allocator<u64, D>,
type Output = Point<u64, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<u64, D>) -> Self::Output
[src]
impl<'b, D: DimName> Mul<&'b Point<u8, D>> for u8 where
DefaultAllocator: Allocator<u8, D>,
[src]
DefaultAllocator: Allocator<u8, D>,
type Output = Point<u8, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<u8, D>) -> Self::Output
[src]
impl<'b, D: DimName> Mul<&'b Point<usize, D>> for usize where
DefaultAllocator: Allocator<usize, D>,
[src]
DefaultAllocator: Allocator<usize, D>,
type Output = Point<usize, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: &'b Point<usize, D>) -> Self::Output
[src]
impl<N: Scalar + ClosedMul, D: DimName> Mul<N> for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: N) -> Self::Output
[src]
impl<'a, N: Scalar + ClosedMul, D: DimName> Mul<N> for &'a Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: N) -> Self::Output
[src]
impl<N, D: DimName> Mul<Point<N, D>> for Rotation<N, D> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<N, D>) -> Self::Output
[src]
impl<'a, N, D: DimName> Mul<Point<N, D>> for &'a Rotation<N, D> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<N, D>) -> Self::Output
[src]
impl<'a, N, D: DimName> Mul<Point<N, D>> for &'a Translation<N, D> where
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D, Representative = D> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D, Representative = D> + SameNumberOfColumns<U1, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<N, D>) -> Self::Output
[src]
impl<N, D: DimName> Mul<Point<N, D>> for Translation<N, D> where
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D, Representative = D> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedAdd,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D, Representative = D> + SameNumberOfColumns<U1, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<N, D>) -> Self::Output
[src]
impl<N: SimdRealField, D: DimName, R> Mul<Point<N, D>> for Isometry<N, D, R> where
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
[src]
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<N, D>) -> Self::Output
[src]
impl<'a, N: SimdRealField, D: DimName, R> Mul<Point<N, D>> for &'a Isometry<N, D, R> where
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
[src]
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<N, D>) -> Self::Output
[src]
impl<N: SimdRealField, D: DimName, R> Mul<Point<N, D>> for Similarity<N, D, R> where
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
[src]
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<N, D>) -> Self::Output
[src]
impl<'a, N: SimdRealField, D: DimName, R> Mul<Point<N, D>> for &'a Similarity<N, D, R> where
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
[src]
N::Element: SimdRealField,
R: AbstractRotation<N, D>,
DefaultAllocator: Allocator<N, D>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<N, D>) -> Self::Output
[src]
impl<N, D: DimNameAdd<U1>, C: TCategory> Mul<Point<N, D>> for Transform<N, D, C> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, rhs: Point<N, D>) -> Self::Output
[src]
impl<'a, N, D: DimNameAdd<U1>, C: TCategory> Mul<Point<N, D>> for &'a Transform<N, D, C> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
pub fn mul(self, rhs: Point<N, D>) -> Self::Output
[src]
impl<N, R1: DimName, C1: Dim, D2: DimName, SA: Storage<N, R1, C1>> Mul<Point<N, D2>> for Matrix<N, R1, C1, SA> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, R1, C1> + Allocator<N, D2, U1> + Allocator<N, R1, U1>,
ShapeConstraint: AreMultipliable<R1, C1, D2, U1>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, R1, C1> + Allocator<N, D2, U1> + Allocator<N, R1, U1>,
ShapeConstraint: AreMultipliable<R1, C1, D2, U1>,
type Output = Point<N, R1>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<N, D2>) -> Self::Output
[src]
impl<'a, N, R1: DimName, C1: Dim, D2: DimName, SA: Storage<N, R1, C1>> Mul<Point<N, D2>> for &'a Matrix<N, R1, C1, SA> where
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, R1, C1> + Allocator<N, D2, U1> + Allocator<N, R1, U1>,
ShapeConstraint: AreMultipliable<R1, C1, D2, U1>,
[src]
N: Scalar + Zero + One + ClosedAdd + ClosedMul,
DefaultAllocator: Allocator<N, R1, C1> + Allocator<N, D2, U1> + Allocator<N, R1, U1>,
ShapeConstraint: AreMultipliable<R1, C1, D2, U1>,
type Output = Point<N, R1>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<N, D2>) -> Self::Output
[src]
impl<N: SimdRealField> Mul<Point<N, U2>> for UnitComplex<N> where
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U1>,
[src]
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U1>,
type Output = Point2<N>
The resulting type after applying the *
operator.
pub fn mul(self, rhs: Point2<N>) -> Self::Output
[src]
impl<'a, N: SimdRealField> Mul<Point<N, U2>> for &'a UnitComplex<N> where
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U1>,
[src]
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U1>,
type Output = Point2<N>
The resulting type after applying the *
operator.
pub fn mul(self, rhs: Point2<N>) -> Self::Output
[src]
impl<'a, N: SimdRealField> Mul<Point<N, U3>> for &'a UnitQuaternion<N> where
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
[src]
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
type Output = Point3<N>
The resulting type after applying the *
operator.
pub fn mul(self, rhs: Point3<N>) -> Self::Output
[src]
impl<N: SimdRealField> Mul<Point<N, U3>> for UnitQuaternion<N> where
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
[src]
N::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
type Output = Point3<N>
The resulting type after applying the *
operator.
pub fn mul(self, rhs: Point3<N>) -> Self::Output
[src]
impl<D: DimName> Mul<Point<f32, D>> for f32 where
DefaultAllocator: Allocator<f32, D>,
[src]
DefaultAllocator: Allocator<f32, D>,
type Output = Point<f32, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<f32, D>) -> Self::Output
[src]
impl<D: DimName> Mul<Point<f64, D>> for f64 where
DefaultAllocator: Allocator<f64, D>,
[src]
DefaultAllocator: Allocator<f64, D>,
type Output = Point<f64, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<f64, D>) -> Self::Output
[src]
impl<D: DimName> Mul<Point<i16, D>> for i16 where
DefaultAllocator: Allocator<i16, D>,
[src]
DefaultAllocator: Allocator<i16, D>,
type Output = Point<i16, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<i16, D>) -> Self::Output
[src]
impl<D: DimName> Mul<Point<i32, D>> for i32 where
DefaultAllocator: Allocator<i32, D>,
[src]
DefaultAllocator: Allocator<i32, D>,
type Output = Point<i32, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<i32, D>) -> Self::Output
[src]
impl<D: DimName> Mul<Point<i64, D>> for i64 where
DefaultAllocator: Allocator<i64, D>,
[src]
DefaultAllocator: Allocator<i64, D>,
type Output = Point<i64, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<i64, D>) -> Self::Output
[src]
impl<D: DimName> Mul<Point<i8, D>> for i8 where
DefaultAllocator: Allocator<i8, D>,
[src]
DefaultAllocator: Allocator<i8, D>,
type Output = Point<i8, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<i8, D>) -> Self::Output
[src]
impl<D: DimName> Mul<Point<isize, D>> for isize where
DefaultAllocator: Allocator<isize, D>,
[src]
DefaultAllocator: Allocator<isize, D>,
type Output = Point<isize, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<isize, D>) -> Self::Output
[src]
impl<D: DimName> Mul<Point<u16, D>> for u16 where
DefaultAllocator: Allocator<u16, D>,
[src]
DefaultAllocator: Allocator<u16, D>,
type Output = Point<u16, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<u16, D>) -> Self::Output
[src]
impl<D: DimName> Mul<Point<u32, D>> for u32 where
DefaultAllocator: Allocator<u32, D>,
[src]
DefaultAllocator: Allocator<u32, D>,
type Output = Point<u32, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<u32, D>) -> Self::Output
[src]
impl<D: DimName> Mul<Point<u64, D>> for u64 where
DefaultAllocator: Allocator<u64, D>,
[src]
DefaultAllocator: Allocator<u64, D>,
type Output = Point<u64, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<u64, D>) -> Self::Output
[src]
impl<D: DimName> Mul<Point<u8, D>> for u8 where
DefaultAllocator: Allocator<u8, D>,
[src]
DefaultAllocator: Allocator<u8, D>,
type Output = Point<u8, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<u8, D>) -> Self::Output
[src]
impl<D: DimName> Mul<Point<usize, D>> for usize where
DefaultAllocator: Allocator<usize, D>,
[src]
DefaultAllocator: Allocator<usize, D>,
type Output = Point<usize, D>
The resulting type after applying the *
operator.
pub fn mul(self, right: Point<usize, D>) -> Self::Output
[src]
impl<N: Scalar + ClosedMul, D: DimName> MulAssign<N> for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
pub fn mul_assign(&mut self, right: N)
[src]
impl<N: Scalar + ClosedNeg, D: DimName> Neg for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
type Output = Self
The resulting type after applying the -
operator.
pub fn neg(self) -> Self::Output
[src]
impl<'a, N: Scalar + ClosedNeg, D: DimName> Neg for &'a Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
type Output = Point<N, D>
The resulting type after applying the -
operator.
pub fn neg(self) -> Self::Output
[src]
impl<N: Scalar, D: DimName> PartialEq<Point<N, D>> for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
pub fn eq(&self, right: &Self) -> bool
[src]
#[must_use]pub fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
impl<N: Scalar + PartialOrd, D: DimName> PartialOrd<Point<N, D>> for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
[src]
DefaultAllocator: Allocator<N, D>,
pub fn partial_cmp(&self, other: &Self) -> Option<Ordering>
[src]
pub fn lt(&self, right: &Self) -> bool
[src]
pub fn le(&self, right: &Self) -> bool
[src]
pub fn gt(&self, right: &Self) -> bool
[src]
pub fn ge(&self, right: &Self) -> bool
[src]
impl<N: Scalar + RelativeEq, D: DimName> RelativeEq<Point<N, D>> for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
N::Epsilon: Copy,
[src]
DefaultAllocator: Allocator<N, D>,
N::Epsilon: Copy,
pub fn default_max_relative() -> Self::Epsilon
[src]
pub fn relative_eq(
&self,
other: &Self,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
[src]
&self,
other: &Self,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
pub fn relative_ne(
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
[src]
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
impl<N: Scalar + SimdValue, D: DimName> SimdValue for Point<N, D> where
N::Element: Scalar,
DefaultAllocator: Allocator<N, D> + Allocator<N::Element, D>,
[src]
N::Element: Scalar,
DefaultAllocator: Allocator<N, D> + Allocator<N::Element, D>,
type Element = Point<N::Element, D>
The type of the elements of each lane of this SIMD value.
type SimdBool = N::SimdBool
Type of the result of comparing two SIMD values like self
.
pub fn lanes() -> usize
[src]
pub fn splat(val: Self::Element) -> Self
[src]
pub fn extract(&self, i: usize) -> Self::Element
[src]
pub unsafe fn extract_unchecked(&self, i: usize) -> Self::Element
[src]
pub fn replace(&mut self, i: usize, val: Self::Element)
[src]
pub unsafe fn replace_unchecked(&mut self, i: usize, val: Self::Element)
[src]
pub fn select(self, cond: Self::SimdBool, other: Self) -> Self
[src]
pub fn map_lanes(self, f: impl Fn(Self::Element) -> Self::Element) -> Self where
Self: Clone,
[src]
Self: Clone,
pub fn zip_map_lanes(
self,
b: Self,
f: impl Fn(Self::Element, Self::Element) -> Self::Element
) -> Self where
Self: Clone,
[src]
self,
b: Self,
f: impl Fn(Self::Element, Self::Element) -> Self::Element
) -> Self where
Self: Clone,
impl<'a, 'b, N, D1: DimName, D2: Dim, SB: Storage<N, D2>> Sub<&'b Matrix<N, D2, U1, SB>> for &'a Point<N, D1> where
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
type Output = Point<N, D1>
The resulting type after applying the -
operator.
pub fn sub(self, right: &'b Vector<N, D2, SB>) -> Self::Output
[src]
impl<'b, N, D1: DimName, D2: Dim, SB: Storage<N, D2>> Sub<&'b Matrix<N, D2, U1, SB>> for Point<N, D1> where
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
type Output = Point<N, D1>
The resulting type after applying the -
operator.
pub fn sub(self, right: &'b Vector<N, D2, SB>) -> Self::Output
[src]
impl<'a, 'b, N, D: DimName> Sub<&'b Point<N, D>> for &'a Point<N, D> where
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D> + SameNumberOfColumns<U1, U1>,
type Output = VectorSum<N, D, D>
The resulting type after applying the -
operator.
pub fn sub(self, right: &'b Point<N, D>) -> Self::Output
[src]
impl<'b, N, D: DimName> Sub<&'b Point<N, D>> for Point<N, D> where
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D> + SameNumberOfColumns<U1, U1>,
type Output = VectorSum<N, D, D>
The resulting type after applying the -
operator.
pub fn sub(self, right: &'b Point<N, D>) -> Self::Output
[src]
impl<'a, N, D1: DimName, D2: Dim, SB: Storage<N, D2>> Sub<Matrix<N, D2, U1, SB>> for &'a Point<N, D1> where
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
type Output = Point<N, D1>
The resulting type after applying the -
operator.
pub fn sub(self, right: Vector<N, D2, SB>) -> Self::Output
[src]
impl<N, D1: DimName, D2: Dim, SB: Storage<N, D2>> Sub<Matrix<N, D2, U1, SB>> for Point<N, D1> where
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D1, U1> + Allocator<N, D2, U1> + SameShapeAllocator<N, D1, U1, D2, U1>,
ShapeConstraint: SameNumberOfRows<D1, D2, Representative = D1> + SameNumberOfColumns<U1, U1>,
type Output = Point<N, D1>
The resulting type after applying the -
operator.
pub fn sub(self, right: Vector<N, D2, SB>) -> Self::Output
[src]
impl<'a, N, D: DimName> Sub<Point<N, D>> for &'a Point<N, D> where
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D> + SameNumberOfColumns<U1, U1>,
type Output = VectorSum<N, D, D>
The resulting type after applying the -
operator.
pub fn sub(self, right: Point<N, D>) -> Self::Output
[src]
impl<N, D: DimName> Sub<Point<N, D>> for Point<N, D> where
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D> + SameNumberOfColumns<U1, U1>,
[src]
N: Scalar + ClosedSub,
DefaultAllocator: Allocator<N, D, U1> + SameShapeAllocator<N, D, U1, D, U1>,
ShapeConstraint: SameNumberOfRows<D, D> + SameNumberOfColumns<U1, U1>,
type Output = VectorSum<N, D, D>
The resulting type after applying the -
operator.
pub fn sub(self, right: Point<N, D>) -> Self::Output
[src]
impl<'b, N, D1: DimName, D2: Dim, SB> SubAssign<&'b Matrix<N, D2, U1, SB>> for Point<N, D1> where
N: Scalar + ClosedSub,
SB: Storage<N, D2>,
DefaultAllocator: Allocator<N, D1>,
ShapeConstraint: SameNumberOfRows<D1, D2>,
[src]
N: Scalar + ClosedSub,
SB: Storage<N, D2>,
DefaultAllocator: Allocator<N, D1>,
ShapeConstraint: SameNumberOfRows<D1, D2>,
pub fn sub_assign(&mut self, right: &'b Vector<N, D2, SB>)
[src]
impl<N, D1: DimName, D2: Dim, SB> SubAssign<Matrix<N, D2, U1, SB>> for Point<N, D1> where
N: Scalar + ClosedSub,
SB: Storage<N, D2>,
DefaultAllocator: Allocator<N, D1>,
ShapeConstraint: SameNumberOfRows<D1, D2>,
[src]
N: Scalar + ClosedSub,
SB: Storage<N, D2>,
DefaultAllocator: Allocator<N, D1>,
ShapeConstraint: SameNumberOfRows<D1, D2>,
pub fn sub_assign(&mut self, right: Vector<N, D2, SB>)
[src]
impl<N1, N2, D> SubsetOf<Matrix<N2, <D as DimNameAdd<U1>>::Output, U1, <DefaultAllocator as Allocator<N2, <D as DimNameAdd<U1>>::Output, U1>>::Buffer>> for Point<N1, D> where
D: DimNameAdd<U1>,
N1: Scalar,
N2: Scalar + Zero + One + ClosedDiv + SupersetOf<N1>,
DefaultAllocator: Allocator<N1, D> + Allocator<N1, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>> + Allocator<N2, D>,
[src]
D: DimNameAdd<U1>,
N1: Scalar,
N2: Scalar + Zero + One + ClosedDiv + SupersetOf<N1>,
DefaultAllocator: Allocator<N1, D> + Allocator<N1, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>> + Allocator<N2, D>,
pub fn to_superset(&self) -> VectorN<N2, DimNameSum<D, U1>>
[src]
pub fn is_in_subset(v: &VectorN<N2, DimNameSum<D, U1>>) -> bool
[src]
pub fn from_superset_unchecked(v: &VectorN<N2, DimNameSum<D, U1>>) -> Self
[src]
pub fn from_superset(element: &T) -> Option<Self>
[src]
impl<N1, N2, D> SubsetOf<Point<N2, D>> for Point<N1, D> where
D: DimName,
N1: Scalar,
N2: Scalar + SupersetOf<N1>,
DefaultAllocator: Allocator<N2, D> + Allocator<N1, D>,
[src]
D: DimName,
N1: Scalar,
N2: Scalar + SupersetOf<N1>,
DefaultAllocator: Allocator<N2, D> + Allocator<N1, D>,
pub fn to_superset(&self) -> Point<N2, D>
[src]
pub fn is_in_subset(m: &Point<N2, D>) -> bool
[src]
pub fn from_superset_unchecked(m: &Point<N2, D>) -> Self
[src]
pub fn from_superset(element: &T) -> Option<Self>
[src]
impl<N: Scalar + UlpsEq, D: DimName> UlpsEq<Point<N, D>> for Point<N, D> where
DefaultAllocator: Allocator<N, D>,
N::Epsilon: Copy,
[src]
DefaultAllocator: Allocator<N, D>,
N::Epsilon: Copy,
Auto Trait Implementations
impl<N, D> !RefUnwindSafe for Point<N, D>
[src]
impl<N, D> !Send for Point<N, D>
[src]
impl<N, D> !Sync for Point<N, D>
[src]
impl<N, D> !Unpin for Point<N, D>
[src]
impl<N, D> !UnwindSafe for Point<N, D>
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, Right> ClosedAdd<Right> for T where
T: Add<Right, Output = T> + AddAssign<Right>,
[src]
T: Add<Right, Output = T> + AddAssign<Right>,
impl<T, Right> ClosedDiv<Right> for T where
T: Div<Right, Output = T> + DivAssign<Right>,
[src]
T: Div<Right, Output = T> + DivAssign<Right>,
impl<T, Right> ClosedMul<Right> for T where
T: Mul<Right, Output = T> + MulAssign<Right>,
[src]
T: Mul<Right, Output = T> + MulAssign<Right>,
impl<T> ClosedNeg for T where
T: Neg<Output = T>,
[src]
T: Neg<Output = T>,
impl<T, Right> ClosedSub<Right> for T where
T: Sub<Right, Output = T> + SubAssign<Right>,
[src]
T: Sub<Right, Output = T> + SubAssign<Right>,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self
impl<T> SimdPartialOrd for T where
T: PartialOrd<T> + SimdValue<Element = T, SimdBool = bool>,
[src]
T: PartialOrd<T> + SimdValue<Element = T, SimdBool = bool>,
pub fn simd_gt(self, other: T) -> <T as SimdValue>::SimdBool
[src]
pub fn simd_lt(self, other: T) -> <T as SimdValue>::SimdBool
[src]
pub fn simd_ge(self, other: T) -> <T as SimdValue>::SimdBool
[src]
pub fn simd_le(self, other: T) -> <T as SimdValue>::SimdBool
[src]
pub fn simd_eq(self, other: T) -> <T as SimdValue>::SimdBool
[src]
pub fn simd_ne(self, other: T) -> <T as SimdValue>::SimdBool
[src]
pub fn simd_max(self, other: T) -> T
[src]
pub fn simd_min(self, other: T) -> T
[src]
pub fn simd_clamp(self, min: T, max: T) -> T
[src]
pub fn simd_horizontal_min(self) -> <T as SimdValue>::Element
[src]
pub fn simd_horizontal_max(self) -> <T as SimdValue>::Element
[src]
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]
SS: SubsetOf<SP>,
pub fn to_subset(&self) -> Option<SS>
[src]
pub fn is_in_subset(&self) -> bool
[src]
pub fn to_subset_unchecked(&self) -> SS
[src]
pub fn from_subset(element: &SS) -> SP
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,