211 const std::vector<GNELane*>&
getLanes();
void addLane(GNELane *lane, const NBEdge::Lane &laneAttrs)
increase number of lanes by one use the given attributes and restore the GNELane
void copyTemplate(GNEEdge *tpl, GNEUndoList *undolist)
copy edge attributes from tpl
const std::vector< GNEAdditional * > & getAdditionalChilds() const
return list of additionals associated with this edge
void remakeGNEConnections()
remake connections
void addConnection(NBEdge::Connection nbCon, GNEConnection *con)
adds a connection
A structure which describes a connection between edges or lanes.
void setNumLanes(int numLanes, GNEUndoList *undoList)
changes the number of lanes. When reducing the number of lanes, higher-numbered lanes are removed fir...
bool myAmResponsible
whether we are responsible for deleting myNBNode
void drawGL(const GUIVisualizationSettings &s) const
Draws the object.
Boundary getCenteringBoundary() const
Returns the boundary to which the view shall be centered in order to show the object.
SUMOVehicleClass
Definition of vehicle classes to differ between different lane usage and authority types...
std::string myConnectionStatus
modification status of the connections
PositionVector myOrigShape
restore point for undo
void setMicrosimID(const std::string &newID)
override to also set lane ids
std::set< GUIGlID > getLaneGlIDs()
returns GLIDs of all lanes
Stores the information about how to visualize structures.
The representation of a single edge during network building.
Position moveGeometry(const Position &oldPos, const Position &newPos, bool relative=false)
change the edge geometry It is up to the Edge to decide whether an new geometry node should be genera...
std::vector< GNELane * > LaneVector
Definition of the lane's vector.
bool hasRestrictedLane(SUMOVehicleClass vclass) const
check if edge has a restricted lane
A NBNetBuilder extended by visualisation and editing capabilities.
This lane is powered by an underlying GNEEdge and basically knows how to draw itself.
void clearGNEConnections()
clear current connections
SumoXMLAttr
Numbers representing SUMO-XML - attributes.
const std::vector< GNEConnection * > & getGNEConnections()
returns a reference to the GNEConnection vector
An Element wich group additionalSet elements.
bool myWasSplit
whether this edge was created from a split
A class that stores a 2D geometrical boundary.
bool removeAdditionalGeometrySet(GNEAdditionalSet *additionalSet)
remove GNEAdditionalSet from this edge
const std::vector< GNEAdditionalSet * > & getAdditionalSets()
return list of additionalSets associated with this edge
virtual GUIParameterTableWindow * getParameterWindow(GUIMainWindow &app, GUISUMOAbstractView &parent)
Returns an own parameter window.
An (internal) definition of a single lane of an edge.
std::string getAttribute(SumoXMLAttr key) const
void addAdditionalChild(GNEAdditional *additional)
add additional child to this edge
A point in 2D or 3D with translation and scaling methods.
AdditionalVector myAdditionals
list with the additonals vinculated with this edge
std::vector< GNEAdditionalSet * > AdditionalSetVector
Definition of the additionalSets vector.
GNEJunction * getGNEJunctionSource() const
returns the source-junction
void removeLane(GNELane *lane)
the number of lanes by one. argument is only used to increase robustness (assertions) ...
virtual GUIGLObjectPopupMenu * getPopUpMenu(GUIMainWindow &app, GUISUMOAbstractView &parent)
Returns an own popup-menu.
void setGeometry(PositionVector geom, bool inner)
update edge geometry and inform the lanes
GNEEdge(NBEdge &nbe, GNENet *net, bool wasSplit=false, bool loaded=false)
Constructor.
A road/street connecting two junctions (netedit-version)
ConnectionVector myGNEConnections
vector with the connections of this edge
void setResponsible(bool newVal)
set responsibility for deleting internal strctures
GNEJunction * getGNEJunctionDest() const
returns the destination-junction
const std::vector< GNELane * > & getLanes()
returns a reference to the lane vector
bool deleteGeometry(const Position &pos, GNEUndoList *undoList)
deletes the closest geometry node within SNAP_RADIUS.
An Element which don't belongs to GNENet but has influency in the simulation.
void updateJunctionPosition(GNEJunction *junction, const Position &origPos)
update edge geometry after junction move
void updateGeometry()
update pre-computed geometry information
std::vector< GNEAdditional * > AdditionalVector
Definition of the additionals vector.
static const SUMOReal SNAP_RADIUS
bool isValid(SumoXMLAttr key, const std::string &value)
LaneVector myLanes
vectgor with the lanes of this edge
void removeConnection(NBEdge::Connection nbCon)
removes a connection
bool addAdditionalSet(GNEAdditionalSet *additionalSet)
add GNEAdditionalSet to this edge
void setEndpoint(Position pos, GNEUndoList *undoList)
makes pos the new geometry endpoint at the appropriate end
void removeAdditionalChild(GNEAdditional *additional)
remove additional child from this edge
GNEConnection * retrieveConnection(int fromLane, NBEdge *to, int toLane)
get connection
AdditionalSetVector myAdditionalSets
list with the additonalSets vinculated with this edge
NBEdge & myNBEdge
the underlying NBEdge
NBEdge * getNBEdge()
returns the internal NBEdge
std::vector< GNEConnection * > ConnectionVector
Definition of the connection's vector.
Boundary getBoundary() const
Returns the street's geometry.
void setAttribute(SumoXMLAttr key, const std::string &value, GNEUndoList *undoList)
void resetEndpoint(const Position &pos, GNEUndoList *undoList)
restores the endpoint to the junction position at the appropriate end
A window containing a gl-object's parameter.
bool wasSplit()
whether this edge was created from a split
Position getSplitPos(const Position &clickPos)
static bool changeGeometry(PositionVector &geom, const std::string &id, const Position &oldPos, const Position &newPos, bool relative=false, bool moveEndPoints=false)
GNEEdge & operator=(const GNEEdge &s)
invalidated assignment operator
void remakeIncomingGNEConnections()
remake connections of all incoming edges