orocos_kdl
|
This class encapsulates a simple segment, that is a "rigid body" (i.e., a frame and a rigid body inertia) with a joint and with "handles", root and tip to connect to other segments. More...
#include <segment.hpp>
Public Member Functions | |
Frame | getFrameToTip () const |
const Frame & | getFrameToTipZero () const |
const RigidBodyInertia & | getInertia () const |
const Joint & | getJoint () const |
const std::string & | getName () const |
Segment & | operator= (const Segment &arg) |
Frame | pose (const double &q) const |
Segment (const Joint &joint=Joint(Joint::Fixed), const Frame &f_tip=Frame::Identity(), const RigidBodyInertia &I=RigidBodyInertia::Zero()) | |
Segment (const Segment &in) | |
Segment (const std::string &name, const Joint &joint=Joint(Joint::Fixed), const Frame &f_tip=Frame::Identity(), const RigidBodyInertia &I=RigidBodyInertia::Zero()) | |
void | setFrameToTip (const Frame &f_tip_new) |
void | setInertia (const RigidBodyInertia &Iin) |
Twist | twist (const double &q, const double &qdot) const |
virtual | ~Segment () |
Private Attributes | |
Frame | f_tip |
RigidBodyInertia | I |
Joint | joint |
std::string | name |
Friends | |
class | Chain |
This class encapsulates a simple segment, that is a "rigid body" (i.e., a frame and a rigid body inertia) with a joint and with "handles", root and tip to connect to other segments.
A simple segment is described by the following properties :
Definition at line 46 of file segment.hpp.
|
explicit |
Constructor of the segment
name | name of the segment |
joint | joint of the segment, default: Joint(Joint::Fixed) |
f_tip | frame from the end of the joint to the tip of the segment, default: Frame::Identity() |
M | rigid body inertia of the segment, default: Inertia::Zero() |
Definition at line 24 of file segment.cpp.
|
explicit |
Constructor of the segment
joint | joint of the segment, default: Joint(Joint::Fixed) |
f_tip | frame from the end of the joint to the tip of the segment, default: Frame::Identity() |
M | rigid body inertia of the segment, default: Inertia::Zero() |
Definition at line 31 of file segment.cpp.
KDL::Segment::Segment | ( | const Segment & | in | ) |
Definition at line 38 of file segment.cpp.
|
virtual |
Definition at line 53 of file segment.cpp.
|
inline |
Request the pose from the joint end to the tip of the segment.
Definition at line 149 of file segment.hpp.
|
inline |
Request the pose from the end of the joint to the tip of the segment at joint position 0.
Definition at line 170 of file segment.hpp.
|
inline |
Request the inertia of the segment
Definition at line 128 of file segment.hpp.
|
inline |
Request the joint of the segment
Definition at line 118 of file segment.hpp.
|
inline |
Request the name of the segment
Definition at line 108 of file segment.hpp.
Definition at line 44 of file segment.cpp.
Frame KDL::Segment::pose | ( | const double & | q | ) | const |
Request the pose of the segment, given the joint position q.
q | 1D position of the joint |
Definition at line 57 of file segment.cpp.
void KDL::Segment::setFrameToTip | ( | const Frame & | f_tip_new | ) |
Set the pose from the joint end to the tip of the segment.
f_tip_new | pose from the joint end to the tip of the segment |
Definition at line 67 of file segment.cpp.
|
inline |
Request the inertia of the segment
Definition at line 138 of file segment.hpp.
Twist KDL::Segment::twist | ( | const double & | q, |
const double & | qdot | ||
) | const |
Request the 6D-velocity of the tip of the segment, given the joint position q and the joint velocity qdot.
q | 1D position of the joint |
qdot | 1D velocity of the joint |
Definition at line 62 of file segment.cpp.
|
friend |
Definition at line 47 of file segment.hpp.
|
private |
Definition at line 52 of file segment.hpp.
|
private |
Definition at line 51 of file segment.hpp.
|
private |
Definition at line 50 of file segment.hpp.
|
private |
Definition at line 49 of file segment.hpp.