77 class GNEDetectorE3EntryExit;
176 const std::string& suggestedName =
"",
bool wasSplit =
false,
bool allowDuplicateGeom =
false);
266 std::vector<GNEEdge*>
retrieveEdges(
bool onlySelected =
false);
271 std::vector<GNELane*>
retrieveLanes(
bool onlySelected =
false);
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
SumoXMLTag
Numbers representing SUMO-XML - element names.
GNEEdge * retrieveEdge(const std::string &id, bool failHard=true)
get edge by id
IDSupplier myEdgeIDSupplier
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
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
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)
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 myUpdateTarget
void insertJunction(GNEJunction *junction)
inserts a single junction into the net and into the underlying netbuild-container ...
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
An Element wich group additionalSet elements.
void deleteEdge(GNEEdge *edge, GNEUndoList *undoList)
removes edge
A RT-tree for efficient storing of SUMO's GL-objects.
std::string getAdditionalID(SumoXMLTag type, const GNELane *lane, const SUMOReal pos) const
Returns the additional close to the given position.
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
NBNetBuilder * myNetBuilder
The internal netbuilder.
const Boundary & getBoundary() const
returns the bounder of the network
void renameJunction(GNEJunction *junction, const std::string &newID)
updates the map and reserves new id
IDSupplier myJunctionIDSupplier
void updateAdditionalID(const std::string &oldID, GNEAdditional *additional)
update additional ID in container
std::map< std::string, GNEJunction * > GNEJunctions
FXWindow * myUpdateTarget
The window to be notofied of about changes.
GUIParameterTableWindow * getParameterWindow(GUIMainWindow &app, GUISUMOAbstractView &parent)
Returns an own parameter window.
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 ...
std::vector< GNEAdditional * > getAdditionals(SumoXMLTag type=SUMO_TAG_NOTHING)
get vector with additionals
void computeJunction(GNEJunction *junction)
A lane area vehicles can halt at (netedit-version)
int getNumberOfAdditionals(SumoXMLTag type=SUMO_TAG_NOTHING)
Returns the number of additionals of the net.
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 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
void replaceJunctionByGeometry(GNEJunction *junction, GNEUndoList *undoList)
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)
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
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)
void deleteAdditional(GNEAdditional *additional)
delete additional element previously inserted
GNEEdge * addReversedEdge(GNEEdge *edge, GNEUndoList *undoList)
add reversed edge
void setUpdateTarget(FXWindow *updateTarget)
Set the target to be notified of network changes.
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
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
void mergeJunctions(GNEJunction *moved, GNEJunction *target, GNEUndoList *undoList)
merge the given junctions edges between the given junctions will be deleted
void insertAdditional(GNEAdditional *additional, bool hardFail=true)
Insert a additional element previously created in GNEAdditionalHandler.
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
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
static const SUMOReal Z_INITIALIZED
marker for whether the z-boundary is initialized
void duplicateLane(GNELane *lane, GNEUndoList *undoList)
duplicates lane
void finishMoveSelection(GNEUndoList *undoList)
register changes to junction and edge positions with the undoList