[−]Struct piston_window::TouchArgs
Touch arguments
The id
might be reused for different touches that do not overlap in time.
- Coordinates are normalized to support both touch screens and trackpads
- Supports both 2D and 3D touch
- The pressure direction vector should have maximum length 1
For 2D touch the pressure is pointed in the z direction.
Use .pressure()
to get the pressure magnitude.
Fields
device: i64
A unique identifier for touch device.
id: i64
A unique identifier for touch event.
position_3d: [f64; 3]
The touch position, normalized 0..1.
pressure_3d: [f64; 3]
The touch pressure vector, normalized 0..1.
is_3d: bool
Whether the touch is in 3D.
touch: Touch
The touch state.
Methods
impl TouchArgs
pub fn new(
device: i64,
id: i64,
position: [f64; 2],
pressure: f64,
touch: Touch
) -> TouchArgs
device: i64,
id: i64,
position: [f64; 2],
pressure: f64,
touch: Touch
) -> TouchArgs
Creates arguments for 2D touch.
pub fn new_3d(
device: i64,
id: i64,
position_3d: [f64; 3],
pressure_3d: [f64; 3],
touch: Touch
) -> TouchArgs
device: i64,
id: i64,
position_3d: [f64; 3],
pressure_3d: [f64; 3],
touch: Touch
) -> TouchArgs
Creates arguments for 3D touch.
The pressure direction vector should have maximum length 1.
pub fn position(&self) -> [f64; 2]
The position of the touch in 2D.
pub fn position_3d(&self) -> [f64; 3]
The position of the touch in 3D.
pub fn pressure(&self) -> f64
The pressure magnitude, normalized 0..1.
pub fn pressure_3d(&self) -> [f64; 3]
The pressure vector in 3D.
Trait Implementations
impl Serialize for TouchArgs
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
impl<'de> Deserialize<'de> for TouchArgs
fn deserialize<__D>(
__deserializer: __D
) -> Result<TouchArgs, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
__deserializer: __D
) -> Result<TouchArgs, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
impl Debug for TouchArgs
impl PartialEq<TouchArgs> for TouchArgs
impl PartialOrd<TouchArgs> for TouchArgs
fn partial_cmp(&self, other: &TouchArgs) -> Option<Ordering>
fn lt(&self, other: &TouchArgs) -> bool
fn le(&self, other: &TouchArgs) -> bool
fn gt(&self, other: &TouchArgs) -> bool
fn ge(&self, other: &TouchArgs) -> bool
impl Clone for TouchArgs
fn clone(&self) -> TouchArgs
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl From<TouchArgs> for Input
impl From<TouchArgs> for Motion
impl Copy for TouchArgs
Auto Trait Implementations
impl Send for TouchArgs
impl Unpin for TouchArgs
impl Sync for TouchArgs
impl UnwindSafe for TouchArgs
impl RefUnwindSafe for TouchArgs
Blanket Implementations
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for 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.
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.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> DeserializeOwned for T where
T: Deserialize<'de>,
[src]
T: Deserialize<'de>,
impl<T> SetParameter for T
fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
T: Parameter<Self>,
T: Parameter<Self>,