#include <path_roundedcomposite.hpp>
The specification of a path, composed of way-points with rounded corners.
Definition at line 96 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 99 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 202 of file path_roundedcomposite.cpp.
◆ Add()
void KDL::Path_RoundedComposite::Add |
( |
const Frame & |
F_base_point | ) |
|
Adds a point to this rounded composite, between two adjacent 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 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 @TODO 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 108 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 222 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 218 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 214 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 185 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 190 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()
◆ 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: