77 class GNEDetectorE3EntryExit;
181 const std::string& suggestedName =
"",
bool wasSplit =
false,
bool allowDuplicateGeom =
false);
310 std::vector<GNEEdge*>
retrieveEdges(
bool onlySelected =
false);
315 std::vector<GNELane*>
retrieveLanes(
bool onlySelected =
false);
510 bool routeExists(
const std::string& routeID)
const;
516 bool flowExists(
const std::string& flowID)
const;
void setViewNet(GNEViewNet *viewNet)
Set the viewNet to be notified of network changes.
GNEJunction * splitEdge(GNEEdge *edge, const Position &pos, GNEUndoList *undoList, GNEJunction *newJunction=0)
split edge at position by inserting a new junction
void computeAndUpdate(OptionsCont &oc)
recompute the network and update lane geometries
std::vector< GNEJunction * > retrieveJunctions(bool onlySelected=false)
return all junctions
GUIGLObjectPopupMenu * getPopUpMenu(GUIMainWindow &app, GUISUMOAbstractView &parent)
Returns an own popup-menu.
ShapeContainer & getShapeContainer()
get shape container
std::vector< GNELane * > retrieveLanes(bool onlySelected=false)
return all lanes
GNEViewNet * myViewNet
The viewNet to be notofied of about changes.
SumoXMLTag
Numbers representing SUMO-XML - element names.
GNEEdge * retrieveEdge(const std::string &id, bool failHard=true)
get edge by id
IDSupplier myEdgeIDSupplier
bool flowExists(const std::string &flowID) const
Check if exist a flow with these ID.
void setAdditionalSaved(bool value)
set manually the flag of additionals
SUMORTree myGrid
the rtree which contains all GUIGlObjects (so named for historical reasons)
void joinSelectedJunctions(GNEUndoList *undoList)
FXApp * getApp()
get pointer to the main App
SUMOVehicleClass
Definition of vehicle classes to differ between different lane usage and authority types...
Storage for geometrical objects extended by mutexes.
void refreshElement(GUIGlObject *o)
refreshes boundary information for o and update
GNEAdditionals myAdditionals
map with the name and pointer to additional elements of net
The main window of the Netedit.
static const RGBColor selectedLaneColor
color of selected lane
bool revertLaneRestriction(GNELane *lane, GNEUndoList *undoList)
revert prevously restricted lane
A container for traffic light definitions and built programs.
Stores the information about how to visualize structures.
std::set< GUIGlID > getGlIDs(GUIGlObjectType type=GLO_MAX)
bool vehicleTypeExists(const std::string &vehicleTypeID) const
Check if exist a vehicle type with these ID.
Boundary getCenteringBoundary() const
Returns the boundary to which the view shall be centered in order to show the object.
void computeEverything(GNEApplicationWindow *window, bool force=false)
void reverseEdge(GNEEdge *edge, GNEUndoList *undoList)
reverse edge
void update()
notify myViewNet
void insertJunction(GNEJunction *junction)
inserts a single junction into the net and into the underlying netbuild-container ...
bool routeExists(const std::string &routeID) const
Check if exist a route with these ID.
void deleteConnection(GNEConnection *connection, GNEUndoList *undoList)
remove connection
void splitEdgesBidi(const std::set< GNEEdge * > &edges, const Position &pos, GNEUndoList *undoList)
split all edges at position by inserting one new junction
A NBNetBuilder extended by visualisation and editing capabilities.
This lane is powered by an underlying GNEEdge and basically knows how to draw itself.
GNEEdge * createEdge(GNEJunction *src, GNEJunction *dest, GNEEdge *tpl, GNEUndoList *undoList, const std::string &suggestedName="", bool wasSplit=false, bool allowDuplicateGeom=false)
creates a new edge (unless an edge with the same geometry already exists)
void addExplicitTurnaround(std::string id)
add edge id to the list of explicit turnarounds
GUIShapeContainer myShapeContainer
the container for additional pois and polygons
Storage for geometrical objects.
void insertEdge(GNEEdge *edge)
inserts a single edge into the net and into the underlying netbuild-container
void deleteEdge(GNEEdge *edge, GNEUndoList *undoList)
removes edge
A RT-tree for efficient storing of SUMO's GL-objects.
void remapEdge(GNEEdge *oldEdge, GNEJunction *from, GNEJunction *to, GNEUndoList *undoList, bool keepEndpoints=false)
GNEJunction * registerJunction(GNEJunction *junction)
registers a junction with GNENet containers
A class that stores a 2D geometrical boundary.
bool myNeedRecompute
whether the net needs recomputation
int getNumberOfAdditionals(SumoXMLTag type=SUMO_TAG_NOTHING) const
Returns the number of additionals of the net.
NBNetBuilder * myNetBuilder
The internal netbuilder.
const Boundary & getBoundary() const
returns the bounder of the network
bool restrictLane(SUMOVehicleClass vclass, GNELane *lane, GNEUndoList *undoList)
transform lane to restricted lane
bool myAdditionalsSaved
Flag to check if additionals must be saved.
void renameJunction(GNEJunction *junction, const std::string &newID)
updates the map and reserves new id
IDSupplier myJunctionIDSupplier
static const double Z_INITIALIZED
marker for whether the z-boundary is initialized
std::string getAdditionalID(SumoXMLTag type, const GNELane *lane, const double pos) const
Returns the additional close to the given position.
void updateAdditionalID(const std::string &oldID, GNEAdditional *additional)
update additional ID in container
bool removeRestrictedLane(SUMOVehicleClass vclass, GNEEdge &edge, GNEUndoList *undoList)
remove restricted lane
std::map< std::string, GNEJunction * > GNEJunctions
This object is responsible for drawing a shape and for supplying a a popup menu. Messages are routete...
GUIParameterTableWindow * getParameterWindow(GUIMainWindow &app, GUISUMOAbstractView &parent)
Returns an own parameter window.
void refreshAdditional(GNEAdditional *additional)
refreshes boundary information of an additional after a geometry update
A point in 2D or 3D with translation and scaling methods.
GNEJunction * retrieveJunction(const std::string &id, bool failHard=true)
get junction by id
GNEJunctions myJunctions
map with the name and pointer to junctions of net
GNELane * retrieveLane(const std::string &id, bool failHard=true)
get lane by id
Boundary myZBoundary
the z boundary (stored in the x-coordinate), values of 0 are ignored
void deleteLane(GNELane *lane, GNEUndoList *undoList)
removes lane
void deleteGeometryOrEdge(GNEEdge *edge, const Position &pos, GNEUndoList *undoList)
removes geometry when pos is close to a geometry node, deletes the whole edge otherwise ...
void computeJunction(GNEJunction *junction)
const GNECalibratorFlow & getGNECalibratorFlow(const std::string &calibratorFlowID) const
Returns a reference to a calibrator flow finding in all calibrators of net.
A lane area vehicles can halt at (netedit-version)
void initGNEConnections()
initialize GNEConnections
void save(OptionsCont &oc)
save the network
std::vector< GNEAttributeCarrier * > retrieveAttributeCarriers(const std::set< GUIGlID > &ids, GUIGlObjectType type)
get the attribute carriers based on GlIDs
void deleteCrossing(GNECrossing *crossing, GNEUndoList *undoList)
remove crossing
void moveSelection(const Position &moveSrc, const Position &moveDest)
move all selected junctions and edges
GNEJunction * createJunction(const Position &pos, GNEUndoList *undoList)
creates a new junction
SUMORTree & getVisualisationSpeedUp()
Returns the RTree used for visualisation speed-up.
std::set< std::string > myExplicitTurnarounds
list of edge ids for which turn-arounds must be added explicitly
std::vector< GNEAdditional * > getAdditionals(SumoXMLTag type=SUMO_TAG_NOTHING) const
get vector with additionals
const GNECalibratorRoute & getGNECalibratorRoute(const std::string &calibratorRouteID) const
Returns a reference to a calibrator route finding in all calibrators of net.
void replaceJunctionByGeometry(GNEJunction *junction, GNEUndoList *undoList)
replace the selected junction by geometry node(s) and merge the edges
A road/street connecting two junctions (netedit-version)
void reserveJunctionID(const std::string &id)
reserve junction ID (To avoid duplicates)
GNEAdditional * getAdditional(SumoXMLTag type, const std::string &id) const
Returns the named additional.
void drawGL(const GUIVisualizationSettings &s) const
Draws the object.
void deleteSingleJunction(GNEJunction *junction)
deletes a single junction
const Boundary & getZBoundary() const
Returns the Z boundary (stored in the x() coordinate) values of 0 do not affect the boundary...
std::vector< GNEEdge * > retrieveEdges(bool onlySelected=false)
return all edges
GNEEdge * registerEdge(GNEEdge *edge)
registers an edge with GNENet containers
GNENet(NBNetBuilder *netBuilder)
Constructor.
An Element which don't belongs to GNENet but has influency in the simulation.
Instance responsible for building networks.
void removeSolitaryJunctions(GNEUndoList *undoList)
removes junctions that have no edges
static const RGBColor selectedConnectionColor
color of selected connection
A storage for options typed value containers)
void initTLMap()
Initialises the tl-logic map and wrappers.
void renameEdge(GNEEdge *edge, const std::string &newID)
updates the map and reserves new id
void deleteJunction(GNEJunction *junction, GNEUndoList *undoList)
removes junction and all incident edges
bool isAdditionalsSaved() const
check if additional are saved
std::string generateVaporizerID() const
generate an ID for vaporizers
void initDetectors()
Initialises the detector wrappers.
void removeExplicitTurnaround(std::string id)
remove edge id from the list of explicit turnarounds
void saveJoined(OptionsCont &oc)
save log of joined junctions (and nothing else)
std::vector< GNEAdditional * > retrieveAdditionals(bool onlySelected=false)
return all additionals
void deleteAdditional(GNEAdditional *additional)
delete additional element previously inserted
GNEEdge * addReversedEdge(GNEEdge *edge, GNEUndoList *undoList)
add reversed edge
GNEEdges myEdges
map with the name and pointer to edges of net
std::map< std::pair< std::string, SumoXMLTag >, GNEAdditional * > GNEAdditionals
static const RGBColor selectionColor
color of selection
const GNECalibratorVehicleType & getGNECalibratorVehicleType(const std::string &calibratorVehicleTypeID) const
Returns a reference to a calibrator vehicle type finding in all calibrators of net.
void reserveEdgeID(const std::string &id)
reserve edge ID (To avoid duplicates)
void deleteSingleEdge(GNEEdge *edge)
deletes a single edge
std::map< std::string, GNEEdge * > GNEEdges
GNEAdditional * retrieveAdditional(const std::string &idl, bool hardFail=true) const
Returns the named additional.
void mergeJunctions(GNEJunction *moved, GNEJunction *target, GNEUndoList *undoList)
merge the given junctions edges between the given junctions will be deleted
bool netHasCrossings() const
check if net has crossings
void insertAdditional(GNEAdditional *additional, bool hardFail=true)
Insert a additional element previously created in GNEAdditionalHandler.
bool addSRestrictedLane(SUMOVehicleClass vclass, GNEEdge &edge, GNEUndoList *undoList)
add restricted lane to edge
A window containing a gl-object's parameter.
void changeEdgeEndpoints(GNEEdge *edge, const std::string &newSourceID, const std::string &newDestID)
modifies endpoins of the given edge
NBTrafficLightLogicCont & getTLLogicCont()
returns the tllcont of the underlying netbuilder
GNEViewNet * getViewNet() const
get view net
void saveAdditionals(const std::string &filename)
save additional elements of the network
void savePlain(OptionsCont &oc)
save plain xml representation of the network (and nothing else)
void requireRecompute()
inform the net about the need for recomputation
void duplicateLane(GNELane *lane, GNEUndoList *undoList)
duplicates lane
void finishMoveSelection(GNEUndoList *undoList)
register changes to junction and edge positions with the undoList
NBNetBuilder * getNetBuilder() const
get net builder