[−][src]Struct geomath::point::Point
Generic structure and documentation for points
Fields
position: Tspeed: Ttrajectory: Trajectory<T>Methods
impl<T> Point<T> where
T: Copy + Clone + AddAssign<T> + SubAssign<T>, [src]
T: Copy + Clone + AddAssign<T> + SubAssign<T>,
pub fn new(position: T, speed: T) -> Point<T>[src]
Construct a point with given position and speed vectors
pub fn update_trajectory(&mut self) -> &mut Self[src]
Updates trajectory
The value of position is pushed into the trajectory.
pub fn reset_origin(&mut self, origin: &Self, old_origin: &Self) -> &mut Self[src]
Change the origin
This method also changes the origin of the trajectory.
Trait Implementations
impl<T> Add<Point<T>> for Point<T> where
T: AddAssign<T> + Copy + Clone + SubAssign<T>, [src]
T: AddAssign<T> + Copy + Clone + SubAssign<T>,
type Output = Point<T>
The resulting type after applying the + operator.
fn add(self, rhs: Point<T>) -> Self::Output[src]
impl<T> Add<T> for Point<T> where
T: AddAssign<T> + Copy + Clone + SubAssign<T>, [src]
T: AddAssign<T> + Copy + Clone + SubAssign<T>,
type Output = Point<T>
The resulting type after applying the + operator.
fn add(self, rhs: T) -> Self::Output[src]
impl<T> AddAssign<Point<T>> for Point<T> where
T: AddAssign<T> + Copy + Clone + SubAssign<T>, [src]
T: AddAssign<T> + Copy + Clone + SubAssign<T>,
fn add_assign(&mut self, rhs: Point<T>)[src]
impl<T> AddAssign<T> for Point<T> where
T: AddAssign<T> + Copy + Clone + SubAssign<T>, [src]
T: AddAssign<T> + Copy + Clone + SubAssign<T>,
fn add_assign(&mut self, rhs: T)[src]
impl<T: Clone> Clone for Point<T>[src]
impl<T: Copy> Copy for Point<T>[src]
impl<T> Debug for Point<T> where
T: Debug + Copy + Clone + AddAssign<T> + SubAssign<T>, [src]
T: Debug + Copy + Clone + AddAssign<T> + SubAssign<T>,
impl<T> Div<f64> for Point<T> where
T: DivAssign<f64> + Copy + Clone + AddAssign<T> + SubAssign<T>, [src]
T: DivAssign<f64> + Copy + Clone + AddAssign<T> + SubAssign<T>,
type Output = Point<T>
The resulting type after applying the / operator.
fn div(self, rhs: f64) -> Self::Output[src]
impl<T> DivAssign<f64> for Point<T> where
T: DivAssign<f64> + Copy + Clone + AddAssign<T> + SubAssign<T>, [src]
T: DivAssign<f64> + Copy + Clone + AddAssign<T> + SubAssign<T>,
fn div_assign(&mut self, rhs: f64)[src]
impl From<Point<Vector2>> for Vector4[src]
impl<T> Initializer for Point<T> where
T: Initializer + Copy + Clone + AddAssign<T> + SubAssign<T>, [src]
T: Initializer + Copy + Clone + AddAssign<T> + SubAssign<T>,
impl<T> Metric for Point<T> where
T: Metric + Copy + Clone + AddAssign<T> + SubAssign<T>, [src]
T: Metric + Copy + Clone + AddAssign<T> + SubAssign<T>,
fn dot(&self, other: &Self) -> f64[src]
fn distance2(&self, other: &Self) -> f64[src]
fn distance(&self, other: &Self) -> f64[src]
fn magnitude2(&self) -> f64[src]
fn magnitude(&self) -> f64[src]
fn set_normalized(&mut self) -> &mut Self[src]
fn normalized(&self) -> Self[src]
impl<T> Mul<f64> for Point<T> where
T: MulAssign<f64> + Copy + Clone + AddAssign<T> + SubAssign<T>, [src]
T: MulAssign<f64> + Copy + Clone + AddAssign<T> + SubAssign<T>,
type Output = Point<T>
The resulting type after applying the * operator.
fn mul(self, rhs: f64) -> Self::Output[src]
impl<T> MulAssign<f64> for Point<T> where
T: MulAssign<f64> + Copy + Clone + AddAssign<T> + SubAssign<T>, [src]
T: MulAssign<f64> + Copy + Clone + AddAssign<T> + SubAssign<T>,
fn mul_assign(&mut self, rhs: f64)[src]
impl<T> PartialEq<Point<T>> for Point<T> where
T: PartialEq<T> + Copy + Clone + AddAssign<T> + SubAssign<T>, [src]
T: PartialEq<T> + Copy + Clone + AddAssign<T> + SubAssign<T>,
impl<T> Reset<Point<T>> for Point<T> where
T: Reset<T> + Copy + Clone + AddAssign<T> + SubAssign<T>, [src]
T: Reset<T> + Copy + Clone + AddAssign<T> + SubAssign<T>,
fn reset0(&mut self) -> &mut Self[src]
fn reset1(&mut self) -> &mut Self[src]
fn reset(&mut self, val: &Point<T>) -> &mut Self[src]
impl<T> Sub<Point<T>> for Point<T> where
T: SubAssign<T> + Copy + Clone + AddAssign<T>, [src]
T: SubAssign<T> + Copy + Clone + AddAssign<T>,
type Output = Point<T>
The resulting type after applying the - operator.
fn sub(self, rhs: Point<T>) -> Self::Output[src]
impl<T> Sub<T> for Point<T> where
T: SubAssign<T> + Copy + Clone + AddAssign<T>, [src]
T: SubAssign<T> + Copy + Clone + AddAssign<T>,
type Output = Point<T>
The resulting type after applying the - operator.
fn sub(self, rhs: T) -> Self::Output[src]
impl<T> SubAssign<Point<T>> for Point<T> where
T: SubAssign<T> + Copy + Clone + AddAssign<T>, [src]
T: SubAssign<T> + Copy + Clone + AddAssign<T>,
fn sub_assign(&mut self, rhs: Point<T>)[src]
impl<T> SubAssign<T> for Point<T> where
T: SubAssign<T> + Copy + Clone + AddAssign<T>, [src]
T: SubAssign<T> + Copy + Clone + AddAssign<T>,
fn sub_assign(&mut self, rhs: T)[src]
Auto Trait Implementations
impl<T> RefUnwindSafe for Point<T> where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<T> Send for Point<T> where
T: Send,
T: Send,
impl<T> Sync for Point<T> where
T: Sync,
T: Sync,
impl<T> Unpin for Point<T> where
T: Unpin,
T: Unpin,
impl<T> UnwindSafe for Point<T> where
T: UnwindSafe,
T: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
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> 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>,