11 static FramePtr root = std::make_shared<Frame>(
"root", Eigen::Isometry2d::Identity(),
Joint::FIXED);
16 :
Frame(name, tip,
Joint::FIXED, Eigen::VectorXd{}, Eigen::VectorXd{}, geometry)
26 const Eigen::VectorXd &lower,
const Eigen::VectorXd &upper,
31 for (
unsigned int i = 0; i < s; ++i)
35 KDL::Frame::Identity());
44 const Eigen::VectorXd &lower,
const Eigen::VectorXd &upper,
87 Eigen::Isometry2d
Frame::getPose(
const Eigen::Ref<const Eigen::VectorXd> &q)
const 89 KDL::Frame f = KDL::Frame::Identity();
100 for (
unsigned int i = 0; i <
geometry_.size(); ++i)
109 ss << geometry->printGeometry();
const std::vector< GeometryPtr > geometry_
Geometry attached to this frame (at the tip).
Eigen::Isometry2d KDLToEigenFrame(const KDL::Frame &frame)
Converts an KDL transformation into a Eigen transformation.
std::string printFrame(const Eigen::Isometry2d &frame)
Returns a string "[x, y, t]" of the translation (x, y) and rotation (t) component of a transform...
const std::vector< KDL::Segment > segments_
Underlying segments that compose this frame.
const std::vector< KDL::Segment > & getSegments() const
Get the segments that compose this frame.
Frame(const std::string &name, const Eigen::Isometry2d &tip, const std::vector< GeometryPtr > &geometry={})
Constuctor. Builds a fixed frame at the desired location.
std::string printDebug() const
Print debug information about this frame.
Fixed joint, just a rigid transformation.
Container class that stores the underlying joint representation. Can represent basic joints within th...
A shared pointer wrapper for se2ez::Frame.
std::string printDebug() const
Print debug information about this frame.
const std::string name_
Name of the frame.
const Joint & getJoint() const
Get the joint within this frame.
Eigen::Isometry2d toIsometry(double x, double y, double theta)
Converts a translation (x, y) and rotation from X-axis (theta) into a transform.
const std::vector< KDL::Joint > joints
Underlying KDL joints.
Eigen::VectorXd toVector(double x)
Converts a single double value into a 1 x 1 matrix.
const Joint joint_
The joint associated with the frame.
const Eigen::Isometry2d & getTip() const
Get the tip of this frame.
void getGeometryPoses(const Eigen::Isometry2d &pose, tf::EigenVector< Eigen::Isometry2d > &poses) const
Get the poses of each of the attached geometry frames (in order).
Eigen::Isometry2d getPose(const Eigen::Ref< const Eigen::VectorXd > &q) const
Gets the pose of this frame (respect to the root) given a configuration q (for this frame only...
Representation of a single frame (possibly with a joint) in a kinematic tree.
static SE2EZ_EIGEN_CLASS FramePtr getRoot()
std::string format(const std::string &fmt, Args &&... args)
const std::vector< GeometryPtr > & getGeometry() const
Get the geometries attached to this frame.
KDL::Frame EigenToKDLFrame(const Eigen::Isometry2d &iso)
Converts an Eigen transformation into a KDL transformation.
const std::string & getName() const
Get the name of this frame.
T emplace_back(T... args)
const Eigen::Isometry2d tip_
The transform after joint transformation to the tip of the frame.