Struct rusttype::Point [−][src]
pub struct Point<N> { pub x: N, pub y: N, }
A point in 2-dimensional space, with each dimension of type N
.
Legal operations on points are addition and subtraction by vectors, and subtraction between points, to give a vector representing the offset between the two points. Combined with the legal operations on vectors, meaningful manipulations of vectors and points can be performed.
For example, to interpolate between two points by a factor t
:
let interpolated_point = p0 + (p1 - p0) * t;
Fields
x: N
y: N
Trait Implementations
impl<N: Add<Output = N>> Add<Point<N>> for Vector<N>
[src]
type Output = Point<N>
The resulting type after applying the +
operator.
fn add(self, rhs: Point<N>) -> Point<N>
[src]
impl<N: Add<Output = N>> Add<Vector<N>> for Point<N>
[src]
type Output = Point<N>
The resulting type after applying the +
operator.
fn add(self, rhs: Vector<N>) -> Point<N>
[src]
impl<N: Clone> Clone for Point<N>
[src]
impl<N: Copy> Copy for Point<N>
[src]
impl<N: Debug> Debug for Point<N>
[src]
impl<N: Default> Default for Point<N>
[src]
impl<N: Eq> Eq for Point<N>
[src]
impl<N: Hash> Hash for Point<N>
[src]
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: Ord> Ord for Point<N>
[src]
fn cmp(&self, other: &Point<N>) -> Ordering
[src]
#[must_use]pub fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]
pub fn max(self, other: Self) -> Self#[must_use]pub fn min(self, other: Self) -> Self
1.21.0[src]
#[must_use]
pub fn min(self, other: Self) -> Self#[must_use]pub fn clamp(self, min: Self, max: Self) -> Self
1.50.0[src]
#[must_use]
pub fn clamp(self, min: Self, max: Self) -> Selfimpl<N: PartialEq> PartialEq<Point<N>> for Point<N>
[src]
impl<N: PartialOrd> PartialOrd<Point<N>> for Point<N>
[src]
fn partial_cmp(&self, other: &Point<N>) -> Option<Ordering>
[src]
#[must_use]pub fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]
pub fn lt(&self, other: &Rhs) -> bool#[must_use]pub fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]
pub fn le(&self, other: &Rhs) -> bool#[must_use]pub fn gt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]
pub fn gt(&self, other: &Rhs) -> bool#[must_use]pub fn ge(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]
pub fn ge(&self, other: &Rhs) -> boolimpl<N> StructuralEq for Point<N>
[src]
impl<N> StructuralPartialEq for Point<N>
[src]
impl<N: Sub<Output = N>> Sub<Point<N>> for Point<N>
[src]
type Output = Vector<N>
The resulting type after applying the -
operator.
fn sub(self, rhs: Point<N>) -> Vector<N>
[src]
impl<N: Sub<Output = N>> Sub<Vector<N>> for Point<N>
[src]
Auto Trait Implementations
impl<N> RefUnwindSafe for Point<N> where
N: RefUnwindSafe,
N: RefUnwindSafe,
impl<N> Send for Point<N> where
N: Send,
N: Send,
impl<N> Sync for Point<N> where
N: Sync,
N: Sync,
impl<N> Unpin for Point<N> where
N: Unpin,
N: Unpin,
impl<N> UnwindSafe for Point<N> where
N: UnwindSafe,
N: UnwindSafe,
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> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
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, 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>,