Enum Pose

Source
pub enum Pose {
    Euler([f64; 3], [f64; 3]),
    Quat(Isometry3<f64>),
    Homo([f64; 16]),
    AxisAngle([f64; 3], [f64; 3], f64),
    Position([f64; 3]),
}

Variants§

§

Euler([f64; 3], [f64; 3])

§

Quat(Isometry3<f64>)

§

Homo([f64; 16])

§

AxisAngle([f64; 3], [f64; 3], f64)

§

Position([f64; 3])

Implementations§

Source§

impl Pose

Source

pub fn euler(&self) -> ([f64; 3], [f64; 3])

Examples found in repository?
examples/arm_param.rs (line 26)
22fn main() {
23    let q = [1.; 7];
24    let pose = ExRobot::forward_kinematics(&q);
25    println!("pose: {:?}", pose.axis_angle());
26    println!("pose: {:?}", pose.euler());
27    println!("pose: {:?}", pose.homo());
28    println!("pose: {:?}", pose.position());
29    println!("pose: {:?}", pose.quat());
30}
Source

pub fn quat(&self) -> Isometry3<f64>

Examples found in repository?
examples/arm_param.rs (line 29)
22fn main() {
23    let q = [1.; 7];
24    let pose = ExRobot::forward_kinematics(&q);
25    println!("pose: {:?}", pose.axis_angle());
26    println!("pose: {:?}", pose.euler());
27    println!("pose: {:?}", pose.homo());
28    println!("pose: {:?}", pose.position());
29    println!("pose: {:?}", pose.quat());
30}
Source

pub fn quat_array(&self) -> ([f64; 3], [f64; 4])

Source

pub fn homo(&self) -> [f64; 16]

Examples found in repository?
examples/arm_param.rs (line 27)
22fn main() {
23    let q = [1.; 7];
24    let pose = ExRobot::forward_kinematics(&q);
25    println!("pose: {:?}", pose.axis_angle());
26    println!("pose: {:?}", pose.euler());
27    println!("pose: {:?}", pose.homo());
28    println!("pose: {:?}", pose.position());
29    println!("pose: {:?}", pose.quat());
30}
Source

pub fn axis_angle(&self) -> ([f64; 3], [f64; 3], f64)

Examples found in repository?
examples/arm_param.rs (line 25)
22fn main() {
23    let q = [1.; 7];
24    let pose = ExRobot::forward_kinematics(&q);
25    println!("pose: {:?}", pose.axis_angle());
26    println!("pose: {:?}", pose.euler());
27    println!("pose: {:?}", pose.homo());
28    println!("pose: {:?}", pose.position());
29    println!("pose: {:?}", pose.quat());
30}
Source

pub fn position(&self) -> [f64; 3]

Examples found in repository?
examples/arm_param.rs (line 28)
22fn main() {
23    let q = [1.; 7];
24    let pose = ExRobot::forward_kinematics(&q);
25    println!("pose: {:?}", pose.axis_angle());
26    println!("pose: {:?}", pose.euler());
27    println!("pose: {:?}", pose.homo());
28    println!("pose: {:?}", pose.position());
29    println!("pose: {:?}", pose.quat());
30}

Trait Implementations§

Source§

impl Clone for Pose

Source§

fn clone(&self) -> Pose

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Pose

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Pose

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for Pose

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Div for &Pose

Source§

type Output = f64

The resulting type after applying the / operator.
Source§

fn div(self, rhs: Self) -> Self::Output

Performs the / operation. Read more
Source§

impl Div for Pose

Source§

type Output = f64

The resulting type after applying the / operator.
Source§

fn div(self, rhs: Self) -> Self::Output

Performs the / operation. Read more
Source§

impl From<[f64; 16]> for Pose

Source§

fn from(value: [f64; 16]) -> Self

Converts to this type from the input type.
Source§

impl From<[f64; 3]> for Pose

Source§

fn from(value: [f64; 3]) -> Self

Converts to this type from the input type.
Source§

impl From<[f64; 6]> for Pose

Source§

fn from(value: [f64; 6]) -> Self

Converts to this type from the input type.
Source§

impl From<[f64; 7]> for Pose

Source§

fn from(value: [f64; 7]) -> Self

Converts to this type from the input type.
Source§

impl From<([f64; 3], [f64; 3])> for Pose

Source§

fn from(value: ([f64; 3], [f64; 3])) -> Self

Converts to this type from the input type.
Source§

impl From<([f64; 3], [f64; 3], f64)> for Pose

Source§

fn from(value: ([f64; 3], [f64; 3], f64)) -> Self

Converts to this type from the input type.
Source§

impl From<([f64; 3], [f64; 4])> for Pose

Source§

fn from(value: ([f64; 3], [f64; 4])) -> Self

Converts to this type from the input type.
Source§

impl From<Isometry<f64, Unit<Quaternion<f64>>, 3>> for Pose

Source§

fn from(value: Isometry3<f64>) -> Self

Converts to this type from the input type.
Source§

impl From<Pose> for [f64; 16]

Source§

fn from(value: Pose) -> Self

Converts to this type from the input type.
Source§

impl From<Pose> for [f64; 3]

Source§

fn from(value: Pose) -> Self

Converts to this type from the input type.
Source§

impl From<Pose> for [f64; 6]

Source§

fn from(value: Pose) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for Pose

Source§

fn eq(&self, other: &Pose) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for Pose

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl TryFrom<&[f64]> for Pose

Source§

type Error = TryIntoPoseError

The type returned in the event of a conversion error.
Source§

fn try_from(value: &[f64]) -> Result<Self, Self::Error>

Performs the conversion.
Source§

impl Copy for Pose

Source§

impl StructuralPartialEq for Pose

Auto Trait Implementations§

§

impl Freeze for Pose

§

impl RefUnwindSafe for Pose

§

impl Send for Pose

§

impl Sync for Pose

§

impl Unpin for Pose

§

impl UnwindSafe for Pose

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<X> Pipe for X

Source§

fn pipe<Return, Function>(self, f: Function) -> Return
where Self: Sized, Function: FnOnce(Self) -> Return,

Apply f to self. Read more
Source§

fn pipe_ref<'a, Return, Function>(&'a self, f: Function) -> Return
where Function: FnOnce(&'a Self) -> Return,

Apply f to &self. Read more
Source§

fn pipe_mut<'a, Return, Function>(&'a mut self, f: Function) -> Return
where Function: FnOnce(&'a mut Self) -> Return,

Apply f to &mut self. Read more
Source§

fn pipe_as_ref<'a, Param, Return, Function>(&'a self, f: Function) -> Return
where Self: AsRef<Param>, Param: 'a + ?Sized, Function: FnOnce(&'a Param) -> Return,

Apply f to &self where f takes a single parameter of type Param and Self implements trait AsRef<Param>. Read more
Source§

fn pipe_as_mut<'a, Param, Return, Function>(&'a mut self, f: Function) -> Return
where Self: AsMut<Param>, Param: 'a + ?Sized, Function: FnOnce(&'a mut Param) -> Return,

Apply f to &mut self where f takes a single parameter of type Param and Self implements trait AsMut<Param>. Read more
Source§

fn pipe_deref<'a, Param, Return, Function>(&'a self, f: Function) -> Return
where Self: Deref<Target = Param>, Param: 'a + ?Sized, Function: FnOnce(&'a Param) -> Return,

Apply f to &self where f takes a single parameter of type Param and Self implements trait Deref<Target = Param>. Read more
Source§

fn pipe_deref_mut<'a, Param, Return, Function>( &'a mut self, f: Function, ) -> Return
where Self: DerefMut<Target = Param>, Param: 'a + ?Sized, Function: FnOnce(&'a mut Param) -> Return,

Apply f to &mut self where f takes a single parameter of type Param and Self implements trait [DerefMut<Target = Param>]. Read more
Source§

fn pipe_borrow<'a, Param, Return, Function>(&'a self, f: Function) -> Return
where Self: Borrow<Param>, Param: 'a + ?Sized, Function: FnOnce(&'a Param) -> Return,

Apply f to &self where f takes a single parameter of type Param and Self implements trait Borrow<Param>. Read more
Source§

fn pipe_borrow_mut<'a, Param, Return, Function>( &'a mut self, f: Function, ) -> Return
where Self: BorrowMut<Param>, Param: 'a + ?Sized, Function: FnOnce(&'a mut Param) -> Return,

Apply f to &mut self where f takes a single parameter of type Param and Self implements trait BorrowMut<Param>. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<SS, SP> SupersetOf<SS> for SP
where SS: SubsetOf<SP>,

Source§

fn to_subset(&self) -> Option<SS>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
Source§

fn is_in_subset(&self) -> bool

Checks if self is actually part of its subset T (and can be converted to it).
Source§

fn to_subset_unchecked(&self) -> SS

Use with care! Same as self.to_subset but without any property checks. Always succeeds.
Source§

fn from_subset(element: &SS) -> SP

The inclusion map: converts self to the equivalent element of its superset.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> Scalar for T
where T: 'static + Clone + PartialEq + Debug,