#[repr(C)]pub struct Vector4<T> {
pub x: T,
pub y: T,
pub z: T,
pub w: T,
}Expand description
4-dimensional vector type.
This is sometimes used to represent homogeneous coordinates in 3D graphics, but unless otherwise
specified, this is treated as a 4-dimensional vector with the w component treated the same as
the others.
Fields§
§x: T§y: T§z: T§w: TImplementations§
Trait Implementations§
Source§impl<'a, T> Add<(T, T, T, T)> for &'a Vector4<T>
impl<'a, T> Add<(T, T, T, T)> for &'a Vector4<T>
Source§impl<'a, T> AddAssign<&'a Vector4<T>> for Vector4<T>
impl<'a, T> AddAssign<&'a Vector4<T>> for Vector4<T>
Source§fn add_assign(&mut self, rhs: &'a Vector4<T>)
fn add_assign(&mut self, rhs: &'a Vector4<T>)
Performs the
+= operation. Read moreSource§impl<T> AddAssign<[T; 4]> for Vector4<T>where
T: AddAssign,
impl<T> AddAssign<[T; 4]> for Vector4<T>where
T: AddAssign,
Source§fn add_assign(&mut self, rhs: [T; 4])
fn add_assign(&mut self, rhs: [T; 4])
Performs the
+= operation. Read moreSource§impl<T> AddAssign<(T, T, T, T)> for Vector4<T>where
T: AddAssign,
impl<T> AddAssign<(T, T, T, T)> for Vector4<T>where
T: AddAssign,
Source§fn add_assign(&mut self, rhs: (T, T, T, T))
fn add_assign(&mut self, rhs: (T, T, T, T))
Performs the
+= operation. Read moreSource§impl<T> AddAssign for Vector4<T>where
T: AddAssign,
impl<T> AddAssign for Vector4<T>where
T: AddAssign,
Source§fn add_assign(&mut self, rhs: Vector4<T>)
fn add_assign(&mut self, rhs: Vector4<T>)
Performs the
+= operation. Read moreSource§impl<'a, T> Div<(T, T, T, T)> for &'a Vector4<T>
impl<'a, T> Div<(T, T, T, T)> for &'a Vector4<T>
Source§impl<'a, T> DivAssign<&'a T> for Vector4<T>
impl<'a, T> DivAssign<&'a T> for Vector4<T>
Source§fn div_assign(&mut self, rhs: &'a T)
fn div_assign(&mut self, rhs: &'a T)
Performs the
/= operation. Read moreSource§impl<'a, T> DivAssign<&'a Vector4<T>> for Vector4<T>
impl<'a, T> DivAssign<&'a Vector4<T>> for Vector4<T>
Source§fn div_assign(&mut self, rhs: &'a Vector4<T>)
fn div_assign(&mut self, rhs: &'a Vector4<T>)
Performs the
/= operation. Read moreSource§impl<T> DivAssign<[T; 4]> for Vector4<T>where
T: DivAssign,
impl<T> DivAssign<[T; 4]> for Vector4<T>where
T: DivAssign,
Source§fn div_assign(&mut self, rhs: [T; 4])
fn div_assign(&mut self, rhs: [T; 4])
Performs the
/= operation. Read moreSource§impl<T> DivAssign<(T, T, T, T)> for Vector4<T>where
T: DivAssign,
impl<T> DivAssign<(T, T, T, T)> for Vector4<T>where
T: DivAssign,
Source§fn div_assign(&mut self, rhs: (T, T, T, T))
fn div_assign(&mut self, rhs: (T, T, T, T))
Performs the
/= operation. Read moreSource§impl<T> DivAssign<T> for Vector4<T>
impl<T> DivAssign<T> for Vector4<T>
Source§fn div_assign(&mut self, rhs: T)
fn div_assign(&mut self, rhs: T)
Performs the
/= operation. Read moreSource§impl<T> DivAssign for Vector4<T>where
T: DivAssign,
impl<T> DivAssign for Vector4<T>where
T: DivAssign,
Source§fn div_assign(&mut self, rhs: Vector4<T>)
fn div_assign(&mut self, rhs: Vector4<T>)
Performs the
/= operation. Read moreSource§impl<T> From<(T, T, T, T)> for Vector4<T>
impl<T> From<(T, T, T, T)> for Vector4<T>
Source§fn from(tuple: (T, T, T, T)) -> Vector4<T>
fn from(tuple: (T, T, T, T)) -> Vector4<T>
Converts to this type from the input type.
Source§impl<T> Into<(T, T, T, T)> for Vector4<T>
impl<T> Into<(T, T, T, T)> for Vector4<T>
Source§fn into(self) -> (T, T, T, T)
fn into(self) -> (T, T, T, T)
Converts this type into the (usually inferred) input type.
Source§impl<'a, T> Mul<(T, T, T, T)> for &'a Vector4<T>
impl<'a, T> Mul<(T, T, T, T)> for &'a Vector4<T>
Source§impl<'a, T> MulAssign<&'a T> for Vector4<T>
impl<'a, T> MulAssign<&'a T> for Vector4<T>
Source§fn mul_assign(&mut self, rhs: &'a T)
fn mul_assign(&mut self, rhs: &'a T)
Performs the
*= operation. Read moreSource§impl<'a, T> MulAssign<&'a Vector4<T>> for Vector4<T>
impl<'a, T> MulAssign<&'a Vector4<T>> for Vector4<T>
Source§fn mul_assign(&mut self, rhs: &'a Vector4<T>)
fn mul_assign(&mut self, rhs: &'a Vector4<T>)
Performs the
*= operation. Read moreSource§impl<T> MulAssign<[T; 4]> for Vector4<T>where
T: MulAssign,
impl<T> MulAssign<[T; 4]> for Vector4<T>where
T: MulAssign,
Source§fn mul_assign(&mut self, rhs: [T; 4])
fn mul_assign(&mut self, rhs: [T; 4])
Performs the
*= operation. Read moreSource§impl<T> MulAssign<(T, T, T, T)> for Vector4<T>where
T: MulAssign,
impl<T> MulAssign<(T, T, T, T)> for Vector4<T>where
T: MulAssign,
Source§fn mul_assign(&mut self, rhs: (T, T, T, T))
fn mul_assign(&mut self, rhs: (T, T, T, T))
Performs the
*= operation. Read moreSource§impl<T> MulAssign<T> for Vector4<T>
impl<T> MulAssign<T> for Vector4<T>
Source§fn mul_assign(&mut self, rhs: T)
fn mul_assign(&mut self, rhs: T)
Performs the
*= operation. Read moreSource§impl<T> MulAssign for Vector4<T>where
T: MulAssign,
impl<T> MulAssign for Vector4<T>where
T: MulAssign,
Source§fn mul_assign(&mut self, rhs: Vector4<T>)
fn mul_assign(&mut self, rhs: Vector4<T>)
Performs the
*= operation. Read moreSource§impl<'a, T> Sub<(T, T, T, T)> for &'a Vector4<T>
impl<'a, T> Sub<(T, T, T, T)> for &'a Vector4<T>
Source§impl<'a, T> SubAssign<&'a Vector4<T>> for Vector4<T>
impl<'a, T> SubAssign<&'a Vector4<T>> for Vector4<T>
Source§fn sub_assign(&mut self, rhs: &'a Vector4<T>)
fn sub_assign(&mut self, rhs: &'a Vector4<T>)
Performs the
-= operation. Read moreSource§impl<T> SubAssign<[T; 4]> for Vector4<T>where
T: SubAssign,
impl<T> SubAssign<[T; 4]> for Vector4<T>where
T: SubAssign,
Source§fn sub_assign(&mut self, rhs: [T; 4])
fn sub_assign(&mut self, rhs: [T; 4])
Performs the
-= operation. Read moreSource§impl<T> SubAssign<(T, T, T, T)> for Vector4<T>where
T: SubAssign,
impl<T> SubAssign<(T, T, T, T)> for Vector4<T>where
T: SubAssign,
Source§fn sub_assign(&mut self, rhs: (T, T, T, T))
fn sub_assign(&mut self, rhs: (T, T, T, T))
Performs the
-= operation. Read moreSource§impl<T> SubAssign for Vector4<T>where
T: SubAssign,
impl<T> SubAssign for Vector4<T>where
T: SubAssign,
Source§fn sub_assign(&mut self, rhs: Vector4<T>)
fn sub_assign(&mut self, rhs: Vector4<T>)
Performs the
-= operation. Read moreimpl<T: Copy> Copy for Vector4<T>
impl<T: Eq> Eq for Vector4<T>
impl<T> StructuralPartialEq for Vector4<T>
Auto Trait Implementations§
impl<T> Freeze for Vector4<T>where
T: Freeze,
impl<T> RefUnwindSafe for Vector4<T>where
T: RefUnwindSafe,
impl<T> Send for Vector4<T>where
T: Send,
impl<T> Sync for Vector4<T>where
T: Sync,
impl<T> Unpin for Vector4<T>where
T: Unpin,
impl<T> UnwindSafe for Vector4<T>where
T: 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