37 #include <osg/Geometry>
69 #ifdef CHECK_MEMORY_LEAKS
71 #endif // CHECK_MEMORY_LEAKS
89 for (
int i = 0; i < e; ++i) {
106 return (&
myLane) == (&lane);
126 glTranslated(end.
x(), end.
y(), 0);
127 glRotated(rot, 0, 0, 1);
128 for (
int i = noLinks; --i >= 0;) {
153 glTranslated(end.
x(), end.
y(), 0);
154 glRotated(rot, 0, 0, 1);
155 for (
int i = noLinks; --i >= 0;) {
180 glColor3d(0.5, 0.5, 0.5);
182 glTranslated(end.
x(), end.
y(), 0);
183 glRotated(rot, 0, 0, 1);
198 glTranslated(end.
x(), end.
y(), 0);
199 glRotated(rot, 0, 0, 1);
200 for (
unsigned int i = 0; i < noLinks; ++i) {
235 glColor3d(.7, .7, 0);
244 glColor3d(.2, .2, .2);
247 glColor3d(.5, .5, .5);
280 glTranslated(end.
x(), end.
y(), 0);
281 glRotated(rot, 0, 0, 1);
282 for (
unsigned int i = 0; i < noLinks; ++i) {
331 for (
unsigned int i = 0; i < noLinks; ++i) {
334 if (connected == 0) {
359 glColor3d(.2, .2, .2);
362 glColor3d(.5, .5, .5);
372 glVertex2f(p1.
x(), p1.
y());
373 glVertex2f(p2.
x(), p2.
y());
384 bool mustDrawMarkings =
false;
407 const SUMOReal halfRailWidth = 0.725;
410 glTranslated(0, 0, .1);
419 mustDrawMarkings = !isInternal;
426 if (!isInternal && drawDetails) {
430 glTranslated(0, 0, .2);
440 glTranslated(0, 0, .1);
450 if (mustDrawMarkings && drawDetails) {
457 for (MSLane::VehCont::const_iterator v = vehicles.begin(); v != vehicles.end(); ++v) {
479 for (
int i = 0; i < e; ++i) {
486 glVertex2d(-mw, -t - 3.);
514 glTranslated(0, 0, 0.1);
516 for (
int i = 0; i < e; ++i) {
523 glVertex2d(-1, -t - 0.3);
524 glVertex2d(1.0, -t - 0.3);
548 new FXMenuSeparator(ret);
595 const std::vector<SUMOReal>&
601 const std::vector<SUMOReal>&
679 switch (activeScheme) {
734 osg::Vec4ubArray* colors =
dynamic_cast<osg::Vec4ubArray*
>(myGeom->getColorArray());
736 myGeom->setColorArray(colors);