51 static const std::vector<std::pair<double, double> >&
getCircleCoords();
63 static void pushName(
unsigned int name);
125 double visLength,
double width,
double offset = 0);
139 double rot,
double visLength,
double width);
155 const std::vector<double>& rots,
const std::vector<double>& lengths,
156 double width,
int cornerDetail = 0,
double offset = 0);
172 const std::vector<double>& rots,
const std::vector<double>& lengths,
173 const std::vector<RGBColor>& cols,
174 double width,
int cornerDetail = 0,
double offset = 0);
190 const std::vector<double>& rots,
const std::vector<double>& lengths,
228 double rot,
double visLength);
277 double beg,
double end);
286 static void drawFilledCircle(
const double widradiusth,
const int steps = 8);
298 double beg,
double end);
324 int steps,
double beg,
double end);
336 double tWidth,
const double extraOffset = 0);
345 static double getTextWidth(
const std::string& text,
double size);
354 const double layer,
const double size,
356 const double angle = 0,
362 const std::string& text,
const Position& pos,
364 const double angle = 0,
365 const double layer = 2048,
366 const int align = 0);
370 const double layer,
const double size,
374 const double angle = 0,
375 const double relBorder = 0.05,
376 const double relMargin = 0.5,
377 const int align = 0);
385 const std::vector<double>& rots,
386 const std::vector<double>& lengths,
387 double length,
double spacing,
double halfWidth,
388 double offset,
bool lessDetail);
392 const std::vector<double>& rots,
393 const std::vector<double>& lengths,
394 double maxLength,
double spacing,
395 double halfWidth,
bool cl,
bool cr,
bool lefthand,
double scale);
407 static void setGL2PS(
bool active =
true);
411 const double width,
const double length,
const bool vehicle);
415 static bool rightTurn(
double angle1,
double angle2);
A class that stores a 2D geometrical boundary.
Some methods which help to draw certain geometrical objects in openGL.
static void drawFilledPoly(const PositionVector &v, bool close)
Draws a filled polygon described by the list of points.
static void drawFilledPolyTesselated(const PositionVector &v, bool close)
Draws a filled polygon described by the list of points.
static void drawTextBox(const std::string &text, const Position &pos, const double layer, const double size, const RGBColor &txtColor=RGBColor::BLACK, const RGBColor &bgColor=RGBColor::WHITE, const RGBColor &borderColor=RGBColor::BLACK, const double angle=0, const double relBorder=0.05, const double relMargin=0.5, const int align=0)
draw Text box with given parameters
static void resetVertexCounter()
reset vertex counter
static std::vector< std::pair< double, double > > myCircleCoords
Storage for precomputed sin/cos-values describing a circle.
static void drawLine(const Position &beg, double rot, double visLength)
Draws a thin line.
static void setColor(const RGBColor &c)
Sets the gl-color to this value.
static void drawOutlineCircle(double radius, double iRadius, int steps=8)
Draws an unfilled circle around (0,0)
static struct FONScontext * myFont
Font context.
static void drawTriangleAtEnd(const Position &p1, const Position &p2, double tLength, double tWidth, const double extraOffset=0)
Draws a triangle at the end of the given line.
static void drawTextAtEnd(const std::string &text, const PositionVector &shape, double x, const GUIVisualizationTextSettings &settings, const double scale)
draw text and the end of shape
static void resetFont()
to be called when the font context is invalidated
static void pushName(unsigned int name)
push Name
static void checkCounterMatrix()
check counter matrix (for debug purposes)
static void drawFilledCircle(const double widradiusth, const int steps=8)
Draws a filled circle around (0,0)
static const std::vector< RGBColor > & getDottedcontourColors(const int size)
get dotted contour colors (black and white). Vector will be automatically increased if current size i...
static std::vector< RGBColor > myDottedcontourColors
static vector with a list of alternated black/white colors (used for contours)
static int angleLookup(double angleDeg)
normalize angle for lookup in myCircleCoords
static double getTextWidth(const std::string &text, double size)
get required width of text
static int myMatrixCounter
matrix counter (for debug purposes)
static void popMatrix()
pop matrix
static void drawBoxLines(const PositionVector &geom, const std::vector< double > &rots, const std::vector< double > &lengths, double width, int cornerDetail=0, double offset=0)
Draws thick lines.
static int myMatrixCounterDebug
matrix counter (for debug purposes)
static void drawBoundary(const GUIVisualizationSettings &s, const Boundary &b)
Draw a boundary (used for debugging)
static RGBColor getColor()
gets the gl-color
static int getMatrixCounter()
get matrix counter
static void drawRectangle(const Position ¢er, const double width, const double height)
Draws a rectangle line.
static const std::vector< std::pair< double, double > > & getCircleCoords()
Storage for precomputed sin/cos-values describing a circle.
static void drawBoxLine(const Position &beg, double rot, double visLength, double width, double offset=0)
Draws a thick line.
static void checkCounterName()
check counter name (for debug purposes)
static void debugVertices(const PositionVector &shape, const GUIVisualizationTextSettings &settings, double scale, double layer=1024)
draw vertex numbers for the given shape (in a random color)
static void drawFilledCircleDetailled(const GUIVisualizationSettings::Detail d, const double radius)
Draws a filled circle around (0,0) depending of level of detail.
static void popName()
pop Name
static bool rightTurn(double angle1, double angle2)
whether the road makes a right turn (or goes straight)
static int myNameCounter
name counter
static void pushMatrix()
push matrix
static void setGL2PS(bool active=true)
set GL2PS
static int getVertexCounter()
get vertex counter
static void drawInverseMarkings(const PositionVector &geom, const std::vector< double > &rots, const std::vector< double > &lengths, double maxLength, double spacing, double halfWidth, bool cl, bool cr, bool lefthand, double scale)
@bried draw the space between markings (in road color)
static bool myGL2PSActive
whether we are currently rendering for gl2ps
static void drawText(const std::string &text, const Position &pos, const double layer, const double size, const RGBColor &col=RGBColor::BLACK, const double angle=0, const int align=0, double width=-1)
static void drawSpaceOccupancies(const double exaggeration, const Position &pos, const double rotation, const double width, const double length, const bool vehicle)
draw
static bool initFont()
init myFont
static int myVertexCounter
matrix counter (for debug purposes)
static void drawTextSettings(const GUIVisualizationTextSettings &settings, const std::string &text, const Position &pos, const double scale, const double angle=0, const double layer=2048, const int align=0)
static void drawCrossTies(const PositionVector &geom, const std::vector< double > &rots, const std::vector< double > &lengths, double length, double spacing, double halfWidth, double offset, bool lessDetail)
draw crossties for railroads or pedestrian crossings
static void resetMatrixCounter()
reset matrix counter
Stores the information about how to visualize structures.
A point in 2D or 3D with translation and scaling methods.
static const RGBColor WHITE
static const RGBColor BLACK
struct FONScontext FONScontext