pub struct Coord(pub i32, pub i32);
Expand description
A 2D coordinate, also known as a point
A coordinate (or point) is an absolute position. One cannot add a point to
a point. The difference between two points is an Offset
.
Tuple Fields§
§0: i32
§1: i32
Implementations§
source§impl Coord
impl Coord
sourcepub fn clamp(self, min: Coord, max: Coord) -> Coord
pub fn clamp(self, min: Coord, max: Coord) -> Coord
Restrict a value to the specified interval, componentwise
sourcepub fn distance_l1(self) -> i32
pub fn distance_l1(self) -> i32
Return the L1 (rectilinear / taxicab) distance
sourcepub fn distance_l_inf(self) -> i32
pub fn distance_l_inf(self) -> i32
Return the L-inf (max) distance
sourcepub fn extract<D>(self, dir: D) -> i32where
D: Directional,
pub fn extract<D>(self, dir: D) -> i32where
D: Directional,
Extract one component, based on a direction
This merely extracts the horizontal or vertical component. It never negates it, even if the axis is reversed.
sourcepub fn set_component<D>(&mut self, dir: D, value: i32)where
D: Directional,
pub fn set_component<D>(&mut self, dir: D, value: i32)where
D: Directional,
Set one component of self, based on a direction
This does not negate components when the direction is reversed.
Trait Implementations§
source§impl AddAssign<Offset> for Coord
impl AddAssign<Offset> for Coord
source§fn add_assign(&mut self, rhs: Offset)
fn add_assign(&mut self, rhs: Offset)
Performs the
+=
operation. Read moresource§impl AddAssign<Size> for Coord
impl AddAssign<Size> for Coord
source§fn add_assign(&mut self, rhs: Size)
fn add_assign(&mut self, rhs: Size)
Performs the
+=
operation. Read moresource§impl ConvApprox<DVec2> for Coord
impl ConvApprox<DVec2> for Coord
source§impl<X> ConvApprox<PhysicalPosition<X>> for Coordwhere
X: CastApprox<i32>,
impl<X> ConvApprox<PhysicalPosition<X>> for Coordwhere
X: CastApprox<i32>,
§fn conv_approx(x: T) -> Self
fn conv_approx(x: T) -> Self
source§impl ConvApprox<Vec2> for Coord
impl ConvApprox<Vec2> for Coord
source§impl ConvFloat<DVec2> for Coord
impl ConvFloat<DVec2> for Coord
source§fn try_conv_trunc(x: DVec2) -> Result<Coord, Error>
fn try_conv_trunc(x: DVec2) -> Result<Coord, Error>
Try converting to integer with truncation Read more
source§fn try_conv_nearest(x: DVec2) -> Result<Coord, Error>
fn try_conv_nearest(x: DVec2) -> Result<Coord, Error>
Try converting to the nearest integer Read more
source§fn try_conv_floor(x: DVec2) -> Result<Coord, Error>
fn try_conv_floor(x: DVec2) -> Result<Coord, Error>
Try converting the floor to an integer Read more
source§fn try_conv_ceil(x: DVec2) -> Result<Coord, Error>
fn try_conv_ceil(x: DVec2) -> Result<Coord, Error>
Try convert the ceiling to an integer Read more
§fn conv_trunc(x: T) -> Self
fn conv_trunc(x: T) -> Self
Convert to integer with truncatation Read more
§fn conv_nearest(x: T) -> Self
fn conv_nearest(x: T) -> Self
Convert to the nearest integer Read more
§fn conv_floor(x: T) -> Self
fn conv_floor(x: T) -> Self
Convert the floor to an integer Read more
source§impl ConvFloat<Vec2> for Coord
impl ConvFloat<Vec2> for Coord
source§fn try_conv_trunc(x: Vec2) -> Result<Coord, Error>
fn try_conv_trunc(x: Vec2) -> Result<Coord, Error>
Try converting to integer with truncation Read more
source§fn try_conv_nearest(x: Vec2) -> Result<Coord, Error>
fn try_conv_nearest(x: Vec2) -> Result<Coord, Error>
Try converting to the nearest integer Read more
source§fn try_conv_floor(x: Vec2) -> Result<Coord, Error>
fn try_conv_floor(x: Vec2) -> Result<Coord, Error>
Try converting the floor to an integer Read more
source§fn try_conv_ceil(x: Vec2) -> Result<Coord, Error>
fn try_conv_ceil(x: Vec2) -> Result<Coord, Error>
Try convert the ceiling to an integer Read more
§fn conv_trunc(x: T) -> Self
fn conv_trunc(x: T) -> Self
Convert to integer with truncatation Read more
§fn conv_nearest(x: T) -> Self
fn conv_nearest(x: T) -> Self
Convert to the nearest integer Read more
§fn conv_floor(x: T) -> Self
fn conv_floor(x: T) -> Self
Convert the floor to an integer Read more
source§impl PartialEq for Coord
impl PartialEq for Coord
source§impl SubAssign<Offset> for Coord
impl SubAssign<Offset> for Coord
source§fn sub_assign(&mut self, rhs: Offset)
fn sub_assign(&mut self, rhs: Offset)
Performs the
-=
operation. Read moresource§impl SubAssign<Size> for Coord
impl SubAssign<Size> for Coord
source§fn sub_assign(&mut self, rhs: Size)
fn sub_assign(&mut self, rhs: Size)
Performs the
-=
operation. Read moreimpl Copy for Coord
impl Eq for Coord
impl StructuralEq for Coord
impl StructuralPartialEq for Coord
Auto Trait Implementations§
impl RefUnwindSafe for Coord
impl Send for Coord
impl Sync for Coord
impl Unpin for Coord
impl UnwindSafe for Coord
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<S, T> CastApprox<T> for Swhere
T: ConvApprox<S>,
impl<S, T> CastApprox<T> for Swhere
T: ConvApprox<S>,
§fn try_cast_approx(self) -> Result<T, Error>
fn try_cast_approx(self) -> Result<T, Error>
§fn cast_approx(self) -> T
fn cast_approx(self) -> T
§impl<S, T> CastFloat<T> for Swhere
T: ConvFloat<S>,
impl<S, T> CastFloat<T> for Swhere
T: ConvFloat<S>,
§fn cast_trunc(self) -> T
fn cast_trunc(self) -> T
Cast to integer, truncating Read more
§fn cast_nearest(self) -> T
fn cast_nearest(self) -> T
Cast to the nearest integer Read more
§fn cast_floor(self) -> T
fn cast_floor(self) -> T
Cast the floor to an integer Read more
§fn try_cast_trunc(self) -> Result<T, Error>
fn try_cast_trunc(self) -> Result<T, Error>
Try converting to integer with truncation Read more
§fn try_cast_nearest(self) -> Result<T, Error>
fn try_cast_nearest(self) -> Result<T, Error>
Try converting to the nearest integer Read more
§fn try_cast_floor(self) -> Result<T, Error>
fn try_cast_floor(self) -> Result<T, Error>
Try converting the floor to an integer Read more
§fn try_cast_ceil(self) -> Result<T, Error>
fn try_cast_ceil(self) -> Result<T, Error>
Try convert the ceiling to an integer Read more
§impl<S, T> ConvApprox<S> for Twhere
T: Conv<S>,
impl<S, T> ConvApprox<S> for Twhere
T: Conv<S>,
§fn try_conv_approx(x: S) -> Result<T, Error>
fn try_conv_approx(x: S) -> Result<T, Error>
§fn conv_approx(x: S) -> T
fn conv_approx(x: S) -> T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian()
.