45 #ifdef CHECK_MEMORY_LEAKS
47 #endif // CHECK_MEMORY_LEAKS
60 :
MSE2Collector(id, usage, lane, startPos, detLength, haltingTimeThreshold,
61 haltingSpeedThreshold, jamDistThreshold) {}
80 myDetector(detector) {
82 Line l(v.front(), v.back());
88 int e = (int) myFullGeometry.size() - 1;
89 for (
int i = 0; i < e; ++i) {
90 const Position& f = myFullGeometry[i];
91 const Position& s = myFullGeometry[i + 1];
118 ret->
mkItem(
"length [m]",
false, myDetector.getEndPos() - myDetector.getStartPos());
119 ret->
mkItem(
"position [m]",
false, myDetector.getStartPos());
120 ret->
mkItem(
"lane",
false, myDetector.getLane()->getID());
122 ret->
mkItem(
"vehicles [#]",
true,
124 ret->
mkItem(
"occupancy [%]",
true,
126 ret->
mkItem(
"mean speed [m/s]",
true,
128 ret->
mkItem(
"mean vehicle length [m]",
true,
130 ret->
mkItem(
"jam number [#]",
true,
132 ret->
mkItem(
"max jam length [veh]",
true,
134 ret->
mkItem(
"max jam length [m]",
true,
136 ret->
mkItem(
"jam length sum [veh]",
true,
138 ret->
mkItem(
"jam length sum [m]",
true,
140 ret->
mkItem(
"started halts [#]",
true,
150 glPushName(getGlID());
152 glTranslated(0, 0, getType());
162 if (width * exaggeration > 1.0) {
165 int e = (int) myFullGeometry.size() - 1;
166 for (
int i = 0; i < e; ++i) {
171 drawName(getCenteringBoundary().getCenter(), s.
scale, s.
addName);
Boundary myBoundary
The detector's boundary.
unsigned getCurrentJamNumber() const
Returns the current number of jams.
GUIVisualizationTextSettings addName
unsigned getCurrentStartedHalts() const
Returns the length of all jams in meters.
An areal (along a single lane) detector.
SUMOReal getCurrentMeanLength() const
Returns the mean vehicle length of vehicles currently on the detector.
Stores the information about how to visualize structures.
~GUI_E2_ZS_Collector()
Destructor.
unsigned getCurrentMaxJamLengthInVehicles() const
Returns the length in vehicles of the currently largest jam.
static void drawBoxLines(const PositionVector &geom, const std::vector< SUMOReal > &rots, const std::vector< SUMOReal > &lengths, SUMOReal width, int cornerDetail=0, SUMOReal offset=0)
Draws thick lines.
std::vector< SUMOReal > myShapeRotations
A sequence of rotations in full-geometry mode.
PositionVector myFullGeometry
A sequence of positions in full-geometry mode.
Boundary getCenteringBoundary() const
Returns the boundary to which the view shall be centered in order to show the object.
GUI_E2_ZS_Collector & getDetector()
Returns the detector itself.
SUMOReal getCurrentJamLengthInMeters() const
Returns the length of all jams in meters.
GUI_E2_ZS_Collector(const std::string &id, DetectorUsage usage, MSLane *const lane, SUMOReal startPos, SUMOReal detLength, SUMOTime haltingTimeThreshold, SUMOReal haltingSpeedThreshold, SUMOReal jamDistThreshold)
Constructor.
void drawGL(const GUIVisualizationSettings &s) const
Draws the object.
SUMOReal distanceTo(const Position &p2) const
returns the euclidean distance in 3 dimension
virtual GUIDetectorWrapper * buildDetectorGUIRepresentation()
Returns the wrapper for this detector.
SUMOReal x() const
Returns the x-position.
A class that stores a 2D geometrical boundary.
const MSLane * getLane() const
Returns the lane the reminder works on.
GUIParameterTableWindow * getParameterWindow(GUIMainWindow &app, GUISUMOAbstractView &parent)
Returns an own parameter window.
SUMOReal scale
information about a lane's width (temporary, used for a single view)
GUIVisualizationSizeSettings addSize
MyWrapper(GUI_E2_ZS_Collector &detector)
Constructor.
A point in 2D or 3D with translation and scaling methods.
SUMOReal getStartPos() const
Returns the begin position of the detector.
std::vector< SUMOReal > myShapeLengths
A sequence of lengths in full-geometry mode.
SUMOReal getCurrentMeanSpeed() const
Returns the mean vehicle speed of vehicles currently on the detector.
Boundary & grow(SUMOReal by)
extends the boundary by the given amount
SUMOReal getCurrentOccupancy() const
Returns the curent detector occupancy.
SUMOReal y() const
Returns the y-position.
unsigned getCurrentVehicleNumber() const
Returns the number of vehicles currently on the detector.
The gui-version of the MS_E2_ZS_Collector.
const PositionVector & getShape() const
Returns this lane's shape.
static void drawLine(const Position &beg, SUMOReal rot, SUMOReal visLength)
Draws a thin line.
SUMOReal getCurrentMaxJamLengthInMeters() const
Returns the length in meters of the currently largest jam.
unsigned getCurrentJamLengthInVehicles() const
Returns the length of all jams in vehicles.
void mkItem(const char *name, bool dynamic, ValueSource< unsigned > *src)
Adds a row which obtains its value from an unsigned-ValueSource.
void closeBuilding()
Closes the building of the table.
Representation of a lane in the micro simulation.
A window containing a gl-object's parameter.
PositionVector getSubpart(SUMOReal beginOffset, SUMOReal endOffset) const
SUMOReal getExaggeration(const GUIVisualizationSettings &s) const
return the drawing size including exaggeration and constantSize values
SUMOReal getEndPos() const
Returns the end position of the detector.