5 #ifndef __pinocchio_frame_hpp__ 6 #define __pinocchio_frame_hpp__ 8 #include "pinocchio/spatial/se3.hpp" 9 #include "pinocchio/spatial/inertia.hpp" 10 #include "pinocchio/multibody/fwd.hpp" 40 template<
typename _Scalar,
int _Options>
43 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
74 const SE3 & frame_placement,
79 , previousFrame(previousFrame)
92 template<
typename S2,
int O2>
95 return name == other.
name 106 template<
typename S2,
int O2>
109 return !(*
this == other);
113 template<
typename NewScalar>
122 inertia.template cast<NewScalar>());
150 template<
typename Scalar,
int Options>
157 <<
" paired to (parent joint/ previous frame)" 160 <<
"with relative placement wrt parent joint:\n" 162 <<
"containing inertia:\n" 171 #endif // ifndef __pinocchio_frame_hpp__
joint frame: attached to the child body of a joint (a.k.a. child frame)
A Plucker coordinate frame attached to a parent joint inside a kinematic tree.
InertiaTpl< Scalar, Options > Inertia
JointIndex parent
Index of the parent joint.
fixed joint frame: joint frame but for a fixed joint
bool operator!=(const FrameTpl< S2, O2 > &other) const
operational frame: user-defined frames that are defined at runtime
FrameType type
Type of the frame.
FrameType
Enum on the possible types of frames.
body frame: attached to the collision, inertial or visual properties of a link
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef pinocchio::JointIndex JointIndex
std::ostream & operator<<(std::ostream &os, const FrameTpl< Scalar, Options > &f)
bool operator==(const FrameTpl< S2, O2 > &other) const
Equality comparison operator.
FrameTpl()
Default constructor of a frame.
FrameTpl< NewScalar, Options > cast() const
SE3 placement
Placement of the frame wrt the parent joint.
Main pinocchio namespace.
Inertia inertia
Inertia information attached to the frame. This inertia will be appended to the inertia supported by ...
std::string name
Name of the frame.
sensor frame: defined in a sensor element
FrameTpl(const std::string &name, const JointIndex parent, const FrameIndex previousFrame, const SE3 &frame_placement, const FrameType type, const Inertia &inertia=Inertia::Zero())
Builds a frame defined by its name, its joint parent id, its placement and its type.
FrameIndex previousFrame
Index of the previous frame.
SE3Tpl< Scalar, Options > SE3