#include <path_roundedcomposite.hpp>
The specification of a path, composed of waypoints with rounded corners.
Definition at line 58 of file path_roundedcomposite.hpp.
◆ Path_RoundedComposite() [1/2]
◆ Path_RoundedComposite() [2/2]
KDL::Path_RoundedComposite::Path_RoundedComposite 
( 
double 
radius, 


double 
eqradius, 


RotationalInterpolation * 
orient, 


bool 
aggregate = true 

) 
 
 Parameters

radius  : radius of the rounding circles 
eqradius  : equivalent radius to compare rotations/velocities 
orient  : method of rotational_interpolation interpolation 
aggregate  : if true, this object will own the _orient pointer, i.e. it will delete the _orient pointer when the destructor of this object is called. 
Definition at line 61 of file path_roundedcomposite.cpp.
◆ ~Path_RoundedComposite()
KDL::Path_RoundedComposite::~Path_RoundedComposite 
( 
 ) 


virtual 
◆ Acc()
Twist KDL::Path_RoundedComposite::Acc 
( 
double 
s, 


double 
sd, 


double 
sdd 

) 
 const 

virtual 
Returns the acceleration twist at path length s and with derivative of s == sd, and 2nd derivative of s == sdd
Implements KDL::Path.
Definition at line 164 of file path_roundedcomposite.cpp.
◆ Add()
void KDL::Path_RoundedComposite::Add 
( 
const Frame & 
F_base_point  ) 

Adds a point to this rounded composite, between to adjecent points a Path_Line will be created, between two lines there will be rounding with the given radius with a Path_Circle
The Error_MotionPlanning_Not_Feasible has a type (obtained by GetType) of:
 3101 if the eq. radius <= 0
 3102 if the first segment in a rounding has zero length.
 3103 if the second segment in a rounding has zero length.
 3104 if the angle between the first and the second segment is close to M_PI. (meaning that the segments are on top of each other)
 3105 if the distance needed for the rounding is larger then the first segment.
 3106 if the distance needed for the rounding is larger then the second segment.
 Parameters

F_base_point  the pose of a new via point. 
 Warning
 Can throw Error_MotionPlanning_Not_Feasible object handle the case of error type 3105 and 3106 by skipping segments, such that the class could be applied with points that are very close to each other.
Definition at line 70 of file path_roundedcomposite.cpp.
◆ Clone()
Path * KDL::Path_RoundedComposite::Clone 
( 
 ) 


virtual 
◆ Finish()
void KDL::Path_RoundedComposite::Finish 
( 
 ) 

◆ GetCurrentSegmentLocation()
void KDL::Path_RoundedComposite::GetCurrentSegmentLocation 
( 
double 
s, 


int & 
segment_number, 


double & 
inner_s 

) 
 

virtual 
 Parameters

s  [INPUT] path length variable for the composite. 
segment_number  [OUTPUT] segments that corresponds to the path length variable s. 
inner_s  [OUTPUT] path length to use within the segment. 
Definition at line 184 of file path_roundedcomposite.cpp.
◆ getIdentifier()
virtual IdentifierType KDL::Path_RoundedComposite::getIdentifier 
( 
 ) 
const 

inlinevirtual 
◆ GetLengthToEndOfSegment()
double KDL::Path_RoundedComposite::GetLengthToEndOfSegment 
( 
int 
i  ) 


virtual 
gets the length to the end of the given segment.
 Parameters

 Returns
 length to the end of the segment, i.e. the value for s corresponding to the end of this segment.
Definition at line 180 of file path_roundedcomposite.cpp.
◆ GetNrOfSegments()
int KDL::Path_RoundedComposite::GetNrOfSegments 
( 
 ) 


virtual 
◆ GetSegment()
Path * KDL::Path_RoundedComposite::GetSegment 
( 
int 
i  ) 


virtual 
returns a pointer to the underlying Path of the given segment number i.
 Parameters

 Returns
 pointer to the underlying Path
 Warning
 The pointer is still owned by this class and is lifetime depends on the lifetime of this class.
Definition at line 176 of file path_roundedcomposite.cpp.
◆ LengthToS()
double KDL::Path_RoundedComposite::LengthToS 
( 
double 
length  ) 


virtual 
LengthToS() converts a physical length along the trajectory to the parameter s used in Pos, Vel and Acc. This is used because in cases with large rotations the parameter s does NOT correspond to the lineair length along the trajectory. User should be sure that the lineair distance travelled by this path object is NOT zero, when using this method ! (e.g. the case of only rotational change) throws Error_MotionPlanning_Not_Applicable if used on composed path objects.
Implements KDL::Path.
Definition at line 147 of file path_roundedcomposite.cpp.
◆ PathLength()
double KDL::Path_RoundedComposite::PathLength 
( 
 ) 


virtual 
Returns the total path length of the trajectory (has dimension LENGTH) This is not always a physical length , ie when dealing with rotations that are dominant.
Implements KDL::Path.
Definition at line 152 of file path_roundedcomposite.cpp.
◆ Pos()
Frame KDL::Path_RoundedComposite::Pos 
( 
double 
s  ) 
const 

virtual 
◆ Vel()
Twist KDL::Path_RoundedComposite::Vel 
( 
double 
s, 


double 
sd 

) 
 const 

virtual 
◆ Write()
void KDL::Path_RoundedComposite::Write 
( 
std::ostream & 
os  ) 


virtual 
◆ aggregate
bool KDL::Path_RoundedComposite::aggregate 

private 
◆ comp
◆ eqradius
double KDL::Path_RoundedComposite::eqradius 

private 
◆ F_base_start
Frame KDL::Path_RoundedComposite::F_base_start 

private 
◆ F_base_via
Frame KDL::Path_RoundedComposite::F_base_via 

private 
◆ nrofpoints
int KDL::Path_RoundedComposite::nrofpoints 

private 
◆ orient
◆ radius
double KDL::Path_RoundedComposite::radius 

private 
The documentation for this class was generated from the following files: