#include <degreesegment.h>
Inherits AbstractTrackSection.
Inheritance diagram for DegreeSegment:


Public Member Functions | |
| DegreeSegment (const Position &p, const double &angle) | |
| Constructor.   | |
| DegreeSegment (const Matrix &position) | |
| Constructor.   | |
| virtual | ~DegreeSegment () | 
| virtual double | getLength () | 
| returns the length of the segment, here it is the length of the arc   | |
| virtual double | getWidth () | 
| returns the width of the segment,   | |
| virtual void | setWidth (double w) | 
| sets the width of the segment,   | |
| virtual void | setCurveAngle (const double &alpha) | 
| virtual void | setRadius (const double &rad) | 
| 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 100 that tells at which section you are on the segment.   | |
| virtual double | getWidthIdValue (const Position &p) | 
| returns a value between 0 and 100 that tells at which width you are on the segment, more to right or more to the left.   | |
| virtual void | draw () | 
| draws the obstacle (4 boxes for the playground)   | |
| virtual void | create (dSpaceID space) | 
| virtual void | destroy () | 
Protected Member Functions | |
| void | setProperties () | 
| Position | getLocalCoordinates (double radius, double alpha) | 
| returns the local coordinates on the track at the given radius and angle that are responsible for the segment of the   | |
| Position | getGlobalCoordinates (double radius, double alpha) | 
| returns the global coordinates on the track at the given radius and angle that are responsible for the segment of the   | |
Protected Attributes | |
| double | radius | 
| double | width | 
| bool | show_aabb | 
| list< dGeomID > | innerWalls | 
| list< dGeomID > | outerWalls | 
| double | widthWall | 
| double | heightWall | 
| double | angle | 
| int | left | 
| bool | obstacle_exists | 
| Color | color | 
| obstacle color   | |
| DegreeSegment | ( | const Position & | p, | |
| const double & | angle | |||
| ) | 
Constructor.
| DegreeSegment | ( | const Matrix & | position | ) | 
Constructor.
| virtual ~DegreeSegment | ( | ) |  [inline, virtual] | 
        
| void create | ( | dSpaceID | space | ) |  [virtual] | 
        
Implements AbstractTrackSection.
| void destroy | ( | ) |  [virtual] | 
        
Implements AbstractTrackSection.
| void draw | ( | ) |  [virtual] | 
        
| Position getGlobalCoordinates | ( | double | radius, | |
| double | alpha | |||
| ) |  [protected] | 
        
returns the global coordinates on the track at the given radius and angle that are responsible for the segment of the
| double getLength | ( | ) |  [virtual] | 
        
returns the length of the segment, here it is the length of the arc
Implements AbstractTrackSection.
| Position getLocalCoordinates | ( | double | radius, | |
| double | alpha | |||
| ) |  [protected] | 
        
returns the local coordinates on the track at the given radius and angle that are responsible for the segment of the
| double getSectionIdValue | ( | const Position & | p | ) |  [virtual] | 
        
returns a value between 0 and 100 that tells at which section you are on the segment.
0 means you are on the beginning 100 means you are at the end 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 100 that tells at which width you are on the segment, more to right or more to the left.
0 means you are on the left 50 means you are in the middle 100 means you are on the right returns -1 if no WidthValue can be given
Implements AbstractTrackSection.
| bool isInside | ( | const Position & | p | ) |  [virtual] | 
        
| void setCurveAngle | ( | const double & | alpha | ) |  [virtual] | 
        
| void setProperties | ( | ) |  [protected] | 
        
| void setRadius | ( | const double & | rad | ) |  [virtual] | 
        
| void setWidth | ( | double | w | ) |  [virtual] | 
        
double angle [protected]           | 
        
Color color [protected]           | 
        
obstacle color
double heightWall [protected]           | 
        
list<dGeomID> innerWalls [protected]           | 
        
int left [protected]           | 
        
bool obstacle_exists [protected]           | 
        
list<dGeomID> outerWalls [protected]           | 
        
double radius [protected]           | 
        
bool show_aabb [protected]           | 
        
double width [protected]           | 
        
double widthWall [protected]           | 
        
 1.4.7