79 double visLength,
double width,
double offset = 0);
93 double rot,
double visLength,
double width);
109 const std::vector<double>& rots,
const std::vector<double>& lengths,
110 double width,
int cornerDetail = 0,
double offset = 0);
126 const std::vector<double>& rots,
const std::vector<double>& lengths,
127 const std::vector<RGBColor>& cols,
128 double width,
int cornerDetail = 0,
double offset = 0);
144 const std::vector<double>& rots,
const std::vector<double>& lengths,
182 double rot,
double visLength);
235 double beg,
double end);
261 int steps,
double beg,
double end);
272 double tLength,
double tWidth);
287 const double layer,
const double size,
289 const double angle = 0,
295 const std::string& text,
const Position& pos,
297 const double angle = 0,
298 const double layer = 2048,
299 const int align = 0);
303 const double layer,
const double size,
307 const double angle = 0,
308 const double relBorder = 0.05,
309 const double relMargin = 0.5,
310 const int align = 0);
318 const std::vector<double>& rots,
319 const std::vector<double>& lengths,
320 double length,
double spacing,
double halfWidth,
bool drawForRectangleSelection);
340 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 debugVertices(const PositionVector &shape, double size, double layer=256)
draw vertex numbers for the given shape (in a random color)
static void drawBoundary(const Boundary &b)
Draw a boundary (used for debugging)
static void drawFilledPolyTesselated(const PositionVector &v, bool close)
Draws a filled polygon described by the list of points.
static void drawCrossTies(const PositionVector &geom, const std::vector< double > &rots, const std::vector< double > &lengths, double length, double spacing, double halfWidth, bool drawForRectangleSelection)
draw crossties for railroads or pedestrian crossings
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 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 drawFilledCircle(double width, int steps=8)
Draws a filled circle around (0,0)
static struct FONScontext * myFont
Font context.
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 drawOutlineCircle(double width, double iwidth, int steps=8)
Draws an unfilled 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 contourns)
static int angleLookup(double angleDeg)
normalize angle for lookup in myCircleCoords
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 RGBColor getColor()
gets the gl-color
static void drawTriangleAtEnd(const Position &p1, const Position &p2, double tLength, double tWidth)
Draws a triangle at the end of the given line.
static void drawBoxLine(const Position &beg, double rot, double visLength, double width, double offset=0)
Draws a thick line.
static bool rightTurn(double angle1, double angle2)
whether the road makes a right turn (or goes straight)
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 bool initFont()
init myFont
static void setGL2PS(bool active=true)
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)
A point in 2D or 3D with translation and scaling methods.
static const RGBColor WHITE
static const RGBColor BLACK
struct FONScontext FONScontext