#[repr(transparent)]pub struct UVec2(_);
Expand description
A 2-dimensional vector.
Implementations
sourceimpl UVec2
impl UVec2
sourcepub fn select(mask: BVec2, if_true: UVec2, if_false: UVec2) -> UVec2
pub fn select(mask: BVec2, if_true: UVec2, if_false: UVec2) -> UVec2
Creates a vector from the elements in if_true
and if_false
, selecting which to use
for each element of self
.
A true element in the mask uses the corresponding element from if_true
, and false
uses the element from if_false
.
sourcepub fn min(self, other: UVec2) -> UVec2
pub fn min(self, other: UVec2) -> UVec2
Returns a vector containing the minimum values for each element of self
and other
.
In other words this computes [self.x.max(other.x), self.y.max(other.y), ..]
.
sourcepub fn max(self, other: UVec2) -> UVec2
pub fn max(self, other: UVec2) -> UVec2
Returns a vector containing the maximum values for each element of self
and other
.
In other words this computes [self.x.max(other.x), self.y.max(other.y), ..]
.
sourcepub fn clamp(self, min: UVec2, max: UVec2) -> UVec2
pub fn clamp(self, min: UVec2, max: UVec2) -> UVec2
Component-wise clamping of values, similar to f32::clamp
.
Each element in min
must be less-or-equal to the corresponding element in max
.
Panics
Will panic if min
is greater than max
when glam_assert
is enabled.
sourcepub fn min_element(self) -> u32
pub fn min_element(self) -> u32
Returns the horizontal minimum of self
.
In other words this computes min(x, y, ..)
.
sourcepub fn max_element(self) -> u32
pub fn max_element(self) -> u32
Returns the horizontal maximum of self
.
In other words this computes max(x, y, ..)
.
sourcepub fn cmpeq(self, other: UVec2) -> BVec2
pub fn cmpeq(self, other: UVec2) -> BVec2
Returns a vector mask containing the result of a ==
comparison for each element of
self
and other
.
In other words, this computes [self.x == other.x, self.y == other.y, ..]
for all
elements.
sourcepub fn cmpne(self, other: UVec2) -> BVec2
pub fn cmpne(self, other: UVec2) -> BVec2
Returns a vector mask containing the result of a !=
comparison for each element of
self
and other
.
In other words this computes [self.x != other.x, self.y != other.y, ..]
for all
elements.
sourcepub fn cmpge(self, other: UVec2) -> BVec2
pub fn cmpge(self, other: UVec2) -> BVec2
Returns a vector mask containing the result of a >=
comparison for each element of
self
and other
.
In other words this computes [self.x >= other.x, self.y >= other.y, ..]
for all
elements.
sourcepub fn cmpgt(self, other: UVec2) -> BVec2
pub fn cmpgt(self, other: UVec2) -> BVec2
Returns a vector mask containing the result of a >
comparison for each element of
self
and other
.
In other words this computes [self.x > other.x, self.y > other.y, ..]
for all
elements.
sourcepub fn cmple(self, other: UVec2) -> BVec2
pub fn cmple(self, other: UVec2) -> BVec2
Returns a vector mask containing the result of a <=
comparison for each element of
self
and other
.
In other words this computes [self.x <= other.x, self.y <= other.y, ..]
for all
elements.
sourcepub fn cmplt(self, other: UVec2) -> BVec2
pub fn cmplt(self, other: UVec2) -> BVec2
Returns a vector mask containing the result of a <
comparison for each element of
self
and other
.
In other words this computes [self.x < other.x, self.y < other.y, ..]
for all
elements.
sourcepub fn from_slice(slice: &[u32]) -> UVec2
pub fn from_slice(slice: &[u32]) -> UVec2
Creates a vector from the first N values in slice
.
Panics
Panics if slice
is less than N elements long.
Trait Implementations
sourceimpl AddAssign<UVec2> for UVec2
impl AddAssign<UVec2> for UVec2
sourcepub fn add_assign(&mut self, other: UVec2)
pub fn add_assign(&mut self, other: UVec2)
Performs the +=
operation. Read more
sourceimpl AddAssign<u32> for UVec2
impl AddAssign<u32> for UVec2
sourcepub fn add_assign(&mut self, other: u32)
pub fn add_assign(&mut self, other: u32)
Performs the +=
operation. Read more
impl AsStd140 for UVec2
impl AsStd140 for UVec2
pub fn as_std140(&self) -> <UVec2 as AsStd140>::Output
pub fn as_std140(&self) -> <UVec2 as AsStd140>::Output
Convert this value into the std140
version of itself.
pub fn from_std140(value: <UVec2 as AsStd140>::Output) -> UVec2
pub fn from_std140(value: <UVec2 as AsStd140>::Output) -> UVec2
Converts from std140
version of self to self.
fn std140_size_static() -> usize
fn std140_size_static() -> usize
Returns the size of the std140
version of this type. Useful for
pre-sizing buffers. Read more
impl AsStd430 for UVec2
impl AsStd430 for UVec2
pub fn as_std430(&self) -> <UVec2 as AsStd430>::Output
pub fn as_std430(&self) -> <UVec2 as AsStd430>::Output
Convert this value into the std430
version of itself.
pub fn from_std430(value: <UVec2 as AsStd430>::Output) -> UVec2
pub fn from_std430(value: <UVec2 as AsStd430>::Output) -> UVec2
Converts from std430
version of self to self.
fn std430_size_static() -> usize
fn std430_size_static() -> usize
Returns the size of the std430
version of this type. Useful for
pre-sizing buffers. Read more
sourceimpl<'de> Deserialize<'de> for UVec2
impl<'de> Deserialize<'de> for UVec2
sourcepub fn deserialize<D>(
deserializer: D
) -> Result<UVec2, <D as Deserializer<'de>>::Error> where
D: Deserializer<'de>,
pub fn deserialize<D>(
deserializer: D
) -> Result<UVec2, <D as Deserializer<'de>>::Error> where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl DivAssign<UVec2> for UVec2
impl DivAssign<UVec2> for UVec2
sourcepub fn div_assign(&mut self, other: UVec2)
pub fn div_assign(&mut self, other: UVec2)
Performs the /=
operation. Read more
sourceimpl DivAssign<u32> for UVec2
impl DivAssign<u32> for UVec2
sourcepub fn div_assign(&mut self, other: u32)
pub fn div_assign(&mut self, other: u32)
Performs the /=
operation. Read more
impl FromReflect for UVec2
impl FromReflect for UVec2
pub fn from_reflect(reflect: &(dyn Reflect + 'static)) -> Option<UVec2>
pub fn from_reflect(reflect: &(dyn Reflect + 'static)) -> Option<UVec2>
Creates a clone of a reflected value, converting it to a concrete type if it was a dynamic types (e.g. DynamicStruct
)
impl GetTypeRegistration for UVec2
impl GetTypeRegistration for UVec2
pub fn get_type_registration() -> TypeRegistration
sourceimpl MulAssign<UVec2> for UVec2
impl MulAssign<UVec2> for UVec2
sourcepub fn mul_assign(&mut self, other: UVec2)
pub fn mul_assign(&mut self, other: UVec2)
Performs the *=
operation. Read more
sourceimpl MulAssign<u32> for UVec2
impl MulAssign<u32> for UVec2
sourcepub fn mul_assign(&mut self, other: u32)
pub fn mul_assign(&mut self, other: u32)
Performs the *=
operation. Read more
impl Reflect for UVec2
impl Reflect for UVec2
pub fn type_name(&self) -> &str
pub fn any(&self) -> &(dyn Any + 'static)
pub fn any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn clone_value(&self) -> Box<dyn Reflect + 'static, Global>ⓘNotable traits for Box<F, A>impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
pub fn apply(&mut self, value: &(dyn Reflect + 'static))
pub fn set(
&mut self,
value: Box<dyn Reflect + 'static, Global>
) -> Result<(), Box<dyn Reflect + 'static, Global>>
pub fn reflect_ref(&self) -> ReflectRef<'_>
pub fn reflect_mut(&mut self) -> ReflectMut<'_>
pub fn reflect_hash(&self) -> Option<u64>
pub fn reflect_hash(&self) -> Option<u64>
Returns a hash of the value (which includes the type) if hashing is supported. Otherwise
None
will be returned. Read more
pub fn reflect_partial_eq(
&self,
value: &(dyn Reflect + 'static)
) -> Option<bool>
pub fn reflect_partial_eq(
&self,
value: &(dyn Reflect + 'static)
) -> Option<bool>
Returns a “partial equal” comparison result if comparison is supported. Otherwise None
will be returned. Read more
pub fn serializable(&self) -> Option<Serializable<'_>>
pub fn serializable(&self) -> Option<Serializable<'_>>
Returns a serializable value, if serialization is supported. Otherwise None
will be
returned. Read more
sourceimpl RemAssign<UVec2> for UVec2
impl RemAssign<UVec2> for UVec2
sourcepub fn rem_assign(&mut self, other: UVec2)
pub fn rem_assign(&mut self, other: UVec2)
Performs the %=
operation. Read more
sourceimpl RemAssign<u32> for UVec2
impl RemAssign<u32> for UVec2
sourcepub fn rem_assign(&mut self, other: u32)
pub fn rem_assign(&mut self, other: u32)
Performs the %=
operation. Read more
sourceimpl Serialize for UVec2
impl Serialize for UVec2
sourcepub fn serialize<S>(
&self,
serializer: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error> where
S: Serializer,
pub fn serialize<S>(
&self,
serializer: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error> where
S: Serializer,
Serialize this value into the given Serde serializer. Read more
sourceimpl SubAssign<UVec2> for UVec2
impl SubAssign<UVec2> for UVec2
sourcepub fn sub_assign(&mut self, other: UVec2)
pub fn sub_assign(&mut self, other: UVec2)
Performs the -=
operation. Read more
sourceimpl SubAssign<u32> for UVec2
impl SubAssign<u32> for UVec2
sourcepub fn sub_assign(&mut self, other: u32)
pub fn sub_assign(&mut self, other: u32)
Performs the -=
operation. Read more
sourceimpl Vec2Swizzles for UVec2
impl Vec2Swizzles for UVec2
type Vec3 = UVec3
type Vec4 = UVec4
pub fn xxxx(self) -> UVec4
pub fn xxxy(self) -> UVec4
pub fn xxyx(self) -> UVec4
pub fn xxyy(self) -> UVec4
pub fn xyxx(self) -> UVec4
pub fn xyxy(self) -> UVec4
pub fn xyyx(self) -> UVec4
pub fn xyyy(self) -> UVec4
pub fn yxxx(self) -> UVec4
pub fn yxxy(self) -> UVec4
pub fn yxyx(self) -> UVec4
pub fn yxyy(self) -> UVec4
pub fn yyxx(self) -> UVec4
pub fn yyxy(self) -> UVec4
pub fn yyyx(self) -> UVec4
pub fn yyyy(self) -> UVec4
pub fn xxx(self) -> UVec3
pub fn xxy(self) -> UVec3
pub fn xyx(self) -> UVec3
pub fn xyy(self) -> UVec3
pub fn yxx(self) -> UVec3
pub fn yxy(self) -> UVec3
pub fn yyx(self) -> UVec3
pub fn yyy(self) -> UVec3
pub fn xx(self) -> UVec2
pub fn yx(self) -> UVec2
pub fn yy(self) -> UVec2
fn xy(self) -> Self
impl Copy for UVec2
impl Eq for UVec2
impl Pod for UVec2
Auto Trait Implementations
impl RefUnwindSafe for UVec2
impl Send for UVec2
impl Sync for UVec2
impl Unpin for UVec2
impl UnwindSafe for UVec2
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘNotable traits for Box<F, A>impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘNotable traits for Box<F, A>impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
pub fn as_any(&self) -> &(dyn Any + 'static)
pub fn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcepub fn equivalent(&self, key: &K) -> bool
pub fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
impl<T> FromWorld for T where
T: Default,
impl<T> FromWorld for T where
T: Default,
pub fn from_world(_world: &mut World) -> T
pub fn from_world(_world: &mut World) -> T
Creates Self
using data from the given World
impl<T> GetPath for T where
T: Reflect,
impl<T> GetPath for T where
T: Reflect,
pub fn path(
&'r self,
path: &'p str
) -> Result<&'r (dyn Reflect + 'static), ReflectPathError<'p>>
pub fn path_mut(
&'r mut self,
path: &'p str
) -> Result<&'r mut (dyn Reflect + 'static), ReflectPathError<'p>>
fn get_path<T>(&'r self, path: &'p str) -> Result<&'r T, ReflectPathError<'p>> where
T: Reflect,
fn get_path_mut<T>(
&'r mut self,
path: &'p str
) -> Result<&'r mut T, ReflectPathError<'p>> where
T: Reflect,
impl<T> GlslArray for T where
T: Glsl,
impl<T> GlslArray for T where
T: Glsl,
type ArraySize = DimensionNil
type ArraySize = DimensionNil
Type-level linked list of array dimensions, ordered outer to inner.
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
fn instrument(self, span: Span) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
T: Future, type Output = <T as Future>::Output;
sourcefn in_current_span(self) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
fn in_current_span(self) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
T: Future, type Output = <T as Future>::Output;
sourceimpl<T> Serialize for T where
T: Serialize + ?Sized,
impl<T> Serialize for T where
T: Serialize + ?Sized,
pub fn erased_serialize(
&self,
serializer: &mut dyn Serializer
) -> Result<Ok, Error>
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> TypeData for T where
T: 'static + Send + Sync + Clone,
impl<T> TypeData for T where
T: 'static + Send + Sync + Clone,
pub fn clone_type_data(&self) -> Box<dyn TypeData + 'static, Global>ⓘNotable traits for Box<F, A>impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
pub fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
where
S: Into<Dispatch>,
T: Future, type Output = <T as Future>::Output;
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
fn with_current_subscriber(self) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
T: Future, type Output = <T as Future>::Output;
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
impl<T> WriteStd140 for T where
T: AsStd140,
impl<T> WriteStd140 for T where
T: AsStd140,
pub fn std140_size(&self) -> usize
pub fn std140_size(&self) -> usize
The space required to write this value using std140
layout rules. This
does not include alignment padding that may be needed before or after
this type when written as part of a larger buffer. Read more
impl<T> WriteStd430 for T where
T: AsStd430,
impl<T> WriteStd430 for T where
T: AsStd430,
pub fn std430_size(&self) -> usize
pub fn std430_size(&self) -> usize
The space required to write this value using std430
layout rules. This
does not include alignment padding that may be needed before or after
this type when written as part of a larger buffer. Read more