Go to the documentation of this file.
   36 #ifndef JSK_RECOGNITION_UTILS_GEO_POLYLINE_H_ 
   37 #define JSK_RECOGNITION_UTILS_GEO_POLYLINE_H_ 
   39 #include <Eigen/Geometry> 
   40 #include <boost/shared_ptr.hpp> 
   43 #include "visualization_msgs/Marker.h" 
   51   class PolyLine : 
public Line
 
   61     PolyLine(
const std::vector < Eigen::Vector3f > &points);
 
   76                             Eigen::Vector3f& foot_point) 
const;
 
   84                                     Eigen::Vector3f& foot_point,
 
   85                                     double& distance_to_goal,
 
   87                                     double& foot_alpha) 
const;
 
   95     virtual void getDirection(
int index, Eigen::Vector3f& output) 
const;
 
  102     virtual double length() 
const;
 
  114     void toMarker(visualization_msgs::Marker& marker) 
const;
 
  
virtual double distanceWithInfo(const Eigen::Vector3f &from, Eigen::Vector3f &foot_point, double &distance_to_goal, int &foot_index, double &foot_alpha) const
compute a distance to a point, get various information
boost::shared_ptr< Segment > Ptr
PolyLine(const std::vector< Eigen::Vector3f > &points)
Construct a polyline from points. The polyline consists of lines which starts with p[i] and ends with...
virtual PolyLine::Ptr flipPolyLine() const
virtual Segment::Ptr at(int index) const
void toMarker(visualization_msgs::Marker &marker) const
boost::shared_ptr< PolyLine > Ptr
virtual double distance(const Eigen::Vector3f &point, Eigen::Vector3f &foot_point) const
compute a distance to a point
std::vector< Segment::Ptr > segments
Class to represent 3-D polyline (not closed).
friend std::ostream & operator<<(std::ostream &os, const PolyLine &pl)
virtual void point(double alpha, Eigen::Vector3f &ouptut)
Compute a point on normal from alpha parameter.
virtual double length() const
get total length of the polyline
virtual Eigen::Vector3f getDirection() const
get normalized direction vector of the line.