Struct k::LinkTree [−][src]
pub struct LinkTree<T: Real> { pub name: String, pub root_link: LinkNode<T>, // some fields omitted }
Kinematic Tree using Rc<RefCell<Link<T>>>
Fields
name: String
root_link: LinkNode<T>
Methods
impl<T: Real> LinkTree<T>
[src]
impl<T: Real> LinkTree<T>
pub fn new(name: &str, root_link: LinkNode<T>) -> Self
[src]
pub fn new(name: &str, root_link: LinkNode<T>) -> Self
pub fn add_mimic(&mut self, name: &str, mimic_info: Mimic<T>)
[src]
pub fn add_mimic(&mut self, name: &str, mimic_info: Mimic<T>)
pub fn mimics(&self) -> &HashMap<String, Mimic<T>>
[src]
pub fn mimics(&self) -> &HashMap<String, Mimic<T>>
pub fn iter_node(
&self
) -> impl Iterator<Item = &LinkNode<T>>
[src]
pub fn iter_node(
&self
) -> impl Iterator<Item = &LinkNode<T>>
iter for all link nodes
pub fn iter(
&self
) -> impl Iterator<Item = Ref<Link<T>>>
[src]
pub fn iter(
&self
) -> impl Iterator<Item = Ref<Link<T>>>
iter for all links, not as node
pub fn iter_mut(
&self
) -> impl Iterator<Item = RefMut<Link<T>>>
[src]
pub fn iter_mut(
&self
) -> impl Iterator<Item = RefMut<Link<T>>>
iter for all links as mut, not as node
pub fn iter_movable_node(
&self
) -> impl Iterator<Item = &LinkNode<T>>
[src]
pub fn iter_movable_node(
&self
) -> impl Iterator<Item = &LinkNode<T>>
iter for the links with the joint which is not fixed
pub fn iter_movable(
&self
) -> impl Iterator<Item = Ref<Link<T>>>
[src]
pub fn iter_movable(
&self
) -> impl Iterator<Item = Ref<Link<T>>>
iter for the links with the joint which is not fixed
pub fn iter_movable_mut(
&self
) -> impl Iterator<Item = RefMut<Link<T>>>
[src]
pub fn iter_movable_mut(
&self
) -> impl Iterator<Item = RefMut<Link<T>>>
iter mut for the links with the joint which is not fixed
pub fn dof(&self) -> usize
[src]
pub fn dof(&self) -> usize
Get the degree of freedom
Trait Implementations
impl<T: Debug + Real> Debug for LinkTree<T>
[src]
impl<T: Debug + Real> Debug for LinkTree<T>
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl<T> HasJoints<T> for LinkTree<T> where
T: Real,
[src]
impl<T> HasJoints<T> for LinkTree<T> where
T: Real,
fn joint_angles(&self) -> Vec<T>
[src]
fn joint_angles(&self) -> Vec<T>
Get the angles of the joints
FixedJoint
is ignored. the length is the same with dof()
fn set_joint_angles(&mut self, angles_vec: &[T]) -> Result<(), JointError>
[src]
fn set_joint_angles(&mut self, angles_vec: &[T]) -> Result<(), JointError>
Set the angles of the joints
FixedJoints
are ignored. the input number must be equal with dof()
fn joint_limits(&self) -> Vec<Option<Range<T>>>
[src]
fn joint_limits(&self) -> Vec<Option<Range<T>>>
Get the limits of the joints, if it exists.
fn joint_names(&self) -> Vec<String>
[src]
fn joint_names(&self) -> Vec<String>
Get the all names of the joints
impl<T> HasLinks<T> for LinkTree<T> where
T: Real,
[src]
impl<T> HasLinks<T> for LinkTree<T> where
T: Real,
fn link_transforms(&self) -> Vec<Isometry3<T>>
[src]
fn link_transforms(&self) -> Vec<Isometry3<T>>
Calculate the transforms of all of the links
fn link_names(&self) -> Vec<String>
[src]
fn link_names(&self) -> Vec<String>
Get the names of the links
impl<T> FromUrdf for LinkTree<T> where
T: Real,
[src]
impl<T> FromUrdf for LinkTree<T> where
T: Real,
fn from_urdf_robot(robot: &Robot) -> Self
[src]
fn from_urdf_robot(robot: &Robot) -> Self
Create LinkTree
from urdf_rs::Robot
fn from_urdf_file<P>(path: P) -> Result<Self, UrdfError> where
Self: Sized,
P: AsRef<Path>,
[src]
fn from_urdf_file<P>(path: P) -> Result<Self, UrdfError> where
Self: Sized,
P: AsRef<Path>,