![]() |
Eclipse SUMO - Simulation of Urban MObility
|
Represents a single node (junction) during network building. More...
#include <NBNode.h>
Data Structures | |
class | ApproachingDivider |
Computes lane-2-lane connections. More... | |
struct | Crossing |
A definition of a pedestrian crossing. More... | |
class | edge_by_direction_sorter |
Sorts outgoing before incoming edges. More... | |
class | nodes_by_id_sorter |
Used for sorting the cells by the begin time they describe. More... | |
struct | WalkingArea |
A definition of a pedestrian walking area. More... | |
struct | WalkingAreaCustomShape |
Public Member Functions | |
NBNode::Crossing * | addCrossing (EdgeVector edges, double width, bool priority, int tlIndex=-1, int tlIndex2=-1, const PositionVector &customShape=PositionVector::EMPTY, bool fromSumoNet=false) |
add a pedestrian crossing to this node More... | |
void | addIncomingEdge (NBEdge *edge) |
adds an incoming edge More... | |
void | addOutgoingEdge (NBEdge *edge) |
adds an outgoing edge More... | |
void | addSortedLinkFoes (const NBConnection &mayDrive, const NBConnection &mustStop) |
add shorted link FOES More... | |
void | addTo (const StoringVisitor &cont) const |
Adds this object to the given container. More... | |
void | addWalkingAreaShape (EdgeVector edges, const PositionVector &shape) |
add custom shape for walkingArea More... | |
void | avoidOverlap () |
fix overlap More... | |
int | buildCrossings () |
build pedestrian crossings More... | |
void | buildCrossingsAndWalkingAreas () |
build crossings, and walkingareas. Also removes invalid loaded crossings if wished More... | |
void | buildInnerEdges () |
build internal lanes, pedestrian crossings and walking areas More... | |
void | buildWalkingAreas (int cornerDetail) |
build pedestrian walking areas and set connections from/to walkingAreas More... | |
int | checkCrossing (EdgeVector candidates) |
bool | checkCrossingDuplicated (EdgeVector edges) |
return true if there already exist a crossing with the same edges as the input More... | |
bool | checkIsRemovable () const |
check if node is removable More... | |
bool | checkIsRemovableReporting (std::string &reason) const |
check if node is removable and return reason if not More... | |
void | clearParameter () |
Clears the parameter map. More... | |
PositionVector | computeInternalLaneShape (NBEdge *fromE, const NBEdge::Connection &con, int numPoints, NBNode *recordError=0, int shapeFlag=0) const |
Compute the shape for an internal lane. More... | |
void | computeLanes2Lanes () |
computes the connections of lanes to edges More... | |
void | computeLogic (const NBEdgeCont &ec) |
computes the node's type, logic and traffic light More... | |
void | computeLogic2 (bool checkLaneFoes) |
compute right-of-way logic for all lane-to-lane connections More... | |
void | computeNodeShape (double mismatchThreshold) |
Compute the junction shape for this node. More... | |
PositionVector | computeSmoothShape (const PositionVector &begShape, const PositionVector &endShape, int numPoints, bool isTurnaround, double extrapolateBeg, double extrapolateEnd, NBNode *recordError=0, int shapeFlag=0) const |
Compute a smooth curve between the given geometries. More... | |
bool | crossingBetween (const NBEdge *e1, const NBEdge *e2) const |
return true if the given edges are connected by a crossing More... | |
void | discardAllCrossings (bool rejectAll) |
discard all current (and optionally future) crossings More... | |
void | discardWalkingareas () |
discard previously built walkingareas (required for repeated computation by netedit) More... | |
EdgeVector | edgesBetween (const NBEdge *e1, const NBEdge *e2) const |
return all edges that lie clockwise between the given edges More... | |
bool | foes (const NBEdge *const from1, const NBEdge *const to1, const NBEdge *const from2, const NBEdge *const to2) const |
Returns the information whether the given flows cross. More... | |
bool | forbids (const NBEdge *const possProhibitorFrom, const NBEdge *const possProhibitorTo, const NBEdge *const possProhibitedFrom, const NBEdge *const possProhibitedTo, bool regardNonSignalisedLowerPriority) const |
Returns the information whether "prohibited" flow must let "prohibitor" flow pass. More... | |
bool | geometryLike () const |
whether this is structurally similar to a geometry node More... | |
bool | geometryLike (const EdgeVector &incoming, const EdgeVector &outgoing) const |
int | getConnectionIndex (const NBEdge *from, const NBEdge::Connection &con) const |
return the index of the given connection More... | |
NBEdge * | getConnectionTo (NBNode *n) const |
get connection to certain node More... | |
Crossing * | getCrossing (const EdgeVector &edges, bool hardFail=true) const |
return the crossing with the given Edges More... | |
Crossing * | getCrossing (const std::string &id) const |
return the crossing with the given id More... | |
std::vector< Crossing * > | getCrossings () const |
return this junctions pedestrian crossings More... | |
const std::vector< Crossing * > & | getCrossingsIncludingInvalid () const |
LinkDirection | getDirection (const NBEdge *const incoming, const NBEdge *const outgoing, bool leftHand=false) const |
Returns the representation of the described stream's direction. More... | |
double | getDisplacementError () const |
compute the displacement error during s-curve computation More... | |
double | getDouble (const std::string &key, const double defaultValue) const |
Returns the value for a given key converted to a double. More... | |
std::vector< std::pair< NBEdge *, NBEdge * > > | getEdgesToJoin () const |
get edges to join More... | |
Position | getEmptyDir () const |
Returns something like the most unused direction Should only be used to add source or sink nodes. More... | |
std::vector< std::pair< Position, std::string > > | getEndPoints () const |
return list of unique endpoint coordinates of all edges at this node More... | |
const std::string | getFoes (int linkIndex) const |
const std::string & | getID () const |
Returns the id. More... | |
LinkState | getLinkState (const NBEdge *incoming, NBEdge *outgoing, int fromLane, int toLane, bool mayDefinitelyPass, const std::string &tlID) const |
get link state More... | |
NBEdge * | getOppositeIncoming (NBEdge *e) const |
returns the opposite incoming edge of certain edge More... | |
const std::string | getParameter (const std::string &key, const std::string &defaultValue="") const |
Returns the value for a given key. More... | |
const std::map< std::string, std::string > & | getParametersMap () const |
Returns the inner key/value map. More... | |
std::string | getParametersStr () const |
Returns the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN". More... | |
NBEdge * | getPossiblySplittedIncoming (const std::string &edgeid) |
get possibly splitted incoming edge More... | |
NBEdge * | getPossiblySplittedOutgoing (const std::string &edgeid) |
get possibly splitted outgoing edge More... | |
const NBConnectionProhibits & | getProhibitions () |
get prohibitions (BLocked connections) More... | |
const std::string | getResponse (int linkIndex) const |
const PositionVector & | getShape () const |
retrieve the junction shape More... | |
const std::vector< WalkingAreaCustomShape > & | getWalkingAreaCustomShapes () const |
const std::vector< WalkingArea > & | getWalkingAreas () const |
return this junctions pedestrian walking areas More... | |
int | guessCrossings () |
guess pedestrian crossings and return how many were guessed More... | |
bool | hasCustomShape () const |
return whether the shape was set by the user More... | |
bool | hasIncoming (const NBEdge *const e) const |
Returns whether the given edge ends at this node. More... | |
bool | hasOutgoing (const NBEdge *const e) const |
Returns whether the given edge starts at this node. More... | |
void | invalidateIncomingConnections () |
invalidate incoming connections More... | |
void | invalidateOutgoingConnections () |
invalidate outgoing connections More... | |
bool | isBentPriority () const |
return whether a priority road turns at this node More... | |
bool | isConstantWidthTransition () const |
detects whether a given junction splits or merges lanes while keeping constant road width More... | |
bool | isDistrict () const |
check if node is a district More... | |
bool | isLeftMover (const NBEdge *const from, const NBEdge *const to) const |
Computes whether the given connection is a left mover across the junction. More... | |
bool | isNearDistrict () const |
@chech if node is near district More... | |
bool | isSimpleContinuation (bool checkLaneNumbers=true, bool checkWidth=false) const |
check if node is a simple continuation More... | |
bool | knowsParameter (const std::string &key) const |
Returns whether the parameter is known. More... | |
void | markBentPriority (bool isBent) |
mark whether a priority road turns at this node More... | |
bool | mustBrake (const NBEdge *const from, const NBEdge *const to, int fromLane, int toLane, bool includePedCrossings) const |
Returns the information whether the described flow must let any other flow pass. More... | |
bool | mustBrakeForCrossing (const NBEdge *const from, const NBEdge *const to, const Crossing &crossing) const |
Returns the information whether the described flow must brake for the given crossing. More... | |
NBNode (const std::string &id, const Position &position, NBDistrict *district=0) | |
Constructor. More... | |
NBNode (const std::string &id, const Position &position, SumoXMLNodeType type) | |
Constructor. More... | |
bool | needsCont (const NBEdge *fromE, const NBEdge *otherFromE, const NBEdge::Connection &c, const NBEdge::Connection &otherC) const |
whether an internal junction should be built at from and respect other More... | |
int | numCrossingsFromSumoNet () const |
get num of crossings from sumo net More... | |
int | numNormalConnections () const |
return the number of lane-to-lane connections at this junction (excluding crossings) More... | |
void | reinit (const Position &position, SumoXMLNodeType type, bool updateEdgeGeometries=false) |
Resets initial values. More... | |
void | removeCrossing (const EdgeVector &edges) |
remove a pedestrian crossing from this node (identified by its edges) More... | |
void | removeDoubleEdges () |
remove duble edges More... | |
void | removeEdge (NBEdge *edge, bool removeFromConnections=true) |
Removes edge from this node and optionally removes connections as well. More... | |
void | replaceIncoming (const EdgeVector &which, NBEdge *by) |
Replaces occurences of every edge from the given list within the list of incoming by the second Connections are remapped, too. More... | |
void | replaceIncoming (NBEdge *which, NBEdge *by, int laneOff) |
Replaces occurences of the first edge within the list of incoming by the second Connections are remapped, too. More... | |
void | replaceOutgoing (const EdgeVector &which, NBEdge *by) |
Replaces occurences of every edge from the given list within the list of outgoing by the second Connections are remapped, too. More... | |
void | replaceOutgoing (NBEdge *which, NBEdge *by, int laneOff) |
Replaces occurences of the first edge within the list of outgoing by the second Connections are remapped, too. More... | |
bool | rightOnRedConflict (int index, int foeIndex) const |
whether the given index must yield to the foeIndex while turing right on a red light More... | |
bool | setCrossingTLIndices (const std::string &tlID, int startIndex) |
void | setCustomShape (const PositionVector &shape) |
set the junction shape More... | |
void | setFringeType (FringeType fringeType) |
set method for computing right-of-way More... | |
void | setID (const std::string &newID) |
resets the id More... | |
void | setKeepClear (bool keepClear) |
set the keepClear flag More... | |
void | setParameter (const std::string &key, const std::string &value) |
Sets a parameter. More... | |
void | setParameters (const Parameterised ¶ms) |
set the inner key/value map in map<string, string> format More... | |
void | setParametersMap (const std::map< std::string, std::string > ¶msMap) |
set the inner key/value map in map<string, string> format More... | |
void | setParametersStr (const std::string ¶msString) |
set the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN" More... | |
void | setRadius (double radius) |
set the turning radius More... | |
void | setRightOfWay (RightOfWay rightOfWay) |
set method for computing right-of-way More... | |
void | setRoundabout () |
update the type of this node as a roundabout More... | |
void | sortEdges (bool useNodeShape) |
sort all edge containers for this node More... | |
bool | tlsContConflict (const NBEdge *from, const NBEdge::Connection &c, const NBEdge *foeFrom, const NBEdge::Connection &foe) const |
whether the connection must yield if the foe remains on the intersection after its phase ends More... | |
bool | turnFoes (const NBEdge *from, const NBEdge *to, int fromLane, const NBEdge *from2, const NBEdge *to2, int fromLane2, bool lefthand=false) const |
return whether the given laneToLane connection originate from the same edge and are in conflict due to turning across each other More... | |
bool | typeWasGuessed () const |
return whether a priority road turns at this node More... | |
void | unsetParameter (const std::string &key) |
Removes a parameter. More... | |
void | updateParameters (const std::map< std::string, std::string > &mapArg) |
Adds or updates all given parameters from the map. More... | |
bool | writeLogic (OutputDevice &into) const |
writes the XML-representation of the logic as a bitset-logic XML representation More... | |
void | writeParams (OutputDevice &device) const |
write Params in the given outputdevice More... | |
~NBNode () | |
Destructor. More... | |
Atomar getter methods | |
Returns the position of this node | |
const Position & | getPosition () const |
Position | getCenter () const |
Returns a position that is guaranteed to lie within the node shape. More... | |
const EdgeVector & | getIncomingEdges () const |
Returns this node's incoming edges (The edges which yield in this node) More... | |
const EdgeVector & | getOutgoingEdges () const |
Returns this node's outgoing edges (The edges which start at this node) More... | |
const EdgeVector & | getEdges () const |
Returns all edges which participate in this node (Edges that start or end at this node) More... | |
SumoXMLNodeType | getType () const |
Returns the type of this node. More... | |
double | getRadius () const |
Returns the turning radius of this node. More... | |
bool | getKeepClear () const |
Returns the keepClear flag. More... | |
RightOfWay | getRightOfWay () const |
Returns hint on how to compute right of way. More... | |
FringeType | getFringeType () const |
Returns fringe type. More... | |
Methods for dealing with assigned traffic lights | |
void | addTrafficLight (NBTrafficLightDefinition *tlDef) |
Adds a traffic light to the list of traffic lights that control this node. More... | |
void | removeTrafficLight (NBTrafficLightDefinition *tlDef) |
Removes the given traffic light from this node. More... | |
void | removeTrafficLights () |
Removes all references to traffic lights that control this tls. More... | |
bool | isTLControlled () const |
Returns whether this node is controlled by any tls. More... | |
const std::set< NBTrafficLightDefinition * > & | getControllingTLS () const |
Returns the traffic lights that were assigned to this node (The set of tls that control this node) More... | |
void | invalidateTLS (NBTrafficLightLogicCont &tlCont, bool removedConnections, bool addedConnections) |
causes the traffic light to be computed anew More... | |
void | shiftTLConnectionLaneIndex (NBEdge *edge, int offset, int threshold=-1) |
patches loaded signal plans by modifying lane indices above threshold by the given offset More... | |
Prunning the input | |
int | removeSelfLoops (NBDistrictCont &dc, NBEdgeCont &ec, NBTrafficLightLogicCont &tc) |
Removes edges which are both incoming and outgoing into this node. More... | |
Applying offset | |
void | reshiftPosition (double xoff, double yoff) |
Applies an offset to the node. More... | |
void | mirrorX () |
mirror coordinates along the x-axis More... | |
Static Public Member Functions | |
static bool | areParametersValid (const std::string &value, bool report=false) |
check if given string can be parsed to a parameters map "key1=value1|key2=value2|...|keyN=valueN" More... | |
static PositionVector | bezierControlPoints (const PositionVector &begShape, const PositionVector &endShape, bool isTurnaround, double extrapolateBeg, double extrapolateEnd, bool &ok, NBNode *recordError=0, double straightThresh=DEG2RAD(5), int shapeFlag=0) |
get bezier control points More... | |
template<class T > | |
static std::string | getIDSecure (const T *obj, const std::string &fallBack="NULL") |
get an identifier for Named-like object which may be Null More... | |
static std::string | getNodeIDFromInternalLane (const std::string id) |
returns the node id for internal lanes, crossings and walkingareas More... | |
static bool | isTrafficLight (SumoXMLNodeType type) |
return whether the given type is a traffic light More... | |
static bool | rightTurnConflict (const NBEdge *from, const NBEdge *to, int fromLane, const NBEdge *prohibitorFrom, const NBEdge *prohibitorTo, int prohibitorFromLane, bool lefthand=false) |
return whether the given laneToLane connection is a right turn which must yield to a bicycle crossings More... | |
Static Public Attributes | |
static const int | AVOID_INTERSECTING_LEFT_TURNS |
static const int | AVOID_WIDE_LEFT_TURN |
static const int | AVOID_WIDE_RIGHT_TURN |
flags for controlling shape generation More... | |
static const int | BACKWARD |
static const int | FORWARD |
edge directions (for pedestrian related stuff) More... | |
static const int | FOUR_CONTROL_POINTS |
static const int | SCURVE_IGNORE |
static const double | UNSPECIFIED_RADIUS = -1 |
unspecified lane width More... | |
Protected Attributes | |
std::string | myID |
The name of the object. More... | |
Private Member Functions | |
void | displaceShapeAtWidthChange (const NBEdge *from, const NBEdge::Connection &con, PositionVector &fromShape, PositionVector &toShape) const |
displace lane shapes to account for change in lane width at this node More... | |
bool | forbidsPedestriansAfter (std::vector< std::pair< NBEdge *, bool > > normalizedLanes, int startIndex) |
return whether there is a non-sidewalk lane after the given index; More... | |
EdgeVector | getEdgesSortedByAngleAtNodeCenter () const |
returns the list of all edges sorted clockwise by getAngleAtNodeToCenter More... | |
void | getEdgesThatApproach (NBEdge *currentOutgoing, EdgeVector &approaching) |
returns a list of edges which are connected to the given outgoing edge More... | |
NBEdge * | getNextCompatibleOutgoing (const NBEdge *incoming, SVCPermissions vehPerm, EdgeVector::const_iterator start, bool clockwise) const |
NBNode (const NBNode &s) | |
invalidated copy constructor More... | |
NBNode & | operator= (const NBNode &s) |
invalidated assignment operator More... | |
void | remapRemoved (NBTrafficLightLogicCont &tc, NBEdge *removed, const EdgeVector &incoming, const EdgeVector &outgoing) |
remap removed More... | |
void | removeJoinedTrafficLights () |
remove all traffic light definitions that are part of a joined tls More... | |
void | replaceInConnectionProhibitions (NBEdge *which, NBEdge *by, int whichLaneOff, int byLaneOff) |
replace incoming connections prohibitions More... | |
void | setPriorityJunctionPriorities () |
sets the priorites in case of a priority junction More... | |
Static Private Member Functions | |
static bool | includes (const std::set< NBEdge *, ComparatorIdLess > &super, const std::set< const NBEdge *, ComparatorIdLess > &sub) |
returns whether sub is a subset of super More... | |
static bool | isLongEnough (NBEdge *out, double minLength) |
check if is long enough More... | |
static bool | isParameterValid (const std::string &value, bool report) |
check if given string can be parsed to a parameter of type "key=value" More... | |
Private Attributes | |
EdgeVector | myAllEdges |
Vector of incoming and outgoing edges. More... | |
NBConnectionProhibits | myBlockedConnections |
The container for connection block dependencies. More... | |
std::vector< Crossing * > | myCrossings |
Vector of crossings. More... | |
int | myCrossingsLoadedFromSumoNet |
number of crossings loaded from a sumo net More... | |
bool | myDiscardAllCrossings |
whether to discard all pedestrian crossings More... | |
double | myDisplacementError |
geometry error after computation of internal lane shapes More... | |
NBDistrict * | myDistrict |
The district the node is the centre of. More... | |
FringeType | myFringeType |
fringe type of this node More... | |
bool | myHaveCustomPoly |
whether this nodes shape was set by the user More... | |
EdgeVector | myIncomingEdges |
Vector of incoming edges. More... | |
bool | myIsBentPriority |
bool | myKeepClear |
whether the junction area must be kept clear More... | |
std::map< std::string, std::string > | myMap |
The key->value map. More... | |
EdgeVector | myOutgoingEdges |
Vector of outgoing edges. More... | |
PositionVector | myPoly |
the (outer) shape of the junction More... | |
Position | myPosition |
The position the node lies at. More... | |
double | myRadius |
the turning radius (for all corners) at this node in m. More... | |
NBRequest * | myRequest |
Node requests. More... | |
RightOfWay | myRightOfWay |
how to compute right of way for this node More... | |
std::set< NBTrafficLightDefinition * > | myTrafficLights |
traffic lights of node More... | |
SumoXMLNodeType | myType |
The type of the junction. More... | |
bool | myTypeWasGuessed |
whether the node type was guessed rather than loaded More... | |
std::vector< WalkingAreaCustomShape > | myWalkingAreaCustomShapes |
Vector of custom walking areas shapes. More... | |
std::vector< WalkingArea > | myWalkingAreas |
Vector of walking areas. More... | |
Friends | |
class | GNEJunction |
class | NBEdgePriorityComputer |
class | NBNodeCont |
class | NBNodesEdgesSorter |
class | NBNodeShapeComputer |
class | NBNodeTypeComputer |
Represents a single node (junction) during network building.
NBNode::NBNode | ( | const std::string & | id, |
const Position & | position, | ||
SumoXMLNodeType | type | ||
) |
Constructor.
[in] | id | The id of the node |
[in] | position | The position of the node |
[in] | type | The type of the node |
Definition at line 252 of file NBNode.cpp.
References SUMOXMLDefinitions::isValidNetID(), and Named::myID.
NBNode::NBNode | ( | const std::string & | id, |
const Position & | position, | ||
NBDistrict * | district = 0 |
||
) |
Constructor.
[in] | id | The id of the node |
[in] | position | The position of the node |
[in] | district | The district this district node represents, 0 means no district node |
Definition at line 275 of file NBNode.cpp.
References SUMOXMLDefinitions::isValidNetID(), and Named::myID.
NBNode::~NBNode | ( | ) |
|
private |
invalidated copy constructor
NBNode::Crossing * NBNode::addCrossing | ( | EdgeVector | edges, |
double | width, | ||
bool | priority, | ||
int | tlIndex = -1 , |
||
int | tlIndex2 = -1 , |
||
const PositionVector & | customShape = PositionVector::EMPTY , |
||
bool | fromSumoNet = false |
||
) |
add a pedestrian crossing to this node
Definition at line 3069 of file NBNode.cpp.
References myCrossings, and myCrossingsLoadedFromSumoNet.
Referenced by NIImporter_SUMO::_loadNetwork(), checkCrossing(), GNEChange_Crossing::redo(), and GNEChange_Crossing::undo().
void NBNode::addIncomingEdge | ( | NBEdge * | edge | ) |
adds an incoming edge
Definition at line 451 of file NBNode.cpp.
References myAllEdges, and myIncomingEdges.
Referenced by NBEdge::init(), GNENet::insertEdge(), and NBEdge::reinitNodes().
void NBNode::addOutgoingEdge | ( | NBEdge * | edge | ) |
adds an outgoing edge
Definition at line 461 of file NBNode.cpp.
References myAllEdges, and myOutgoingEdges.
Referenced by NBEdge::init(), GNENet::insertEdge(), and NBEdge::reinitNodes().
void NBNode::addSortedLinkFoes | ( | const NBConnection & | mayDrive, |
const NBConnection & | mustStop | ||
) |
add shorted link FOES
Definition at line 1561 of file NBNode.cpp.
References NBConnection::getFrom(), NBConnection::getTo(), myBlockedConnections, and WRITE_WARNING.
Referenced by NIImporter_SUMO::_loadNetwork(), NIVissimDisturbance::addToNode(), NIXMLConnectionsHandler::myStartElement(), and NIVissimConflictArea::setPriorityRegulation().
|
inlineinherited |
Adds this object to the given container.
[in,filled] | cont The container to add this item to |
Definition at line 126 of file Named.h.
References Named::StoringVisitor::add().
void NBNode::addTrafficLight | ( | NBTrafficLightDefinition * | tlDef | ) |
Adds a traffic light to the list of traffic lights that control this node.
[in] | tld | The traffic light that controls this node |
Definition at line 361 of file NBNode.cpp.
References isTrafficLight(), myTrafficLights, myType, NODETYPE_RAIL_CROSSING, NODETYPE_RAIL_SIGNAL, and NODETYPE_TRAFFIC_LIGHT.
Referenced by NBTrafficLightDefinition::addNode(), NBLoadedTLDef::addToSignalGroup(), and NIImporter_OpenDrive::loadNetwork().
void NBNode::addWalkingAreaShape | ( | EdgeVector | edges, |
const PositionVector & | shape | ||
) |
add custom shape for walkingArea
Definition at line 3017 of file NBNode.cpp.
References NBNode::WalkingAreaCustomShape::edges, myWalkingAreaCustomShapes, and NBNode::WalkingAreaCustomShape::shape.
Referenced by NIImporter_SUMO::_loadNetwork(), and NIXMLConnectionsHandler::addWalkingArea().
|
staticinherited |
check if given string can be parsed to a parameters map "key1=value1|key2=value2|...|keyN=valueN"
Definition at line 166 of file Parameterised.cpp.
References StringTokenizer::getVector(), Parameterised::isParameterValid(), and WRITE_WARNING.
Referenced by GNEAccess::isValid(), GNEBusStop::isValid(), GNECalibrator::isValid(), GNECalibratorFlow::isValid(), GNEChargingStation::isValid(), GNEClosingLaneReroute::isValid(), GNEClosingReroute::isValid(), GNEContainerStop::isValid(), GNEDestProbReroute::isValid(), GNEDetectorE1::isValid(), GNEDetectorE1Instant::isValid(), GNEDetectorE2::isValid(), GNEDetectorE3::isValid(), GNEDetectorEntryExit::isValid(), GNEParkingArea::isValid(), GNEParkingAreaReroute::isValid(), GNEParkingSpace::isValid(), GNEPOI::isValid(), GNEPoly::isValid(), GNERerouter::isValid(), GNERerouterInterval::isValid(), GNERouteProbe::isValid(), GNERouteProbReroute::isValid(), GNETAZ::isValid(), GNETAZSourceSink::isValid(), GNEVaporizer::isValid(), GNEVariableSpeedSign::isValid(), GNEVariableSpeedSignStep::isValid(), GNEPerson::isValid(), GNEPersonTrip::isValid(), GNERide::isValid(), GNERoute::isValid(), GNEVehicle::isValid(), GNEVehicleType::isValid(), GNEWalk::isValid(), GNEConnection::isValid(), GNECrossing::isValid(), GNEEdge::isValid(), GNEJunction::isValid(), GNELane::isValid(), and GNEFrameAttributesModuls::ParametersEditor::onCmdSetParameters().
void NBNode::avoidOverlap | ( | ) |
fix overlap
Definition at line 3235 of file NBNode.cpp.
References NBEdge::getTurnDestination(), myIncomingEdges, and NBEdge::shiftPositionAtNode().
|
static |
get bezier control points
Definition at line 533 of file NBNode.cpp.
References PositionVector::angleAt2D(), GeomHelper::angleDiff(), Position::angleTo2D(), AVOID_INTERSECTING_LEFT_TURNS, AVOID_WIDE_LEFT_TURN, AVOID_WIDE_RIGHT_TURN, DEBUGCOND2, DEG2RAD, Position::distanceTo2D(), PositionVector::extrapolate2D(), FOUR_CONTROL_POINTS, PositionVector::intersectionPosition2D(), Position::INVALID, M_PI, MAX2(), MIN2(), myDisplacementError, PositionVector::nearest_offset_to_point2D(), POSITION_EPS, PositionVector::positionAtOffset2D(), RAD2DEG, SCURVE_IGNORE, Position::set(), Position::sub(), Position::x(), Position::y(), and Position::z().
Referenced by computeSmoothShape(), GNEEdge::smoothShape(), NWWriter_OpenDrive::writeGeomSmooth(), and NWWriter_OpenDrive::writeInternalEdge().
int NBNode::buildCrossings | ( | ) |
build pedestrian crossings
Definition at line 2499 of file NBNode.cpp.
References BACKWARD, DEBUGCOND, PositionVector::extrapolate(), FORWARD, gDebugFlag1, OptionsCont::getFloat(), Named::getID(), OptionsCont::getOptions(), PositionVector::isNAN(), isTLControlled(), PositionVector::move2side(), myCrossings, myDiscardAllCrossings, NBHelpers::relAngle(), NBEdge::Lane::shape, SUMO_const_laneWidth, toString(), NBEdge::UNSPECIFIED_WIDTH, NBEdge::Lane::width, and WRITE_WARNINGF.
Referenced by buildCrossingsAndWalkingAreas(), and GNENet::renameJunction().
void NBNode::buildCrossingsAndWalkingAreas | ( | ) |
build crossings, and walkingareas. Also removes invalid loaded crossings if wished
Definition at line 2415 of file NBNode.cpp.
References buildCrossings(), buildWalkingAreas(), Named::getID(), OptionsCont::getOptions(), myCrossings, myWalkingAreas, toString(), and WRITE_WARNINGF.
Referenced by GNEJunction::rebuildGNECrossings().
void NBNode::buildInnerEdges | ( | ) |
build internal lanes, pedestrian crossings and walking areas
Definition at line 2476 of file NBNode.cpp.
References myDisplacementError, and myIncomingEdges.
void NBNode::buildWalkingAreas | ( | int | cornerDetail | ) |
build pedestrian walking areas and set connections from/to walkingAreas
[in] | cornerDetail | The detail level when generating the inner curve |
Definition at line 2596 of file NBNode.cpp.
References PositionVector::append(), computeSmoothShape(), crossingBetween(), DEBUGCOND, Position::distanceTo2D(), NBNode::Crossing::edges, FOUR_CONTROL_POINTS, gDebugFlag1, getCrossings(), getEdgesSortedByAngleAtNodeCenter(), NBEdge::getFromNode(), NBEdge::getID(), Named::getID(), NBEdge::getLanes(), NBEdge::getLaneShape(), NBEdge::getSidewalkID(), PositionVector::getSubpartByIndex(), NBEdge::hasConnectionTo(), NBNode::WalkingArea::hasCustomShape, NBNode::Crossing::id, NBNode::WalkingArea::id, includes(), NBNode::WalkingArea::length, MAX2(), MIN2(), NBNode::WalkingArea::minNextCrossingEdges, NBNode::WalkingArea::minPrevCrossingEdges, PositionVector::move2side(), myAllEdges, myWalkingAreaCustomShapes, myWalkingAreas, NBNode::WalkingArea::nextCrossings, NBNode::WalkingArea::nextSidewalks, NBNode::Crossing::nextWalkingArea, NBEdge::Lane::permissions, POSITION_EPS, NBNode::WalkingArea::prevSidewalks, NBNode::Crossing::prevWalkingArea, PositionVector::push_back_noDoublePos(), PositionVector::push_front_noDoublePos(), PositionVector::reverse(), NBEdge::Lane::shape, NBNode::Crossing::shape, NBNode::WalkingArea::shape, SUMO_const_laneWidth, SVC_PEDESTRIAN, SVC_RAIL_CLASSES, toString(), NBEdge::UNSPECIFIED_WIDTH, NBNode::Crossing::valid, NBEdge::Lane::width, NBNode::Crossing::width, NBNode::WalkingArea::width, and WRITE_WARNINGF.
Referenced by buildCrossingsAndWalkingAreas().
int NBNode::checkCrossing | ( | EdgeVector | candidates | ) |
Definition at line 2296 of file NBNode.cpp.
References addCrossing(), Position::distanceTo2D(), EXTEND_CROSSING_ANGLE_THRESHOLD, gDebugFlag1, NBEdge::getCrossingAngle(), OptionsCont::getFloat(), NBEdge::getFromNode(), NBEdge::getLanes(), NBEdge::getLaneWidth(), NBEdge::getNumLanes(), OptionsCont::getOptions(), NBEdge::getSpeed(), NBEdge::getToNode(), getType(), isTLControlled(), myType, NODETYPE_RAIL_CROSSING, NBHelpers::relAngle(), SPLIT_CROSSING_ANGLE_THRESHOLD, SPLIT_CROSSING_WIDTH_THRESHOLD, toString(), and NBEdge::UNSPECIFIED_WIDTH.
Referenced by guessCrossings().
bool NBNode::checkCrossingDuplicated | ( | EdgeVector | edges | ) |
return true if there already exist a crossing with the same edges as the input
Definition at line 2387 of file NBNode.cpp.
References myCrossings.
Referenced by GNECrossing::isValid().
bool NBNode::checkIsRemovable | ( | ) | const |
check if node is removable
Definition at line 2044 of file NBNode.cpp.
References checkIsRemovableReporting().
Referenced by getEdgesToJoin(), NBNodeCont::removeUnwishedNodes(), and GNENet::replaceJunctionByGeometry().
bool NBNode::checkIsRemovableReporting | ( | std::string & | reason | ) | const |
check if node is removable and return reason if not
Definition at line 2050 of file NBNode.cpp.
References NBEdge::getTurnDestination(), myCrossings, myIncomingEdges, myOutgoingEdges, myTrafficLights, myType, and NODETYPE_RAIL_SIGNAL.
Referenced by checkIsRemovable(), and GNEJunction::getPopUpMenu().
|
inherited |
Clears the parameter map.
Definition at line 100 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NLHandler::beginEdgeParsing(), and GNERouteHandler::closeRoute().
PositionVector NBNode::computeInternalLaneShape | ( | NBEdge * | fromE, |
const NBEdge::Connection & | con, | ||
int | numPoints, | ||
NBNode * | recordError = 0 , |
||
int | shapeFlag = 0 |
||
) | const |
Compute the shape for an internal lane.
[in] | fromE | The starting edge |
[in] | con | The connection for this internal lane |
[in] | numPoints | The number of geometry points for the internal lane |
[in] | recordError | The node itself if the displacement error during shape computation shall be recorded |
Definition at line 698 of file NBNode.cpp.
References PositionVector::append(), AVOID_WIDE_LEFT_TURN, computeSmoothShape(), NBEdge::Connection::customShape, DEBUGCOND, displaceShapeAtWidthChange(), NBEdge::Lane::endOffset, NBEdge::Connection::fromLane, NBEdge::Connection::getDescription(), getDirection(), NBEdge::getEndOffset(), NBEdge::getID(), Named::getID(), NBEdge::getLaneShape(), NBEdge::getLaneStruct(), NBEdge::getLaneWidth(), NBEdge::getNodeBorder(), NBEdge::getNumLanes(), PositionVector::getOrthogonal(), PositionVector::getSubpart(), NBEdge::getTurnDestination(), NBEdge::isBidiRail(), PositionVector::length(), PositionVector::length2D(), LINKDIR_LEFT, LINKDIR_TURN, POSITION_EPS, PositionVector::reverse(), NBEdge::Lane::shape, NBEdge::startShapeAt(), NBEdge::Connection::toEdge, NBEdge::Connection::toLane, and WRITE_WARNINGF.
Referenced by NBEdge::bothLeftIntersect(), and NBEdge::buildInnerEdges().
void NBNode::computeLanes2Lanes | ( | ) |
computes the connections of lanes to edges
Definition at line 1027 of file NBNode.cpp.
References NBEdge::addLane2LaneConnections(), Bresenham::compute(), DEBUGCOND, FORWARD, NBEdge::Connection::fromLane, NBEdge::getAngleAtNode(), GeomHelper::getCCWAngleDiff(), GeomHelper::getCWAngleDiff(), getDirection(), getEdgesThatApproach(), NBEdge::getFirstNonPedestrianLaneIndex(), NBEdge::Connection::getID(), Named::getID(), NBEdge::getNumLanes(), NBEdge::getPermissions(), NBEdge::getPermissionVariants(), NBEdge::getSpecialLane(), NBEdge::getStep(), NBEdge::getTurnDestination(), getVehicleClassNames(), NBEdge::isConnectedTo(), isLongEnough(), NBEdge::isTurningDirectionAt(), NBEdge::L2L_COMPUTED, NBEdge::L2L_VALIDATED, NBEdge::LANES2EDGES, NBEdge::LANES2LANES_DONE, LINKDIR_LEFT, LINKDIR_PARTLEFT, LINKDIR_PARTRIGHT, LINKDIR_RIGHT, LINKDIR_STRAIGHT, LINKDIR_TURN, MAX2(), MIN2(), MIN_WEAVE_LENGTH, myIncomingEdges, myOutgoingEdges, myType, NODETYPE_RAIL_CROSSING, NODETYPE_ZIPPER, NBNode::ApproachingDivider::numAvailableLanes(), NBEdge::setConnection(), SVC_BICYCLE, SVC_PEDESTRIAN, NBEdge::Connection::toEdge, and NBEdge::Connection::toLane.
void NBNode::computeLogic | ( | const NBEdgeCont & | ec | ) |
computes the node's type, logic and traffic light
Definition at line 911 of file NBNode.cpp.
References NBRequest::buildBitfieldLogic(), Named::getID(), myAllEdges, myBlockedConnections, myIncomingEdges, myOutgoingEdges, myRequest, myType, NODETYPE_DEAD_END, NODETYPE_DISTRICT, NODETYPE_NOJUNCTION, NODETYPE_TRAFFIC_LIGHT, NODETYPE_TRAFFIC_LIGHT_NOJUNCTION, numNormalConnections(), removeJoinedTrafficLights(), SUMO_MAX_CONNECTIONS, toString(), and WRITE_WARNINGF.
void NBNode::computeLogic2 | ( | bool | checkLaneFoes | ) |
compute right-of-way logic for all lane-to-lane connections
Definition at line 950 of file NBNode.cpp.
References NBRequest::computeLogic(), and myRequest.
void NBNode::computeNodeShape | ( | double | mismatchThreshold | ) |
Compute the junction shape for this node.
[in] | mismatchThreshold | The threshold for warning about shapes which are away from myPosition |
Definition at line 988 of file NBNode.cpp.
References PositionVector::around(), NBNodeShapeComputer::compute(), PositionVector::distance2D(), OptionsCont::getOptions(), NBNodeShapeComputer::getRadius(), myHaveCustomPoly, Named::myID, myIncomingEdges, myOutgoingEdges, myPoly, myPosition, myRadius, PositionVector::push_back_noDoublePos(), UNSPECIFIED_RADIUS, and WRITE_WARNINGF.
Referenced by GNEViewNet::onCmdEditJunctionShape(), and sortEdges().
PositionVector NBNode::computeSmoothShape | ( | const PositionVector & | begShape, |
const PositionVector & | endShape, | ||
int | numPoints, | ||
bool | isTurnaround, | ||
double | extrapolateBeg, | ||
double | extrapolateEnd, | ||
NBNode * | recordError = 0 , |
||
int | shapeFlag = 0 |
||
) | const |
Compute a smooth curve between the given geometries.
[in] | begShape | The geometry at the start |
[in] | endShape | The geometry at the end |
[in] | numPoints | The number of geometry points for the internal lane |
[in] | isTurnaround | Whether this shall be the shape for a turnaround |
[in] | extrapolateBeg | Extrapolation distance at the beginning |
[in] | extrapolateEnd | Extrapolation distance at the end |
[in] | recordError | The node itself if the displacement error during shape computation shall be recorded |
Definition at line 506 of file NBNode.cpp.
References PositionVector::bezier(), bezierControlPoints(), DEBUGCOND, DEG2RAD, Named::getID(), and PositionVector::smoothedZFront().
Referenced by buildWalkingAreas(), computeInternalLaneShape(), NBNodeShapeComputer::getSmoothCorner(), and GNEGeometry::Lane2laneConnection::updateLane2laneConnection().
return true if the given edges are connected by a crossing
Definition at line 2980 of file NBNode.cpp.
References getCrossings(), and myAllEdges.
Referenced by buildWalkingAreas().
void NBNode::discardAllCrossings | ( | bool | rejectAll | ) |
discard all current (and optionally future) crossings
Definition at line 2457 of file NBNode.cpp.
References myCrossings, and myDiscardAllCrossings.
void NBNode::discardWalkingareas | ( | ) |
discard previously built walkingareas (required for repeated computation by netedit)
Definition at line 2470 of file NBNode.cpp.
References myWalkingAreas.
|
private |
displace lane shapes to account for change in lane width at this node
Definition at line 788 of file NBNode.cpp.
References NBEdge::Connection::fromLane, getDirection(), NBEdge::getLaneWidth(), NBEdge::getNumLanes(), NBEdge::getPermissions(), isConstantWidthTransition(), LINKDIR_LEFT, LINKDIR_PARTLEFT, LINKDIR_TURN, PositionVector::move2side(), myIncomingEdges, myOutgoingEdges, SVC_BICYCLE, NBEdge::Connection::toEdge, and NBEdge::Connection::toLane.
Referenced by computeInternalLaneShape().
EdgeVector NBNode::edgesBetween | ( | const NBEdge * | e1, |
const NBEdge * | e2 | ||
) | const |
return all edges that lie clockwise between the given edges
Definition at line 3001 of file NBNode.cpp.
References myAllEdges, and NBContHelper::nextCW().
bool NBNode::foes | ( | const NBEdge *const | from1, |
const NBEdge *const | to1, | ||
const NBEdge *const | from2, | ||
const NBEdge *const | to2 | ||
) | const |
Returns the information whether the given flows cross.
[in] | from1 | The starting edge of the first stream |
[in] | to1 | The ending edge of the first stream |
[in] | from2 | The starting edge of the second stream |
[in] | to2 | The ending edge of the second stream |
Definition at line 1820 of file NBNode.cpp.
References NBRequest::foes(), and myRequest.
Referenced by NBEdge::buildInnerEdges(), NBTrafficLightDefinition::foes(), NBTrafficLightDefinition::forbids(), needsCont(), and tlsContConflict().
bool NBNode::forbids | ( | const NBEdge *const | possProhibitorFrom, |
const NBEdge *const | possProhibitorTo, | ||
const NBEdge *const | possProhibitedFrom, | ||
const NBEdge *const | possProhibitedTo, | ||
bool | regardNonSignalisedLowerPriority | ||
) | const |
Returns the information whether "prohibited" flow must let "prohibitor" flow pass.
[in] | possProhibitedFrom | The maybe prohibited connection's begin |
[in] | possProhibitedTo | The maybe prohibited connection's end |
[in] | possProhibitorFrom | The maybe prohibiting connection's begin |
[in] | possProhibitorTo | The maybe prohibiting connection's end |
[in] | regardNonSignalisedLowerPriority | Whether the right of way rules without traffic lights shall be regarded |
Definition at line 1810 of file NBNode.cpp.
References NBRequest::forbids(), and myRequest.
Referenced by NBEdge::buildInnerEdges(), and NBTrafficLightDefinition::forbids().
|
private |
return whether there is a non-sidewalk lane after the given index;
Definition at line 2404 of file NBNode.cpp.
Referenced by guessCrossings().
bool NBNode::geometryLike | ( | ) | const |
whether this is structurally similar to a geometry node
Definition at line 3026 of file NBNode.cpp.
References myIncomingEdges, and myOutgoingEdges.
Referenced by NBEdge::appendTurnaround(), NBEdge::computeEdgeShape(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), NBNodeCont::discardTrafficLights(), NBNodeCont::generateNodeClusters(), NBNodeCont::guessTLs(), GNEEdge::smoothShape(), NBEdge::startShapeAt(), NWWriter_OpenDrive::writeInternalEdge(), and NWWriter_OpenDrive::writeNetwork().
bool NBNode::geometryLike | ( | const EdgeVector & | incoming, |
const EdgeVector & | outgoing | ||
) | const |
Definition at line 3031 of file NBNode.cpp.
References NBEdge::getAngleAtNode(), NBEdge::isTurningDirectionAt(), MAX2(), and NBHelpers::relAngle().
Position NBNode::getCenter | ( | ) | const |
Returns a position that is guaranteed to lie within the node shape.
Definition at line 3174 of file NBNode.cpp.
References PositionVector::around(), PositionVector::closePolygon(), PositionVector::distance2D(), PositionVector::getPolygonCenter(), myPoly, myPosition, and POSITION_EPS.
int NBNode::getConnectionIndex | ( | const NBEdge * | from, |
const NBEdge::Connection & | con | ||
) | const |
return the index of the given connection
Definition at line 3155 of file NBNode.cpp.
References NBEdge::Connection::fromLane, myIncomingEdges, NBEdge::Connection::toEdge, and NBEdge::Connection::toLane.
Referenced by GNEProhibitionFrame::buildProhibition(), GNELane::drawLinkNo(), and NBRequest::mustBrake().
get connection to certain node
Definition at line 2158 of file NBNode.cpp.
References myOutgoingEdges.
Referenced by NBEdgeCont::guessRoundabouts(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Turns(), and NGNet::toNB().
|
inline |
Returns the traffic lights that were assigned to this node (The set of tls that control this node)
Definition at line 318 of file NBNode.h.
References myTrafficLights.
Referenced by NIXMLTrafficLightsHandler::addTlConnection(), GNEConnection::changeTLIndex(), GNENet::computeJunction(), NBNodeCont::discardTrafficLights(), GNEJunction::getAttribute(), GNEDialogACChooser::getObjectName(), NBNodeCont::guessTLs(), GNETLSEditorFrame::TLSAttributes::initTLSAttributes(), GNEJunction::invalidateTLS(), GNEConnection::isAttributeEnabled(), GNEConnection::isValid(), GNECrossing::isValid(), NIImporter_OpenDrive::loadNetwork(), NIXMLNodesHandler::processNodeType(), NIXMLNodesHandler::processTrafficLightDefinitions(), NBEdge::removeFromConnections(), GNEJunction::removeTLSConnections(), GNEJunction::replaceIncomingConnections(), GNEJunction::setAttribute(), NBEdgeCont::splitAt(), and NWWriter_XML::writeNodes().
NBNode::Crossing * NBNode::getCrossing | ( | const EdgeVector & | edges, |
bool | hardFail = true |
||
) | const |
return the crossing with the given Edges
Definition at line 3107 of file NBNode.cpp.
References myCrossings.
NBNode::Crossing * NBNode::getCrossing | ( | const std::string & | id | ) | const |
return the crossing with the given id
Definition at line 3096 of file NBNode.cpp.
References myCrossings.
Referenced by GNECrossing::checkEdgeBelong(), GNECrossing::drawGL(), GNECrossing::drawTLSLinkNo(), GNECrossing::getAttribute(), GNECrossing::getCenteringBoundary(), GNECrossing::getCrossingShape(), GNECrossing::getNBCrossing(), GNECrossing::isAttributeEnabled(), GNECrossing::isValid(), GNECrossing::setAttribute(), GNECrossing::updateGeometry(), and NWWriter_SUMO::writeNetwork().
std::vector< NBNode::Crossing * > NBNode::getCrossings | ( | ) | const |
return this junctions pedestrian crossings
Definition at line 2439 of file NBNode.cpp.
References myCrossings.
Referenced by NBEdge::buildInnerEdges(), buildWalkingAreas(), NBRequest::computeCrossingResponse(), NBRequest::computeLogic(), crossingBetween(), NBRequest::getFoesString(), NBRequest::getResponseString(), NBRequest::mustBrake(), NBRequest::numLinks(), setCrossingTLIndices(), NWWriter_SUMO::writeInternalEdges(), NWWriter_SUMO::writeInternalNodes(), NWWriter_SUMO::writeJunction(), and NWWriter_SUMO::writeNetwork().
|
inline |
Definition at line 669 of file NBNode.h.
References myCrossings.
Referenced by GNEJunction::rebuildGNECrossings().
LinkDirection NBNode::getDirection | ( | const NBEdge *const | incoming, |
const NBEdge *const | outgoing, | ||
bool | leftHand = false |
||
) | const |
Returns the representation of the described stream's direction.
[in] | incoming | The edge the stream starts at |
[in] | outgoing | The edge the stream ends at |
[in] | leftHand | Whether a lefthand network is being built. Should only be set at writing time |
Definition at line 1933 of file NBNode.cpp.
References NBEdge::getAngleAtNode(), NBEdge::getJunctionPriority(), getNextCompatibleOutgoing(), NBEdge::getPermissions(), NBEdge::isTurningDirectionAt(), LINKDIR_LEFT, LINKDIR_NODIR, LINKDIR_PARTLEFT, LINKDIR_PARTRIGHT, LINKDIR_RIGHT, LINKDIR_STRAIGHT, LINKDIR_TURN, LINKDIR_TURN_LEFTHAND, myAllEdges, NBHelpers::normRelAngle(), NBEdge::ROUNDABOUT, and SVC_PEDESTRIAN.
Referenced by NBEdge::addStraightConnections(), NBEdge::bothLeftIntersect(), NBEdge::buildInnerEdges(), NBTrafficLightDefinition::collectAllLinks(), computeInternalLaneShape(), computeLanes2Lanes(), NBOwnTLDef::computeUnblockedWeightedStreamNumber(), displaceShapeAtWidthChange(), GNELane::drawArrows(), NBTrafficLightDefinition::forbids(), NBNodeShapeComputer::getDefaultRadius(), getLinkState(), NWWriter_SUMO::getOppositeInternalID(), NBEdge::MainDirections::MainDirections(), NBRequest::mergeConflict(), NBRequest::mustBrake(), NBRequest::mustBrakeForCrossing(), needsCont(), NBRequest::oppositeLeftTurnConflict(), NBOwnTLDef::patchStateForCrossings(), rightTurnConflict(), NBRequest::setBlocking(), NBEdgePriorityComputer::setPriorityJunctionPriorities(), GNENet::splitJunction(), NWWriter_SUMO::writeConnection(), NWWriter_SUMO::writeInternalConnections(), and NWWriter_OpenDrive::writeInternalEdge().
|
inline |
compute the displacement error during s-curve computation
Definition at line 584 of file NBNode.h.
References myDisplacementError.
Referenced by NBNodeShapeComputer::computeNodeShapeDefault().
|
inherited |
Returns the value for a given key converted to a double.
[in] | key | The key to ask for |
[in] | defaultValue | The default value to return if no value is stored under the key |
Definition at line 82 of file Parameterised.cpp.
References Parameterised::myMap, StringUtils::toDouble(), and WRITE_WARNING.
Referenced by MSDevice_Battery::buildVehicleDevices(), MSSOTLPolicy5DStimulus::getStimCox(), MSSOTLPolicy5DStimulus::getStimCoxExpDispersionIn(), MSSOTLPolicy5DStimulus::getStimCoxExpDispersionOut(), MSSOTLPolicy5DStimulus::getStimCoxExpIn(), MSSOTLPolicy5DStimulus::getStimCoxExpOut(), MSSOTLPolicy5DStimulus::getStimDivisorDispersionIn(), MSSOTLPolicy5DStimulus::getStimDivisorDispersionOut(), MSSOTLPolicy5DStimulus::getStimDivisorIn(), MSSOTLPolicy5DStimulus::getStimDivisorOut(), MSSOTLPolicy5DStimulus::getStimOffsetDispersionIn(), MSSOTLPolicy5DStimulus::getStimOffsetDispersionOut(), MSSOTLPolicy5DStimulus::getStimOffsetIn(), MSSOTLPolicy5DStimulus::getStimOffsetOut(), and MSSOTLPolicy5DFamilyStimulus::MSSOTLPolicy5DFamilyStimulus().
|
inline |
Returns all edges which participate in this node (Edges that start or end at this node)
Definition at line 265 of file NBNode.h.
References myAllEdges.
Referenced by NBNodeTypeComputer::computeNodeTypes(), GNENet::deleteJunction(), NBNodeCont::feasibleCluster(), NBNodeCont::generateNodeClusters(), NBNodeShapeComputer::getDefaultRadius(), NIImporter_OpenStreetMap::getNeighboringNodes(), NBRampsComputer::getOffRampEdges(), NBEdgeCont::guessRoundabouts(), isNearDistrict(), GNEJunction::mirrorXLeftHand(), NBNodeCont::pruneClusterFringe(), GNENet::removeSolitaryJunctions(), and NBNodeCont::removeUnwishedNodes().
|
private |
returns the list of all edges sorted clockwise by getAngleAtNodeToCenter
Definition at line 3192 of file NBNode.cpp.
References gDebugFlag1, myAllEdges, and toString().
Referenced by buildWalkingAreas(), and guessCrossings().
|
private |
returns a list of edges which are connected to the given outgoing edge
Definition at line 1367 of file NBNode.cpp.
References myAllEdges, and NBContHelper::nextCW().
Referenced by computeLanes2Lanes().
get edges to join
Definition at line 2117 of file NBNode.cpp.
References checkIsRemovable(), NBEdge::getTurnDestination(), myIncomingEdges, and myOutgoingEdges.
Referenced by NBNodeCont::removeUnwishedNodes(), and GNENet::replaceJunctionByGeometry().
Position NBNode::getEmptyDir | ( | ) | const |
Returns something like the most unused direction Should only be used to add source or sink nodes.
Definition at line 1634 of file NBNode.cpp.
References Position::add(), getPosition(), Position::mul(), myIncomingEdges, myOutgoingEdges, myPosition, Position::norm2d(), Position::sub(), Position::x(), and Position::y().
std::vector< std::pair< Position, std::string > > NBNode::getEndPoints | ( | ) | const |
return list of unique endpoint coordinates of all edges at this node
Definition at line 3355 of file NBNode.cpp.
References Position::almostSame(), and myAllEdges.
Referenced by GNEJunction::getPopUpMenu(), and GNENet::splitJunction().
const std::string NBNode::getFoes | ( | int | linkIndex | ) | const |
Definition at line 968 of file NBNode.cpp.
References NBRequest::getFoes(), and myRequest.
Referenced by GNEProhibitionFrame::buildProhibition().
|
inline |
Returns fringe type.
Definition at line 292 of file NBNode.h.
References myFringeType.
Referenced by GNEJunction::getAttribute(), NWWriter_SUMO::writeJunction(), and NWWriter_XML::writeNodes().
|
inlineinherited |
Returns the id.
Definition at line 76 of file Named.h.
References Named::myID.
Referenced by MSLCM_LC2013::adaptSpeedToPedestrians(), MSVehicle::adaptToLeader(), MSVehicle::adaptToLeaders(), LaneStoringVisitor::add(), Named::StoringVisitor::add(), MSVehicleTransfer::add(), MSPModel_Striping::add(), MSPModel_Remote::add(), PCPolyContainer::add(), ShapeContainer::add(), MSDetectorControl::add(), NLTriggerBuilder::addAccess(), RORouteDef::addAlternative(), MSLane::addApproachingLane(), NLHandler::addConnection(), NBLoadedSUMOTLDef::addConnection(), MSPModel_Striping::addCrossingVehs(), RODFDetectorCon::addDetector(), RONet::addEdge(), ROJTREdge::addFollowerProbability(), MSTLLogicControl::TLSLogicVariants::addLogic(), MSLane::addNeigh(), RONet::addNode(), NIImporter_SUMO::addPhase(), GUIEdge::addRerouter(), RONet::addRouteDef(), NIXMLEdgesHandler::addSplit(), NBTrafficLightLogic::addStep(), MSRouteHandler::addStop(), ROVehicle::addStop(), MSVehicle::addStop(), MSNet::addStoppingPlace(), MSVehicle::addTraciStop(), MSVehicle::addTraciStopAtStoppingPlace(), AGActivityTripWriter::addTrip(), NIXMLConnectionsHandler::addWalkingArea(), libsumo::Helper::applySubscriptionFilters(), GUITrafficLightLogicWrapper::begin2TrackPhases(), MSPModel_Striping::blockedAtDist(), MSLink::blockedAtTime(), MSLink::blockedByFoe(), NLEdgeControlBuilder::build(), NIVisumTL::build(), RODFNet::buildApproachList(), MSSOTLE2Sensors::buildContinueSensior(), MSSOTLE2Sensors::buildCountSensorForLane(), MSSOTLE2Sensors::buildCountSensorForOutLane(), buildCrossings(), buildCrossingsAndWalkingAreas(), NIImporter_VISUM::buildDistrictNode(), MSRailSignal::LinkInfo::buildDriveWay(), NLDetectorBuilder::buildE2Detector(), RODFNet::buildEdgeFlowMap(), GNETLSEditorFrame::buildIinternalLanes(), NBEdge::buildInnerEdges(), NIVissimEdge::buildNBEdge(), NGEdge::buildNBEdge(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), MSRailSignal::DriveWay::buildRoute(), MELoop::buildSegmentsFor(), MSSOTLE2Sensors::buildSensorForLane(), MSSOTLE2Sensors::buildSensorForOutLane(), buildWalkingAreas(), MSBaseVehicle::calculateArrivalParams(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSVehicle::canReverse(), MSLaneChanger::changeOpposite(), MELoop::changeSegment(), MSSimpleTrafficLightLogic::changeStepAndDuration(), MSEdge::checkAndRegisterBiDirEdge(), MSRailSignal::DriveWay::checkCrossingFlanks(), MSLane::checkForPedestrians(), MSVehicleTransfer::checkInsertions(), MSVehicle::checkLinkLeader(), MSDevice_Battery::checkParam(), MSE2Collector::checkPositioning(), MSVehicle::checkRewindLinkLanes(), MSLCM_SL2015::checkStrategicChange(), MSSwarmTrafficLightLogic::choosePolicy(), MSDevice_SSM::classifyEncounter(), ShapeContainer::clearHighlights(), NBTrafficLightLogic::closeBuilding(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), RORouteHandler::closeRouteDistribution(), RORouteHandler::closeVehicle(), NBTrafficLightDefinition::collectAllLinks(), NBTrafficLightDefinition::collectEdges(), NBLoadedSUMOTLDef::collectEdgeVectors(), NBLoadedTLDef::collectLinks(), IntermodalRouter< E, L, N, V >::compute(), ROJTRRouter::compute(), NBTrafficLightDefinition::compute(), computeInternalLaneShape(), computeLanes2Lanes(), computeLogic(), NBOwnTLDef::computeLogicAndConts(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), NBNodeTypeComputer::computeNodeTypes(), RODFNet::computeRoutesFor(), NBTrafficLightLogicCont::computeSingleLogic(), computeSmoothShape(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), MSVehicle::Manoeuvre::configureEntryManoeuvre(), MSVehicle::Manoeuvre::configureExitManoeuvre(), NGNet::connect(), NBOwnTLDef::corridorLike(), MSSOTLWaveTrafficLightLogic::countVehicles(), MSSOTLE2Sensors::countVehicles(), MSDevice_SSM::createEncounters(), GUINet::createTLWrapper(), MSActuatedTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::decidePolicy(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), MSLane::detectPedestrianJunctionCollision(), NIVissimDistrictConnection::dict_BuildDistrictNodes(), NIVissimDistrictConnection::dict_BuildDistricts(), MSE3Collector::enter(), MSVehicle::enterLaneAtMove(), MSVehicle::Manoeuvre::entryManoeuvreIsComplete(), METriggeredCalibrator::execute(), Command_SaveTLSProgram::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitches::execute(), Command_SaveTLSSwitchStates::execute(), MSVTypeProbe::execute(), MSPModel_Striping::MovePedestrians::execute(), MSCalibrator::execute(), MSVehicle::executeMove(), MSLane::executeMovements(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), libsumo::Helper::findCloserLane(), MSRailSignal::DriveWay::findFlankProtection(), MSDevice_SSM::findFoeConflictLane(), libsumo::Simulation::findIntermodalRoute(), MSDevice_SSM::findSurroundingVehicles(), MSDevice_SSM::flushConflicts(), NBTrafficLightDefinition::forbids(), NBNodeCont::generateNodeClusters(), GUITrafficLightLogicWrapper::getActiveTLLogic(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), MSPModel_Striping::getArbitraryPath(), MSVehicle::getBackPosition(), MSVehicle::getBackPositionOnLane(), libsumo::Vehicle::getBestLanes(), NBOwnTLDef::getBestPair(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), MSLane::getCanonicalPredecessorLane(), MSLane::getCanonicalSuccessorLane(), MSVehicle::getCenterOnEdge(), MSDevice_Battery::getChargingStationID(), MSRailSignal::getClickableTLLinkID(), libsumo::TrafficLight::getControlledLinks(), MSLane::getCriticalLeader(), NBNodeShapeComputer::getDefaultRadius(), MSLink::getDescription(), NBTrafficLightDefinition::getDescription(), GUIPerson::getDestinationEdgeID(), RODFNet::getDetectorEdge(), MSActuatedTrafficLightLogic::getDetectorPriority(), GUIPerson::getEdgeID(), GUIMEVehicle::getEdgeID(), MSMeanData::getEdgeID(), libsumo::Lane::getEdgeID(), MSPModel_Remote::getFirstPedestrianLane(), MSLane::getFollower(), MSLane::getFollowersOnConsecutive(), GUIPerson::getFromEdgeID(), MSCalibrator::getID(), NBEdge::getID(), libsumo::InductionLoop::getLaneID(), libsumo::LaneArea::getLaneID(), libsumo::Vehicle::getLaneID(), MSParkingArea::getLastFreePosWithReservation(), MSLane::getLastVehicleInformation(), MSVehicle::getLatOffset(), MSLane::getLeader(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), MSLink::getLengthBeforeCrossing(), MSLane::getLinkTo(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForInputLanes(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForOutputLanes(), NIImporter_VISUM::getNamedEdgeContinuating(), MSPerson::getNextEdge(), MSPModel_Striping::getNextLane(), GNEDialogACChooser::getObjectName(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSLane::getOppositePos(), libsumo::Simulation::getParameter(), GUILane::getParameterWindow(), GUITrafficLightLogicWrapper::getParameterWindow(), GUILane::getParentName(), MSLane::getPartialBehind(), MSSOTLTrafficLightLogic::getPhaseIndexWithMaxCTS(), MSSwarmTrafficLightLogic::getPheromoneForInputLanes(), MSSwarmTrafficLightLogic::getPheromoneForOutputLanes(), PolygonDynamics::getPolygonID(), GUITrafficLightLogicWrapper::getPopUpMenu(), NLTriggerBuilder::getPosition(), NLDetectorBuilder::getPositionChecking(), libsumo::Person::getRoadID(), libsumo::Vehicle::getRoadID(), MSLCM_LC2013::getRoundaboutDistBonus(), libsumo::Vehicle::getRouteID(), MSVehicle::getSafeFollowSpeed(), libsumo::Person::getStage(), MSContainer::MSContainerStage_Driving::getStageSummary(), MSContainer::MSContainerStage_Tranship::getStageSummary(), MSTransportable::Stage_Trip::getStageSummary(), MSTransportable::Stage_Waiting::getStageSummary(), MSPerson::MSPersonStage_Walking::getStageSummary(), MSPerson::MSPersonStage_Driving::getStageSummary(), MSNet::getStoppingPlaceID(), MSLane::getSurroundingVehicles(), MSActuatedTrafficLightLogic::getTarget(), MSRailSignal::getTLLinkID(), MSLane::getUpcomingLinks(), MSDevice_SSM::getUpstreamVehicles(), MSPModel_Striping::getVehicleObstacles(), MSDevice_SSM::getVehiclesOnJunction(), MSEdge::getWaitingVehicle(), MSLink::getZipperSpeed(), guessCrossings(), RODFDetectorCon::guessEmptyFlows(), NBNodeCont::guessTLs(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSLane::handleCollisionBetween(), MSVehicle::haveValidStopEdges(), libsumo::POI::highlight(), MSVehicle::ignoreRed(), MSActuatedTrafficLightLogic::init(), MSDelayBasedTrafficLightLogic::init(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailSignal::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), MSTrafficLightLogic::init(), MSE2Collector::initAuxiliaries(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBNodeCont::insert(), NBTrafficLightLogicCont::insert(), MSEdge::insertVehicle(), MSLane::integrateNewVehicles(), GNEJunction::invalidateTLS(), invalidateTLS(), MSTLLogicControl::isActive(), MSPedestrianPushButton::isActiveForEdge(), MSPedestrianPushButton::isActiveOnAnySideOfTheRoad(), RODFNet::isDestination(), RODFNet::isFalseSource(), MSLane::isInsertionSuccess(), MSVehicle::isLeader(), MESegment::isOpen(), RODFNet::isSource(), NIImporter_VISUM::isSplitEdge(), MSSOTLTrafficLightLogic::isThresholdPassed(), MESegment::jamThresholdForSpeed(), NBNodeShapeComputer::joinSameDirectionEdges(), MSAbstractLaneChangeModel::laneChangeOutput(), MSE3Collector::leave(), MSE3Collector::leaveFront(), MSDevice_BTreceiver::BTreceiverUpdate::leaveRange(), MSPedestrianPushButton::loadCrossingEdgeMap(), NIImporter_OpenDrive::loadNetwork(), MSPedestrianPushButton::loadPushButtons(), ODDistrictCont::makeDistricts(), MSE2Collector::makeVehicleInfo(), MSSOTLE2Sensors::meanVehiclesSpeed(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), MSPModel_Striping::PState::moveToNextLane(), libsumo::Person::moveToXY(), libsumo::Vehicle::moveToXY(), libsumo::Helper::moveToXYMap(), MSCalibrator::MSCalibrator(), MSChargingStation::MSChargingStation(), MSDevice_Battery::MSDevice_Battery(), MSE2Collector::MSE2Collector(), NBLoadedTLDef::myCompute(), NIImporter_SUMO::myEndElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), MSPModel_Striping::nextBlocking(), MSE2Collector::notifyEnter(), MSDevice_Bluelight::notifyEnter(), MSDevice_Example::notifyEnter(), MSDevice_SSM::notifyEnter(), MSDevice_Tripinfo::notifyEnter(), MSMeanData::MeanDataValues::notifyEnter(), MSMeanData::MeanDataValueTracker::notifyEnter(), MSMeanData_Net::MSLaneMeanDataValues::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSE3Collector::MSE3EntryReminder::notifyEnter(), MSE3Collector::MSE3LeaveReminder::notifyEnter(), MSDevice_BTreceiver::notifyEnter(), MSDevice_BTsender::notifyEnter(), MSDevice_Bluelight::notifyLeave(), MSDevice_Example::notifyLeave(), MSDevice_SSM::notifyLeave(), MSDevice_Transportable::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSE2Collector::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSDevice_BTsender::notifyLeave(), MSDevice_Bluelight::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSDevice_BTsender::notifyMove(), MSDevice_Example::notifyMove(), MSDevice_SSM::notifyMove(), MSE2Collector::notifyMove(), MSMeanData::MeanDataValues::notifyMove(), MSDevice_ToC::notifyMove(), GNETLSEditorFrame::onCmdDefSwitch(), GUIViewTraffic::onGamingClick(), MSLink::opened(), RORouteHandler::openRoute(), MSLane::incoming_lane_priority_sorter::operator()(), MSLane::outgoing_lane_priority_sorter::operator()(), NBNetBuilder::by_id_sorter::operator()(), NBNode::nodes_by_id_sorter::operator()(), RODFNet::idComp::operator()(), NIImporter_VISUM::parse_Connectors_legacy(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_Turns(), NLTriggerBuilder::parseAndBuildCalibrator(), MSRouteHandler::parseWalkPositions(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), MSLCM_LC2013::patchSpeed(), MSLCM_SL2015::patchSpeed(), NBLoadedTLDef::SignalGroup::patchTYellow(), MSVehicle::planMove(), MSVehicle::planMoveInternal(), MSLane::planMovements(), MSInternalJunction::postloadInit(), MSRightOfWayJunction::postloadInit(), AGStreet::print(), MSDevice_SSM::processEncounters(), MSVehicle::processLaneAdvances(), MSVehicle::processLinkApproaches(), MSVehicle::processNextStop(), NIXMLNodesHandler::processNodeType(), TraCIServerAPI_Vehicle::processSet(), MEVehicle::processStop(), NIXMLNodesHandler::processTrafficLightDefinitions(), MSDelayBasedTrafficLightLogic::proposeProlongation(), NBNodeCont::pruneClusterFringe(), MSPModel_Striping::PState::PState(), MSOffTrafficLightLogic::rebuildPhase(), NBEdge::recheckLanes(), NBEdgeCont::recheckPostProcessConnections(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NBLoadedSUMOTLDef::reconstructLogic(), MSLink::removeApproaching(), MSVehicle::removePassedDriveItems(), GNEJunction::removeTLSConnections(), NBNodeCont::rename(), GNENet::renameJunction(), RORouteDef::repairCurrentRoute(), GNEJunction::replaceIncomingConnections(), MSVehicle::replaceParkingArea(), MSVehicle::replaceRoute(), MSBaseVehicle::replaceRouteEdges(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), NLEdgeControlBuilder::reportCurrentEdgeOrLane(), MSDevice_ToC::requestToC(), MSBaseVehicle::reroute(), MSRailSignal::LinkInfo::reroute(), GUIVehicle::rerouteDRTStop(), MSTriggeredRerouter::rerouteParkingArea(), MSVehicle::rerouteParkingArea(), MSLane::resetManeuverReservation(), MSLane::resetPartialOccupation(), RODFNet::revalidateFlows(), NBRailwayTopologyAnalyzer::reverseEdges(), RONet::saveAndRemoveRoutesUntil(), ROPerson::Ride::saveAsXML(), ROVehicle::saveAsXML(), MSBaseVehicle::saveState(), MSLane::saveState(), MSDevice::saveState(), MSDevice_Routing::saveState(), MSDevice_Tripinfo::saveState(), MSDevice_Vehroutes::saveState(), MSTransportableDevice_Routing::saveState(), GUIVehicle::selectBlockingFoes(), MSE2Collector::selectLanes(), MSLink::setApproaching(), NBNodeCont::setAsTLControlled(), GNEEdge::setAttribute(), MSChargingStation::setChargeDelay(), MSChargingStation::setChargingPower(), NLEdgeControlBuilder::setDefaultStopOffsets(), MSChargingStation::setEfficency(), MSLane::setManeuverReservation(), MSDevice_Battery::setMaximumBatteryCapacity(), NBEdge::setNodeBorder(), NIXMLEdgesHandler::setNodes(), NIImporter_OpenDrive::setNodeSecure(), MSLane::setPartialOccupation(), MSDevice_Battery::setPowerMax(), MSLink::setRequestInformation(), MSDevice_Battery::setStoppingTreshold(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBOwnTLDef::setTLControllingInformation(), NBTrafficLightLogicCont::setTLControllingInformation(), NBEdge::shiftPositionAtNode(), MSLane::sortManeuverReservations(), IntermodalNetwork< E, L, N, V >::splitEdge(), MSLaneChangerSublane::startChangeSublane(), MSStopOut::stopEnded(), MSStopOut::stopStarted(), MSLane::succLinkSec(), GUITrafficLightLogicWrapper::switchTLSLogic(), MELoop::teleportVehicle(), MSDevice_ToC::triggerDownwardToC(), MSDevice_ToC::triggerMRM(), MSDevice_ToC::triggerUpwardToC(), MSSOTLTrafficLightLogic::trySwitch(), MSDevice_SSM::update(), PolygonDynamics::update(), MSDevice_SSM::updateAndWriteOutput(), MSVehicle::updateBestLanes(), MSLCM_SL2015::updateCFRelated(), MSSOTLTrafficLightLogic::updateCTS(), NLEdgeControlBuilder::updateCurrentLaneStopOffsets(), MSVehicle::updateDriveItems(), GNETLSEditorFrame::TLSJunction::updateJunctionDescription(), MSSwarmTrafficLightLogic::updatePheromoneLevels(), MSSwarmTrafficLightLogic::updateSensitivities(), MSAbstractLaneChangeModel::updateTargetLane(), MSDevice_BTreceiver::BTreceiverUpdate::updateVisibility(), NBNodeTypeComputer::validateRailCrossings(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), MSInstantInductLoop::write(), NBParking::write(), MSFCDExport::write(), MSBatteryExport::write(), MSEmissionExport::write(), MSLink::writeApproaching(), MSRailSignal::writeBlocks(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_SUMO::writeDistrict(), MSMeanData::writeEdge(), NWWriter_SUMO::writeEdge(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), NWWriter_OpenDrive::writeInternalEdge(), writeInterval(), NWWriter_SUMO::writeJunction(), MSFullExport::writeLane(), MSQueueExport::writeLane(), MSXMLRawOut::writeLane(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_OpenDrive::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), NWWriter_SUMO::writeRoundabout(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_DlrNavteq::writeTrafficSignals(), MSFCDExport::writeTransportable(), RODFDetectorCon::writeValidationDetectors(), MSFullExport::writeVehicles(), SUMOPolygon::writeXML(), PointOfInterest::writeXML(), MSE2Collector::writeXMLOutput(), MSInductLoop::writeXMLOutput(), MSRouteProbe::writeXMLOutput(), and RONet::~RONet().
|
inlinestaticinherited |
get an identifier for Named-like object which may be Null
Definition at line 69 of file Named.h.
Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSLaneChanger::changeOpposite(), MSVehicle::checkRewindLinkLanes(), AStarRouter< E, V >::compute(), DijkstraRouter< E, V >::compute(), NBEdge::computeEdge2Edges(), NBEdge::computeLanes2Edges(), NBOwnTLDef::computeLogicAndConts(), MSLaneChanger::continueChange(), MSLane::detectCollisions(), MSRailSignal::DriveWay::findProtection(), NBPTLineCont::findWay(), MSCFModel_CACC::followSpeed(), MSCFModel_W99::followSpeed(), MSVehicle::getBackPositionOnLane(), NBOwnTLDef::getBestCombination(), NBOwnTLDef::getBestPair(), MSVehicle::getCenterOnEdge(), MSLaneChanger::getColumnleader(), NBEdge::Connection::getDescription(), MSLane::getFollowersOnConsecutive(), GUIVehicle::getLaneID(), MSVehicle::getLatOffset(), MSLane::getLeaderOnConsecutive(), MSLaneChanger::getRealLeader(), GUIVehicle::getShadowLaneID(), GUIVehicle::getTargetLaneID(), NBEdge::init(), MSLane::isInsertionSuccess(), MESegment::isOpen(), joinNamedToString(), joinNamedToStringSorting(), MSPModel_Striping::PState::moveToNextLane(), libsumo::Person::moveToXY(), libsumo::Vehicle::moveToXY(), libsumo::Helper::moveToXYMap(), operator<<(), NBEdge::recheckLanes(), MSTriggeredRerouter::rerouteParkingArea(), MSLCM_SL2015::saveBlockerLength(), MSLCM_LC2013::saveBlockerLength(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), MSLaneChangerSublane::startChangeSublane(), MSLeaderInfo::toString(), MSLeaderDistanceInfo::toString(), MSCriticalFollowerDistanceInfo::toString(), toString(), MSVehicle::updateBestLanes(), and MSAbstractLaneChangeModel::updateShadowLane().
|
inline |
Returns this node's incoming edges (The edges which yield in this node)
Definition at line 255 of file NBNode.h.
References myIncomingEdges.
Referenced by NBEdge::addLane(), NBEdge::addRestrictedLane(), NIImporter_OpenStreetMap::RelationHandler::applyRestriction(), NBEdge::buildInnerEdges(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), NBNodeShapeComputer::compute(), NBRampsComputer::computeRamps(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), NBEdge::debugPrintConnections(), NBEdge::deleteLane(), NBNodeCont::generateNodeClusters(), NBNodeShapeComputer::getDefaultRadius(), NBEdge::getIncomingEdges(), NIImporter_VISUM::getNamedEdgeContinuating(), NBRampsComputer::getOffRampEdges(), NBRampsComputer::getOnRampEdges(), GNEJunction::getPopUpMenu(), NBRailwayTopologyAnalyzer::getRailEdges(), NBNodeCont::guessTLs(), NBEdge::init(), isLongEnough(), NBNodeTypeComputer::isRailwayNode(), NBNodeCont::joinNodeCluster(), GNEJunction::markAsModified(), NBEdgePriorityComputer::markBestParallel(), NBEdgeCont::markRoundabouts(), NBRampsComputer::mayNeedOffRamp(), NBRampsComputer::mayNeedOnRamp(), GNENet::mergeJunctions(), NBContHelper::node_with_incoming_finder::operator()(), NIImporter_VISUM::parse_Connectors(), NIImporter_VISUM::parse_Connectors_legacy(), NIImporter_VISUM::parse_Lanes(), NBEdgeCont::processSplits(), NBNodeCont::pruneClusterFringe(), NBEdge::recheckLanes(), NBNodeCont::removeComponents(), GNEJunction::removeConnectionsTo(), NBNodeCont::removeIsolatedRoads(), NBNodeCont::removeUnwishedNodes(), NBEdge::restoreRestrictedLane(), NBEdgeCont::retrievePossiblySplit(), GNEJunction::setLogicValid(), GNEEdge::smoothShape(), NGNet::toNB(), NBNodeTypeComputer::validateRailCrossings(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_SUMO::writeInternalConnections(), NWWriter_SUMO::writeInternalEdges(), NWWriter_SUMO::writeInternalNodes(), NWWriter_SUMO::writeJunction(), NWWriter_OpenDrive::writeNetwork(), NWWriter_DlrNavteq::writeProhibitedManoeuvres(), and NWWriter_DlrNavteq::writeTrafficSignals().
|
inline |
Returns the keepClear flag.
Definition at line 282 of file NBNode.h.
References myKeepClear.
Referenced by NWWriter_SUMO::writeConnection(), and NWWriter_XML::writeNodes().
LinkState NBNode::getLinkState | ( | const NBEdge * | incoming, |
NBEdge * | outgoing, | ||
int | fromLane, | ||
int | toLane, | ||
bool | mayDefinitelyPass, | ||
const std::string & | tlID | ||
) | const |
get link state
Definition at line 2011 of file NBNode.cpp.
References getDirection(), NBEdge::getPermissions(), NBEdge::getPriority(), NBEdge::isInsideTLS(), isRailway(), NBNodeTypeComputer::isRailwayNode(), LINKDIR_STRAIGHT, LINKSTATE_ALLWAY_STOP, LINKSTATE_EQUAL, LINKSTATE_MAJOR, LINKSTATE_MINOR, LINKSTATE_STOP, LINKSTATE_TL_OFF_BLINKING, LINKSTATE_TL_OFF_NOSIGNAL, LINKSTATE_ZIPPER, mustBrake(), myType, NODETYPE_ALLWAY_STOP, NODETYPE_PRIORITY_STOP, NODETYPE_RAIL_CROSSING, NODETYPE_RIGHT_BEFORE_LEFT, and NODETYPE_ZIPPER.
Referenced by GNELane::drawLane2LaneConnections(), GNEConnection::updateLinkState(), and NWWriter_SUMO::writeConnection().
|
private |
Definition at line 1908 of file NBNode.cpp.
References NBEdge::isTurningDirectionAt(), myAllEdges, NBContHelper::nextCCW(), and NBContHelper::nextCW().
Referenced by getDirection().
|
static |
returns the node id for internal lanes, crossings and walkingareas
Definition at line 3215 of file NBNode.cpp.
References WRITE_ERROR.
returns the opposite incoming edge of certain edge
Definition at line 1543 of file NBNode.cpp.
References NBEdge::getToNode(), and myIncomingEdges.
Referenced by NBNodeTypeComputer::computeNodeTypes().
|
inline |
Returns this node's outgoing edges (The edges which start at this node)
Definition at line 260 of file NBNode.h.
References myOutgoingEdges.
Referenced by NIImporter_OpenStreetMap::RelationHandler::applyRestriction(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), NBNodeShapeComputer::compute(), NBEdge::computeEdge2Edges(), NBRampsComputer::computeRamps(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), GNENet::createEdge(), NBNodeCont::discardTrafficLights(), NBEdge::getConnectedSorted(), NBNodeShapeComputer::getDefaultRadius(), NIImporter_VISUM::getEdge(), NIImporter_VISUM::getNamedEdgeContinuating(), NBRampsComputer::getOffRampEdges(), NBRampsComputer::getOnRampEdges(), GNEJunction::getPopUpMenu(), NBRailwayTopologyAnalyzer::getRailEdges(), NBPTStopCont::getReverseEdge(), NBEdgeCont::guessOpposites(), NBNodeCont::guessTLs(), GNEConnectorFrame::initTargets(), isLongEnough(), NBEdge::isRailDeadEnd(), NBNodeCont::joinNodeCluster(), NBEdge::markAsInLane2LaneState(), NBRampsComputer::mayNeedOffRamp(), NBRampsComputer::mayNeedOnRamp(), GNENet::mergeJunctions(), NBContHelper::node_with_outgoing_finder::operator()(), NIImporter_VISUM::parse_Connectors(), NIImporter_VISUM::parse_Connectors_legacy(), NIImporter_VISUM::parse_Lanes(), NBEdgeCont::processSplits(), NBNodeCont::pruneClusterFringe(), NBEdge::recheckLanes(), NBNodeCont::removeComponents(), NBNodeCont::removeIsolatedRoads(), NBNodeCont::removeUnwishedNodes(), NBEdgeCont::retrievePossiblySplit(), GNEEdge::smoothShape(), NBNodeTypeComputer::validateRailCrossings(), NWWriter_XML::writeEdgesAndConnections(), and NWWriter_DlrNavteq::writeProhibitedManoeuvres().
|
inherited |
Returns the value for a given key.
[in] | key | The key to ask for |
[in] | defaultValue | The default value to return if no value is stored under the key |
Definition at line 72 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NBEdge::addRestrictedLane(), FareModul::addStop(), NBEdge::append(), MSDevice_Battery::buildVehicleDevices(), MSDevice_Bluelight::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), ROEdge::cacheParamRestrictions(), SUMOVTypeParameter::cacheParamRestrictions(), GNEEdge::drawEdgeName(), GUIEdge::drawGL(), GNEConnection::drawGL(), GUIBaseVehicle::drawOnPos(), libsumo::Simulation::findIntermodalRoute(), MSSwarmTrafficLightLogic::getBetaNo(), MSSwarmTrafficLightLogic::getBetaSp(), MSDevice::getBoolParam(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), MSSwarmTrafficLightLogic::getChangePlanProbability(), GUILane::getColorValue(), GUIVehicle::getColorValue(), GNELane::getColorValue(), MSSOTLTrafficLightLogic::getDecayConstant(), MSDevice_SSM::getDetectionRange(), MSDevice_SSM::getExtraTime(), MSDevice::getFloatParam(), MSSwarmTrafficLightLogic::getForgettingCox(), MSSwarmTrafficLightLogic::getGammaNo(), MSSwarmTrafficLightLogic::getGammaSp(), MSTLLogicControl::WAUTSwitchProcedure::getGSPValue(), MSSOTLTrafficLightLogic::getInputSensorsLength(), MSSwarmTrafficLightLogic::getLearningCox(), MSSwarmTrafficLightLogic::getMaxCongestionDuration(), MSDevice_SSM::getMeasuresAndThresholds(), MSSOTLRequestPolicy::getMinDecisionalPhaseDuration(), MSSOTLTrafficLightLogic::getMode(), GUIBaseVehicle::getOptionalName(), GUIJunctionWrapper::getOptionalName(), MSDevice_ToC::getOutputFilename(), MSDevice_SSM::getOutputFilename(), MSSOTLTrafficLightLogic::getOutputSensorsLength(), libsumo::Edge::getParameter(), libsumo::Lane::getParameter(), libsumo::Simulation::getParameter(), libsumo::POI::getParameter(), libsumo::Polygon::getParameter(), libsumo::Person::getParameter(), libsumo::Route::getParameter(), libsumo::TrafficLight::getParameter(), libsumo::VehicleType::getParameter(), libsumo::Vehicle::getParameter(), MSSwarmTrafficLightLogic::getPheroMaxVal(), MSSwarmTrafficLightLogic::getPoliciesParam(), MSSwarmTrafficLightLogic::getReinforcementMode(), MSSOTLTrafficLightLogic::getSpeedThreshold(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchAreaNo(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchBereichDef(), MSDevice::getStringParam(), MSSwarmTrafficLightLogic::getThetaInit(), MSSwarmTrafficLightLogic::getThetaMax(), MSSwarmTrafficLightLogic::getThetaMin(), MSSOTLTrafficLightLogic::getThreshold(), MSTriggeredRerouter::getWeight(), MSSOTLPhasePolicy::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), PushButtonLogic::init(), SigmoidLogic::init(), MSVehicleType::initRailVisualizationParameters(), GNEVehicleType::initRailVisualizationParameters(), MSSOTLTrafficLightLogic::isDecayThresholdActivated(), MSSOTLTrafficLightLogic::isPushButtonPressed(), MSActuatedTrafficLightLogic::MSActuatedTrafficLightLogic(), MSDelayBasedTrafficLightLogic::MSDelayBasedTrafficLightLogic(), MSSOTLPolicy::MSSOTLPolicy(), MSSOTLPolicy5DFamilyStimulus::MSSOTLPolicy5DFamilyStimulus(), MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic(), GNEVehicleType::overwriteVType(), MSDevice_SSM::requestsTrajectories(), NBEdgeCont::splitAt(), MSDevice_SSM::useGeoCoords(), NWWriter_DlrNavteq::writeLinksUnsplitted(), and NWWriter_OpenDrive::writeRoadObjects().
|
inherited |
Returns the inner key/value map.
Definition at line 106 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NIImporter_SUMO::_loadNetwork(), NBEdge::addLane(), GUIParameterTableWindow::closeBuilding(), NLHandler::closeEdge(), NBTrafficLightDefinition::compute(), GUIJunctionWrapper::getParameterWindow(), GUILane::getParameterWindow(), GUITrafficLightLogicWrapper::getParameterWindow(), GUIPointOfInterest::getParameterWindow(), GUIPolygon::getParameterWindow(), GUIContainer::getTypeParameterWindow(), GUIPerson::getTypeParameterWindow(), GUIVehicle::getTypeParameterWindow(), GUIMEVehicle::getTypeParameterWindow(), NIImporter_OpenStreetMap::insertEdge(), NBEdge::NBEdge(), NBLoadedSUMOTLDef::NBLoadedSUMOTLDef(), GUIParameterTableWindow::numParams(), GNEVehicleType::overwriteVType(), TraCIServerAPI_TrafficLight::processGet(), and Parameterised::setParameters().
|
inherited |
Returns the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN".
Definition at line 112 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by GNEAccess::getAttribute(), GNEBusStop::getAttribute(), GNECalibrator::getAttribute(), GNECalibratorFlow::getAttribute(), GNEChargingStation::getAttribute(), GNEClosingLaneReroute::getAttribute(), GNEClosingReroute::getAttribute(), GNEContainerStop::getAttribute(), GNEDestProbReroute::getAttribute(), GNEDetectorE1::getAttribute(), GNEDetectorE1Instant::getAttribute(), GNEDetectorE2::getAttribute(), GNEDetectorE3::getAttribute(), GNEDetectorEntryExit::getAttribute(), GNEParkingArea::getAttribute(), GNEParkingAreaReroute::getAttribute(), GNEParkingSpace::getAttribute(), GNEPOI::getAttribute(), GNEPoly::getAttribute(), GNERerouter::getAttribute(), GNERerouterInterval::getAttribute(), GNERouteProbe::getAttribute(), GNERouteProbReroute::getAttribute(), GNETAZ::getAttribute(), GNETAZSourceSink::getAttribute(), GNEVaporizer::getAttribute(), GNEVariableSpeedSign::getAttribute(), GNEVariableSpeedSignStep::getAttribute(), GNEPerson::getAttribute(), GNEPersonTrip::getAttribute(), GNERide::getAttribute(), GNERoute::getAttribute(), GNEVehicle::getAttribute(), GNEVehicleType::getAttribute(), GNEWalk::getAttribute(), GNEConnection::getAttribute(), GNEEdge::getAttribute(), GNEJunction::getAttribute(), and GNELane::getAttribute().
|
inline |
Definition at line 247 of file NBNode.h.
References myPosition.
Referenced by NIImporter_SUMO::_loadNetwork(), NIXMLNodesHandler::addNode(), NIXMLEdgesHandler::addSplit(), NIVissimEdge::buildNBEdge(), GNEJunction::commitGeometryMoving(), NBEdge::computeAngle(), NBEdge::computeEdgeShape(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), NBNodeCont::discardRailSignals(), NBNodeCont::discardTrafficLights(), NBHelpers::distance(), GNEJunction::drawGL(), GNEJunction::drawTLSIcon(), GNEEdge::editEndpoint(), NBEdge::extendGeometryAtNode(), NBNodeCont::extract(), NBNodeCont::generateNodeClusters(), GNEJunction::getAttribute(), GNEJunction::getCenteringBoundary(), GNEJunction::getColorValue(), getEmptyDir(), NWWriter_DlrNavteq::getGraphLength(), GNEJunction::getPositionInView(), NBNodeShapeComputer::getSmoothCorner(), NBEdge::hasDefaultGeometryEndpointAtNode(), NBEdge::hasDefaultGeometryEndpoints(), NBEdge::init(), NBNodeCont::insert(), NBNodeCont::joinNodeCluster(), GNEViewNet::mergeJunctions(), GNEJunction::moveJunctionGeometry(), NBContHelper::relative_outgoing_edge_sorter::operator()(), NBContHelper::relative_incoming_edge_sorter::operator()(), NBNodeCont::pruneClusterFringe(), NIImporter_OpenStreetMap::reconstructLayerElevation(), GNENet::registerJunction(), NIVissimEdge::remapOneOfNodes(), GNENet::replaceJunctionByGeometry(), NIImporter_DlrNavteq::EdgesHandler::report(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), GNEEdge::resetEndpoint(), NBNodeCont::retrieve(), GNEJunction::setAttribute(), GNEEdge::setAttribute(), NBEdge::shiftPositionAtNode(), NBNodeCont::shortestEdge(), NBEdgeCont::splitAt(), NBEdge::startShapeAt(), GNEEdge::straightenElevation(), GNEEdge::updateJunctionPosition(), NWWriter_SUMO::writeJunction(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), and NWWriter_DlrNavteq::writeTrafficSignals().
NBEdge * NBNode::getPossiblySplittedIncoming | ( | const std::string & | edgeid | ) |
get possibly splitted incoming edge
Definition at line 1578 of file NBNode.cpp.
References NBEdge::getID(), and myIncomingEdges.
Referenced by NIVissimDisturbance::getConnection().
NBEdge * NBNode::getPossiblySplittedOutgoing | ( | const std::string & | edgeid | ) |
get possibly splitted outgoing edge
Definition at line 1591 of file NBNode.cpp.
References NBEdge::getID(), and myOutgoingEdges.
Referenced by NIVissimDisturbance::getConnection().
|
inline |
get prohibitions (BLocked connections)
Definition at line 635 of file NBNode.h.
References myBlockedConnections.
|
inline |
Returns the turning radius of this node.
Definition at line 277 of file NBNode.h.
References myRadius.
Referenced by NBNodeShapeComputer::computeNodeShapeDefault(), GNEJunction::getAttribute(), NWWriter_SUMO::writeJunction(), and NWWriter_XML::writeNodes().
const std::string NBNode::getResponse | ( | int | linkIndex | ) | const |
Definition at line 978 of file NBNode.cpp.
References NBRequest::getResponse(), and myRequest.
Referenced by GNEProhibitionFrame::buildProhibition().
|
inline |
Returns hint on how to compute right of way.
Definition at line 287 of file NBNode.h.
References myRightOfWay.
Referenced by GNEJunction::getAttribute(), NWWriter_SUMO::writeJunction(), and NWWriter_XML::writeNodes().
const PositionVector & NBNode::getShape | ( | ) | const |
retrieve the junction shape
Definition at line 2140 of file NBNode.cpp.
References myPoly.
Referenced by NBEdge::computeAngle(), GNEJunction::drawGL(), GNEJunction::getAttribute(), GNEJunction::getCenteringBoundary(), GNEJunction::getJunctionShape(), GNEJunction::getPopUpMenu(), GNEViewNet::onCmdEditJunctionShape(), NBEdge::startShapeAt(), GNEGeometry::Lane2laneConnection::updateLane2laneConnection(), NWWriter_SUMO::writeJunction(), and NWWriter_XML::writeNodes().
|
inline |
Returns the type of this node.
Definition at line 272 of file NBNode.h.
References myType.
Referenced by NIImporter_SUMO::_loadNetwork(), NIXMLTrafficLightsHandler::addTlConnection(), NBEdge::appendTurnaround(), NBEdge::buildInnerEdges(), checkCrossing(), NBTrafficLightDefinition::collectAllLinks(), NBRequest::computeLaneResponse(), NBRequest::computeLogic(), NBNodeCont::discardRailSignals(), NBRampsComputer::fulfillsRampConstraints(), NBNodeCont::generateNodeClusters(), NBEdgeCont::generateStreetSigns(), GNEJunction::getAttribute(), GNEJunction::getColorValue(), NBEdgeCont::guessRoundabouts(), NBNodeCont::guessTLs(), NBNodeCont::joinNodeCluster(), NBEdge::MainDirections::MainDirections(), GNEJunction::moveJunctionGeometry(), NBRequest::mustBrake(), NIXMLConnectionsHandler::parseLaneBound(), NBEdge::prepareEdgePriorities(), NIXMLNodesHandler::processNodeType(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), GNEJunction::setAttribute(), NBRequest::setBlocking(), NBTrafficLightLogicCont::setTLControllingInformation(), NWWriter_SUMO::writeJunction(), and NWWriter_XML::writeNodes().
|
inline |
Definition at line 678 of file NBNode.h.
References myWalkingAreaCustomShapes.
|
inline |
return this junctions pedestrian walking areas
Definition at line 674 of file NBNode.h.
References myWalkingAreas.
Referenced by NWWriter_SUMO::writeInternalEdges(), and NWWriter_SUMO::writeNetwork().
int NBNode::guessCrossings | ( | ) |
guess pedestrian crossings and return how many were guessed
Definition at line 2192 of file NBNode.cpp.
References checkCrossing(), DEBUGCOND, forbidsPedestriansAfter(), gDebugFlag1, getEdgesSortedByAngleAtNodeCenter(), NBEdge::getFromNode(), NBEdge::getID(), Named::getID(), NBEdge::getLanes(), myAllEdges, myCrossings, myDiscardAllCrossings, SVC_PEDESTRIAN, and toString().
|
inline |
return whether the shape was set by the user
Definition at line 526 of file NBNode.h.
References myHaveCustomPoly.
Referenced by GNEJunction::invalidateShape(), NWWriter_SUMO::writeJunction(), and NWWriter_XML::writeNodes().
bool NBNode::hasIncoming | ( | const NBEdge *const | e | ) | const |
Returns whether the given edge ends at this node.
[in] | e | The edge |
Definition at line 1531 of file NBNode.cpp.
References myIncomingEdges.
Referenced by NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeCont::generateNodeClusters(), NIImporter_OpenStreetMap::getNeighboringNodes(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_LanesConnections(), and NIImporter_VISUM::parse_TurnsToSignalGroups().
bool NBNode::hasOutgoing | ( | const NBEdge *const | e | ) | const |
Returns whether the given edge starts at this node.
[in] | e | The edge |
Definition at line 1537 of file NBNode.cpp.
References myOutgoingEdges.
Referenced by isLeftMover(), NBTrafficLightDefinition::mustBrake(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_LanesConnections(), and NIImporter_VISUM::parse_TurnsToSignalGroups().
|
staticprivate |
returns whether sub is a subset of super
Definition at line 2967 of file NBNode.cpp.
Referenced by buildWalkingAreas().
void NBNode::invalidateIncomingConnections | ( | ) |
invalidate incoming connections
Definition at line 1662 of file NBNode.cpp.
References myIncomingEdges.
Referenced by NBRailwayTopologyAnalyzer::addBidiEdge(), NIVissimDistrictConnection::dict_BuildDistricts(), and GNEJunction::setAttribute().
void NBNode::invalidateOutgoingConnections | ( | ) |
invalidate outgoing connections
Definition at line 1670 of file NBNode.cpp.
References myOutgoingEdges.
Referenced by NIVissimDistrictConnection::dict_BuildDistricts().
void NBNode::invalidateTLS | ( | NBTrafficLightLogicCont & | tlCont, |
bool | removedConnections, | ||
bool | addedConnections | ||
) |
causes the traffic light to be computed anew
Definition at line 387 of file NBNode.cpp.
References NBTrafficLightDefinition::addNode(), Named::getID(), NBTrafficLightDefinition::getNodes(), NBTrafficLightDefinition::getOffset(), NBTrafficLightDefinition::getType(), NBTrafficLightLogicCont::insert(), isTLControlled(), myTrafficLights, and NBTrafficLightLogicCont::removeFully().
Referenced by NIXMLConnectionsHandler::myStartElement(), NIXMLConnectionsHandler::parseLaneBound(), and NBEdgeCont::processSplits().
|
inline |
return whether a priority road turns at this node
Definition at line 759 of file NBNode.h.
References myIsBentPriority.
Referenced by NBRequest::setBlocking().
bool NBNode::isConstantWidthTransition | ( | ) | const |
detects whether a given junction splits or merges lanes while keeping constant road width
Definition at line 780 of file NBNode.cpp.
References myIncomingEdges, and myOutgoingEdges.
Referenced by displaceShapeAtWidthChange(), NBNodeShapeComputer::getDefaultRadius(), NBRequest::mergeConflict(), and NWWriter_SUMO::writeInternalEdges().
bool NBNode::isDistrict | ( | ) | const |
check if node is a district
Definition at line 2186 of file NBNode.cpp.
References myType, and NODETYPE_DISTRICT.
Referenced by NBNodeTypeComputer::computeNodeTypes(), and isNearDistrict().
Computes whether the given connection is a left mover across the junction.
It is assumed, that it is a left-mover if the clockwise angle is lower than the counter-clockwise angle.
[in] | from | The incoming edge (the begin of the connection) |
[in] | from | The outgoing edge (the end of the connection) |
Definition at line 1791 of file NBNode.cpp.
References NBEdge::getAngleAtNode(), GeomHelper::getCCWAngleDiff(), GeomHelper::getCWAngleDiff(), hasOutgoing(), NBEdge::isTurningDirectionAt(), myAllEdges, myIncomingEdges, myOutgoingEdges, and NBContHelper::nextCW().
Referenced by NBEdge::computeEdge2Edges().
|
staticprivate |
check if is long enough
Definition at line 1350 of file NBNode.cpp.
References getIncomingEdges(), NBEdge::getLoadedLength(), getOutgoingEdges(), and NBEdge::getToNode().
Referenced by computeLanes2Lanes().
bool NBNode::isNearDistrict | ( | ) | const |
@chech if node is near district
Definition at line 2169 of file NBNode.cpp.
References getEdges(), and isDistrict().
Referenced by NBNodeTypeComputer::computeNodeTypes(), and NBNodeCont::guessTLs().
|
staticprivateinherited |
check if given string can be parsed to a parameter of type "key=value"
Definition at line 189 of file Parameterised.cpp.
References StringTokenizer::getVector(), SUMOXMLDefinitions::isValidParameterKey(), and SUMOXMLDefinitions::isValidParameterValue().
Referenced by Parameterised::areParametersValid().
bool NBNode::isSimpleContinuation | ( | bool | checkLaneNumbers = true , |
bool | checkWidth = false |
||
) | const |
check if node is a simple continuation
Definition at line 471 of file NBNode.cpp.
References NBEdge::getNumLanes(), NBEdge::getTotalWidth(), myIncomingEdges, myOutgoingEdges, and NBContHelper::nextCW().
Referenced by NBNodeShapeComputer::compute(), NBNodeTypeComputer::computeNodeTypes(), and NBEdgeCont::generateStreetSigns().
|
inline |
Returns whether this node is controlled by any tls.
Definition at line 313 of file NBNode.h.
References myTrafficLights.
Referenced by GNECrossingFrame::addCrossing(), NBEdge::appendTurnaround(), buildCrossings(), checkCrossing(), GNENet::deleteEdge(), NBNodeCont::discardTrafficLights(), GNEJunction::drawTLSIcon(), GNEJunction::getColorValue(), NBNodeCont::guessTLs(), invalidateTLS(), GNEJunction::isAttributeEnabled(), GNEJunction::isValid(), NBNodeCont::joinNodeCluster(), GNENet::joinSelectedJunctions(), NIImporter_OpenDrive::loadNetwork(), NIXMLNodesHandler::processTrafficLightDefinitions(), NBNodeCont::pruneClusterFringe(), NBEdge::removeFromConnections(), tlsContConflict(), GNETLSEditorFrame::TLSJunction::updateJunctionDescription(), NWWriter_XML::writeNodes(), and NWWriter_DlrNavteq::writeTrafficSignals().
|
static |
return whether the given type is a traffic light
Definition at line 3250 of file NBNode.cpp.
References NODETYPE_TRAFFIC_LIGHT, NODETYPE_TRAFFIC_LIGHT_NOJUNCTION, and NODETYPE_TRAFFIC_LIGHT_RIGHT_ON_RED.
Referenced by NIImporter_SUMO::_loadNetwork(), addTrafficLight(), NGNode::buildNBNode(), NBRampsComputer::fulfillsRampConstraints(), NBEdge::MainDirections::MainDirections(), NBEdge::prepareEdgePriorities(), NIXMLNodesHandler::processNodeType(), reinit(), and GNEJunction::setAttribute().
|
inherited |
Returns whether the parameter is known.
[in] | key | The key to ask for |
Definition at line 66 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NBEdge::append(), MSDevice_Bluelight::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), MSDevice::getBoolParam(), NWWriter_DlrNavteq::getBrunnelType(), MSDevice_SSM::getDetectionRange(), MSDevice_SSM::getExtraTime(), MSDevice::getFloatParam(), MSDevice_SSM::getMeasuresAndThresholds(), MSDevice_ToC::getOutputFilename(), MSDevice_SSM::getOutputFilename(), libsumo::Simulation::getParameter(), MSDevice::getStringParam(), MSTriggeredRerouter::getWeight(), MSVehicleType::initRailVisualizationParameters(), GNEVehicleType::initRailVisualizationParameters(), GNEVehicleType::overwriteVType(), MSDevice_SSM::requestsTrajectories(), MSDevice_SSM::useGeoCoords(), and NWWriter_OpenDrive::writeRoadObjects().
|
inline |
mark whether a priority road turns at this node
Definition at line 754 of file NBNode.h.
References myIsBentPriority.
Referenced by NBEdgePriorityComputer::setPriorityJunctionPriorities().
void NBNode::mirrorX | ( | ) |
mirror coordinates along the x-axis
Definition at line 342 of file NBNode.cpp.
References PositionVector::mirrorX(), Position::mul(), myCrossings, myPoly, myPosition, myWalkingAreaCustomShapes, and myWalkingAreas.
Referenced by GNEJunction::mirrorXLeftHand().
bool NBNode::mustBrake | ( | const NBEdge *const | from, |
const NBEdge *const | to, | ||
int | fromLane, | ||
int | toLane, | ||
bool | includePedCrossings | ||
) | const |
Returns the information whether the described flow must let any other flow pass.
[in] | from | The connection's start edge |
[in] | to | The connection's end edge |
[in] | fromLane | The lane the connection start at |
[in] | toLane | The lane the connection ends at |
[in] | includePedCrossings | Whether braking due to a pedestrian crossing counts |
Definition at line 1678 of file NBNode.cpp.
References NBRequest::mustBrake(), and myRequest.
Referenced by getLinkState(), NBTrafficLightDefinition::mustBrake(), and needsCont().
bool NBNode::mustBrakeForCrossing | ( | const NBEdge *const | from, |
const NBEdge *const | to, | ||
const Crossing & | crossing | ||
) | const |
Returns the information whether the described flow must brake for the given crossing.
[in] | from | The connection's start edge |
[in] | to | The connection's end edge |
[in] | crossing | The pedestrian crossing to check |
Definition at line 1692 of file NBNode.cpp.
References NBRequest::mustBrakeForCrossing().
Referenced by NBOwnTLDef::patchStateForCrossings().
bool NBNode::needsCont | ( | const NBEdge * | fromE, |
const NBEdge * | otherFromE, | ||
const NBEdge::Connection & | c, | ||
const NBEdge::Connection & | otherC | ||
) | const |
whether an internal junction should be built at from and respect other
Definition at line 837 of file NBNode.cpp.
References foes(), NBEdge::Connection::fromLane, getDirection(), NBEdge::getJunctionPriority(), LINKDIR_LEFT, LINKDIR_PARTRIGHT, LINKDIR_RIGHT, LINKDIR_STRAIGHT, LINKDIR_TURN, mustBrake(), myRequest, myTrafficLights, myType, NODETYPE_ALLWAY_STOP, NODETYPE_RAIL_CROSSING, NODETYPE_RAIL_SIGNAL, NODETYPE_RIGHT_BEFORE_LEFT, rightTurnConflict(), NBEdge::Connection::tlID, NBEdge::Connection::toEdge, and NBEdge::Connection::toLane.
Referenced by NBEdge::buildInnerEdges(), and tlsContConflict().
|
inline |
get num of crossings from sumo net
Definition at line 663 of file NBNode.h.
References myCrossingsLoadedFromSumoNet.
int NBNode::numNormalConnections | ( | ) | const |
return the number of lane-to-lane connections at this junction (excluding crossings)
Definition at line 3140 of file NBNode.cpp.
References NBRequest::getSizes(), myIncomingEdges, and myRequest.
Referenced by computeLogic(), and NWWriter_OpenDrive::writeNetwork().
void NBNode::reinit | ( | const Position & | position, |
SumoXMLNodeType | type, | ||
bool | updateEdgeGeometries = false |
||
) |
Resets initial values.
[in] | position | The position of the node |
[in] | type | The type of the node |
[in] | updateEdgeGeometries | Whether the geometires of all connected edges shall be updated |
Definition at line 303 of file NBNode.cpp.
References isTrafficLight(), myIncomingEdges, myOutgoingEdges, myPosition, myType, and removeTrafficLights().
Referenced by NBNodeCont::discardRailSignals(), NBNodeCont::discardTrafficLights(), NIImporter_OpenStreetMap::insertNodeChecking(), NBNodeCont::joinNodeCluster(), GNEJunction::moveJunctionGeometry(), NIXMLNodesHandler::processNodeType(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), and GNEJunction::setAttribute().
|
private |
remap removed
Definition at line 1827 of file NBNode.cpp.
References NBConnection::getFrom(), NBConnection::getTo(), myBlockedConnections, and NBTrafficLightLogicCont::remapRemoved().
Referenced by removeSelfLoops().
void NBNode::removeCrossing | ( | const EdgeVector & | edges | ) |
remove a pedestrian crossing from this node (identified by its edges)
Definition at line 3081 of file NBNode.cpp.
References myCrossings.
Referenced by GNEChange_Crossing::redo(), and GNEChange_Crossing::undo().
void NBNode::removeDoubleEdges | ( | ) |
remove duble edges
Definition at line 1493 of file NBNode.cpp.
References myAllEdges, myIncomingEdges, and myOutgoingEdges.
Referenced by replaceIncoming(), replaceOutgoing(), and NBEdgeCont::splitAt().
void NBNode::removeEdge | ( | NBEdge * | edge, |
bool | removeFromConnections = true |
||
) |
Removes edge from this node and optionally removes connections as well.
Definition at line 1604 of file NBNode.cpp.
References myAllEdges, myIncomingEdges, myOutgoingEdges, and myTrafficLights.
Referenced by NBEdgeCont::extract(), NBEdgeCont::insert(), NBEdge::reinit(), NBEdge::reinitNodes(), and NBEdgeCont::removeUnwishedEdges().
|
private |
remove all traffic light definitions that are part of a joined tls
Definition at line 896 of file NBNode.cpp.
References myTrafficLights.
Referenced by computeLogic().
int NBNode::removeSelfLoops | ( | NBDistrictCont & | dc, |
NBEdgeCont & | ec, | ||
NBTrafficLightLogicCont & | tc | ||
) |
Removes edges which are both incoming and outgoing into this node.
If given, the connections to other edges participating in this node are updated
[in,opt. | changed] dc The districts container to update |
[in,opt. | changed] ec The edge container to remove the edges from |
[in,opt. | changed] tc The traffic lights container to update |
Definition at line 418 of file NBNode.cpp.
References NBEdgeCont::erase(), NBEdge::getConnectedEdges(), NBEdge::getID(), NBEdge::getIncomingEdges(), myIncomingEdges, myOutgoingEdges, NBEdge::remapConnections(), remapRemoved(), and WRITE_WARNINGF.
void NBNode::removeTrafficLight | ( | NBTrafficLightDefinition * | tlDef | ) |
Removes the given traffic light from this node.
Definition at line 371 of file NBNode.cpp.
References myTrafficLights, and NBTrafficLightDefinition::removeNode().
Referenced by NBNodeCont::discardTrafficLights(), GNEJunction::removeTrafficLight(), removeTrafficLights(), NBTrafficLightLogicCont::setTLControllingInformation(), and NBNodeTypeComputer::validateRailCrossings().
void NBNode::removeTrafficLights | ( | ) |
Removes all references to traffic lights that control this tls.
Definition at line 378 of file NBNode.cpp.
References myTrafficLights, and removeTrafficLight().
Referenced by NBNodeCont::extract(), NBNodeCont::guessTLs(), NIXMLNodesHandler::processTrafficLightDefinitions(), and reinit().
void NBNode::replaceIncoming | ( | const EdgeVector & | which, |
NBEdge * | by | ||
) |
Replaces occurences of every edge from the given list within the list of incoming by the second Connections are remapped, too.
Definition at line 1439 of file NBNode.cpp.
References myDistrict, removeDoubleEdges(), NBDistrict::replaceIncoming(), and replaceIncoming().
Replaces occurences of the first edge within the list of incoming by the second Connections are remapped, too.
Definition at line 1425 of file NBNode.cpp.
References myAllEdges, myIncomingEdges, and replaceInConnectionProhibitions().
Referenced by NBEdgeCont::joinSameNodeConnectingEdges(), NBNodeCont::removeUnwishedNodes(), replaceIncoming(), and NBEdgeCont::splitAt().
|
private |
replace incoming connections prohibitions
Definition at line 1458 of file NBNode.cpp.
References myBlockedConnections, NBConnection::replaceFrom(), and NBConnection::replaceTo().
Referenced by replaceIncoming(), and replaceOutgoing().
void NBNode::replaceOutgoing | ( | const EdgeVector & | which, |
NBEdge * | by | ||
) |
Replaces occurences of every edge from the given list within the list of outgoing by the second Connections are remapped, too.
Definition at line 1407 of file NBNode.cpp.
References myDistrict, removeDoubleEdges(), NBDistrict::replaceOutgoing(), and replaceOutgoing().
Replaces occurences of the first edge within the list of outgoing by the second Connections are remapped, too.
Definition at line 1389 of file NBNode.cpp.
References myAllEdges, myIncomingEdges, myOutgoingEdges, replaceInConnectionProhibitions(), and NBEdge::replaceInConnections().
Referenced by NBEdgeCont::joinSameNodeConnectingEdges(), replaceOutgoing(), and NBEdgeCont::splitAt().
void NBNode::reshiftPosition | ( | double | xoff, |
double | yoff | ||
) |
Applies an offset to the node.
[in] | xoff | The x-offset to apply |
[in] | yoff | The y-offset to apply |
Definition at line 329 of file NBNode.cpp.
References Position::add(), PositionVector::add(), myCrossings, myPoly, myPosition, and myWalkingAreaCustomShapes.
bool NBNode::rightOnRedConflict | ( | int | index, |
int | foeIndex | ||
) | const |
whether the given index must yield to the foeIndex while turing right on a red light
Definition at line 3258 of file NBNode.cpp.
References myTrafficLights, myType, and NODETYPE_TRAFFIC_LIGHT_RIGHT_ON_RED.
Referenced by NBRequest::getResponseString().
|
static |
return whether the given laneToLane connection is a right turn which must yield to a bicycle crossings
Definition at line 1698 of file NBNode.cpp.
References GeomHelper::getCWAngleDiff(), getDirection(), NBEdge::getEndAngle(), NBEdge::getStartAngle(), NBEdge::getToNode(), NBEdge::isTurningDirectionAt(), LINKDIR_LEFT, LINKDIR_PARTLEFT, LINKDIR_PARTRIGHT, LINKDIR_RIGHT, and LINKDIR_STRAIGHT.
Referenced by NBEdge::buildInnerEdges(), NBOwnTLDef::correctConflicting(), NBRequest::getFoesString(), NBRequest::getResponseString(), NBLoadedSUMOTLDef::initNeedsContRelation(), NBRequest::mustBrake(), NBLoadedTLDef::myCompute(), and needsCont().
bool NBNode::setCrossingTLIndices | ( | const std::string & | tlID, |
int | startIndex | ||
) |
Definition at line 3124 of file NBNode.cpp.
References getCrossings().
Referenced by NBTrafficLightLogicCont::setTLControllingInformation().
void NBNode::setCustomShape | ( | const PositionVector & | shape | ) |
set the junction shape
Definition at line 2146 of file NBNode.cpp.
References myAllEdges, myHaveCustomPoly, and myPoly.
Referenced by NIImporter_SUMO::addJunction(), NIXMLNodesHandler::processNodeType(), and GNEJunction::setAttribute().
|
inline |
set method for computing right-of-way
Definition at line 521 of file NBNode.h.
References myFringeType.
Referenced by NIImporter_SUMO::addJunction(), NIXMLNodesHandler::processNodeType(), and GNEJunction::setAttribute().
|
inlineinherited |
resets the id
[in] | newID | The new id of this object |
Definition at line 84 of file Named.h.
References Named::myID.
Referenced by Distribution_Parameterized::parse(), NBLoadedSUMOTLDef::reconstructLogic(), NBEdgeCont::remapIDs(), NBEdgeCont::rename(), NBNodeCont::rename(), GNEJunction::setAttribute(), and IntermodalNetwork< E, L, N, V >::splitEdge().
|
inline |
set the keepClear flag
Definition at line 511 of file NBNode.h.
References myKeepClear.
Referenced by NIXMLNodesHandler::processNodeType().
|
inherited |
Sets a parameter.
[in] | key | The parameter's name |
[in] | value | The parameter's value |
Definition at line 46 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NLHandler::addDistrict(), RONetHandler::addParam(), SUMORouteHandler::addParam(), ShapeHandler::addPOI(), NBEdge::append(), NIImporter_OpenStreetMap::insertNodeChecking(), NBNodeCont::joinNodeCluster(), NBEdge::Lane::Lane(), NIImporter_OpenDrive::loadNetwork(), MSStateHandler::myStartElement(), NIImporter_MATSim::EdgesHandler::myStartElement(), NIXMLNodesHandler::myStartElement(), NIXMLTrafficLightsHandler::myStartElement(), ShapeHandler::myStartElement(), GNEAdditionalHandler::parseParameter(), GNEVehicleType::setAttribute(), NIImporter_OpenDrive::setLaneAttributes(), libsumo::Edge::setParameter(), libsumo::POI::setParameter(), libsumo::Polygon::setParameter(), libsumo::Lane::setParameter(), libsumo::Route::setParameter(), and libsumo::TrafficLight::setParameter().
|
inherited |
set the inner key/value map in map<string, string> format
Definition at line 127 of file Parameterised.cpp.
References Parameterised::getParametersMap(), and Parameterised::myMap.
|
inherited |
set the inner key/value map in map<string, string> format
Definition at line 133 of file Parameterised.cpp.
References Parameterised::myMap.
|
inherited |
set the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN"
Definition at line 139 of file Parameterised.cpp.
References StringTokenizer::getVector(), and Parameterised::myMap.
Referenced by GNEAccess::setAttribute(), GNEBusStop::setAttribute(), GNECalibrator::setAttribute(), GNECalibratorFlow::setAttribute(), GNEChargingStation::setAttribute(), GNEClosingLaneReroute::setAttribute(), GNEClosingReroute::setAttribute(), GNEContainerStop::setAttribute(), GNEDestProbReroute::setAttribute(), GNEDetectorE1::setAttribute(), GNEDetectorE1Instant::setAttribute(), GNEDetectorE2::setAttribute(), GNEDetectorE3::setAttribute(), GNEDetectorEntryExit::setAttribute(), GNEParkingArea::setAttribute(), GNEParkingAreaReroute::setAttribute(), GNEParkingSpace::setAttribute(), GNEPOI::setAttribute(), GNEPoly::setAttribute(), GNERerouter::setAttribute(), GNERerouterInterval::setAttribute(), GNERouteProbe::setAttribute(), GNERouteProbReroute::setAttribute(), GNETAZ::setAttribute(), GNETAZSourceSink::setAttribute(), GNEVaporizer::setAttribute(), GNEVariableSpeedSign::setAttribute(), GNEVariableSpeedSignStep::setAttribute(), GNEPerson::setAttribute(), GNEPersonTrip::setAttribute(), GNERide::setAttribute(), GNERoute::setAttribute(), GNEVehicle::setAttribute(), GNEVehicleType::setAttribute(), GNEWalk::setAttribute(), GNEConnection::setAttribute(), GNEEdge::setAttribute(), GNEJunction::setAttribute(), and GNELane::setAttribute().
|
private |
sets the priorites in case of a priority junction
|
inline |
set the turning radius
Definition at line 506 of file NBNode.h.
References myRadius.
Referenced by NIImporter_SUMO::addJunction(), NIXMLNodesHandler::processNodeType(), and GNEJunction::setAttribute().
|
inline |
set method for computing right-of-way
Definition at line 516 of file NBNode.h.
References myRightOfWay.
Referenced by NIImporter_SUMO::addJunction(), NIXMLNodesHandler::processNodeType(), and GNEJunction::setAttribute().
void NBNode::setRoundabout | ( | ) |
update the type of this node as a roundabout
Definition at line 3061 of file NBNode.cpp.
References myType, NODETYPE_PRIORITY, and NODETYPE_RIGHT_BEFORE_LEFT.
Referenced by NBEdgeCont::markRoundabouts().
void NBNode::shiftTLConnectionLaneIndex | ( | NBEdge * | edge, |
int | offset, | ||
int | threshold = -1 |
||
) |
patches loaded signal plans by modifying lane indices above threshold by the given offset
Definition at line 410 of file NBNode.cpp.
References myTrafficLights.
Referenced by NBEdge::addLane(), NBEdge::addRestrictedLane(), and NBEdge::restoreRestrictedLane().
void NBNode::sortEdges | ( | bool | useNodeShape | ) |
sort all edge containers for this node
Definition at line 3271 of file NBNode.cpp.
References computeNodeShape(), DEBUGCOND, myAllEdges, myCrossings, myIncomingEdges, myOutgoingEdges, and NBNodesEdgesSorter::swapWhenReversed().
bool NBNode::tlsContConflict | ( | const NBEdge * | from, |
const NBEdge::Connection & | c, | ||
const NBEdge * | foeFrom, | ||
const NBEdge::Connection & | foe | ||
) | const |
whether the connection must yield if the foe remains on the intersection after its phase ends
Definition at line 886 of file NBNode.cpp.
References foes(), NBEdge::Connection::haveVia, isTLControlled(), NBEdge::isTurningDirectionAt(), needsCont(), NBEdge::Connection::tlLinkIndex, and NBEdge::Connection::toEdge.
Referenced by NBRequest::getResponseString().
bool NBNode::turnFoes | ( | const NBEdge * | from, |
const NBEdge * | to, | ||
int | fromLane, | ||
const NBEdge * | from2, | ||
const NBEdge * | to2, | ||
int | fromLane2, | ||
bool | lefthand = false |
||
) | const |
return whether the given laneToLane connection originate from the same edge and are in conflict due to turning across each other
Definition at line 1745 of file NBNode.cpp.
References NBEdge::isTurningDirectionAt(), myAllEdges, NBContHelper::nextCCW(), NBContHelper::nextCW(), and UNUSED_PARAMETER.
Referenced by NBRequest::getFoesString().
|
inline |
return whether a priority road turns at this node
Definition at line 764 of file NBNode.h.
References myTypeWasGuessed.
Referenced by NBEdgeCont::guessRoundabouts().
|
inherited |
Removes a parameter.
[in] | key | The parameter's name |
Definition at line 52 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NIImporter_OpenStreetMap::insertEdge(), and GNEVehicleType::setAttribute().
|
inherited |
Adds or updates all given parameters from the map.
[in] | mapArg | The keys/values to insert |
Definition at line 58 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NIImporter_SUMO::_loadNetwork(), PCLoaderOSM::addPOI(), PCLoaderOSM::addPolygon(), NLHandler::closeEdge(), NLJunctionControlBuilder::closeJunction(), NBTrafficLightDefinition::compute(), NIImporter_OpenStreetMap::insertEdge(), NBEdge::NBEdge(), and NBLoadedSUMOTLDef::NBLoadedSUMOTLDef().
bool NBNode::writeLogic | ( | OutputDevice & | into | ) | const |
writes the XML-representation of the logic as a bitset-logic XML representation
Definition at line 958 of file NBNode.cpp.
References myRequest, and NBRequest::writeLogic().
Referenced by NWWriter_SUMO::writeJunction().
|
inherited |
write Params in the given outputdevice
Definition at line 154 of file Parameterised.cpp.
References OutputDevice::closeTag(), StringUtils::escapeXML(), Parameterised::myMap, OutputDevice::openTag(), SUMO_ATTR_KEY, SUMO_ATTR_VALUE, SUMO_TAG_PARAM, and OutputDevice::writeAttr().
Referenced by ROPerson::saveAsXML(), ROVehicle::saveAsXML(), MEVehicle::saveState(), MSVehicle::saveState(), SUMOVTypeParameter::write(), GNEAdditional::writeAdditional(), NWWriter_SUMO::writeConnection(), GNEPerson::writeDemandElement(), GNEPersonTrip::writeDemandElement(), GNERide::writeDemandElement(), GNERoute::writeDemandElement(), GNEVehicle::writeDemandElement(), GNEWalk::writeDemandElement(), NWWriter_SUMO::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), NWWriter_SUMO::writeJunction(), NWWriter_SUMO::writeLane(), NWWriter_XML::writeNodes(), MSDevice_Vehroutes::writeOutput(), SUMOPolygon::writeXML(), and PointOfInterest::writeXML().
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
static |
Definition at line 214 of file NBNode.h.
Referenced by bezierControlPoints(), and NBEdge::buildInnerEdges().
|
static |
Definition at line 212 of file NBNode.h.
Referenced by bezierControlPoints(), computeInternalLaneShape(), and NBNodeShapeComputer::getSmoothCorner().
|
static |
flags for controlling shape generation
Definition at line 211 of file NBNode.h.
Referenced by bezierControlPoints().
|
static |
Definition at line 205 of file NBNode.h.
Referenced by buildCrossings(), NBEdge::getCCWBoundaryLine(), NBEdge::getCWBoundaryLine(), NBEdge::getFirstAllowedLaneIndex(), and NBEdge::getFirstNonPedestrianLaneIndex().
|
static |
edge directions (for pedestrian related stuff)
Definition at line 204 of file NBNode.h.
Referenced by buildCrossings(), NBTrafficLightDefinition::collectEdges(), computeLanes2Lanes(), NBEdge::expandableBy(), NBEdge::getCCWBoundaryLine(), NBEdge::getCWBoundaryLine(), NBEdge::getFirstAllowedLaneIndex(), and NBEdge::getFirstNonPedestrianLaneIndex().
|
static |
Definition at line 213 of file NBNode.h.
Referenced by bezierControlPoints(), and buildWalkingAreas().
|
private |
Vector of incoming and outgoing edges.
Definition at line 819 of file NBNode.h.
Referenced by addIncomingEdge(), addOutgoingEdge(), buildWalkingAreas(), NBNodeShapeComputer::compute(), computeLogic(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), NBNodeShapeComputer::computeUniqueDirectionList(), crossingBetween(), edgesBetween(), getDirection(), getEdges(), getEdgesSortedByAngleAtNodeCenter(), getEdgesThatApproach(), getEndPoints(), getNextCompatibleOutgoing(), guessCrossings(), isLeftMover(), NBNodeShapeComputer::joinSameDirectionEdges(), removeDoubleEdges(), removeEdge(), replaceIncoming(), replaceOutgoing(), setCustomShape(), sortEdges(), and turnFoes().
|
private |
The container for connection block dependencies.
Definition at line 834 of file NBNode.h.
Referenced by addSortedLinkFoes(), computeLogic(), getProhibitions(), remapRemoved(), and replaceInConnectionProhibitions().
|
private |
Vector of crossings.
Definition at line 822 of file NBNode.h.
Referenced by addCrossing(), buildCrossings(), buildCrossingsAndWalkingAreas(), checkCrossingDuplicated(), checkIsRemovableReporting(), discardAllCrossings(), getCrossing(), getCrossings(), getCrossingsIncludingInvalid(), guessCrossings(), mirrorX(), removeCrossing(), reshiftPosition(), and sortEdges().
|
private |
number of crossings loaded from a sumo net
Definition at line 867 of file NBNode.h.
Referenced by addCrossing(), and numCrossingsFromSumoNet().
|
private |
whether to discard all pedestrian crossings
Definition at line 864 of file NBNode.h.
Referenced by buildCrossings(), discardAllCrossings(), and guessCrossings().
|
private |
geometry error after computation of internal lane shapes
Definition at line 870 of file NBNode.h.
Referenced by bezierControlPoints(), buildInnerEdges(), and getDisplacementError().
|
private |
The district the node is the centre of.
Definition at line 837 of file NBNode.h.
Referenced by replaceIncoming(), and replaceOutgoing().
|
private |
fringe type of this node
Definition at line 861 of file NBNode.h.
Referenced by getFringeType(), and setFringeType().
|
private |
whether this nodes shape was set by the user
Definition at line 843 of file NBNode.h.
Referenced by computeNodeShape(), hasCustomShape(), and setCustomShape().
|
protectedinherited |
The name of the object.
Definition at line 133 of file Named.h.
Referenced by MSE2Collector::addDetectorToLanes(), RODFDetector::buildDestinationDistribution(), NGEdge::buildNBEdge(), NGNode::buildNBNode(), MSSOTLTrafficLightLogic::checkPhases(), computeNodeShape(), MSE2Collector::detectorUpdate(), GNEPOI::getAttribute(), GNEPoly::getAttribute(), MSLane::getCanonicalPredecessorLane(), MSLane::getCanonicalSuccessorLane(), Named::getID(), NBEdge::getLaneID(), ROEdge::getStoredEffort(), MSLane::getSurroundingVehicles(), ROEdge::getTravelTime(), NBEdge::init(), MSActuatedTrafficLightLogic::init(), MSDelayBasedTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSLane::isInsertionSuccess(), NBNode(), MSE2Collector::notifyEnter(), MSE2Collector::notifyLeave(), MSE2Collector::notifyMove(), MSMeanData::openInterval(), RORouteDef::preComputeCurrentRoute(), NBEdge::reinitNodes(), MSRoute::release(), GNEPOI::setAttribute(), GNEPoly::setAttribute(), Named::setID(), MSSOTLTrafficLightLogic::setToATargetPhase(), Distribution_Parameterized::toStr(), MSChargingStation::writeChargingStationOutput(), RODFDetector::writeEmitterDefinition(), RODFDetector::writeSingleSpeedTrigger(), MEInductLoop::writeXMLOutput(), and MSE3Collector::writeXMLOutput().
|
private |
Vector of incoming edges.
Definition at line 813 of file NBNode.h.
Referenced by addIncomingEdge(), avoidOverlap(), buildInnerEdges(), checkIsRemovableReporting(), computeLanes2Lanes(), computeLogic(), computeNodeShape(), NBNodeTypeComputer::computeNodeTypes(), displaceShapeAtWidthChange(), geometryLike(), getConnectionIndex(), getEdgesToJoin(), getEmptyDir(), getIncomingEdges(), getOppositeIncoming(), getPossiblySplittedIncoming(), hasIncoming(), invalidateIncomingConnections(), isConstantWidthTransition(), isLeftMover(), isSimpleContinuation(), numNormalConnections(), reinit(), removeDoubleEdges(), removeEdge(), removeSelfLoops(), replaceIncoming(), replaceOutgoing(), NBEdgePriorityComputer::setPriorityJunctionPriorities(), and sortEdges().
|
private |
Definition at line 875 of file NBNode.h.
Referenced by isBentPriority(), and markBentPriority().
|
private |
whether the junction area must be kept clear
Definition at line 855 of file NBNode.h.
Referenced by getKeepClear(), and setKeepClear().
|
privateinherited |
The key->value map.
Definition at line 120 of file Parameterised.h.
Referenced by Parameterised::clearParameter(), Parameterised::getDouble(), Parameterised::getParameter(), Parameterised::getParametersMap(), Parameterised::getParametersStr(), Parameterised::knowsParameter(), Parameterised::setParameter(), Parameterised::setParameters(), Parameterised::setParametersMap(), Parameterised::setParametersStr(), Parameterised::unsetParameter(), Parameterised::updateParameters(), and Parameterised::writeParams().
|
private |
Vector of outgoing edges.
Definition at line 816 of file NBNode.h.
Referenced by addOutgoingEdge(), checkIsRemovableReporting(), computeLanes2Lanes(), computeLogic(), computeNodeShape(), displaceShapeAtWidthChange(), geometryLike(), getConnectionTo(), getEdgesToJoin(), getEmptyDir(), getOutgoingEdges(), getPossiblySplittedOutgoing(), hasOutgoing(), invalidateOutgoingConnections(), isConstantWidthTransition(), isLeftMover(), isSimpleContinuation(), reinit(), removeDoubleEdges(), removeEdge(), removeSelfLoops(), replaceOutgoing(), NBEdgePriorityComputer::setPriorityJunctionPriorities(), and sortEdges().
|
private |
the (outer) shape of the junction
Definition at line 840 of file NBNode.h.
Referenced by computeNodeShape(), getCenter(), getShape(), GNEJunction::invalidateShape(), mirrorX(), reshiftPosition(), and setCustomShape().
|
private |
The position the node lies at.
Definition at line 810 of file NBNode.h.
Referenced by computeNodeShape(), getCenter(), getEmptyDir(), getPosition(), mirrorX(), reinit(), and reshiftPosition().
|
private |
the turning radius (for all corners) at this node in m.
Definition at line 852 of file NBNode.h.
Referenced by computeNodeShape(), getRadius(), and setRadius().
|
private |
Node requests.
Definition at line 846 of file NBNode.h.
Referenced by computeLogic(), computeLogic2(), foes(), forbids(), getFoes(), getResponse(), mustBrake(), needsCont(), numNormalConnections(), writeLogic(), and ~NBNode().
|
private |
how to compute right of way for this node
Definition at line 858 of file NBNode.h.
Referenced by getRightOfWay(), and setRightOfWay().
|
private |
traffic lights of node
Definition at line 849 of file NBNode.h.
Referenced by addTrafficLight(), checkIsRemovableReporting(), getControllingTLS(), invalidateTLS(), isTLControlled(), needsCont(), removeEdge(), removeJoinedTrafficLights(), removeTrafficLight(), removeTrafficLights(), rightOnRedConflict(), and shiftTLConnectionLaneIndex().
|
private |
The type of the junction.
Definition at line 831 of file NBNode.h.
Referenced by addTrafficLight(), checkCrossing(), checkIsRemovableReporting(), computeLanes2Lanes(), computeLogic(), NBNodeTypeComputer::computeNodeTypes(), getLinkState(), getType(), isDistrict(), needsCont(), reinit(), rightOnRedConflict(), setRoundabout(), and NBNodeTypeComputer::validateRailCrossings().
|
private |
whether the node type was guessed rather than loaded
Definition at line 878 of file NBNode.h.
Referenced by NBNodeTypeComputer::computeNodeTypes(), and typeWasGuessed().
|
private |
Vector of custom walking areas shapes.
Definition at line 828 of file NBNode.h.
Referenced by addWalkingAreaShape(), buildWalkingAreas(), getWalkingAreaCustomShapes(), mirrorX(), and reshiftPosition().
|
private |
Vector of walking areas.
Definition at line 825 of file NBNode.h.
Referenced by buildCrossingsAndWalkingAreas(), buildWalkingAreas(), discardWalkingareas(), getWalkingAreas(), and mirrorX().
|
static |
Definition at line 215 of file NBNode.h.
Referenced by bezierControlPoints(), and NBEdge::buildInnerEdges().
|
static |
unspecified lane width
Definition at line 208 of file NBNode.h.
Referenced by computeNodeShape(), NBNodeShapeComputer::computeNodeShapeDefault(), NWWriter_SUMO::writeJunction(), and NWWriter_XML::writeNodes().