93 GUINet& net, FXGLVisual* glVis,
112 for (std::vector<std::string>::const_iterator i = names.begin(); i != names.end(); ++i) {
122 "\tLocate Junction\tLocate a junction within the network.",
124 ICON_ABOVE_TEXT | FRAME_THICK | FRAME_RAISED);
127 "\tLocate Street\tLocate a street within the network.",
129 ICON_ABOVE_TEXT | FRAME_THICK | FRAME_RAISED);
133 "\tLocate Vehicle\tLocate a vehicle within the network.",
135 ICON_ABOVE_TEXT | FRAME_THICK | FRAME_RAISED);
140 "\tLocate Vehicle\tLocate a person within the network.",
142 ICON_ABOVE_TEXT | FRAME_THICK | FRAME_RAISED);
147 "\tLocate TLS\tLocate a tls within the network.",
149 ICON_ABOVE_TEXT | FRAME_THICK | FRAME_RAISED);
152 "\tLocate Additional\tLocate an additional structure within the network.",
154 ICON_ABOVE_TEXT | FRAME_THICK | FRAME_RAISED);
157 "\tLocate PoI\tLocate a PoI within the network.",
159 ICON_ABOVE_TEXT | FRAME_THICK | FRAME_RAISED);
162 "\tLocate Polygon\tLocate a Polygon within the network.",
164 ICON_ABOVE_TEXT | FRAME_THICK | FRAME_RAISED);
189 glMatrixMode(GL_MODELVIEW);
191 glDisable(GL_TEXTURE_2D);
192 glDisable(GL_ALPHA_TEST);
194 glEnable(GL_DEPTH_TEST);
205 glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
206 const float minB[2] = { (float)bound.
xmin(), (float)bound.
ymin() };
207 const float maxB[2] = { (float)bound.
xmax(), (float)bound.
ymax() };
209 glEnable(GL_POLYGON_OFFSET_FILL);
210 glEnable(GL_POLYGON_OFFSET_LINE);
214 glTranslated(0, 0, -.01);
220 glTranslated(0, 0, .01);
257 const std::vector<MSTrafficLightLogic*>& logics = tlsControl.
getAllLogics();
259 double minDist = std::numeric_limits<double>::infinity();
260 for (std::vector<MSTrafficLightLogic*>::const_iterator i = logics.begin(); i != logics.end(); ++i) {
266 if (lanes.size() > 0) {
267 const Position& endPos = lanes[0]->getShape().back();
277 const std::vector<MSTrafficLightLogic*> logics = vars.
getAllLogics();
278 if (logics.size() > 1) {
280 for (
int i = 0; i < (int)logics.size() - 1; ++i) {
281 if (minTll->
getProgramID() == logics[i]->getProgramID()) {
286 if (l == logics[0]) {
309 return dynamic_cast<GUILane*
>(o);
356 if (myCurrentVideo == 0) {
370 if (myCurrentVideo != 0) {
371 delete myCurrentVideo;
382 if (myCurrentVideo != 0) {
384 if (error !=
"" && error !=
"video") {
void paintGLGrid()
paints a grid
double ymin() const
Returns minimum y-coordinate.
virtual void buildViewToolBars(GUIGlChildWindow &)
builds the view toolbars
double xmax() const
Returns maximum x-coordinate.
GUICompleteSchemeStorage gSchemeStorage
MSEdge & getEdge() const
Returns the lane's edge.
long onCmdCloseLane(FXObject *, FXSelector, void *)
interaction with the simulation
double scale
information about a lane's width (temporary, used for a single view)
Storage for all programs of a single tls.
bool setColorScheme(const std::string &name)
set color scheme
void unlock()
release exclusive access to the simulation state
SUMORTree * myGrid
The visualization speed-up.
void switchTo(const std::string &id, const std::string &programID)
Switches the named (id) tls to the named (programID) program.
const std::vector< std::string > & getNames() const
Returns a list of stored settings names.
void closeTraffic(bool rebuildAllowed=true)
close this lane for traffic
bool gaming
whether the application is in gaming mode or not
void changeStepAndDuration(MSTLLogicControl &tlcontrol, SUMOTime simStep, int step, SUMOTime stepDuration)
Changes the current phase and her duration.
const double SUMO_const_laneWidth
GUIMainWindow * myApp
The application.
void writeFrame(uint8_t *buffer)
bool isActive(const MSTrafficLightLogic *tl) const
Returns whether the given tls program is the currently active for his tls.
static MSNet * getInstance()
Returns the pointer to the unique instance of MSNet (singleton).
void lock()
grant exclusive access to the simulation state
const std::string & getID() const
Returns the id.
Locate polygons - button.
GUIDialog_ViewSettings * myVisualizationChanger
Visualization changer.
#define UNUSED_PARAMETER(x)
A class that stores a 2D geometrical boundary.
#define WRITE_WARNING(msg)
A fixed traffic light logic.
const LaneVector & getLanesAt(int i) const
Returns the list of lanes that are controlled by the signals at the given position.
std::map< const GUIGlObject *, int > myAdditionallyDrawn
List of objects for which GUIGlObject::drawGLAdditional is called.
Representation of a lane in the micro simulation (gui-version)
A class that stores and controls tls and switching of their programs.
A road/street connecting two junctions (gui-version)
SUMOTime duration
The duration of the phase.
std::vector< MSTrafficLightLogic * > getAllLogics() const
std::string name
The name of this setting.
void setCurrentScheme(const std::string &)
Sets the named scheme as the current.
const std::string & getProgramID() const
Returns this tl-logic's id.
static GUINet * getGUIInstance()
Returns the pointer to the unique instance of GUINet (singleton).
A point in 2D or 3D with translation and scaling methods.
long onCmdAddRerouter(FXObject *, FXSelector, void *)
MSTLLogicControl & getTLSControl()
Returns the tls logics control.
long onCmdCloseEdge(FXObject *, FXSelector, void *)
FXComboBox & getColoringSchemesCombo()
static GUIGlObjectStorage gIDStorage
A single static instance of this class.
GUIVisualizationSettings & get(const std::string &name)
Returns the named scheme.
bool isGaming() const
return whether the gui is in gaming mode
SUMOTime getCurrentTimeStep() const
Returns the current simulation step.
double xmin() const
Returns minimum x-coordinate.
void onGamingClick(Position pos)
handle mouse click in gaming mode
void startTrack(int id)
Starts vehicle tracking.
virtual void checkSnapshots()
Checks whether it is time for a snapshot.
FXDEFMAP(GUIViewTraffic) GUIViewTrafficMap[]
bool myUseToolTips
use tool tips
std::string makeSnapshot(const std::string &destFile)
Takes a snapshots and writes it into the given file.
void checkSnapshots()
Checks whether it is time for a snapshot.
SUMOTime getCurrentTimeStep() const
get the current simulation time
A single child window which contains a view of the simulation area.
void endSnapshot()
Ends a video snapshot.
FXbool makeCurrent()
A reimplementation due to some internal reasons.
std::vector< MSLane * > LaneVector
Definition of the list of arrival lanes subjected to this tls.
double m2p(double meter) const
meter-to-pixels conversion method
GUIVisualizationSettings * myVisualizationSettings
visualization settings
A MSNet extended by some values for usage within the gui.
void saveFrame(const std::string &destFile, FXColor *buf)
Adds a frame to a video snapshot which will be initialized if neccessary.
virtual ~GUIViewTraffic()
destructor
int doPaintGL(int mode, const Boundary &bound)
paint GL
bool contains(const std::string &name) const
Returns the information whether a setting with the given name is stored.
static const GUIGlID INVALID_ID
std::string getCurrentScheme() const
Returns the name of the currently chosen scheme.
virtual double getDelay() const
Returns the delay (should be overwritten by subclasses if applicable)
bool showGrid
Information whether a grid shall be shown.
void drawDecals()
Draws the stored decals.
Locate addtional structure - button.
GUIGlID getGlID() const
Returns the numerical id of the object.
The parent class for traffic light logics.
double distanceTo(const Position &p2) const
returns the euclidean distance in 3 dimension
Locate junction - button.
void unblockObject(GUIGlID id)
Marks an object as unblocked.
TLSLogicVariants & get(const std::string &id) const
Returns the variants of a named tls.
GUIGlID getObjectUnderCursor()
returns the id of the object under the cursor using GL_SELECT
GUIGlID getTrackedID() const
Returns the id of the tracked vehicle (-1 if none)
double ymax() const
Returns maximum y-coordinate.
GUIGlObject * getObjectBlocking(GUIGlID id)
Returns the object from the container locking it.
virtual int Search(const float a_min[2], const float a_max[2], const GUIVisualizationSettings &c) const
Find all within search rectangle.
std::vector< MSTrafficLightLogic * > getAllLogics() const
Returns a vector which contains all logics.
static FXIcon * getIcon(GUIIcon which)
returns a icon previously defined in the enum GUIIcon
const MSPhaseDefinition & getPhase(int givenstep) const
Returns the definition of the phase from the given position within the plan.
void stopTrack()
Stops vehicle tracking.
GUILane * getLaneUnderCursor()
FXPopup * getLocatorPopup()