Eclipse SUMO - Simulation of Urban MObility
GUIBusStop.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3 // Copyright (C) 2001-2020 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials are made available under the
5 // terms of the Eclipse Public License 2.0 which is available at
6 // https://www.eclipse.org/legal/epl-2.0/
7 // This Source Code may also be made available under the following Secondary
8 // Licenses when the conditions for such availability set forth in the Eclipse
9 // Public License 2.0 are satisfied: GNU General Public License, version 2
10 // or later which is available at
11 // https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
12 // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
13 /****************************************************************************/
20 // A lane area vehicles can halt at (gui-version)
21 /****************************************************************************/
22 #pragma once
23 #include <config.h>
24 
25 #include <vector>
26 #include <string>
27 #include <utils/common/Command.h>
34 #include <utils/geom/Position.h>
35 #include <gui/GUIManipulator.h>
36 
37 
38 // ===========================================================================
39 // class declarations
40 // ===========================================================================
41 class MSNet;
42 class MSLane;
43 class GUIManipulator;
44 
45 
46 // ===========================================================================
47 // class definitions
48 // ===========================================================================
61 public:
70  GUIBusStop(const std::string& id,
71  const std::vector<std::string>& lines, MSLane& lane,
72  double frompos, double topos, const std::string name,
73  int personCapacity, double parkingLength);
74 
75 
77  ~GUIBusStop();
78 
79 
81  bool addAccess(MSLane* lane, const double pos, const double length);
82 
84 
85 
94  GUISUMOAbstractView& parent);
95 
96 
107  GUISUMOAbstractView& parent);
108 
109 
116 
118  const std::string getOptionalName() const;
119 
124  void drawGL(const GUIVisualizationSettings& s) const;
125 
131 
132 
133 private:
135  std::vector<double> myFGShapeRotations;
136 
138  std::vector<double> myFGShapeLengths;
139 
142 
145 
147  double myFGSignRot;
148 
150  double myWidth;
151 
154 
156  mutable double myPersonExaggeration;
157 
158 
159 };
A class that stores a 2D geometrical boundary.
Definition: Boundary.h:39
A lane area vehicles can halt at (gui-version)
Definition: GUIBusStop.h:60
Position myFGSignPos
The position of the sign.
Definition: GUIBusStop.h:144
double myFGSignRot
The rotation of the sign.
Definition: GUIBusStop.h:147
void drawGL(const GUIVisualizationSettings &s) const
Draws the object.
Definition: GUIBusStop.cpp:135
double myPersonExaggeration
The current person exaggeration.
Definition: GUIBusStop.h:156
GUIGLObjectPopupMenu * getPopUpMenu(GUIMainWindow &app, GUISUMOAbstractView &parent)
Returns an own popup-menu.
Definition: GUIBusStop.cpp:100
~GUIBusStop()
Destructor.
Definition: GUIBusStop.cpp:86
std::vector< double > myFGShapeLengths
The lengths of the shape parts.
Definition: GUIBusStop.h:138
PositionVector myFGShape
The shape.
Definition: GUIBusStop.h:141
bool addAccess(MSLane *lane, const double pos, const double length)
adds an access point to this stop
Definition: GUIBusStop.cpp:90
GUIBusStop(const std::string &id, const std::vector< std::string > &lines, MSLane &lane, double frompos, double topos, const std::string name, int personCapacity, double parkingLength)
Constructor.
Definition: GUIBusStop.cpp:54
GUIParameterTableWindow * getParameterWindow(GUIMainWindow &app, GUISUMOAbstractView &parent)
Returns an own parameter window.
Definition: GUIBusStop.cpp:114
double myWidth
The visual width of the stoppling place.
Definition: GUIBusStop.h:150
std::vector< double > myFGShapeRotations
The rotations of the shape parts.
Definition: GUIBusStop.h:135
const std::string getOptionalName() const
Returns the street name.
Definition: GUIBusStop.cpp:208
Position getWaitPosition(MSTransportable *person) const
Returns the next free waiting place for pedestrians / containers.
Definition: GUIBusStop.cpp:213
PositionVector myAccessCoords
The coordinates of access points.
Definition: GUIBusStop.h:153
Boundary getCenteringBoundary() const
Returns the boundary to which the view shall be centered in order to show the object.
Definition: GUIBusStop.cpp:198
The popup menu of a globject.
A window containing a gl-object's parameter.
Stores the information about how to visualize structures.
Representation of a lane in the micro simulation.
Definition: MSLane.h:82
The simulated network and simulation perfomer.
Definition: MSNet.h:89
A lane area vehicles can halt at.
A point in 2D or 3D with translation and scaling methods.
Definition: Position.h:36
A list of positions.