18 #ifndef __se3_frame_hpp__ 19 #define __se3_frame_hpp__ 21 #include "pinocchio/spatial/se3.hpp" 22 #include "pinocchio/multibody/fwd.hpp" 35 FIXED_JOINT = 0x1 << 2,
43 template<
typename _Scalar,
int _Options>
46 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
47 typedef se3::JointIndex JointIndex;
48 enum { Options = _Options };
49 typedef _Scalar Scalar;
69 const SE3 & frame_placement,
73 , previousFrame(previousFrame)
83 template<
typename S2,
int O2>
109 template<
typename Scalar,
int Options>
110 inline std::ostream & operator << (std::ostream& os, const FrameTpl<Scalar,Options> & f)
115 <<
" paired to (parent joint/ previous frame)" 116 <<
"(" <<f.parent <<
"/" << f.previousFrame <<
")" 118 <<
"with relative placement wrt parent joint:\n" <<
127 #endif // ifndef __se3_frame_hpp__ JointIndex parent
Index of the parent joint.
FrameTpl(const std::string &name, const JointIndex parent, const FrameIndex previousFrame, const SE3 &frame_placement, const FrameType type)
Builds a frame defined by its name, its joint parent id, its placement and its type.
FrameType type
Type of the frame.
bool operator==(const FrameTpl< S2, O2 > &other) const
A Plucker coordinate frame attached to a parent joint inside a kinematic tree.
FrameIndex previousFrame
Index of the previous frame.
FrameType
Enum on the possible types of frame.
FrameTpl()
Default constructor of a frame.
std::string name
Name of the frame.
SE3 placement
Placement of the frame wrt the parent joint.