![]() |
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... | |
Public Types | |
typedef std::map< std::string, PositionVector > | CustomShapeMap |
map for custon shapes More... | |
Public Member Functions | |
void | addCrossing (EdgeVector edges, double width, bool priority, 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 | avoidOverlap () |
fix overlap More... | |
int | buildCrossings () |
build pedestrian crossings More... | |
void | buildCrossingsAndWalkingAreas (bool discardInvalid=true) |
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 already exist a crossing with the same edges as the input More... | |
bool | checkIsRemovable () const |
check if node is removable More... | |
PositionVector | computeInternalLaneShape (NBEdge *fromE, const NBEdge::Connection &con, int numPoints, NBNode *recordError=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, OptionsCont &oc) |
computes the node's type, logic and traffic light 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) 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 () |
discard all crossings 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... | |
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... | |
const Crossing & | getCrossing (const std::string &id) const |
return the crossing with the given id More... | |
Crossing & | getCrossingRef (const std::string &id) |
return a reference to the crossing with the given id More... | |
const std::vector< Crossing > & | getCrossings () const |
return this junctions pedestrian crossings More... | |
const CustomShapeMap & | getCustomLaneShapes () const |
sets a custom shape for an internal lane More... | |
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... | |
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... | |
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... | |
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 PositionVector & | getShape () const |
retrieve the junction shape More... | |
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 | 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 |
if node is near district More... | |
bool | isSimpleContinuation (bool checkLaneNumbers=true) const |
check if node is a simple continuation 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, SumoXMLNodeType type) | |
Constructor. More... | |
NBNode (const std::string &id, const Position &position, NBDistrict *district=0) | |
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 (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 | 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 | 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... | |
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... | |
bool | rightOnRedConflict (int index, int foeIndex) const |
whether the given index must yield to the foeIndex while turing right on a red light More... | |
void | setCrossingTLIndices (const std::string &tlID, int startIndex) |
set tl indices of this nodes crossing starting at the given index More... | |
void | setCustomLaneShape (const std::string &laneID, const PositionVector &shape) |
sets a custom shape for an internal lane More... | |
void | setCustomShape (const PositionVector &shape) |
set the junction shape More... | |
void | setID (const std::string &newID) |
resets the id More... | |
void | setKeepClear (bool keepClear) |
set the keepClear flag More... | |
void | setRadius (double radius) |
set the turning radius 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 | writeLogic (OutputDevice &into, const bool checkLaneFoes) const |
writes the XML-representation of the logic as a bitset-logic XML representation 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... | |
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... | |
bool | isJoinedTLSControlled () const |
Returns whether this node is controlled by a tls that spans over more than one node. 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) |
causes the traffic light to be computed anew More... | |
void | shiftTLConnectionLaneIndex (NBEdge *edge, int offset) |
patches loaded signal plans by modifying lane indices 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 PositionVector | bezierControlPoints (const PositionVector &begShape, const PositionVector &endShape, bool isTurnaround, double extrapolateBeg, double extrapolateEnd, bool &ok, NBNode *recordError=0, double straightThresh=DEG2RAD(5)) |
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 | BACKWARD |
static const double | DEFAULT_CROSSING_WIDTH |
default width of pedetrian crossings More... | |
static const int | FORWARD |
edge directions (for pedestrian related stuff) More... | |
static const double | UNSPECIFIED_RADIUS = -1 |
unspecified lane width More... | |
Protected Attributes | |
std::string | myID |
The name of the object. More... | |
Private Member Functions | |
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... | |
EdgeVector * | getEdgesThatApproach (NBEdge *currentOutgoing) |
returns a list of edges which are connected to the given outgoing edge More... | |
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 | 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 | isLongEnough (NBEdge *out, double minLength) |
check if is long enough 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... | |
CustomShapeMap | myCustomLaneShapes |
custom lane shapes 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... | |
bool | myHaveCustomPoly |
whether this nodes shape was set by the user More... | |
EdgeVector | myIncomingEdges |
Vector of incoming edges. More... | |
bool | myKeepClear |
whether the junction area must be kept clear 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... | |
std::set< NBTrafficLightDefinition * > | myTrafficLights |
traffic lights of node More... | |
SumoXMLNodeType | myType |
The type of the junction. 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.
typedef std::map<std::string, PositionVector> NBNode::CustomShapeMap |
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 225 of file NBNode.cpp.
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 241 of file NBNode.cpp.
NBNode::~NBNode | ( | ) |
|
private |
invalidated copy constructor
void NBNode::addCrossing | ( | EdgeVector | edges, |
double | width, | ||
bool | priority, | ||
bool | fromSumoNet = false |
||
) |
add a pedestrian crossing to this node
Definition at line 2544 of file NBNode.cpp.
References myCrossings, and myCrossingsLoadedFromSumoNet.
Referenced by NIImporter_SUMO::_loadNetwork(), NIXMLConnectionsHandler::addCrossing(), checkCrossing(), getProhibitions(), GNEChange_Crossing::redo(), and GNEChange_Crossing::undo().
void NBNode::addIncomingEdge | ( | NBEdge * | edge | ) |
adds an incoming edge
Definition at line 412 of file NBNode.cpp.
References myAllEdges, and myIncomingEdges.
Referenced by getControllingTLS(), NBEdge::init(), GNENet::insertEdge(), NBEdge::reinitNodes(), and NBEdge::splitGeometry().
void NBNode::addOutgoingEdge | ( | NBEdge * | edge | ) |
adds an outgoing edge
Definition at line 422 of file NBNode.cpp.
References myAllEdges, and myOutgoingEdges.
Referenced by getControllingTLS(), NBEdge::init(), GNENet::insertEdge(), and NBEdge::reinitNodes().
void NBNode::addSortedLinkFoes | ( | const NBConnection & | mayDrive, |
const NBConnection & | mustStop | ||
) |
add shorted link FOES
Definition at line 1248 of file NBNode.cpp.
References NBConnection::getFrom(), NBConnection::getTo(), myBlockedConnections, and WRITE_WARNING.
Referenced by NIImporter_SUMO::_loadNetwork(), NIVissimDisturbance::addToNode(), getControllingTLS(), NIXMLConnectionsHandler::myStartElement(), and NIVissimConflictArea::setPriorityRegulation().
|
inlineinherited |
Adds this object to the given container.
Definition at line 129 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 310 of file NBNode.cpp.
References isTrafficLight(), myTrafficLights, myType, NODETYPE_RAIL_CROSSING, NODETYPE_RAIL_SIGNAL, and NODETYPE_TRAFFIC_LIGHT.
Referenced by NBTrafficLightDefinition::addNode(), NBLoadedTLDef::addToSignalGroup(), getKeepClear(), and NIImporter_OpenDrive::loadNetwork().
void NBNode::avoidOverlap | ( | ) |
fix overlap
Definition at line 2683 of file NBNode.cpp.
References NBEdge::getTurnDestination(), myIncomingEdges, and NBEdge::shiftPositionAtNode().
Referenced by NBNetBuilder::computeSingleNode(), and getWalkingAreas().
|
static |
get bezier control points
Definition at line 487 of file NBNode.cpp.
References PositionVector::angleAt2D(), GeomHelper::angleDiff(), Position::angleTo2D(), DEBUGCOND, Position::distanceTo2D(), PositionVector::extrapolate2D(), Position::INVALID, M_PI, MAX2(), MIN2(), myDisplacementError, PositionVector::nearest_offset_to_point2D(), POSITION_EPS, PositionVector::positionAtOffset2D(), RAD2DEG, Position::set(), Position::sub(), Position::x(), Position::y(), and Position::z().
Referenced by computeSmoothShape(), hasCustomShape(), NWWriter_OpenDrive::writeGeomSmooth(), and NWWriter_OpenDrive::writeNetwork().
int NBNode::buildCrossings | ( | ) |
build pedestrian crossings
Definition at line 2063 of file NBNode.cpp.
References BACKWARD, PositionVector::extrapolate(), FORWARD, gDebugFlag1, Named::getID(), PositionVector::move2side(), myCrossings, myDiscardAllCrossings, NBHelpers::relAngle(), NBEdge::Lane::shape, SUMO_const_laneWidth, toString(), NBEdge::UNSPECIFIED_WIDTH, NBEdge::Lane::width, and WRITE_WARNING.
Referenced by buildCrossingsAndWalkingAreas(), and getDisplacementError().
void NBNode::buildCrossingsAndWalkingAreas | ( | bool | discardInvalid = true | ) |
build crossings, and walkingareas. Also removes invalid loaded crossings if wished
Definition at line 2008 of file NBNode.cpp.
References buildCrossings(), buildWalkingAreas(), Named::getID(), OptionsCont::getOptions(), myCrossings, myWalkingAreas, toString(), and WRITE_WARNING.
Referenced by NBNetBuilder::computeSingleNode(), getDisplacementError(), and GNEJunction::rebuildGNECrossings().
void NBNode::buildInnerEdges | ( | ) |
build internal lanes, pedestrian crossings and walking areas
Definition at line 2031 of file NBNode.cpp.
References myCustomLaneShapes, myDisplacementError, and myIncomingEdges.
Referenced by NBNetBuilder::computeSingleNode(), and getDisplacementError().
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 2145 of file NBNode.cpp.
References PositionVector::append(), computeSmoothShape(), crossingBetween(), Position::distanceTo2D(), gDebugFlag1, getEdgesSortedByAngleAtNodeCenter(), NBEdge::getFromNode(), Named::getID(), NBEdge::getLanes(), NBEdge::getLaneShape(), PositionVector::getSubpartByIndex(), NBEdge::hasConnectionTo(), NBNode::Crossing::id, NBNode::WalkingArea::id, NBNode::WalkingArea::length, MAX2(), PositionVector::move2side(), myAllEdges, myCrossings, myWalkingAreas, NBNode::WalkingArea::nextCrossing, 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, toString(), NBEdge::UNSPECIFIED_WIDTH, NBEdge::Lane::width, NBNode::Crossing::width, NBNode::WalkingArea::width, and WRITE_WARNING.
Referenced by buildCrossingsAndWalkingAreas(), and getDisplacementError().
int NBNode::checkCrossing | ( | EdgeVector | candidates | ) |
Definition at line 1889 of file NBNode.cpp.
References addCrossing(), DEFAULT_CROSSING_WIDTH, 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(), isTLControlled(), myType, NODETYPE_RAIL_CROSSING, SPLIT_CROSSING_ANGLE_THRESHOLD, SPLIT_CROSSING_WIDTH_THRESHOLD, and toString().
Referenced by getDisplacementError(), and guessCrossings().
bool NBNode::checkCrossingDuplicated | ( | EdgeVector | edges | ) |
return true if already exist a crossing with the same edges as the input
Definition at line 1980 of file NBNode.cpp.
References myCrossings.
Referenced by getDisplacementError(), and GNECrossingFrame::onCmdCreateCrossing().
bool NBNode::checkIsRemovable | ( | ) | const |
check if node is removable
Definition at line 1642 of file NBNode.cpp.
References NBEdge::getTurnDestination(), myCrossings, myIncomingEdges, myOutgoingEdges, and myTrafficLights.
Referenced by getEdgesToJoin(), GNEJunction::getPopUpMenu(), hasCustomShape(), NBNodeCont::removeUnwishedNodes(), and GNENet::replaceJunctionByGeometry().
PositionVector NBNode::computeInternalLaneShape | ( | NBEdge * | fromE, |
const NBEdge::Connection & | con, | ||
int | numPoints, | ||
NBNode * | recordError = 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 627 of file NBNode.cpp.
References PositionVector::append(), computeSmoothShape(), NBEdge::Connection::fromLane, NBEdge::Connection::getDescription(), NBEdge::Connection::getInternalLaneID(), NBEdge::getLaneShape(), NBEdge::getLaneStruct(), NBEdge::getNumLanes(), PositionVector::getSubpart(), NBEdge::getTurnDestination(), NBEdge::Connection::internalLaneIndex, myCustomLaneShapes, NBEdge::Connection::shape, NBEdge::Connection::toEdge, NBEdge::Connection::toLane, NBEdge::UNSPECIFIED_INTERNAL_LANE_INDEX, NBEdge::Connection::viaID, and NBEdge::Connection::viaShape.
Referenced by GNETLSEditorFrame::buildIinternalLanes(), NBEdge::buildInnerEdges(), and hasCustomShape().
void NBNode::computeLanes2Lanes | ( | ) |
computes the connections of lanes to edges
Definition at line 813 of file NBNode.cpp.
References NBEdge::addLane2LaneConnections(), Bresenham::compute(), NBEdge::Lane::connectionsDone, FORWARD, NBEdge::Connection::fromLane, NBEdge::getAngleAtNode(), GeomHelper::getCCWAngleDiff(), NBEdge::getConnectionLanes(), NBEdge::getConnections(), GeomHelper::getCWAngleDiff(), getDirection(), getEdgesThatApproach(), NBEdge::getFirstNonPedestrianLaneIndex(), NBEdge::getLaneStruct(), NBEdge::getNumLanes(), NBEdge::getPermissions(), NBEdge::getPermissionVariants(), NBEdge::getStep(), NBEdge::getTurnDestination(), NBEdge::isConnectedTo(), isLongEnough(), NBEdge::isTurningDirectionAt(), NBEdge::L2L_COMPUTED, NBEdge::L2L_VALIDATED, NBEdge::LANES2EDGES, NBEdge::LANES2LANES_DONE, LINKDIR_TURN, MAX2(), MIN2(), MIN_WEAVE_LENGTH, myIncomingEdges, myOutgoingEdges, myType, NODETYPE_RAIL_CROSSING, NODETYPE_ZIPPER, NBNode::ApproachingDivider::numAvailableLanes(), NBEdge::setConnection(), SVC_PEDESTRIAN, NBEdge::Connection::toEdge, and NBEdge::Connection::toLane.
Referenced by NBNetBuilder::computeSingleNode(), and getControllingTLS().
void NBNode::computeLogic | ( | const NBEdgeCont & | ec, |
OptionsCont & | oc | ||
) |
computes the node's type, logic and traffic light
Definition at line 718 of file NBNode.cpp.
References NBRequest::buildBitfieldLogic(), OptionsCont::getBool(), Named::getID(), isDistrict(), OptionsCont::isInStringVector(), isNearDistrict(), myAllEdges, myBlockedConnections, myIncomingEdges, myOutgoingEdges, myRequest, myTrafficLights, myType, NODETYPE_DEAD_END, NODETYPE_DISTRICT, NODETYPE_NOJUNCTION, NODETYPE_TRAFFIC_LIGHT, NODETYPE_TRAFFIC_LIGHT_NOJUNCTION, numNormalConnections(), SUMO_MAX_CONNECTIONS, toString(), and WRITE_WARNING.
Referenced by NBNetBuilder::computeSingleNode(), and getControllingTLS().
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 781 of file NBNode.cpp.
References PositionVector::around(), NBNodeShapeComputer::compute(), PositionVector::distance2D(), Named::getID(), myHaveCustomPoly, Named::myID, myIncomingEdges, myOutgoingEdges, myPoly, myPosition, PositionVector::push_back_noDoublePos(), toString(), and WRITE_WARNING.
Referenced by NBNetBuilder::computeSingleNode(), getControllingTLS(), and GNEViewNet::onCmdNodeShape().
PositionVector NBNode::computeSmoothShape | ( | const PositionVector & | begShape, |
const PositionVector & | endShape, | ||
int | numPoints, | ||
bool | isTurnaround, | ||
double | extrapolateBeg, | ||
double | extrapolateEnd, | ||
NBNode * | recordError = 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 461 of file NBNode.cpp.
References bezier(), bezierControlPoints(), DEBUGCOND, and Named::getID().
Referenced by buildWalkingAreas(), computeInternalLaneShape(), NBNodeShapeComputer::getSmoothCorner(), hasCustomShape(), and GNEConnection::updateGeometry().
return true if the given edges are connected by a crossing
Definition at line 2478 of file NBNode.cpp.
References myCrossings.
Referenced by buildWalkingAreas(), and getDisplacementError().
|
inline |
discard all crossings
Definition at line 610 of file NBNode.h.
References myDiscardAllCrossings.
Referenced by NIXMLConnectionsHandler::addCrossing().
EdgeVector NBNode::edgesBetween | ( | const NBEdge * | e1, |
const NBEdge * | e2 | ||
) | const |
return all edges that lie clockwise between the given edges
Definition at line 2495 of file NBNode.cpp.
References myAllEdges, and NBContHelper::nextCW().
Referenced by getDisplacementError().
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 1461 of file NBNode.cpp.
References NBRequest::foes(), and myRequest.
Referenced by NBEdge::buildInnerEdges(), NBTrafficLightDefinition::foes(), NBTrafficLightDefinition::forbids(), getControllingTLS(), and needsCont().
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 1451 of file NBNode.cpp.
References NBRequest::forbids(), and myRequest.
Referenced by NBEdge::buildInnerEdges(), NBTrafficLightDefinition::forbids(), and getControllingTLS().
|
private |
return whether there is a non-sidewalk lane after the given index;
Definition at line 1997 of file NBNode.cpp.
Referenced by guessCrossings().
bool NBNode::geometryLike | ( | ) | const |
whether this is structurally similar to a geometry node
Definition at line 2511 of file NBNode.cpp.
References NBEdge::getAngleAtNode(), MAX2(), myIncomingEdges, myOutgoingEdges, and NBHelpers::relAngle().
Referenced by NBEdge::cutAtIntersection(), NBNodeCont::discardTrafficLights(), NBNodeCont::generateNodeClusters(), getProhibitions(), NBNodeCont::guessTLs(), and NBEdge::startShapeAt().
Position NBNode::getCenter | ( | ) | const |
Returns a position that is guaranteed to lie within the node shape.
Definition at line 2622 of file NBNode.cpp.
References PositionVector::around(), PositionVector::closePolygon(), PositionVector::distance2D(), PositionVector::getPolygonCenter(), myPoly, myPosition, and POSITION_EPS.
Referenced by getPosition().
int NBNode::getConnectionIndex | ( | const NBEdge * | from, |
const NBEdge::Connection & | con | ||
) | const |
return the index of the given connection
Definition at line 2603 of file NBNode.cpp.
References NBEdge::Connection::fromLane, myIncomingEdges, NBEdge::Connection::toEdge, and NBEdge::Connection::toLane.
Referenced by GNELane::drawLinkNo(), and getWalkingAreas().
get connection to certain node
Definition at line 1739 of file NBNode.cpp.
References myOutgoingEdges.
Referenced by getControllingTLS(), NBEdgeCont::guessRoundabouts(), NBNodeCont::joinJunctions(), NIImporter_ArcView::load(), 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 298 of file NBNode.h.
References addIncomingEdge(), addOutgoingEdge(), addSortedLinkFoes(), computeLanes2Lanes(), computeLogic(), computeNodeShape(), foes(), forbids(), getConnectionTo(), getDirection(), getEmptyDir(), getLinkState(), getOppositeIncoming(), getPossiblySplittedIncoming(), getPossiblySplittedOutgoing(), getShape(), hasIncoming(), hasOutgoing(), invalidateIncomingConnections(), invalidateOutgoingConnections(), invalidateTLS(), isLeftMover(), mirrorX(), mustBrake(), mustBrakeForCrossing(), myTrafficLights, removeDoubleEdges(), removeEdge(), removeSelfLoops(), reshiftPosition(), rightTurnConflict(), setCustomLaneShape(), setCustomShape(), shiftTLConnectionLaneIndex(), and writeLogic().
Referenced by GNENet::computeJunction(), NBNodeCont::discardTrafficLights(), GNEJunction::getAttribute(), NBNodeCont::guessTLs(), GNETLSEditorFrame::initDefinitions(), GNEJunction::invalidateTLS(), NIImporter_OpenDrive::loadNetwork(), NIXMLNodesHandler::processNodeType(), NIXMLNodesHandler::processTrafficLightDefinitions(), NBEdge::removeFromConnections(), GNEJunction::setAttribute(), NBEdgeCont::splitAt(), and NWWriter_XML::writeNodes().
const NBNode::Crossing & NBNode::getCrossing | ( | const std::string & | id | ) | const |
return the crossing with the given id
Definition at line 2567 of file NBNode.cpp.
References myCrossings.
Referenced by getWalkingAreas(), and NWWriter_SUMO::writeNetwork().
NBNode::Crossing & NBNode::getCrossingRef | ( | const std::string & | id | ) |
return a reference to the crossing with the given id
Definition at line 2577 of file NBNode.cpp.
References myCrossings.
Referenced by getWalkingAreas().
|
inline |
return this junctions pedestrian crossings
Definition at line 620 of file NBNode.h.
References myCrossings.
Referenced by GNETLSEditorFrame::buildIinternalLanes(), NBEdge::buildInnerEdges(), NBNetBuilder::computeSingleNode(), GNEJunction::rebuildGNECrossings(), GNEJunction::removeFromCrossings(), NWWriter_SUMO::writeInternalEdges(), NWWriter_SUMO::writeInternalNodes(), NWWriter_SUMO::writeJunction(), and NWWriter_SUMO::writeNetwork().
|
inline |
sets a custom shape for an internal lane
Definition at line 478 of file NBNode.h.
References myCustomLaneShapes.
Referenced by NWWriter_SUMO::writeLane().
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 1549 of file NBNode.cpp.
References abs, NBEdge::getAngleAtNode(), NBEdge::isTurningDirectionAt(), LINKDIR_LEFT, LINKDIR_NODIR, LINKDIR_PARTLEFT, LINKDIR_PARTRIGHT, LINKDIR_RIGHT, LINKDIR_STRAIGHT, LINKDIR_TURN, LINKDIR_TURN_LEFTHAND, myAllEdges, NBContHelper::nextCCW(), NBContHelper::nextCW(), and NBHelpers::normRelAngle().
Referenced by NBEdge::addStraightConnections(), NBEdge::buildInnerEdges(), computeLanes2Lanes(), NBOwnTLDef::computeUnblockedWeightedStreamNumber(), GNELane::drawArrows(), NBTrafficLightDefinition::forbids(), getControllingTLS(), NBEdge::MainDirections::MainDirections(), NBRequest::mustBrake(), NBRequest::mustBrakeForCrossing(), needsCont(), NBOwnTLDef::patchStateForCrossings(), rightTurnConflict(), and NWWriter_SUMO::writeConnection().
|
inline |
compute the displacement error during s-curve computation
Definition at line 542 of file NBNode.h.
References buildCrossings(), buildCrossingsAndWalkingAreas(), buildInnerEdges(), buildWalkingAreas(), checkCrossing(), checkCrossingDuplicated(), crossingBetween(), edgesBetween(), guessCrossings(), myDisplacementError, replaceIncoming(), and replaceOutgoing().
Referenced by NBNodeShapeComputer::computeNodeShapeDefault().
|
inline |
Returns all edges which participate in this node (Edges that start or end at this node)
Definition at line 250 of file NBNode.h.
References myAllEdges.
Referenced by NBNodeTypeComputer::computeNodeTypes(), NBNodeTypeComputer::computeSingleNodeType(), GNENet::deleteJunction(), NBNodeCont::generateNodeClusters(), NIImporter_OpenStreetMap::getNeighboringNodes(), NBRampsComputer::getOffRampEdges(), NBEdgeCont::guessRoundabouts(), GNEJunction::move(), GNENet::removeSolitaryJunctions(), and NBNodeCont::removeUnwishedNodes().
|
private |
returns the list of all edges sorted clockwise by getAngleAtNodeToCenter
Definition at line 2640 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 1053 of file NBNode.cpp.
References myAllEdges, and NBContHelper::nextCW().
Referenced by computeLanes2Lanes().
get edges to join
Definition at line 1693 of file NBNode.cpp.
References checkIsRemovable(), NBEdge::getTurnDestination(), myIncomingEdges, and myOutgoingEdges.
Referenced by hasCustomShape(), 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 1321 of file NBNode.cpp.
References Position::add(), getPosition(), Position::mul(), myIncomingEdges, myOutgoingEdges, myPosition, Position::norm2d(), Position::sub(), Position::x(), and Position::y().
Referenced by getControllingTLS().
|
inlineinherited |
Returns the id.
Definition at line 66 of file Named.h.
References Named::myID.
Referenced by NIImporter_SUMO::_loadNetwork(), MSVehicle::adaptToLeader(), MSVehicle::adaptToLeaders(), PCPolyContainer::add(), MSVehicleTransfer::add(), TraCIServerAPI_Lane::StoringVisitor::add(), MSDetectorControl::add(), Named::StoringVisitor::add(), ShapeContainer::add(), IntermodalRouter< E, L, N, V >::addAccess(), NLTriggerBuilder::addAccess(), RORouteDef::addAlternative(), MSLane::addApproachingLane(), MSNet::addBusStop(), MSNet::addChargingStation(), NBLoadedSUMOTLDef::addConnection(), NLHandler::addConnection(), MSNet::addContainerStop(), NIXMLConnectionsHandler::addCrossing(), RODFDetectorCon::addDetector(), RONet::addEdge(), ROJTREdge::addFollowerProbability(), MSTLLogicControl::TLSLogicVariants::addLogic(), RONet::addNode(), MSNet::addParkingArea(), NIImporter_SUMO::addPhase(), GUIEdge::addRerouter(), NBEdge::addRestrictedLane(), RONet::addRouteDef(), NBDistrict::addSink(), NBDistrict::addSource(), NIXMLEdgesHandler::addSplit(), NBTrafficLightLogic::addStep(), MSRouteHandler::addStop(), ROVehicle::addStop(), MSVehicle::addStop(), NBEdge::addStraightConnections(), NIXMLTrafficLightsHandler::addTlConnection(), NIVissimDisturbance::addToNode(), MSVehicle::addTraciStop(), MSVehicle::addTraciStopAtStoppingPlace(), AGActivityTripWriter::addTrip(), GUITrafficLightLogicWrapper::begin2TrackPhases(), MSTransportable::Stage_Waiting::beginEventOutput(), MSTransportable::Stage_Driving::beginEventOutput(), NLEdgeControlBuilder::build(), NIVisumTL::build(), RODFNet::buildApproachList(), MSSOTLE2Sensors::buildContinueSensior(), MSSOTLE2Sensors::buildCountSensorForLane(), MSSOTLE2Sensors::buildCountSensorForOutLane(), buildCrossings(), buildCrossingsAndWalkingAreas(), NIImporter_VISUM::buildDistrictNode(), NLDetectorBuilder::buildE2Detector(), NIVissimConnection::buildEdgeConnections(), RODFNet::buildEdgeFlowMap(), GNETLSEditorFrame::buildIinternalLanes(), NBEdge::buildInnerEdges(), NGEdge::buildNBEdge(), NIVissimEdge::buildNBEdge(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), MELoop::buildSegmentsFor(), MSSOTLE2Sensors::buildSensorForLane(), MSSOTLE2Sensors::buildSensorForOutLane(), buildWalkingAreas(), MSBaseVehicle::calculateArrivalParams(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSLaneChanger::changeOpposite(), MELoop::changeSegment(), MSSimpleTrafficLightLogic::changeStepAndDuration(), NBEdge::checkGeometry(), NBEdgeCont::checkGrade(), MSVehicleTransfer::checkInsertions(), NBEdgeCont::checkOverlap(), MSDevice_Battery::checkParam(), MSE2Collector::checkPositioning(), MSVehicle::checkRewindLinkLanes(), MSSwarmTrafficLightLogic::choosePolicy(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), RORouteHandler::closeRouteDistribution(), RORouteHandler::closeVehicle(), NBTrafficLightDefinition::collectAllLinks(), NBLoadedSUMOTLDef::collectEdges(), NBTrafficLightDefinition::collectEdges(), NBLoadedSUMOTLDef::collectEdgeVectors(), NBLoadedTLDef::collectLinks(), ROJTRRouter::compute(), NBTrafficLightDefinition::compute(), NBEdge::computeAngle(), NBEdge::computeLaneShapes(), computeLogic(), NBOwnTLDef::computeLogicAndConts(), computeNodeShape(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), RODFNet::computeRoutesFor(), NBTrafficLightLogicCont::computeSingleLogic(), computeSmoothShape(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), NGNet::connect(), MSSOTLWaveTrafficLightLogic::countVehicles(), MSSOTLE2Sensors::countVehicles(), MSDevice_SSM::createEncounters(), GUINet::createTLWrapper(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::decidePolicy(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), NIVissimDistrictConnection::dict_BuildDistricts(), NBEdge::divideOnEdges(), NBEdge::divideSelectedLanesOnEdges(), MSTransportable::Stage_Waiting::endEventOutput(), MSTransportable::Stage_Driving::endEventOutput(), MSE3Collector::enter(), METriggeredCalibrator::execute(), MSCalibrator::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitchStates::execute(), Command_SaveTLSSwitches::execute(), MSVTypeProbe::execute(), MSPModel_Striping::MovePedestrians::execute(), MSTrafficLightLogic::SwitchCommand::execute(), MSVehicle::executeMove(), MSLane::executeMovements(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), NBEdgeCont::extract(), TraCIServerAPI_Vehicle::findCloserLane(), MSDevice_SSM::findFoeConflictLane(), MSDevice_SSM::findSurroundingVehicles(), MSDevice_SSM::flushConflicts(), NBRampsComputer::fulfillsRampConstraints(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), GNEConnection::getAttribute(), MSVehicle::getBackPosition(), TraCI_Vehicle::getBestLanes(), MSNet::getBusStopID(), MSVehicle::getCenterOnEdge(), MSDevice_Battery::getChargingStationID(), MSNet::getChargingStationID(), NBEdge::getConnection(), NBEdge::getConnectionRef(), MSNet::getContainerStopID(), NBEdge::getCrossingAngle(), RODFNet::getDetectorEdge(), TraCI_Lane::getEdgeID(), MSMeanData::getEdgeID(), NBEdge::getFirstNonPedestrianLane(), MSLane::getFollower(), MSLane::getFollowersOnConsecutive(), TraCI_InductionLoop::getLaneID(), TraCI_LaneArea::getLaneID(), TraCI_Vehicle::getLaneID(), MSLane::getLastVehicleInformation(), MSVehicle::getLatOffset(), MSLane::getLeader(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), MSLink::getLengthBeforeCrossing(), TraCI_Lane::getLinks(), MSLane::getLinkTo(), MSTLLogicControl::TLSLogicVariants::getLogicInstantiatingOff(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForInputLanes(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForOutputLanes(), NIImporter_VISUM::getNamedEdgeContinuating(), MSPerson::getNextEdge(), MSPModel_Striping::getNextLane(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSLane::getOppositePos(), GUIInstantInductLoop::MyWrapper::getParameterWindow(), GUIMEInductLoop::MyWrapper::getParameterWindow(), GUIVehicle::getParameterWindow(), GUIE2Collector::MyWrapper::getParameterWindow(), GUIInductLoop::MyWrapper::getParameterWindow(), MSNet::getParkingAreaID(), MSLane::getPartialBehind(), MSSOTLTrafficLightLogic::getPhaseIndexWithMaxCTS(), MSSwarmTrafficLightLogic::getPheromoneForInputLanes(), MSSwarmTrafficLightLogic::getPheromoneForOutputLanes(), GUITrafficLightLogicWrapper::getPopUpMenu(), NLTriggerBuilder::getPosition(), NLDetectorBuilder::getPositionChecking(), getPossiblySplittedIncoming(), getPossiblySplittedOutgoing(), NIImporter_VISUM::getReversedContinuating(), TraCI_Vehicle::getRoadID(), TraCI_Vehicle::getRouteID(), MSDevice_SSM::getUpstreamVehicles(), MSDevice_SSM::getVehiclesOnJunction(), MSVehicleControl::getWaitingVehicle(), MSLink::getZipperSpeed(), guessCrossings(), RODFDetectorCon::guessEmptyFlows(), NBEdgeCont::guessSidewalks(), NBNodeCont::guessTLs(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSLane::handleCollisionBetween(), NBEdgeCont::ignoreFilterMatch(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailSignal::init(), MSDelayBasedTrafficLightLogic::init(), MSActuatedTrafficLightLogic::init(), MSTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), MSE2Collector::initAuxiliaries(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBNodeCont::insert(), NBTrafficLightLogicCont::insert(), NBEdgeCont::insert(), MSEdge::insertVehicle(), MSLane::integrateNewVehicle(), IntermodalNetwork< E, L, N, V >::IntermodalNetwork(), GNEJunction::invalidateTLS(), invalidateTLS(), MSTLLogicControl::isActive(), MSPedestrianPushButton::isActiveForEdge(), MSPedestrianPushButton::isActiveOnAnySideOfTheRoad(), RODFNet::isDestination(), RODFNet::isFalseSource(), MSLane::isInsertionSuccess(), RODFNet::isSource(), MSSOTLTrafficLightLogic::isThresholdPassed(), NBNodeCont::joinJunctions(), NBEdgeCont::joinSameNodeConnectingEdges(), MSE3Collector::leave(), MSE3Collector::leaveFront(), MSDevice_BTreceiver::BTreceiverUpdate::leaveRange(), MSPedestrianPushButton::loadCrossingEdgeMap(), NIImporter_OpenDrive::loadNetwork(), MSPedestrianPushButton::loadPushButtons(), NBEdge::MainDirections::MainDirections(), ODDistrictCont::makeDistricts(), MSE2Collector::makeVehicleInfo(), GNEJunction::markAsModified(), MSSOTLE2Sensors::meanVehiclesSpeed(), METriggeredCalibrator::METriggeredCalibrator(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), NBRampsComputer::moveRampRight(), MSPModel_Striping::PState::moveToNextLane(), MSCalibrator::MSCalibrator(), MSChargingStation::MSChargingStation(), MSDevice_Battery::MSDevice_Battery(), MSE2Collector::MSE2Collector(), NBLoadedTLDef::myCompute(), NIXMLEdgesHandler::myEndElement(), NIImporter_SUMO::myEndElement(), NIXMLConnectionsHandler::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), NBConnection::NBConnection(), NBRequest::NBRequest(), MSDevice_BTreceiver::notifyEnter(), MSDevice_BTsender::notifyEnter(), MSDevice_Example::notifyEnter(), MSDevice_Tripinfo::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSDevice_SSM::notifyEnter(), MSE2Collector::notifyEnter(), MSDevice_Transportable::notifyLeave(), MSE3Collector::MSE3EntryReminder::notifyLeave(), MSDevice_Example::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSDevice_BTsender::notifyLeave(), MSE3Collector::MSE3LeaveReminder::notifyLeave(), MSDevice_SSM::notifyLeave(), MSE2Collector::notifyLeave(), MSDevice_Example::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSDevice_BTsender::notifyMove(), MSMeanData::MeanDataValues::notifyMove(), MSDevice_SSM::notifyMove(), GUIViewTraffic::onGamingClick(), GNEViewNet::onLeftBtnPress(), RORouteHandler::openRoute(), Named::ComparatorIdLess::operator()(), NBTurningDirectionsComputer::combination_by_angle_sorter::operator()(), RODFNet::idComp::operator()(), NBNetBuilder::by_id_sorter::operator()(), NBOwnTLDef::edge_by_incoming_priority_sorter::operator()(), NBContHelper::same_connection_edge_sorter::operator()(), NBContHelper::edge_by_angle_to_nodeShapeCentroid_sorter::operator()(), NBNode::nodes_by_id_sorter::operator()(), MSEdge::by_id_sorter::operator()(), MSLane::incoming_lane_priority_sorter::operator()(), MSLane::outgoing_lane_priority_sorter::operator()(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_LanesConnections(), NIImporter_VISUM::parse_Turns(), NIImporter_VISUM::parse_TurnsToSignalGroups(), NIXMLConnectionsHandler::parseDeprecatedLaneDefinition(), NIXMLConnectionsHandler::parseLaneBound(), MSRouteHandler::parseWalkPositions(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), MSLCM_LC2013::patchSpeed(), MSLCM_SL2015::patchSpeed(), NBLoadedTLDef::SignalGroup::patchTYellow(), MSVehicle::planMove(), MSLane::planMovements(), MSInternalJunction::postloadInit(), MSRightOfWayJunction::postloadInit(), NBEdge::prepareEdgePriorities(), MSAbstractLaneChangeModel::primaryLaneChanged(), AGStreet::print(), MSDevice_SSM::processEncounters(), TraCIServerAPI_TLS::processGet(), TraCIServerAPI_Person::processGet(), MSVehicle::processNextStop(), TraCIServerAPI_Vehicle::processSet(), NIXMLNodesHandler::processTrafficLightDefinitions(), NWWriter_SUMO::prohibitionConnection(), MSDelayBasedTrafficLightLogic::proposeProlongation(), MSPModel_Striping::PState::PState(), NBEdgeCont::recheckLanes(), NBEdge::recheckLanes(), NBEdgeCont::recheckPostProcessConnections(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NBNodeCont::remapIDs(), NBEdgeCont::remapIDs(), NBLoadedTLDef::SignalGroup::remapIncoming(), NBLoadedTLDef::SignalGroup::remapOutgoing(), NBLoadedSUMOTLDef::removeConnection(), NBNodeCont::removeIsolatedRoads(), MSCalibrator::removePending(), removeSelfLoops(), NBEdgeCont::removeUnwishedEdges(), NBNodeCont::rename(), NBEdgeCont::rename(), GNENet::renameEdge(), GNENet::renameJunction(), RORouteDef::repairCurrentRoute(), NBConnection::replaceFrom(), MSVehicle::replaceParkingArea(), MSBaseVehicle::replaceRouteEdges(), NBConnection::replaceTo(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), NIImporter_DlrNavteq::ConnectedLanesHandler::report(), MSBaseVehicle::reroute(), MSTriggeredRerouter::rerouteParkingZone(), MSLane::resetPartialOccupation(), NBEdge::restoreRestrictedLane(), GNEEdge::retrieveConnection(), NIXMLTrafficLightsHandler::retrieveLaneIndex(), RODFNet::revalidateFlows(), RONet::saveAndRemoveRoutesUntil(), MSDevice_Vehroutes::saveState(), MSDevice::saveState(), MSDevice_Tripinfo::saveState(), MSBaseVehicle::saveState(), MSLane::saveState(), GUIVehicle::selectBlockingFoes(), MSE2Collector::selectLanes(), NBNodeCont::setAsTLControlled(), GNEEdge::setAttribute(), MSChargingStation::setChargeDelay(), MSChargingStation::setChargingPower(), NBEdge::setControllingTLInformation(), MSChargingStation::setEfficency(), GNEJunction::setLogicValid(), MSDevice_Battery::setMaximumBatteryCapacity(), NBEdge::setNodeBorder(), NIXMLEdgesHandler::setNodes(), MSLane::setPartialOccupation(), MSDevice_Battery::setPowerMax(), MSLink::setRequestInformation(), MSTLLogicControl::TLSLogicVariants::setStateInstantiatingOnline(), MSDevice_Battery::setStoppingTreshold(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBOwnTLDef::setTLControllingInformation(), NBTrafficLightLogicCont::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBEdge::shiftPositionAtNode(), NBEdgeCont::splitAt(), MSStopOut::stopEnded(), MSLane::succLinkSec(), GUITrafficLightLogicWrapper::switchTLSLogic(), MELoop::teleportVehicle(), toString(), METriggeredCalibrator::tryEmit(), MSSOTLTrafficLightLogic::trySwitch(), MSDevice_SSM::update(), MSVehicle::updateBestLanes(), MSSOTLTrafficLightLogic::updateCTS(), GNETLSEditorFrame::updateDescription(), MSDevice_SSM::updateEncounter(), MSSwarmTrafficLightLogic::updatePheromoneLevels(), MSSwarmTrafficLightLogic::updateSensitivities(), MSDevice_BTreceiver::BTreceiverUpdate::updateVisibility(), TraCIServerAPI_Vehicle::vtdMap(), MSPModel_Striping::PState::walk(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), MSBatteryExport::write(), MSEmissionExport::write(), MSFCDExport::write(), MSInstantInductLoop::write(), MSLink::writeApproaching(), NBSign::writeAsPOI(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_SUMO::writeConnection(), NWWriter_SUMO::writeDistrict(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), NWWriter_SUMO::writeEdge(), MSMeanData::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), NWWriter_SUMO::writeInternalConnections(), writeInterval(), NWWriter_SUMO::writeJunction(), MSQueueExport::writeLane(), MSFullExport::writeLane(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_OpenDrive::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), NWWriter_DlrNavteq::writeProhibitedManoeuvres(), NWWriter_SUMO::writeRoundabout(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_DlrNavteq::writeTrafficSignals(), MSFCDExport::writeTransportable(), RODFDetectorCon::writeValidationDetectors(), MSFullExport::writeVehicles(), PointOfInterest::writeXML(), SUMO::Polygon::writeXML(), MSRouteProbe::writeXMLOutput(), MSInductLoop::writeXMLOutput(), MSE2Collector::writeXMLOutput(), and RONet::~RONet().
|
inlinestaticinherited |
get an identifier for Named-like object which may be Null
Definition at line 59 of file Named.h.
Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSLaneChanger::changeOpposite(), MSLaneChanger::continueChange(), MSVehicle::getBackPositionOnLane(), MSVehicle::getCenterOnEdge(), NBEdge::Connection::getDescription(), MSLane::getFollowersOnConsecutive(), MSVehicle::getLatOffset(), GUIVehicle::getParameterWindow(), MSPModel_Striping::PState::moveToNextLane(), operator<<(), TraCIServerAPI_Vehicle::processSet(), MSLCM_SL2015::saveBlockerLength(), MSLCM_LC2013::saveBlockerLength(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), MSLaneChangerSublane::startChangeSublane(), MSLeaderInfo::toString(), MSLeaderDistanceInfo::toString(), toString(), MSCriticalFollowerDistanceInfo::toString(), MSVehicle::updateBestLanes(), MSAbstractLaneChangeModel::updateShadowLane(), and TraCIServerAPI_Vehicle::vtdMap().
|
inline |
Returns this node's incoming edges (The edges which yield in this node)
Definition at line 240 of file NBNode.h.
References myIncomingEdges.
Referenced by NBEdge::addLane(), NBEdge::addRestrictedLane(), NIImporter_OpenStreetMap::RelationHandler::applyRestriction(), NBEdge::buildInnerEdges(), NBRampsComputer::buildOffRamp(), NBNodeShapeComputer::compute(), NBRampsComputer::computeRamps(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), NBEdge::deleteLane(), NBEdge::getIncomingEdges(), NIImporter_VISUM::getNamedEdgeContinuating(), NBRampsComputer::getOffRampEdges(), NBRampsComputer::getOnRampEdges(), GNEJunction::getPopUpMenu(), NBNodeCont::guessTLs(), NBEdge::init(), isLongEnough(), isNearDistrict(), NBNodeCont::joinJunctions(), GNEJunction::markAsModified(), NBEdgeCont::markRoundabouts(), NBRampsComputer::mayNeedOffRamp(), NBRampsComputer::mayNeedOnRamp(), GNENet::mergeJunctions(), NBContHelper::node_with_incoming_finder::operator()(), NIImporter_VISUM::parse_Lanes(), NBEdge::recheckLanes(), NBNodeCont::removeIsolatedRoads(), NBNodeCont::removeUnwishedNodes(), NBEdge::restoreRestrictedLane(), NBEdgeCont::retrievePossiblySplit(), GNEJunction::setLogicValid(), NGNet::toNB(), 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 267 of file NBNode.h.
References addTrafficLight(), myKeepClear, removeTrafficLight(), and removeTrafficLights().
Referenced by GNEJunction::getAttribute(), 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 1613 of file NBNode.cpp.
References NBEdge::getPermissions(), NBEdge::isInnerEdge(), isRailway(), 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(), getControllingTLS(), GNEConnection::updateLinkState(), and NWWriter_SUMO::writeConnection().
|
static |
returns the node id for internal lanes, crossings and walkingareas
Definition at line 2663 of file NBNode.cpp.
References WRITE_ERROR.
Referenced by NIXMLConnectionsHandler::addCustomShape(), and NIImporter_SUMO::addLane().
returns the opposite incoming edge of certain edge
Definition at line 1230 of file NBNode.cpp.
References NBEdge::getToNode(), and myIncomingEdges.
Referenced by NBNodeTypeComputer::computeNodeTypes(), NBNodeTypeComputer::computeSingleNodeType(), and getControllingTLS().
|
inline |
Returns this node's outgoing edges (The edges which start at this node)
Definition at line 245 of file NBNode.h.
References myOutgoingEdges.
Referenced by NIImporter_OpenStreetMap::RelationHandler::applyRestriction(), NBRampsComputer::buildOnRamp(), NBNodeShapeComputer::compute(), NBEdge::computeEdge2Edges(), NBRampsComputer::computeRamps(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), GNENet::createEdge(), NBNodeCont::discardTrafficLights(), NBEdge::getConnectedSorted(), NIImporter_VISUM::getEdge(), NIImporter_VISUM::getNamedEdgeContinuating(), NBRampsComputer::getOffRampEdges(), NBRampsComputer::getOnRampEdges(), GNEJunction::getPopUpMenu(), NBEdgeCont::guessOpposites(), NBNodeCont::guessTLs(), GNEConnectorFrame::initTargets(), isLongEnough(), isNearDistrict(), NBNodeCont::joinJunctions(), NBEdge::markAsInLane2LaneState(), NBRampsComputer::mayNeedOffRamp(), NBRampsComputer::mayNeedOnRamp(), GNENet::mergeJunctions(), NIXMLEdgesHandler::myEndElement(), NBContHelper::node_with_outgoing_finder::operator()(), NIImporter_VISUM::parse_Lanes(), NBEdge::recheckLanes(), NBNodeCont::removeIsolatedRoads(), NBNodeCont::removeUnwishedNodes(), NBEdgeCont::retrievePossiblySplit(), and NWWriter_DlrNavteq::writeProhibitedManoeuvres().
|
inline |
Definition at line 232 of file NBNode.h.
References getCenter(), and myPosition.
Referenced by NIImporter_SUMO::_loadNetwork(), NIXMLNodesHandler::addNode(), NIXMLEdgesHandler::addSplit(), NIVissimEdge::buildNBEdge(), NBEdge::computeAngle(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), NBNetBuilder::computeSingleNode(), NBEdge::cutAtIntersection(), NBNodeCont::discardTrafficLights(), NBHelpers::distance(), GNEJunction::drawGL(), NBEdge::extendGeometryAtNode(), NBNodeCont::extract(), GNEJunction::getAttribute(), getEmptyDir(), NWWriter_DlrNavteq::getGraphLength(), GNEJunction::getPosition(), NBEdge::hasDefaultGeometryEndpointAtNode(), NBEdge::hasDefaultGeometryEndpoints(), NBEdge::init(), NBNodeCont::insert(), GNENet::mergeJunctions(), GNEViewNet::mergeJunctions(), GNEJunction::move(), NBContHelper::relative_outgoing_edge_sorter::operator()(), NBContHelper::relative_incoming_edge_sorter::operator()(), NIImporter_OpenStreetMap::reconstructLayerElevation(), GNENet::registerJunction(), GNEJunction::registerMove(), NIVissimEdge::remapOneOfNodes(), GNENet::replaceJunctionByGeometry(), NIImporter_DlrNavteq::EdgesHandler::report(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), GNEEdge::resetEndpoint(), NBNodeCont::retrieve(), GNEEdge::setAttribute(), GNEJunction::setAttribute(), GNEEdge::setEndpoint(), GNEJunction::setPosition(), NBEdge::shiftPositionAtNode(), NBEdgeCont::splitAt(), NBEdge::splitGeometry(), NBEdge::startShapeAt(), 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 1265 of file NBNode.cpp.
References Named::getID(), and myIncomingEdges.
Referenced by NIVissimDisturbance::getConnection(), and getControllingTLS().
NBEdge * NBNode::getPossiblySplittedOutgoing | ( | const std::string & | edgeid | ) |
get possibly splitted outgoing edge
Definition at line 1278 of file NBNode.cpp.
References Named::getID(), and myOutgoingEdges.
Referenced by NIVissimDisturbance::getConnection(), and getControllingTLS().
|
inline |
get prohibitions (BLocked connections)
Definition at line 593 of file NBNode.h.
References addCrossing(), geometryLike(), myBlockedConnections, removeCrossing(), and setRoundabout().
|
inline |
Returns the turning radius of this node.
Definition at line 262 of file NBNode.h.
References myRadius.
Referenced by NBNodeShapeComputer::computeNodeShapeDefault(), GNEJunction::getAttribute(), NWWriter_SUMO::writeJunction(), and NWWriter_XML::writeNodes().
const PositionVector & NBNode::getShape | ( | ) | const |
retrieve the junction shape
Definition at line 1716 of file NBNode.cpp.
References myPoly.
Referenced by NBEdge::computeAngle(), GNEJunction::drawGL(), GNEJunction::getAttribute(), getControllingTLS(), GNEViewNet::onCmdNodeShape(), sortEdges(), NBEdge::startShapeAt(), GNECrossing::updateGeometry(), GNEJunction::updateGeometry(), NWWriter_SUMO::writeJunction(), and NWWriter_XML::writeNodes().
|
inline |
Returns the type of this node.
Definition at line 257 of file NBNode.h.
References myType.
Referenced by NIXMLTrafficLightsHandler::addTlConnection(), NBEdge::appendTurnaround(), NBTrafficLightDefinition::collectAllLinks(), NBEdgePriorityComputer::computeEdgePrioritiesSingleNode(), NBEdgeCont::generateStreetSigns(), GNEJunction::getAttribute(), GNEJunction::getColorValue(), NBEdge::MainDirections::MainDirections(), NBRequest::mustBrake(), NIXMLConnectionsHandler::parseLaneBound(), NBEdge::prepareEdgePriorities(), NIXMLNodesHandler::processNodeType(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), NBRequest::setBlocking(), GNEJunction::setPosition(), NBTrafficLightLogicCont::setTLControllingInformation(), NWWriter_SUMO::writeJunction(), NBRequest::writeLaneResponse(), and NWWriter_XML::writeNodes().
|
inline |
return this junctions pedestrian walking areas
Definition at line 625 of file NBNode.h.
References avoidOverlap(), getConnectionIndex(), getCrossing(), getCrossingRef(), myWalkingAreas, numNormalConnections(), rightOnRedConflict(), setCrossingTLIndices(), and sortEdges().
Referenced by NWWriter_SUMO::writeInternalEdges(), and NWWriter_SUMO::writeNetwork().
int NBNode::guessCrossings | ( | ) |
guess pedestrian crossings and return how many were guessed
Definition at line 1787 of file NBNode.cpp.
References checkCrossing(), forbidsPedestriansAfter(), gDebugFlag1, getEdgesSortedByAngleAtNodeCenter(), NBEdge::getFromNode(), Named::getID(), NBEdge::getLanes(), myAllEdges, myCrossings, myDiscardAllCrossings, SVC_PEDESTRIAN, and toString().
Referenced by NBNetBuilder::computeSingleNode(), and getDisplacementError().
|
inline |
return whether the shape was set by the user
Definition at line 493 of file NBNode.h.
References bezierControlPoints(), checkIsRemovable(), computeInternalLaneShape(), computeSmoothShape(), DEG2RAD, getEdgesToJoin(), isDistrict(), isNearDistrict(), myHaveCustomPoly, and needsCont().
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 1218 of file NBNode.cpp.
References myIncomingEdges.
Referenced by NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeUniqueDirectionList(), NBNodeCont::generateNodeClusters(), getControllingTLS(), NIImporter_OpenStreetMap::getNeighboringNodes(), NBNodeShapeComputer::joinSameDirectionEdges(), 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 1224 of file NBNode.cpp.
References myOutgoingEdges.
Referenced by getControllingTLS(), isLeftMover(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_LanesConnections(), and NIImporter_VISUM::parse_TurnsToSignalGroups().
void NBNode::invalidateIncomingConnections | ( | ) |
invalidate incoming connections
Definition at line 1349 of file NBNode.cpp.
References myIncomingEdges.
Referenced by NIVissimDistrictConnection::dict_BuildDistricts(), getControllingTLS(), and GNEJunction::setAttribute().
void NBNode::invalidateOutgoingConnections | ( | ) |
invalidate outgoing connections
Definition at line 1357 of file NBNode.cpp.
References myOutgoingEdges.
Referenced by NIVissimDistrictConnection::dict_BuildDistricts(), and getControllingTLS().
void NBNode::invalidateTLS | ( | NBTrafficLightLogicCont & | tlCont | ) |
causes the traffic light to be computed anew
Definition at line 350 of file NBNode.cpp.
References NBTrafficLightDefinition::addNode(), Named::getID(), NBTrafficLightDefinition::getNodes(), NBTrafficLightDefinition::getOffset(), NBTrafficLightDefinition::getType(), NBTrafficLightLogicCont::insert(), isTLControlled(), myTrafficLights, and NBTrafficLightLogicCont::removeFully().
Referenced by getControllingTLS(), NIXMLEdgesHandler::myEndElement(), and NIXMLConnectionsHandler::myStartElement().
bool NBNode::isDistrict | ( | ) | const |
check if node is a district
Definition at line 1781 of file NBNode.cpp.
References myType, and NODETYPE_DISTRICT.
Referenced by computeLogic(), hasCustomShape(), and isNearDistrict().
bool NBNode::isJoinedTLSControlled | ( | ) | const |
Returns whether this node is controlled by a tls that spans over more than one node.
Definition at line 336 of file NBNode.cpp.
References isTLControlled(), and myTrafficLights.
Referenced by isTLControlled().
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 1432 of file NBNode.cpp.
References NBEdge::getAngleAtNode(), GeomHelper::getCCWAngleDiff(), GeomHelper::getCWAngleDiff(), hasOutgoing(), NBEdge::isTurningDirectionAt(), myAllEdges, myIncomingEdges, myOutgoingEdges, and NBContHelper::nextCW().
Referenced by NBEdge::computeEdge2Edges(), and getControllingTLS().
|
staticprivate |
check if is long enough
Definition at line 1037 of file NBNode.cpp.
References getIncomingEdges(), NBEdge::getLoadedLength(), getOutgoingEdges(), and NBEdge::getToNode().
Referenced by computeLanes2Lanes().
bool NBNode::isNearDistrict | ( | ) | const |
if node is near district
Definition at line 1750 of file NBNode.cpp.
References NBEdge::getFromNode(), getIncomingEdges(), getOutgoingEdges(), NBEdge::getToNode(), and isDistrict().
Referenced by computeLogic(), NBNodeCont::guessTLs(), and hasCustomShape().
bool NBNode::isSimpleContinuation | ( | bool | checkLaneNumbers = true | ) | const |
check if node is a simple continuation
Definition at line 432 of file NBNode.cpp.
References NBEdge::getNumLanes(), myIncomingEdges, myOutgoingEdges, and NBContHelper::nextCW().
Referenced by NBNodeShapeComputer::compute(), NBNodeTypeComputer::computeNodeTypes(), NBNodeTypeComputer::computeSingleNodeType(), and NBEdgeCont::generateStreetSigns().
|
inline |
Returns whether this node is controlled by any tls.
Definition at line 288 of file NBNode.h.
References isJoinedTLSControlled(), and myTrafficLights.
Referenced by NIXMLConnectionsHandler::addCrossing(), NBEdge::appendTurnaround(), NBEdge::buildInnerEdges(), checkCrossing(), NBNodeCont::discardTrafficLights(), GNEJunction::drawGL(), GNEJunction::getAttribute(), NBNodeCont::guessTLs(), invalidateTLS(), isJoinedTLSControlled(), GNEJunction::isValid(), NIImporter_OpenDrive::loadNetwork(), NIXMLNodesHandler::processTrafficLightDefinitions(), NBEdge::removeFromConnections(), GNETLSEditorFrame::updateDescription(), NWWriter_XML::writeNodes(), and NWWriter_DlrNavteq::writeTrafficSignals().
|
static |
return whether the given type is a traffic light
Definition at line 2698 of file NBNode.cpp.
References NODETYPE_TRAFFIC_LIGHT, NODETYPE_TRAFFIC_LIGHT_NOJUNCTION, and NODETYPE_TRAFFIC_LIGHT_RIGHT_ON_RED.
Referenced by addTrafficLight(), NGNode::buildNBNode(), NBEdge::MainDirections::MainDirections(), NBEdge::prepareEdgePriorities(), NIXMLNodesHandler::processNodeType(), reinit(), and GNEJunction::setAttribute().
void NBNode::mirrorX | ( | ) |
mirror coordinates along the x-axis
Definition at line 295 of file NBNode.cpp.
References PositionVector::mirrorX(), Position::mul(), myCrossings, myPoly, myPosition, and myWalkingAreas.
Referenced by getControllingTLS().
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 1365 of file NBNode.cpp.
References NBRequest::mustBrake(), and myRequest.
Referenced by getControllingTLS(), 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 1379 of file NBNode.cpp.
References NBRequest::mustBrakeForCrossing().
Referenced by getControllingTLS(), and 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 668 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 hasCustomShape().
|
inline |
get num of crossings from sumo net
Definition at line 615 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 2597 of file NBNode.cpp.
References NBRequest::getSizes(), and myRequest.
Referenced by computeLogic(), and getWalkingAreas().
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 262 of file NBNode.cpp.
References isTrafficLight(), myIncomingEdges, myOutgoingEdges, myPosition, myType, and removeTrafficLights().
Referenced by NBNodeCont::discardTrafficLights(), NIImporter_OpenStreetMap::insertNodeChecking(), NIXMLNodesHandler::processNodeType(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), GNEJunction::setAttribute(), and GNEJunction::setPosition().
|
private |
remap removed
Definition at line 1468 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 2553 of file NBNode.cpp.
References myCrossings.
Referenced by NIXMLConnectionsHandler::addCrossing(), getProhibitions(), GNEChange_Crossing::redo(), GNEJunction::removeFromCrossings(), and GNEChange_Crossing::undo().
void NBNode::removeDoubleEdges | ( | ) |
remove duble edges
Definition at line 1180 of file NBNode.cpp.
References myAllEdges, myIncomingEdges, and myOutgoingEdges.
Referenced by getControllingTLS(), 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 1291 of file NBNode.cpp.
References myAllEdges, myIncomingEdges, myOutgoingEdges, and myTrafficLights.
Referenced by NBEdgeCont::extract(), getControllingTLS(), NBEdgeCont::insert(), NBEdge::reinit(), NBEdge::reinitNodes(), NBEdgeCont::removeUnwishedEdges(), and NBEdge::splitGeometry().
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
Definition at line 379 of file NBNode.cpp.
References NBEdgeCont::erase(), NBEdge::getConnectedEdges(), Named::getID(), NBEdge::getIncomingEdges(), myIncomingEdges, myOutgoingEdges, NBEdge::remapConnections(), remapRemoved(), and WRITE_WARNING.
Referenced by NBNetBuilder::computeSingleNode(), and getControllingTLS().
void NBNode::removeTrafficLight | ( | NBTrafficLightDefinition * | tlDef | ) |
Removes the given traffic light from this node.
Definition at line 320 of file NBNode.cpp.
References myTrafficLights, and NBTrafficLightDefinition::removeNode().
Referenced by NBNodeCont::discardTrafficLights(), getKeepClear(), GNEJunction::removeTrafficLight(), removeTrafficLights(), and NBTrafficLightLogicCont::setTLControllingInformation().
void NBNode::removeTrafficLights | ( | ) |
Removes all references to traffic lights that control this tls.
Definition at line 327 of file NBNode.cpp.
References myTrafficLights, and removeTrafficLight().
Referenced by NBNodeCont::extract(), getKeepClear(), NBNodeCont::guessTLs(), NIXMLNodesHandler::processTrafficLightDefinitions(), and reinit().
Replaces occurences of the first edge within the list of incoming by the second Connections are remapped, too.
Definition at line 1112 of file NBNode.cpp.
References myAllEdges, myIncomingEdges, and replaceInConnectionProhibitions().
Referenced by getDisplacementError(), NBEdgeCont::joinSameNodeConnectingEdges(), NBNodeCont::removeUnwishedNodes(), replaceIncoming(), and NBEdgeCont::splitAt().
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 1126 of file NBNode.cpp.
References myDistrict, removeDoubleEdges(), NBDistrict::replaceIncoming(), and replaceIncoming().
|
private |
replace incoming connections prohibitions
Definition at line 1145 of file NBNode.cpp.
References myBlockedConnections, NBConnection::replaceFrom(), and NBConnection::replaceTo().
Referenced by replaceIncoming(), and replaceOutgoing().
Replaces occurences of the first edge within the list of outgoing by the second Connections are remapped, too.
Definition at line 1076 of file NBNode.cpp.
References myAllEdges, myIncomingEdges, myOutgoingEdges, replaceInConnectionProhibitions(), and NBEdge::replaceInConnections().
Referenced by getDisplacementError(), NBEdgeCont::joinSameNodeConnectingEdges(), replaceOutgoing(), and NBEdgeCont::splitAt().
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 1094 of file NBNode.cpp.
References myDistrict, removeDoubleEdges(), NBDistrict::replaceOutgoing(), and replaceOutgoing().
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 288 of file NBNode.cpp.
References Position::add(), PositionVector::add(), myPoly, and myPosition.
Referenced by getControllingTLS().
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 2706 of file NBNode.cpp.
References myTrafficLights, myType, and NODETYPE_TRAFFIC_LIGHT_RIGHT_ON_RED.
Referenced by NBRequest::getResponseString(), and getWalkingAreas().
|
static |
return whether the given laneToLane connection is a right turn which must yield to a bicycle crossings
Definition at line 1385 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(), getControllingTLS(), NBRequest::getFoesString(), NBRequest::getResponseString(), NBLoadedSUMOTLDef::initNeedsContRelation(), NBRequest::mustBrake(), NBLoadedTLDef::myCompute(), and needsCont().
void NBNode::setCrossingTLIndices | ( | const std::string & | tlID, |
int | startIndex | ||
) |
set tl indices of this nodes crossing starting at the given index
Definition at line 2588 of file NBNode.cpp.
References myCrossings.
Referenced by getWalkingAreas(), and NBTrafficLightLogicCont::setTLControllingInformation().
void NBNode::setCustomLaneShape | ( | const std::string & | laneID, |
const PositionVector & | shape | ||
) |
sets a custom shape for an internal lane
Definition at line 1729 of file NBNode.cpp.
References myCustomLaneShapes.
Referenced by NIXMLConnectionsHandler::addCustomShape(), NIImporter_SUMO::addJunction(), and getControllingTLS().
void NBNode::setCustomShape | ( | const PositionVector & | shape | ) |
set the junction shape
Definition at line 1722 of file NBNode.cpp.
References myHaveCustomPoly, and myPoly.
Referenced by NIImporter_SUMO::addJunction(), getControllingTLS(), NIXMLNodesHandler::processNodeType(), and GNEJunction::setAttribute().
|
inlineinherited |
resets the id
[in] | newID | The new id of this object |
Definition at line 74 of file Named.h.
References Named::myID.
Referenced by Distribution_Parameterized::Distribution_Parameterized(), NBNodeCont::remapIDs(), NBEdgeCont::remapIDs(), NBNodeCont::rename(), and NBEdgeCont::rename().
|
inline |
set the keepClear flag
Definition at line 488 of file NBNode.h.
References myKeepClear.
Referenced by NIXMLNodesHandler::processNodeType(), and GNEJunction::setAttribute().
|
private |
sets the priorites in case of a priority junction
|
inline |
set the turning radius
Definition at line 483 of file NBNode.h.
References myRadius.
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 2536 of file NBNode.cpp.
References myType, NODETYPE_PRIORITY, and NODETYPE_RIGHT_BEFORE_LEFT.
Referenced by getProhibitions(), and NBEdgeCont::markRoundabouts().
void NBNode::shiftTLConnectionLaneIndex | ( | NBEdge * | edge, |
int | offset | ||
) |
patches loaded signal plans by modifying lane indices
Definition at line 371 of file NBNode.cpp.
References myTrafficLights.
Referenced by NBEdge::addRestrictedLane(), getControllingTLS(), and NBEdge::restoreRestrictedLane().
void NBNode::sortEdges | ( | bool | useNodeShape | ) |
sort all edge containers for this node
Definition at line 2719 of file NBNode.cpp.
References PositionVector::area(), getShape(), myAllEdges, myCrossings, myIncomingEdges, myOutgoingEdges, and NBNodesEdgesSorter::swapWhenReversed().
Referenced by NBNetBuilder::computeSingleNode(), and getWalkingAreas().
bool NBNode::writeLogic | ( | OutputDevice & | into, |
const bool | checkLaneFoes | ||
) | const |
writes the XML-representation of the logic as a bitset-logic XML representation
Definition at line 771 of file NBNode.cpp.
References Named::myID, myRequest, and NBRequest::writeLogic().
Referenced by getControllingTLS(), and NWWriter_SUMO::writeJunction().
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
static |
Definition at line 195 of file NBNode.h.
Referenced by buildCrossings(), and NBEdge::getFirstNonPedestrianLaneIndex().
|
static |
default width of pedetrian crossings
Definition at line 197 of file NBNode.h.
Referenced by NIXMLConnectionsHandler::addCrossing(), checkCrossing(), and NWWriter_XML::writeEdgesAndConnections().
|
static |
edge directions (for pedestrian related stuff)
Definition at line 194 of file NBNode.h.
Referenced by buildCrossings(), NBTrafficLightDefinition::collectEdges(), computeLanes2Lanes(), NBEdge::expandableBy(), and NBEdge::getFirstNonPedestrianLaneIndex().
|
private |
Vector of incoming and outgoing edges.
Definition at line 732 of file NBNode.h.
Referenced by addIncomingEdge(), addOutgoingEdge(), buildWalkingAreas(), NBNodeShapeComputer::compute(), NBEdgePriorityComputer::computeEdgePriorities(), NBEdgePriorityComputer::computeEdgePrioritiesSingleNode(), computeLogic(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), NBNodeShapeComputer::computeUniqueDirectionList(), edgesBetween(), getDirection(), getEdges(), getEdgesSortedByAngleAtNodeCenter(), getEdgesThatApproach(), guessCrossings(), isLeftMover(), NBNodeShapeComputer::joinSameDirectionEdges(), removeDoubleEdges(), removeEdge(), replaceIncoming(), replaceOutgoing(), and sortEdges().
|
private |
The container for connection block dependencies.
Definition at line 744 of file NBNode.h.
Referenced by addSortedLinkFoes(), computeLogic(), getProhibitions(), remapRemoved(), and replaceInConnectionProhibitions().
|
private |
Vector of crossings.
Definition at line 735 of file NBNode.h.
Referenced by addCrossing(), buildCrossings(), buildCrossingsAndWalkingAreas(), buildWalkingAreas(), checkCrossingDuplicated(), checkIsRemovable(), crossingBetween(), getCrossing(), getCrossingRef(), getCrossings(), guessCrossings(), mirrorX(), removeCrossing(), setCrossingTLIndices(), and sortEdges().
|
private |
number of crossings loaded from a sumo net
Definition at line 774 of file NBNode.h.
Referenced by addCrossing(), and numCrossingsFromSumoNet().
|
private |
custom lane shapes
Definition at line 768 of file NBNode.h.
Referenced by buildInnerEdges(), computeInternalLaneShape(), getCustomLaneShapes(), and setCustomLaneShape().
|
private |
whether to discard all pedestrian crossings
Definition at line 771 of file NBNode.h.
Referenced by buildCrossings(), discardAllCrossings(), and guessCrossings().
|
private |
geometry error after computation of internal lane shapes
Definition at line 777 of file NBNode.h.
Referenced by bezierControlPoints(), buildInnerEdges(), and getDisplacementError().
|
private |
The district the node is the centre of.
Definition at line 747 of file NBNode.h.
Referenced by replaceIncoming(), and replaceOutgoing().
|
private |
whether this nodes shape was set by the user
Definition at line 753 of file NBNode.h.
Referenced by computeNodeShape(), hasCustomShape(), and setCustomShape().
|
protectedinherited |
The name of the object.
Definition at line 136 of file Named.h.
Referenced by MSE2Collector::addDetectorToLanes(), RODFDetector::buildDestinationDistribution(), NGEdge::buildNBEdge(), NGNode::buildNBNode(), MSSOTLTrafficLightLogic::checkPhases(), computeNodeShape(), MSE2Collector::detectorUpdate(), METriggeredCalibrator::execute(), MSCalibrator::execute(), MSLane::getCanonicalPredecessorLane(), MSLane::getCanonicalSuccessorLane(), Named::getID(), NBEdge::getLaneID(), NBEdge::getLaneIDInsecure(), ROEdge::getStoredEffort(), ROEdge::getTravelTime(), MSDelayBasedTrafficLightLogic::init(), MSActuatedTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSCalibrator::init(), NBEdge::init(), MSLane::isInsertionSuccess(), MSCalibrator::myStartElement(), MSMeanData::openInterval(), RORouteDef::preComputeCurrentRoute(), NBEdge::reinitNodes(), MSRoute::release(), Named::setID(), MSSOTLTrafficLightLogic::setToATargetPhase(), NBEdge::splitGeometry(), Distribution_Parameterized::toStr(), MSChargingStation::writeChargingStationOutput(), RODFDetector::writeEmitterDefinition(), MSXMLRawOut::writeLane(), writeLogic(), RODFDetector::writeSingleSpeedTrigger(), MEInductLoop::writeXMLOutput(), MSCalibrator::writeXMLOutput(), and MSE3Collector::writeXMLOutput().
|
private |
Vector of incoming edges.
Definition at line 726 of file NBNode.h.
Referenced by addIncomingEdge(), avoidOverlap(), buildInnerEdges(), checkIsRemovable(), NBEdgePriorityComputer::computeEdgePriorities(), NBEdgePriorityComputer::computeEdgePrioritiesSingleNode(), computeLanes2Lanes(), computeLogic(), computeNodeShape(), NBNodeTypeComputer::computeNodeTypes(), NBNodeTypeComputer::computeSingleNodeType(), geometryLike(), getConnectionIndex(), getEdgesToJoin(), getEmptyDir(), getIncomingEdges(), getOppositeIncoming(), getPossiblySplittedIncoming(), hasIncoming(), invalidateIncomingConnections(), isLeftMover(), isSimpleContinuation(), reinit(), removeDoubleEdges(), removeEdge(), removeSelfLoops(), replaceIncoming(), replaceOutgoing(), NBEdgePriorityComputer::setPriorityJunctionPriorities(), and sortEdges().
|
private |
whether the junction area must be kept clear
Definition at line 765 of file NBNode.h.
Referenced by getKeepClear(), and setKeepClear().
|
private |
Vector of outgoing edges.
Definition at line 729 of file NBNode.h.
Referenced by addOutgoingEdge(), checkIsRemovable(), NBEdgePriorityComputer::computeEdgePriorities(), NBEdgePriorityComputer::computeEdgePrioritiesSingleNode(), computeLanes2Lanes(), computeLogic(), computeNodeShape(), geometryLike(), getConnectionTo(), getEdgesToJoin(), getEmptyDir(), getOutgoingEdges(), getPossiblySplittedOutgoing(), hasOutgoing(), invalidateOutgoingConnections(), isLeftMover(), isSimpleContinuation(), reinit(), removeDoubleEdges(), removeEdge(), removeSelfLoops(), replaceOutgoing(), NBEdgePriorityComputer::setPriorityJunctionPriorities(), and sortEdges().
|
private |
the (outer) shape of the junction
Definition at line 750 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 723 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 762 of file NBNode.h.
Referenced by getRadius(), and setRadius().
|
private |
Node requests.
Definition at line 756 of file NBNode.h.
Referenced by computeLogic(), foes(), forbids(), mustBrake(), needsCont(), numNormalConnections(), writeLogic(), and ~NBNode().
|
private |
traffic lights of node
Definition at line 759 of file NBNode.h.
Referenced by addTrafficLight(), checkIsRemovable(), computeLogic(), getControllingTLS(), invalidateTLS(), isJoinedTLSControlled(), isTLControlled(), needsCont(), removeEdge(), removeTrafficLight(), removeTrafficLights(), rightOnRedConflict(), and shiftTLConnectionLaneIndex().
|
private |
The type of the junction.
Definition at line 741 of file NBNode.h.
Referenced by addTrafficLight(), checkCrossing(), NBEdgePriorityComputer::computeEdgePriorities(), computeLanes2Lanes(), computeLogic(), NBNodeTypeComputer::computeNodeTypes(), NBNodeTypeComputer::computeSingleNodeType(), getLinkState(), getType(), isDistrict(), needsCont(), reinit(), rightOnRedConflict(), and setRoundabout().
|
private |
Vector of walking areas.
Definition at line 738 of file NBNode.h.
Referenced by buildCrossingsAndWalkingAreas(), buildWalkingAreas(), getWalkingAreas(), and mirrorX().
|
static |
unspecified lane width
Definition at line 200 of file NBNode.h.
Referenced by NBNodeShapeComputer::computeNodeShapeDefault(), NWWriter_SUMO::writeJunction(), and NWWriter_XML::writeNodes().