286 void addConnection(
unsigned int fromLane,
const std::string& toEdgeID,
unsigned int toLane,
bool mayPass);
289 void removeConnection(
unsigned int fromLane,
const std::string& toEdgeID,
unsigned int toLane);
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
bool myAmResponsible
whether we are responsible for deleting myNBNode
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()
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 without registering undo/redo It is up to the Edge to decide whether an new ...
std::vector< GNELane * > LaneVector
Definition of the lane's positions vector.
std::string getAttribute(SumoXMLAttr key) const
A NBNetBuilder extended by visualisation and editing capabilities.
This lane is powered by an underlying GNEEdge and basically knows how to draw itself.
SumoXMLAttr
Numbers representing SUMO-XML - attributes.
bool myWasSplit
whether this edge was created from a split
void addConnection(unsigned int fromLane, const std::string &toEdgeID, unsigned int toLane, bool mayPass)
adds a connection
A class that stores a 2D geometrical boundary.
virtual GUIParameterTableWindow * getParameterWindow(GUIMainWindow &app, GUISUMOAbstractView &parent)
Returns an own parameter window.
void drawGL(const GUIVisualizationSettings &s) const
Draws the object.
An (internal) definition of a single lane of an edge.
A point in 2D or 3D with translation and scaling methods.
Boundary getBoundary() const
Returns the street's geometry.
Boundary getCenteringBoundary() const
Returns the boundary to which the view shall be centered in order to show the object.
void removeLane(GNELane *lane)
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.
NBEdge * getNBEdge()
returns the internal NBEdge
A road/street connecting two junctions (netedit-version)
void setResponsible(bool newVal)
set responsibility for deleting internal strctures
bool deleteGeometry(const Position &pos, GNEUndoList *undoList)
deletes the closest geometry node within SNAP_RADIUS.
void updateJunctionPosition(GNEJunction *junction, const Position &origPos)
update edge geometry after junction move
static const SUMOReal SNAP_RADIUS
GNEJunction * getDest() const
returns the destination-junction
bool isValid(SumoXMLAttr key, const std::string &value)
void updateLaneGeometries()
update edge geometry and inform the lanes let the lanes recompute their precomputed geometry informat...
LaneVector myLanes
List of this edges lanes.
void setEndpoint(Position pos, GNEUndoList *undoList)
makes pos the new geometry endpoint at the appropriate end
NBEdge & myNBEdge
the underlying NBEdge
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
GNEJunction * getSource() const
returns the source-junction
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)
const LaneVector & getLanes()
GNEEdge & operator=(const GNEEdge &s)
invalidated assignment operator
void setNumLanes(unsigned int numLanes, GNEUndoList *undoList)
changes the number of lanes. When reducing the number of lanes, higher-numbered lanes are removed fir...
void removeConnection(unsigned int fromLane, const std::string &toEdgeID, unsigned int toLane)
removes a connection