#include <straightline.h>
Inherits AbstractTrackSection.
Inheritance diagram for StraightLine:
Public Member Functions | |
StraightLine (const Position &p, const double &angle) | |
Constructor. | |
StraightLine (const Matrix &pose) | |
Constructor. | |
virtual | ~StraightLine () |
void | setCurveAngle (double alpha) |
virtual Matrix | getTransformedEndMatrix () |
gives the position and rotation(angle) of the segment at the end of the segment so that a new segment could be placed there if you want to place the new segment, you must muliplicate: getTransformedEndMatrix()*getPositionMatrix(); | |
virtual bool | isInside (const Position &p) |
returns true if the real coordinates lay inside of the segment | |
virtual double | getSectionIdValue (const Position &p) |
returns a value between 0 and length that tells at which section you are on the segment. | |
virtual double | getWidthIdValue (const Position &p) |
returns a value between 0 and width that tells at which width you are on the segment, more to right or more to the left. | |
virtual double | getLength () |
returns the length of the segment, here it is the length of the arc formula is: radius * angle; | |
virtual double | getWidth () |
returns the width of the segment, | |
virtual void | setWidth (double w) |
sets the width of the segment, | |
virtual void | draw () |
draws the obstacle (4 boxes for the playground) | |
virtual void | create (dSpaceID space) |
virtual void | destroy () |
Protected Member Functions | |
void | setProperties () |
Protected Attributes | |
double | length |
double | width |
dGeomID | wallLeft |
dGeomID | wallRight |
double | widthWall |
double | heightWall |
double | angle |
double | isLeft |
bool | obstacle_exists |
Color | color |
obstacle color |
StraightLine | ( | const Position & | p, | |
const double & | angle | |||
) |
Constructor.
StraightLine | ( | const Matrix & | pose | ) |
Constructor.
virtual ~StraightLine | ( | ) | [inline, virtual] |
void create | ( | dSpaceID | space | ) | [virtual] |
Implements AbstractTrackSection.
void destroy | ( | ) | [virtual] |
Implements AbstractTrackSection.
void draw | ( | ) | [virtual] |
double getLength | ( | ) | [virtual] |
returns the length of the segment, here it is the length of the arc formula is: radius * angle;
Implements AbstractTrackSection.
double getSectionIdValue | ( | const Position & | p | ) | [virtual] |
returns a value between 0 and length that tells at which section you are on the segment.
returns -1 if no IdValue can be given
Implements AbstractTrackSection.
Matrix getTransformedEndMatrix | ( | ) | [virtual] |
gives the position and rotation(angle) of the segment at the end of the segment so that a new segment could be placed there if you want to place the new segment, you must muliplicate: getTransformedEndMatrix()*getPositionMatrix();
Implements AbstractTrackSection.
double getWidth | ( | ) | [virtual] |
double getWidthIdValue | ( | const Position & | p | ) | [virtual] |
returns a value between 0 and width that tells at which width you are on the segment, more to right or more to the left.
returns -1 if no WidthValue can be given
Implements AbstractTrackSection.
bool isInside | ( | const Position & | p | ) | [virtual] |
void setCurveAngle | ( | double | alpha | ) |
void setProperties | ( | ) | [protected] |
void setWidth | ( | double | w | ) | [virtual] |
double angle [protected] |
Color color [protected] |
obstacle color
double heightWall [protected] |
double isLeft [protected] |
double length [protected] |
bool obstacle_exists [protected] |
dGeomID wallLeft [protected] |
dGeomID wallRight [protected] |
double width [protected] |
double widthWall [protected] |