Public Member Functions

Segment::Arc Class Reference

Arc shaped segment. More...

#include <trgen.h>

Inherits TrajectorySegment.

Collaboration diagram for Segment::Arc:
Collaboration graph
[legend]

List of all members.

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.

Detailed Description

Arc shaped segment.


Constructor & Destructor Documentation

Segment::Arc::Arc ( Point *  _p1,
Point *  _p2,
double  _radius 
)

Here is the call graph for this function:


Member Function Documentation

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.

Parameters:
[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.

Parameters:
[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.

Parameters:
[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.

Parameters:
[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.
Returns:
Pointer to the newly created segment.

Implements TrajectorySegment.

virtual TrajectorySegment* Segment::Arc::splitAtByTime ( double  time,
Point *  newEnd 
) [virtual]

Implements TrajectorySegment.


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