pub struct LogicalPosition<P> {
pub x: P,
pub y: P,
}Expand description
A position represented in logical pixels.
The position is stored as floats, so please be careful. Casting floats to integers truncates the
fractional part, which can cause noticeable issues. To help with that, an Into<(i32, i32)>
implementation is provided which does the rounding for you.
Fields§
§x: P§y: PImplementations§
Source§impl<P> LogicalPosition<P>
impl<P> LogicalPosition<P>
pub const fn new(x: P, y: P) -> LogicalPosition<P>
Available on (Linux or macOS or Windows) and neither Android nor iOS only.
Source§impl<P> LogicalPosition<P>where
P: Pixel,
impl<P> LogicalPosition<P>where
P: Pixel,
pub fn from_physical<T, X>(physical: T, scale_factor: f64) -> LogicalPosition<P>
Available on (Linux or macOS or Windows) and neither Android nor iOS only.
pub fn to_physical<X>(&self, scale_factor: f64) -> PhysicalPosition<X>where
X: Pixel,
Available on (Linux or macOS or Windows) and neither Android nor iOS only.
pub fn cast<X>(&self) -> LogicalPosition<X>where
X: Pixel,
Available on (Linux or macOS or Windows) and neither Android nor iOS only.
Trait Implementations§
Source§impl<P> Clone for LogicalPosition<P>where
P: Clone,
impl<P> Clone for LogicalPosition<P>where
P: Clone,
Source§fn clone(&self) -> LogicalPosition<P>
fn clone(&self) -> LogicalPosition<P>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl<P> Copy for LogicalPosition<P>where
P: Copy,
Source§impl<P> Debug for LogicalPosition<P>where
P: Debug,
impl<P> Debug for LogicalPosition<P>where
P: Debug,
Source§impl<P> Default for LogicalPosition<P>where
P: Default,
impl<P> Default for LogicalPosition<P>where
P: Default,
Source§fn default() -> LogicalPosition<P>
fn default() -> LogicalPosition<P>
Returns the “default value” for a type. Read more
impl<P> Eq for LogicalPosition<P>where
P: Eq,
Source§impl<P, X> From<(X, X)> for LogicalPosition<P>
impl<P, X> From<(X, X)> for LogicalPosition<P>
Source§fn from(_: (X, X)) -> LogicalPosition<P>
fn from(_: (X, X)) -> LogicalPosition<P>
Converts to this type from the input type.
Source§impl<P> From<LogicalPosition<P>> for Positionwhere
P: Pixel,
impl<P> From<LogicalPosition<P>> for Positionwhere
P: Pixel,
Source§fn from(position: LogicalPosition<P>) -> Position
fn from(position: LogicalPosition<P>) -> Position
Converts to this type from the input type.
Source§impl<P, X> From<[X; 2]> for LogicalPosition<P>
impl<P, X> From<[X; 2]> for LogicalPosition<P>
Source§fn from(_: [X; 2]) -> LogicalPosition<P>
fn from(_: [X; 2]) -> LogicalPosition<P>
Converts to this type from the input type.
Source§impl<P> Hash for LogicalPosition<P>where
P: Hash,
impl<P> Hash for LogicalPosition<P>where
P: Hash,
Source§impl<P> Ord for LogicalPosition<P>where
P: Ord,
impl<P> Ord for LogicalPosition<P>where
P: Ord,
Source§fn cmp(&self, other: &LogicalPosition<P>) -> Ordering
fn cmp(&self, other: &LogicalPosition<P>) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl<P> PartialEq for LogicalPosition<P>where
P: PartialEq,
impl<P> PartialEq for LogicalPosition<P>where
P: PartialEq,
Source§impl<P> PartialOrd for LogicalPosition<P>where
P: PartialOrd,
impl<P> PartialOrd for LogicalPosition<P>where
P: PartialOrd,
impl<P> StructuralPartialEq for LogicalPosition<P>where
P: PartialEq,
Auto Trait Implementations§
impl<P> Freeze for LogicalPosition<P>where
P: Freeze,
impl<P> RefUnwindSafe for LogicalPosition<P>where
P: RefUnwindSafe,
impl<P> Send for LogicalPosition<P>where
P: Send,
impl<P> Sync for LogicalPosition<P>where
P: Sync,
impl<P> Unpin for LogicalPosition<P>where
P: Unpin,
impl<P> UnsafeUnpin for LogicalPosition<P>where
P: UnsafeUnpin,
impl<P> UnwindSafe for LogicalPosition<P>where
P: UnwindSafe,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DependencyElement for T
Source§impl<T> InitializeFromFunction<T> for T
impl<T> InitializeFromFunction<T> for T
Source§fn initialize_from_function(f: fn() -> T) -> T
fn initialize_from_function(f: fn() -> T) -> T
Create an instance of this type from an initialization function
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§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().Source§impl<Ret> SpawnIfAsync<(), Ret> for Ret
impl<Ret> SpawnIfAsync<(), Ret> for Ret
Source§impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
Source§fn super_from(input: T) -> O
fn super_from(input: T) -> O
Convert from a type to another type.
Source§impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
Source§fn super_into(self) -> O
fn super_into(self) -> O
Convert from a type to another type.