Struct acgmath::Point3 [] [src]

#[repr(C)]
pub struct Point3<S> { pub x: S, pub y: S, pub z: S, }

A point in 3-dimensional space.

This type is marked as #[repr(C)].

Fields

Methods

impl<S: BaseNum> Point3<S>
[src]

impl<S: BaseNum> Point3<S>
[src]

impl<S: NumCast + Copy> Point3<S>
[src]

Component-wise casting to another type

Trait Implementations

impl<S: PartialEq> PartialEq for Point3<S>
[src]

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

This method tests for !=.

impl<S: Eq> Eq for Point3<S>
[src]

impl<S: Copy> Copy for Point3<S>
[src]

impl<S: Clone> Clone for Point3<S>
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<S: Hash> Hash for Point3<S>
[src]

Feeds this value into the given [Hasher]. Read more

Feeds a slice of this type into the given [Hasher]. Read more

impl<S: BaseNum> Array for Point3<S>
[src]

Construct a vector from a single value, replicating it. Read more

The sum of the elements of the array.

The product of the elements of the array.

The minimum element of the array.

The maximum element of the array.

Get the pointer to the first element of the array.

Get a mutable pointer to the first element of the array.

Swap the elements at indices i and j in-place.

impl<S: BaseFloat> MetricSpace for Point3<S>
[src]

The metric to be returned by the distance function.

Returns the squared distance. Read more

The distance between two values.

impl<S: BaseNum> EuclideanSpace for Point3<S>
[src]

The associated scalar over which the space is defined. Read more

The associated space of displacement vectors.

The point at the origin of the Euclidean space.

Convert a displacement vector to a point. Read more

Convert a point to a displacement vector. Read more

This is a weird one, but its useful for plane calculations.

Returns the middle point between two other points. Read more

Returns the average position of all points in the slice. Read more

impl<S: BaseFloat> ApproxEq for Point3<S>
[src]

Used for specifying relative comparisons.

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

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

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

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

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

The inverse of ApproxEq::relative_eq.

The inverse of ApproxEq::ulps_eq.

impl<S: BaseNum> Add<Vector3<S>> for Point3<S>
[src]

The resulting type after applying the + operator

The method for the + operator

impl<'a, S: BaseNum> Add<&'a Vector3<S>> for Point3<S>
[src]

The resulting type after applying the + operator

The method for the + operator

impl<'a, S: BaseNum> Add<Vector3<S>> for &'a Point3<S>
[src]

The resulting type after applying the + operator

The method for the + operator

impl<'a, 'b, S: BaseNum> Add<&'a Vector3<S>> for &'b Point3<S>
[src]

The resulting type after applying the + operator

The method for the + operator

impl<S: BaseNum + AddAssign<S>> AddAssign<Vector3<S>> for Point3<S>
[src]

The method for the += operator

impl<S: BaseNum> Sub<Point3<S>> for Point3<S>
[src]

The resulting type after applying the - operator

The method for the - operator

impl<'a, S: BaseNum> Sub<&'a Point3<S>> for Point3<S>
[src]

The resulting type after applying the - operator

The method for the - operator

impl<'a, S: BaseNum> Sub<Point3<S>> for &'a Point3<S>
[src]

The resulting type after applying the - operator

The method for the - operator

impl<'a, 'b, S: BaseNum> Sub<&'a Point3<S>> for &'b Point3<S>
[src]

The resulting type after applying the - operator

The method for the - operator

impl<S: BaseNum> Mul<S> for Point3<S>
[src]

The resulting type after applying the * operator

The method for the * operator

impl<'a, S: BaseNum> Mul<S> for &'a Point3<S>
[src]

The resulting type after applying the * operator

The method for the * operator

impl<S: BaseNum> Div<S> for Point3<S>
[src]

The resulting type after applying the / operator

The method for the / operator

impl<'a, S: BaseNum> Div<S> for &'a Point3<S>
[src]

The resulting type after applying the / operator

The method for the / operator

impl<S: BaseNum> Rem<S> for Point3<S>
[src]

The resulting type after applying the % operator

The method for the % operator

impl<'a, S: BaseNum> Rem<S> for &'a Point3<S>
[src]

The resulting type after applying the % operator

The method for the % operator

impl<S: BaseNum + MulAssign<S>> MulAssign<S> for Point3<S>
[src]

The method for the *= operator

impl<S: BaseNum + DivAssign<S>> DivAssign<S> for Point3<S>
[src]

The method for the /= operator

impl<S: BaseNum + RemAssign<S>> RemAssign<S> for Point3<S>
[src]

The method for the %= operator

impl<S> Index<usize> for Point3<S>
[src]

The returned type after indexing

The method for the indexing (container[index]) operation

impl<S> IndexMut<usize> for Point3<S>
[src]

The method for the mutable indexing (container[index]) operation

impl<S> Index<Range<usize>> for Point3<S>
[src]

The returned type after indexing

The method for the indexing (container[index]) operation

impl<S> IndexMut<Range<usize>> for Point3<S>
[src]

The method for the mutable indexing (container[index]) operation

impl<S> Index<RangeTo<usize>> for Point3<S>
[src]

The returned type after indexing

The method for the indexing (container[index]) operation

impl<S> IndexMut<RangeTo<usize>> for Point3<S>
[src]

The method for the mutable indexing (container[index]) operation

impl<S> Index<RangeFrom<usize>> for Point3<S>
[src]

The returned type after indexing

The method for the indexing (container[index]) operation

impl<S> IndexMut<RangeFrom<usize>> for Point3<S>
[src]

The method for the mutable indexing (container[index]) operation

impl<S> Index<RangeFull> for Point3<S>
[src]

The returned type after indexing

The method for the indexing (container[index]) operation

impl<S> IndexMut<RangeFull> for Point3<S>
[src]

The method for the mutable indexing (container[index]) operation

impl<S> Into<[S; 3]> for Point3<S>
[src]

Performs the conversion.

impl<S> AsRef<[S; 3]> for Point3<S>
[src]

Performs the conversion.

impl<S> AsMut<[S; 3]> for Point3<S>
[src]

Performs the conversion.

impl<S: Clone> From<[S; 3]> for Point3<S>
[src]

Performs the conversion.

impl<'a, S> From<&'a [S; 3]> for &'a Point3<S>
[src]

Performs the conversion.

impl<'a, S> From<&'a mut [S; 3]> for &'a mut Point3<S>
[src]

Performs the conversion.

impl<S> Into<(S, S, S)> for Point3<S>
[src]

Performs the conversion.

impl<S> AsRef<(S, S, S)> for Point3<S>
[src]

Performs the conversion.

impl<S> AsMut<(S, S, S)> for Point3<S>
[src]

Performs the conversion.

impl<S> From<(S, S, S)> for Point3<S>
[src]

Performs the conversion.

impl<'a, S> From<&'a (S, S, S)> for &'a Point3<S>
[src]

Performs the conversion.

impl<'a, S> From<&'a mut (S, S, S)> for &'a mut Point3<S>
[src]

Performs the conversion.

impl<S: Debug> Debug for Point3<S>
[src]

Formats the value using the given formatter.