Struct rhusics::BodyPose
[−]
[src]
pub struct BodyPose<P, R> { /* fields omitted */ }
Transform component used throughout the library
Methods
impl<P, R> BodyPose<P, R> where
P: EuclideanSpace,
P::Scalar: BaseFloat,
R: Rotation<P>,
[src]
P: EuclideanSpace,
P::Scalar: BaseFloat,
R: Rotation<P>,
fn new(position: P, rotation: R) -> Self
[src]
Create a new BodyPose
with initial state given by the supplied
position and rotation.
fn set_rotation(&mut self, rotation: R)
[src]
Set the rotation. Will also compute the inverse rotation. Sets the dirty flag.
fn set_position(&mut self, position: P)
[src]
Set the position. Sets the dirty flag.
fn position(&self) -> &P
[src]
Borrows the position attribute
fn rotation(&self) -> &R
[src]
Borrows the rotation attribute
fn clear(&mut self)
[src]
Clear the dirty flag
Trait Implementations
impl<P: Clone, R: Clone> Clone for BodyPose<P, R>
[src]
fn clone(&self) -> BodyPose<P, R>
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<P: Debug, R: Debug> Debug for BodyPose<P, R>
[src]
impl<P: PartialEq, R: PartialEq> PartialEq for BodyPose<P, R>
[src]
fn eq(&self, __arg_0: &BodyPose<P, R>) -> bool
[src]
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &BodyPose<P, R>) -> bool
[src]
This method tests for !=
.
impl<P, R> Transform<P> for BodyPose<P, R> where
P: EuclideanSpace,
P::Scalar: BaseFloat,
R: Rotation<P>,
[src]
P: EuclideanSpace,
P::Scalar: BaseFloat,
R: Rotation<P>,
fn one() -> Self
[src]
Create an identity transformation. That is, a transformation which does nothing. Read more
fn look_at(eye: P, center: P, up: P::Diff) -> Self
[src]
Create a transformation that rotates a vector to look at center
from eye
, using up
for orientation. Read more
fn transform_vector(&self, vec: P::Diff) -> P::Diff
[src]
Transform a vector using this transform.
fn transform_point(&self, point: P) -> P
[src]
Transform a point using this transform.
fn concat(&self, other: &Self) -> Self
[src]
Combine this transform with another, yielding a new transformation which has the effects of both. Read more
fn inverse_transform(&self) -> Option<Self>
[src]
Create a transform that "un-does" this one.
fn inverse_transform_vector(&self, vec: P::Diff) -> Option<P::Diff>
[src]
Inverse transform a vector using this transform
fn concat_self(&mut self, other: &Self)
[src]
Combine this transform with another, in-place.
impl<P, R> TranslationInterpolate<P::Scalar> for BodyPose<P, R> where
P: EuclideanSpace,
P::Scalar: BaseFloat,
P::Diff: VectorSpace + InnerSpace,
R: Rotation<P> + Clone,
[src]
P: EuclideanSpace,
P::Scalar: BaseFloat,
P::Diff: VectorSpace + InnerSpace,
R: Rotation<P> + Clone,
fn translation_interpolate(&self, other: &Self, amount: P::Scalar) -> Self
[src]
Interpolate between self
and other
, using amount to calculate how much of other to use. Read more
impl<P, R> Interpolate<P::Scalar> for BodyPose<P, R> where
P: EuclideanSpace,
P::Scalar: BaseFloat,
P::Diff: VectorSpace + InnerSpace,
R: Rotation<P> + Interpolate<P::Scalar>,
[src]
P: EuclideanSpace,
P::Scalar: BaseFloat,
P::Diff: VectorSpace + InnerSpace,
R: Rotation<P> + Interpolate<P::Scalar>,
fn interpolate(&self, other: &Self, amount: P::Scalar) -> Self
[src]
Interpolate between self
and other
, using amount to calculate how much of other to use. Read more