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 TrajectorySegmentsplitAt (double distance, Point *newEnd)
 Splits the segment at the specified point.
virtual TrajectorySegmentsplitAtByTime (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: