#include <trgen.h>
Inherits TrajectorySegment.
Public Member Functions | |
Arc (Point *_p1, Point *_p2, double _radius) | |
virtual void | setMaxV (const TrajectoryConstraints &constr) |
virtual double | getLength () const |
Length of the segment in meters. | |
virtual double | getDistance (double time) const |
not implemented, because this class is not used any more | |
virtual void | getPointAt (double distance, Point *p) |
Returns the point of the segment, located at the specific distance from the beginning or end. | |
virtual void | shortenBy (double distance, Point *newEnd) |
Shorten the segment by a specific length. | |
virtual TrajectorySegment * | splitAt (double distance, Point *newEnd) |
Splits the segment at the specified point. | |
virtual TrajectorySegment * | splitAtByTime (double time, Point *newEnd) |
virtual void | getRefPos (double time, Pos &rp) |
Return the reference position at some time. |
Arc shaped segment.
double Segment::Arc::getDistance | ( | double | time | ) | const [virtual] |
not implemented, because this class is not used any more
Implements TrajectorySegment.
virtual double Segment::Arc::getLength | ( | ) | const [inline, virtual] |
Length of the segment in meters.
Implements TrajectorySegment.
void Segment::Arc::getPointAt | ( | double | distance, | |
Point * | p | |||
) | [virtual] |
Returns the point of the segment, located at the specific distance
from the beginning or end.
[in] | distance | Distance from the beginning (if positive) or end (if negative) of the segment in meters. |
[out] | p | Pointer to the point to sore the result. |
Implements TrajectorySegment.
void Segment::Arc::getRefPos | ( | double | time, | |
Pos & | rp | |||
) | [virtual] |
Return the reference position at some time.
[in] | time | Time (within this segment time range). |
[out] | rp | Reference position. |
Implements TrajectorySegment.
void Segment::Arc::setMaxV | ( | const TrajectoryConstraints & | constr | ) | [virtual] |
Implements TrajectorySegment.
void Segment::Arc::shortenBy | ( | double | distance, | |
Point * | newEnd | |||
) | [virtual] |
Shorten the segment by a specific length.
[in] | distance | Distance from the end (if positive) of the segment, where should be the end of the segment. |
[in] | newEnd | Point which will be set to the position of the new end. |
Implements TrajectorySegment.
TrajectorySegment * Segment::Arc::splitAt | ( | double | distance, | |
Point * | newEnd | |||
) | [virtual] |
Splits the segment at the specified point.
The result will be two segments following the same trajectory as the original one.
[in] | distance | Distance of the split from the beginning of the segment. |
[in] | newEnd | Point which will be used as a middle point joining the two segments. |
Implements TrajectorySegment.
virtual TrajectorySegment* Segment::Arc::splitAtByTime | ( | double | time, | |
Point * | newEnd | |||
) | [virtual] |
Implements TrajectorySegment.