Eclipse SUMO - Simulation of Urban MObility
|
Container for nodes during the netbuilding process. More...
#include <NBNodeCont.h>
Public Types | |
typedef std::pair< NBNode *, double > | NodeAndDist |
typedef std::vector< NodeSet > | NodeClusters |
Definition of a node cluster container. | |
Public Member Functions | |
void | addPrefix (const std::string &prefix) |
add prefix to all nodes | |
void | analyzeCluster (NodeSet cluster, std::string &id, Position &pos, bool &hasTLS, TrafficLightType &type, SumoXMLNodeType &nodeType) |
void | applyConditionalDefaults () |
apply default values after loading | |
void | clear () |
deletes all nodes | |
void | computeLanes2Lanes () |
divides the incoming lanes on outgoing lanes | |
void | computeLogics (const NBEdgeCont &ec) |
build the list of outgoing edges and lanes | |
void | computeLogics2 (const NBEdgeCont &ec, OptionsCont &oc) |
compute right-of-way logic for all lane-to-lane connections | |
void | computeNodeShapes (double mismatchThreshold=-1) |
Compute the junction shape for this node. | |
void | discardRailSignals () |
discards rail signals | |
void | discardTrafficLights (NBTrafficLightLogicCont &tlc, bool geometryLike, bool guessSignals) |
std::vector< std::string > | getAllNames () const |
get all node names | |
std::string | getFreeID () |
generates a new node ID | |
const std::vector< std::set< std::string > > & | getJoinedClusters () const |
gets all joined clusters (see doc for myClusters2Join) | |
int | guessFringe () |
guess and mark fringe nodes | |
void | markAsNotTLS (const NBNode *node) |
mark a node as explicitly not controlled by a TLS | |
void | markAsSplit (const NBNode *node) |
mark a node as being created form a split | |
NBNodeCont () | |
Constructor. | |
void | printBuiltNodesStatistics () const |
Prints statistics about built nodes. | |
void | registerJoinedCluster (const NodeSet &cluster) |
gets all joined clusters (see doc for myClusters2Join) | |
void | registerJoinedCluster (const std::set< std::string > &cluster) |
int | remapIDs (bool numericaIDs, bool reservedIDs, const std::string &prefix, NBTrafficLightLogicCont &tlc) |
remap node IDs according to options –numerical-ids and –reserved-ids | |
void | rename (NBNode *node, const std::string &newID) |
Renames the node. Throws exception if newID already exists. | |
bool | resetNodeShapes () |
reset all node shapes | |
int | size () const |
Returns the number of nodes stored in this container. | |
void | unregisterJoinedCluster (const std::set< std::string > &cluster) |
remove cluster from list (on netedit-undo) | |
bool | wasRemoved (std::string id) const |
Returns whether the node with the id was deleted explicitly. | |
~NBNodeCont () | |
Destructor. | |
Insertion/removal/retrieval of nodes | |
bool | insert (const std::string &id, const Position &position, NBDistrict *district=0) |
Inserts a node into the map. | |
bool | insert (NBNode *node) |
Inserts a node into the map. | |
bool | erase (NBNode *node) |
Removes the given node, deleting it. | |
bool | extract (NBNode *node, bool remember=false) |
Removes the given node but does not delete it. | |
NBNode * | retrieve (const std::string &id) const |
Returns the node with the given name. | |
NBNode * | retrieve (const Position &position, const double offset=0.) const |
Returns the node with the given coordinates. | |
std::map< std::string, NBNode * >::const_iterator | begin () const |
Returns the pointer to the begin of the stored nodes. | |
std::map< std::string, NBNode * >::const_iterator | end () const |
Returns the pointer to the end of the stored nodes. | |
Adapting the input | |
int | removeSelfLoops (NBDistrictCont &dc, NBEdgeCont &ec, NBTrafficLightLogicCont &tc) |
Removes self-loop edges (edges where the source and the destination node are the same) | |
void | joinSimilarEdges (NBDistrictCont &dc, NBEdgeCont &ec, NBTrafficLightLogicCont &tlc, bool removeDuplicates) |
Joins edges connecting the same nodes. | |
void | avoidOverlap () |
fix overlap | |
int | removeIsolatedRoads (NBDistrictCont &dc, NBEdgeCont &ec) |
Removes sequences of edges that are not connected with a junction. Simple roads without junctions sometimes remain when converting from OpenStreetMap, but they make no sense. Remaining empty nodes are also deleted. | |
int | removeComponents (NBDistrictCont &dc, NBEdgeCont &ec, const int numKeep, bool hasPTStops) |
Checks the network for weak connectivity and removes all but the largest components. The connectivity check is done regardless of edge direction and vclass. | |
int | removeRailComponents (NBDistrictCont &dc, NBEdgeCont &ec, NBPTStopCont &sc) |
int | removeUnwishedNodes (NBDistrictCont &dc, NBEdgeCont &ec, NBTrafficLightLogicCont &tlc, NBPTStopCont &sc, NBPTLineCont &lc, NBParkingCont &pc, bool removeGeometryNodes) |
Removes "unwished" nodes. | |
Methods for guessing/computing traffic lights | |
void | guessTLs (OptionsCont &oc, NBTrafficLightLogicCont &tlc) |
Guesses which junctions or junction clusters shall be controlled by tls. | |
void | recheckGuessedTLS (NBTrafficLightLogicCont &tlc) |
recheck myGuessedTLS after node logics are computed | |
bool | recheckTLSThreshold (NBNode *node) |
check whether a specific guessed tls should keep its type | |
void | computeKeepClear () |
compute keepClear status for all connections | |
void | joinTLS (NBTrafficLightLogicCont &tlc, double maxdist) |
Builds clusters of tls-controlled junctions and joins the control if possible. | |
void | setAsTLControlled (NBNode *node, NBTrafficLightLogicCont &tlc, TrafficLightType type, std::string id="") |
Sets the given node as being controlled by a tls. | |
Private Types | |
typedef std::map< std::string, NBNode * > | NodeCont |
Definition of the map of names to nodes. | |
Private Member Functions | |
NBNodeCont (const NBNodeCont &s)=delete | |
invalidated copy constructor | |
NBNodeCont & | operator= (const NBNodeCont &s)=delete |
invalidated assignment operator | |
void | paretoCheck (NBNode *node, NodeSet &frontier, int xSign, int ySign) |
update pareto frontier with the given node | |
Helper methods for guessing/computing traffic lights | |
bool | shouldBeTLSControlled (const NodeSet &c, double laneSpeedThreshold, bool recheck=false) const |
Returns whethe the given node cluster should be controlled by a tls. | |
bool | onlyCrossings (const NodeSet &c) const |
check wheter the set of nodes only contains pedestrian crossings | |
bool | customTLID (const NodeSet &c) const |
check wheter the set of nodes contains traffic lights with custom id | |
Private Attributes | |
std::vector< std::pair< std::set< std::string >, NBNode * > > | myClusters2Join |
loaded sets of node ids to join (cleared after use) | |
NodeCont | myExtractedNodes |
The extracted nodes which are kept for reference. | |
std::set< NBNode *, ComparatorIdLess > | myGuessedTLS |
nodes that received a traffic light due to guessing (–tls.guess) | |
std::set< std::string > | myJoined |
ids found in loaded join clusters used for error checking | |
std::vector< std::set< std::string > > | myJoinedClusters |
sets of node ids which were joined | |
std::set< std::string > | myJoinExclusions |
set of node ids which should not be joined | |
NodeCont | myNodes |
The map of names to nodes. | |
std::vector< std::vector< std::string > > | myRailComponents |
network components that must be removed if not connected to the road network via stop access | |
NamedRTree | myRTree |
node positions for faster lookup | |
std::set< const NBNode * > | mySplit |
nodes that were created when splitting an edge | |
std::set< const NBNode * > | myUnsetTLS |
nodes that are excluded from tls-guessing | |
Methods for joining nodes | |
void | addJoinExclusion (const std::vector< std::string > &ids) |
std::string | createClusterId (const NodeSet &cluster, const std::string &prefix="cluster_") |
generate id from cluster node ids | |
std::string | createClusterId (const std::set< std::string > &cluster, const std::string &prefix="cluster_") |
generate id from cluster node ids | |
void | addCluster2Join (const std::set< std::string > &cluster, NBNode *node) |
add ids of nodes which shall be joined into a single node | |
int | joinLoadedClusters (NBDistrictCont &dc, NBEdgeCont &ec, NBTrafficLightLogicCont &tlc) |
Joins loaded junction clusters (see NIXMLNodesHandler) | |
int | joinJunctions (double maxDist, NBDistrictCont &dc, NBEdgeCont &ec, NBTrafficLightLogicCont &tlc, NBPTStopCont &sc) |
Joins junctions that are very close together. | |
int | joinSameJunctions (NBDistrictCont &dc, NBEdgeCont &ec, NBTrafficLightLogicCont &tlc) |
Joins junctions with the same coordinates regardless of topology. | |
bool | maybeSlipLaneStart (const NBNode *n, EdgeVector &outgoing, double &inAngle) const |
check whether the given node maybe the start of a slip lane | |
bool | maybeSlipLaneEnd (const NBNode *n, EdgeVector &incoming, double &outAngle) const |
check whether the given node maybe the end of a slip lane | |
bool | reduceToCircle (NodeSet &cluster, int circleSize, NodeSet startNodes, double maxDist, std::vector< NBNode * > cands=std::vector< NBNode * >()) const |
try to find a joinable subset (recursively) | |
NBEdge * | shortestEdge (const NodeSet &cluster, const NodeSet &startNodes, const std::vector< NBNode * > &exclude) const |
find closest neighbor for building circle | |
static NodeSet | getClusterNeighbors (const NBNode *n, double longThreshold, NodeSet &cluster) |
return all cluster neighbors for the given node | |
static bool | isSlipLaneContinuation (const NBNode *cont) |
whether the given node may continue a slip lane | |
Helper methods for for joining nodes | |
void | generateNodeClusters (double maxDist, NodeClusters &into) const |
Builds node clusters. | |
void | pruneClusterFringe (NodeSet &cluster, double maxDist) const |
remove geometry-like fringe nodes from cluster | |
void | pruneSlipLaneNodes (NodeSet &cluster, double maxDist) const |
remove nodes that form a slip lane from cluster | |
bool | feasibleCluster (const NodeSet &cluster, const std::map< const NBNode *, std::vector< NBNode * > > &ptStopEnds, double maxDist, std::string &reason) const |
determine wether the cluster is not too complex for joining | |
void | joinNodeClusters (NodeClusters clusters, NBDistrictCont &dc, NBEdgeCont &ec, NBTrafficLightLogicCont &tlc, bool resetConnections=false) |
joins the given node clusters | |
void | joinNodeCluster (NodeSet clusters, NBDistrictCont &dc, NBEdgeCont &ec, NBTrafficLightLogicCont &tlc, NBNode *predefined=nullptr, bool resetConnections=false) |
static int | pruneLongEdges (NodeSet &cluster, double maxDist, const bool dryRun=false) |
avoid removal of long edges when joining junction clusters | |
static double | getDiameter (const NodeSet &cluster) |
compute the maximum distance between any two cluster nodes | |
static bool | geometryLikeForClass (const NBNode *n, SVCPermissions permissions) |
check whether the node is geometryLike when only considering edges that support the given permissions | |
Container for nodes during the netbuilding process.
Definition at line 57 of file NBNodeCont.h.
typedef std::pair<NBNode*, double> NBNodeCont::NodeAndDist |
Definition at line 62 of file NBNodeCont.h.
typedef std::vector<NodeSet> NBNodeCont::NodeClusters |
Definition of a node cluster container.
Definition at line 61 of file NBNodeCont.h.
|
private |
Definition of the map of names to nodes.
Definition at line 443 of file NBNodeCont.h.
|
inline |
Constructor.
Definition at line 65 of file NBNodeCont.h.
NBNodeCont::~NBNodeCont | ( | ) |
|
privatedelete |
invalidated copy constructor
void NBNodeCont::addCluster2Join | ( | const std::set< std::string > & | cluster, |
NBNode * | node | ||
) |
add ids of nodes which shall be joined into a single node
[in] | cluster | The cluster to add |
Definition at line 724 of file NBNodeCont.cpp.
References Named::getID(), myClusters2Join, myJoined, myJoinExclusions, retrieve(), TL, WRITE_ERRORF, and WRITE_WARNINGF.
Referenced by NIXMLNodesHandler::addJoinCluster().
void NBNodeCont::addJoinExclusion | ( | const std::vector< std::string > & | ids | ) |
Definition at line 691 of file NBNodeCont.cpp.
References myJoined, myJoinExclusions, TL, and WRITE_WARNINGF.
Referenced by NIXMLNodesHandler::addJoinExclusion(), and NBNetBuilder::compute().
void NBNodeCont::addPrefix | ( | const std::string & | prefix | ) |
add prefix to all nodes
Definition at line 2666 of file NBNodeCont.cpp.
References myNodes.
Referenced by GNELoadThread::run().
void NBNodeCont::analyzeCluster | ( | NodeSet | cluster, |
std::string & | id, | ||
Position & | pos, | ||
bool & | hasTLS, | ||
TrafficLightType & | type, | ||
SumoXMLNodeType & | nodeType | ||
) |
Definition at line 1993 of file NBNodeCont.cpp.
References Position::add(), createClusterId(), StringBijection< T >::get(), OptionsCont::getOptions(), Position::mul(), NOJUNCTION, PRIORITY, TL, toString(), TRAFFIC_LIGHT, SUMOXMLDefinitions::TrafficLightTypes, UNKNOWN, and WRITE_WARNINGF.
Referenced by joinNodeCluster(), GNENet::joinSelectedJunctions(), and joinTLS().
void NBNodeCont::applyConditionalDefaults | ( | ) |
apply default values after loading
Definition at line 2874 of file NBNodeCont.cpp.
References ALLWAYSTOP, DEFAULT, NBNode::getControllingTLS(), NBNode::getRightOfWay(), NBNode::isTLControlled(), myNodes, NEMA, and NBNode::setRightOfWay().
Referenced by NILoader::load().
void NBNodeCont::avoidOverlap | ( | ) |
fix overlap
Definition at line 538 of file NBNodeCont.cpp.
References myNodes.
Referenced by NBNetBuilder::compute().
|
inline |
Returns the pointer to the begin of the stored nodes.
Definition at line 113 of file NBNodeCont.h.
References myNodes.
Referenced by NBNetBuilder::compute(), NBTurningDirectionsComputer::computeTurnDirections(), NBNetBuilder::mirrorX(), NBNetBuilder::moveToOrigin(), removeUnwishedNodes(), NBTrafficLightLogicCont::setTLControllingInformation(), NBNodesEdgesSorter::sortNodesEdges(), NBNodeTypeComputer::validateRailCrossings(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_XML::writeEdgesAndConnections(), NWWriter_Amitran::writeNetwork(), NWWriter_MATSim::writeNetwork(), NWWriter_OpenDrive::writeNetwork(), NWWriter_SUMO::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), NWWriter_DlrNavteq::writeProhibitedManoeuvres(), and NWWriter_DlrNavteq::writeTrafficSignals().
void NBNodeCont::clear | ( | ) |
deletes all nodes
Definition at line 2523 of file NBNodeCont.cpp.
References myExtractedNodes, and myNodes.
Referenced by ~NBNodeCont().
void NBNodeCont::computeKeepClear | ( | ) |
compute keepClear status for all connections
Definition at line 2410 of file NBNodeCont.cpp.
References myNodes.
Referenced by NBNetBuilder::compute().
void NBNodeCont::computeLanes2Lanes | ( | ) |
divides the incoming lanes on outgoing lanes
Definition at line 2486 of file NBNodeCont.cpp.
References myNodes.
Referenced by NBNetBuilder::compute().
void NBNodeCont::computeLogics | ( | const NBEdgeCont & | ec | ) |
build the list of outgoing edges and lanes
Definition at line 2495 of file NBNodeCont.cpp.
References myNodes.
Referenced by NBNetBuilder::compute().
void NBNodeCont::computeLogics2 | ( | const NBEdgeCont & | ec, |
OptionsCont & | oc | ||
) |
compute right-of-way logic for all lane-to-lane connections
Definition at line 2503 of file NBNodeCont.cpp.
References OptionsCont::getBool(), NBEdgeCont::getRoundabouts(), and myNodes.
Referenced by NBNetBuilder::compute().
void NBNodeCont::computeNodeShapes | ( | double | mismatchThreshold = -1 | ) |
Compute the junction shape for this node.
[in] | mismatchThreshold | The threshold for warning about shapes which are away from myPosition |
Definition at line 2550 of file NBNodeCont.cpp.
References myNodes.
Referenced by NBNetBuilder::compute().
|
inline |
generate id from cluster node ids
[in] | cluster | The cluster ids |
[in] | prefix | The cluster prefix |
Definition at line 136 of file NBNodeCont.h.
References createClusterId().
Referenced by NIXMLNodesHandler::addJoinCluster(), analyzeCluster(), createClusterId(), guessTLs(), and NIImporter_OpenDrive::loadNetwork().
std::string NBNodeCont::createClusterId | ( | const std::set< std::string > & | cluster, |
const std::string & | prefix = "cluster_" |
||
) |
generate id from cluster node ids
[in] | cluster | The cluster ids |
[in] | prefix | The cluster prefix |
Definition at line 705 of file NBNodeCont.cpp.
References OptionsCont::getInt(), OptionsCont::getOptions(), joinToString(), and toString().
|
private |
check wheter the set of nodes contains traffic lights with custom id
Definition at line 2092 of file NBNodeCont.cpp.
References Named::getID(), NBTrafficLightDefinition::getNodes(), and StringUtils::startsWith().
Referenced by joinTLS().
void NBNodeCont::discardRailSignals | ( | ) |
discards rail signals
Definition at line 2725 of file NBNodeCont.cpp.
References NBNode::getPosition(), NBNode::getType(), myNodes, PRIORITY, RAIL_SIGNAL, and NBNode::reinit().
Referenced by NILoader::load().
void NBNodeCont::discardTrafficLights | ( | NBTrafficLightLogicCont & | tlc, |
bool | geometryLike, | ||
bool | guessSignals | ||
) |
Definition at line 2689 of file NBNodeCont.cpp.
References NBTrafficLightLogicCont::extract(), NBNode::geometryLike(), NBNode::getControllingTLS(), NBNode::getCrossings(), Named::getID(), NBNode::getOutgoingEdges(), NBNode::getPosition(), NBNodeTypeComputer::isRailwayNode(), NBNode::isTLControlled(), myNodes, RAIL_SIGNAL, NBNode::reinit(), NBNode::removeTrafficLight(), and UNKNOWN.
Referenced by NILoader::load(), and main().
|
inline |
Returns the pointer to the end of the stored nodes.
Definition at line 118 of file NBNodeCont.h.
References myNodes.
Referenced by NBNetBuilder::compute(), NBTurningDirectionsComputer::computeTurnDirections(), NBNetBuilder::mirrorX(), NBNetBuilder::moveToOrigin(), NBTrafficLightLogicCont::setTLControllingInformation(), NBNodesEdgesSorter::sortNodesEdges(), NBNodeTypeComputer::validateRailCrossings(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_XML::writeEdgesAndConnections(), NWWriter_Amitran::writeNetwork(), NWWriter_MATSim::writeNetwork(), NWWriter_OpenDrive::writeNetwork(), NWWriter_SUMO::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), NWWriter_DlrNavteq::writeProhibitedManoeuvres(), and NWWriter_DlrNavteq::writeTrafficSignals().
bool NBNodeCont::erase | ( | NBNode * | node | ) |
Removes the given node, deleting it.
[in] | node | The node to delete and remove |
Definition at line 146 of file NBNodeCont.cpp.
References extract().
Referenced by joinNodeCluster(), NIVissimEdge::remapOneOfNodes(), removeComponents(), removeIsolatedRoads(), and removeRailComponents().
bool NBNodeCont::extract | ( | NBNode * | node, |
bool | remember = false |
||
) |
Removes the given node but does not delete it.
[in] | node | The node to delete and remove |
[in] | remember | Whether to keep the node for future reference |
Definition at line 157 of file NBNodeCont.cpp.
References Named::getID(), NBNode::getPosition(), myExtractedNodes, myNodes, myRTree, NamedRTree::Remove(), NBNode::removeTrafficLights(), Position::x(), and Position::y().
Referenced by NIXMLNodesHandler::deleteNode(), erase(), NIImporter_OpenDrive::loadNetwork(), and removeUnwishedNodes().
|
private |
determine wether the cluster is not too complex for joining
Definition at line 1432 of file NBNodeCont.cpp.
References DEBUGCOND, NBEdge::getAngleAtNode(), NBNode::getEdges(), NBEdge::getFromNode(), NBEdge::getID(), NBEdge::getLoadedLength(), NBEdge::getPermissions(), NBEdge::getToNode(), joinNamedToString(), SVC_PASSENGER, and toString().
Referenced by joinJunctions().
|
private |
Builds node clusters.
A node cluster is made up from nodes which are near by (distance<maxDist) and connected.
[in] | maxDist | The maximum distance between two nodes for clustering |
[in,filled] | into The container to store the clusters in |
Definition at line 547 of file NBNodeCont.cpp.
References DEBUGCOND, Position::distanceTo2D(), NBNode::geometryLike(), geometryLikeForClass(), NBNode::getEdges(), Named::getID(), NBNode::getIncomingEdges(), NBNode::getPosition(), NBNode::getType(), NBNode::hasIncoming(), NBNode::isTrafficLight(), joinNamedToString(), myNodes, RAIL_CROSSING, SUMO_const_laneWidth, SVC_DELIVERY, SVC_PASSENGER, SVC_PEDESTRIAN, SVC_RAIL_CLASSES, SVC_TRAM, and SVC_VULNERABLE.
Referenced by guessTLs(), joinJunctions(), and joinTLS().
|
staticprivate |
check whether the node is geometryLike when only considering edges that support the given permissions
Definition at line 669 of file NBNodeCont.cpp.
References NBNode::geometryLike(), NBNode::getIncomingEdges(), and NBNode::getOutgoingEdges().
Referenced by generateNodeClusters().
std::vector< std::string > NBNodeCont::getAllNames | ( | ) | const |
get all node names
Definition at line 2656 of file NBNodeCont.cpp.
References myNodes.
Referenced by GNENet::initJunctionsAndEdges(), remapIDs(), and NWWriter_DlrNavteq::writeNodesUnsplitted().
|
static |
return all cluster neighbors for the given node
Definition at line 1132 of file NBNodeCont.cpp.
References NBNode::getEdges().
Referenced by pruneLongEdges().
|
staticprivate |
compute the maximum distance between any two cluster nodes
Definition at line 1046 of file NBNodeCont.cpp.
References MAX2().
Referenced by pruneClusterFringe().
std::string NBNodeCont::getFreeID | ( | ) |
|
inline |
gets all joined clusters (see doc for myClusters2Join)
Definition at line 350 of file NBNodeCont.h.
References myJoinedClusters.
Referenced by NWWriter_XML::writeJoinedJunctions().
int NBNodeCont::guessFringe | ( | ) |
guess and mark fringe nodes
Definition at line 2808 of file NBNodeCont.cpp.
References NBNode::getEdges(), OptionsCont::getFloat(), OptionsCont::getOptions(), myNodes, OUTER, paretoCheck(), and NBNode::setFringeType().
Referenced by NBNetBuilder::compute().
void NBNodeCont::guessTLs | ( | OptionsCont & | oc, |
NBTrafficLightLogicCont & | tlc | ||
) |
Guesses which junctions or junction clusters shall be controlled by tls.
[in] | oc | The options that steer the guessing process |
[filled] | tlc The traffic lights control into which new traffic light definitions shall be stored |
Definition at line 2114 of file NBNodeCont.cpp.
References createClusterId(), DEBUGCOND, OptionsCont::exists(), generateNodeClusters(), NBNode::geometryLike(), StringBijection< T >::get(), OptionsCont::getBool(), NBNode::getControllingTLS(), OptionsCont::getFloat(), NBEdge::getID(), Named::getID(), NBNode::getIncomingEdges(), OptionsCont::getInt(), OptionsCont::getOptions(), NBNode::getOutgoingEdges(), NBEdge::getPermissions(), NBNode::getPosition(), NBEdge::getSignalNode(), NBEdge::getSignalOffset(), NBEdge::getSignalPosition(), OptionsCont::getString(), OptionsCont::getStringVector(), NBEdge::getToNode(), NBNode::getType(), NBTrafficLightLogicCont::insert(), Position::INVALID, NBNode::isNearDistrict(), NBNodeTypeComputer::isRailwayNode(), OptionsCont::isSet(), NBNode::isTLControlled(), MIN2(), myGuessedTLS, myNodes, myUnsetTLS, PRIORITY, RAIL_CROSSING, NBTrafficLightLogicCont::removeFully(), NBNode::removeTrafficLights(), retrieve(), setAsTLControlled(), shouldBeTLSControlled(), SVC_PASSENGER, TL, TLF, SUMOXMLDefinitions::TrafficLightTypes, NBEdge::UNSPECIFIED_SIGNAL_OFFSET, NBNode::updateSurroundingGeometry(), WRITE_WARNING, and WRITE_WARNINGF.
Referenced by NBNetBuilder::compute().
bool NBNodeCont::insert | ( | const std::string & | id, |
const Position & | position, | ||
NBDistrict * | district = 0 |
||
) |
Inserts a node into the map.
[in] | id | The node's id |
[in] | position | The node's position |
[in] | A | district assigned to the node |
Definition at line 87 of file NBNodeCont.cpp.
References NamedRTree::Insert(), myNodes, myRTree, Position::x(), and Position::y().
Referenced by NIImporter_SUMO::addJunction(), NIXMLEdgesHandler::addSplit(), NIImporter_VISUM::buildDistrictNode(), NIVissimEdge::buildNBEdge(), NIVissimNodeCluster::buildNBNode(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), NIVissimDistrictConnection::dict_BuildDistrictNodes(), NIVissimEdge::getFromNode(), NIImporter_OpenDrive::getOrBuildNode(), NIVissimEdge::getToNode(), NIImporter_OpenStreetMap::insertNodeChecking(), joinNodeCluster(), NIImporter_ArcView::load(), NIImporter_OpenDrive::loadNetwork(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_Nodes(), NIXMLNodesHandler::processNodeType(), NBEdgeCont::processSplits(), NIVissimEdge::remapOneOfNodes(), NIVissimEdge::resolveSameNode(), NBEdgeCont::splitGeometry(), and NGNet::toNB().
bool NBNodeCont::insert | ( | NBNode * | node | ) |
Inserts a node into the map.
[in] | node | The node to insert |
Definition at line 102 of file NBNodeCont.cpp.
References Named::getID(), NBNode::getPosition(), NamedRTree::Insert(), myNodes, myRTree, Position::x(), and Position::y().
|
static |
whether the given node may continue a slip lane
Definition at line 1351 of file NBNodeCont.cpp.
References NBNode::getPassengerEdges().
Referenced by pruneSlipLaneNodes().
int NBNodeCont::joinJunctions | ( | double | maxDist, |
NBDistrictCont & | dc, | ||
NBEdgeCont & | ec, | ||
NBTrafficLightLogicCont & | tlc, | ||
NBPTStopCont & | sc | ||
) |
Joins junctions that are very close together.
Definition at line 777 of file NBNodeCont.cpp.
References DEBUGCOND, feasibleCluster(), gDebugFlag1, generateNodeClusters(), NBEdge::getFromNode(), NBPTStopCont::getStops(), NBEdge::getToNode(), joinNamedToString(), joinNodeClusters(), myJoinExclusions, pruneClusterFringe(), pruneLongEdges(), pruneSlipLaneNodes(), reduceToCircle(), NBEdgeCont::retrieve(), TL, and WRITE_WARNINGF.
Referenced by NBNetBuilder::compute().
int NBNodeCont::joinLoadedClusters | ( | NBDistrictCont & | dc, |
NBEdgeCont & | ec, | ||
NBTrafficLightLogicCont & | tlc | ||
) |
Joins loaded junction clusters (see NIXMLNodesHandler)
Definition at line 752 of file NBNodeCont.cpp.
References joinNodeCluster(), myClusters2Join, myJoinExclusions, retrieve(), TL, and WRITE_ERRORF.
Referenced by NBNetBuilder::compute().
|
private |
Definition at line 1727 of file NBNodeCont.cpp.
References analyzeCluster(), erase(), NBEdgeCont::extract(), StringBijection< T >::get(), OptionsCont::getBool(), NBEdge::getConnections(), NBEdge::getID(), Named::getID(), NBNode::getIncomingEdges(), OptionsCont::getOptions(), NBNode::getOutgoingEdges(), NBEdge::getPermissions(), NBNode::getPosition(), NBEdge::getStep(), NBEdge::getToNode(), NBNode::getType(), getVehicleClassNames(), NBEdgeCont::hasPostProcessConnection(), NBEdge::INIT, insert(), NBTrafficLightLogicCont::insert(), Position::INVALID, NBNode::isTLControlled(), joinNamedToString(), registerJoinedCluster(), NBNode::reinit(), retrieve(), Parameterised::setParameter(), Position::setx(), Position::sety(), Position::setz(), SUMO_PARAM_ORIGID, SVC_PEDESTRIAN, SVC_UNSPECIFIED, TL, TLF, toString(), TRAFFIC_LIGHT, SUMOXMLDefinitions::TrafficLightTypes, UNKNOWN, NBEdge::USER, WRITE_WARNINGF, Position::x(), Position::y(), and Position::z().
Referenced by joinLoadedClusters(), and joinNodeClusters().
|
private |
joins the given node clusters
Definition at line 1718 of file NBNodeCont.cpp.
References joinNodeCluster().
Referenced by joinJunctions(), and joinSameJunctions().
int NBNodeCont::joinSameJunctions | ( | NBDistrictCont & | dc, |
NBEdgeCont & | ec, | ||
NBTrafficLightLogicCont & | tlc | ||
) |
Joins junctions with the same coordinates regardless of topology.
Definition at line 925 of file NBNodeCont.cpp.
References gPrecision, joinNodeClusters(), myJoinExclusions, myNodes, OutputDevice::realString(), Position::x(), Position::y(), and Position::z().
Referenced by NBNetBuilder::compute().
void NBNodeCont::joinSimilarEdges | ( | NBDistrictCont & | dc, |
NBEdgeCont & | ec, | ||
NBTrafficLightLogicCont & | tlc, | ||
bool | removeDuplicates | ||
) |
Joins edges connecting the same nodes.
[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 188 of file NBNodeCont.cpp.
References NBEdgeCont::extract(), NBEdge::getLoadedLength(), NBEdge::getPermissions(), NBEdge::getSpeed(), NBEdge::isNearEnough2BeJoined2(), NBEdgeCont::joinSameNodeConnectingEdges(), and myNodes.
Referenced by NBNetBuilder::compute().
void NBNodeCont::joinTLS | ( | NBTrafficLightLogicCont & | tlc, |
double | maxdist | ||
) |
Builds clusters of tls-controlled junctions and joins the control if possible.
[changed] | tlc The traffic lights control for adding/removing new/prior tls | |
[in] | maxdist | The maximum distance between nodes for clustering |
Definition at line 2418 of file NBNodeCont.cpp.
References analyzeCluster(), customTLID(), NBTrafficLightLogicCont::exist(), generateNodeClusters(), OptionsCont::getOptions(), OptionsCont::getStringVector(), NBTrafficLightLogicCont::insert(), onlyCrossings(), NBTrafficLightLogicCont::removeFully(), TL, UNKNOWN, WRITE_WARNING, and WRITE_WARNINGF.
Referenced by NBNetBuilder::compute().
|
inline |
mark a node as explicitly not controlled by a TLS
Definition at line 368 of file NBNodeCont.h.
References myUnsetTLS.
Referenced by NIXMLNodesHandler::processNodeType().
|
inline |
mark a node as being created form a split
Definition at line 363 of file NBNodeCont.h.
References mySplit.
Referenced by NBEdgeCont::processSplits().
bool NBNodeCont::maybeSlipLaneEnd | ( | const NBNode * | n, |
EdgeVector & | incoming, | ||
double & | outAngle | ||
) | const |
check whether the given node maybe the end of a slip lane
Definition at line 1395 of file NBNodeCont.cpp.
References NBNode::getPassengerEdges(), and NBHelpers::relAngle().
Referenced by pruneSlipLaneNodes().
bool NBNodeCont::maybeSlipLaneStart | ( | const NBNode * | n, |
EdgeVector & | outgoing, | ||
double & | inAngle | ||
) | const |
check whether the given node maybe the start of a slip lane
Definition at line 1357 of file NBNodeCont.cpp.
References NBNode::getPassengerEdges(), and NBHelpers::relAngle().
Referenced by pruneSlipLaneNodes().
|
private |
check wheter the set of nodes only contains pedestrian crossings
Definition at line 2062 of file NBNodeCont.cpp.
References SVC_PEDESTRIAN.
Referenced by joinTLS().
|
privatedelete |
invalidated assignment operator
update pareto frontier with the given node
Definition at line 2853 of file NBNodeCont.cpp.
References fn, NBNode::getPosition(), Position::x(), and Position::y().
Referenced by guessFringe().
void NBNodeCont::printBuiltNodesStatistics | ( | ) | const |
Prints statistics about built nodes.
Goes through stored nodes, computes the numbers of unregulated, priority and right-before-left junctions and prints them.
Definition at line 2558 of file NBNodeCont.cpp.
References ALLWAY_STOP, DEAD_END, DISTRICT, GeoConvHelper::getConvBoundary(), GeoConvHelper::getOffsetBase(), GeoConvHelper::getOrigBoundary(), GeoConvHelper::getProcessing(), LEFT_BEFORE_RIGHT, myNodes, NOJUNCTION, PRIORITY, PRIORITY_STOP, RAIL_CROSSING, RAIL_SIGNAL, RIGHT_BEFORE_LEFT, TL, toString(), TRAFFIC_LIGHT, TRAFFIC_LIGHT_NOJUNCTION, TRAFFIC_LIGHT_RIGHT_ON_RED, UNKNOWN, WRITE_MESSAGE, and ZIPPER.
Referenced by main().
|
private |
remove geometry-like fringe nodes from cluster
Definition at line 955 of file NBNodeCont.cpp.
References Position::distanceTo2D(), gDebugFlag1, getDiameter(), NBNode::getEdges(), Named::getID(), NBNode::getIncomingEdges(), NBNode::getOutgoingEdges(), NBNode::getPosition(), isForVulnerableModes(), isRailway(), NBNode::isTLControlled(), joinNamedToString(), MIN2(), SUMO_const_laneWidth, and SVC_PASSENGER.
Referenced by joinJunctions(), pruneSlipLaneNodes(), and reduceToCircle().
|
staticprivate |
avoid removal of long edges when joining junction clusters
Definition at line 1057 of file NBNodeCont.cpp.
References NBEdge::filterByPermissions(), gDebugFlag1, NBNode::geometryLike(), getClusterNeighbors(), NBNode::getIncomingEdges(), NBEdge::getLoadedLength(), NBNode::getOutgoingEdges(), NBEdge::getStraightContinuation(), NBEdge::getToNode(), MAX2(), SUMO_const_laneWidth, SVC_PASSENGER, and toString().
Referenced by joinJunctions().
|
private |
remove nodes that form a slip lane from cluster
Definition at line 1148 of file NBNodeCont.cpp.
References gDebugFlag1, NBEdge::getFromNode(), Named::getID(), NBNode::getIncomingEdges(), NBEdge::getLength(), NBNode::getOutgoingEdges(), NBEdge::getToNode(), isSlipLaneContinuation(), joinNamedToString(), MAX_SLIPLANE_LENGTH, maybeSlipLaneEnd(), maybeSlipLaneStart(), pruneClusterFringe(), NBHelpers::relAngle(), SVC_PASSENGER, and toString().
Referenced by joinJunctions().
void NBNodeCont::recheckGuessedTLS | ( | NBTrafficLightLogicCont & | tlc | ) |
recheck myGuessedTLS after node logics are computed
Definition at line 2369 of file NBNodeCont.cpp.
References NBTrafficLightLogicCont::computeSingleLogic(), OptionsCont::getOptions(), myGuessedTLS, recheckTLSThreshold(), and NBTrafficLightLogicCont::removeFully().
Referenced by NBNetBuilder::compute().
bool NBNodeCont::recheckTLSThreshold | ( | NBNode * | node | ) |
check whether a specific guessed tls should keep its type
Definition at line 2394 of file NBNodeCont.cpp.
References NBNode::getControllingTLS(), OptionsCont::getFloat(), OptionsCont::getOptions(), NBNode::isTLControlled(), and shouldBeTLSControlled().
Referenced by recheckGuessedTLS().
bool NBNodeCont::reduceToCircle | ( | NodeSet & | cluster, |
int | circleSize, | ||
NodeSet | startNodes, | ||
double | maxDist, | ||
std::vector< NBNode * > | cands = std::vector<NBNode*>() |
||
) | const |
try to find a joinable subset (recursively)
Definition at line 1642 of file NBNodeCont.cpp.
References NBEdge::getFromNode(), NBEdge::getToNode(), pruneClusterFringe(), reduceToCircle(), and shortestEdge().
Referenced by joinJunctions(), and reduceToCircle().
void NBNodeCont::registerJoinedCluster | ( | const NodeSet & | cluster | ) |
gets all joined clusters (see doc for myClusters2Join)
Definition at line 1970 of file NBNodeCont.cpp.
References myJoinedClusters.
Referenced by joinNodeCluster(), and GNEChange_RegisterJoin::redo().
void NBNodeCont::registerJoinedCluster | ( | const std::set< std::string > & | cluster | ) |
Definition at line 1979 of file NBNodeCont.cpp.
References myJoinedClusters.
int NBNodeCont::remapIDs | ( | bool | numericaIDs, |
bool | reservedIDs, | ||
const std::string & | prefix, | ||
NBTrafficLightLogicCont & | tlc | ||
) |
remap node IDs according to options –numerical-ids and –reserved-ids
Definition at line 2736 of file NBNodeCont.cpp.
References getAllNames(), OptionsCont::getBool(), IDSupplier::getNext(), OptionsCont::getOptions(), OptionsCont::isDefault(), NBHelpers::loadPrefixedIDsFomFile(), myNodes, rename(), NBTrafficLightLogicCont::rename(), StringUtils::startsWith(), SUMO_PARAM_ORIGID, StringUtils::toLong(), and toString().
Referenced by NBNetBuilder::compute().
int NBNodeCont::removeComponents | ( | NBDistrictCont & | dc, |
NBEdgeCont & | ec, | ||
const int | numKeep, | ||
bool | hasPTStops | ||
) |
Checks the network for weak connectivity and removes all but the largest components. The connectivity check is done regardless of edge direction and vclass.
[in,opt. | changed] dc The district container needed if edges shall be removed | |
[in,opt. | changed] ec The container with the edge to be tested | |
[in] | numKeep | The number of components to keep |
Definition at line 330 of file NBNodeCont.cpp.
References NBEdgeCont::begin(), NBEdgeCont::end(), NBEdgeCont::erase(), erase(), NBEdgeCont::getByID(), NBEdge::getFromNode(), NBNode::getIncomingEdges(), NBNode::getOutgoingEdges(), NBEdge::getPermissions(), NBEdge::getToNode(), isRailway(), isWaterway(), myRailComponents, NBEdgeCont::removeRoundaboutEdges(), TL, toString(), and WRITE_MESSAGEF.
Referenced by NBNetBuilder::compute().
int NBNodeCont::removeIsolatedRoads | ( | NBDistrictCont & | dc, |
NBEdgeCont & | ec | ||
) |
Removes sequences of edges that are not connected with a junction. Simple roads without junctions sometimes remain when converting from OpenStreetMap, but they make no sense. Remaining empty nodes are also deleted.
[in,opt. | changed] dc The district container needed if edges shall be removed |
[in,opt. | changed] ec The container with the edge to be tested |
Definition at line 239 of file NBNodeCont.cpp.
References NBEdgeCont::erase(), erase(), NBEdgeCont::getAllNames(), NBEdge::getFromNode(), NBEdge::getID(), NBNode::getIncomingEdges(), NBNode::getOutgoingEdges(), NBEdge::getToNode(), NBEdgeCont::retrieve(), TL, and WRITE_WARNINGF.
Referenced by NBNetBuilder::compute().
int NBNodeCont::removeRailComponents | ( | NBDistrictCont & | dc, |
NBEdgeCont & | ec, | ||
NBPTStopCont & | sc | ||
) |
Definition at line 417 of file NBNodeCont.cpp.
References NBEdgeCont::erase(), erase(), NBEdge::getFromNode(), NBNode::getIncomingEdges(), NBNode::getOutgoingEdges(), NBPTStopCont::getStops(), NBEdge::getToNode(), myRailComponents, NBEdgeCont::retrieve(), TL, toString(), and WRITE_MESSAGEF.
Referenced by NBNetBuilder::compute().
int NBNodeCont::removeSelfLoops | ( | NBDistrictCont & | dc, |
NBEdgeCont & | ec, | ||
NBTrafficLightLogicCont & | tc | ||
) |
Removes self-loop edges (edges where the source and the destination node are the same)
[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 175 of file NBNodeCont.cpp.
References myNodes, NBNode::removeSelfLoops(), toString(), and WRITE_WARNING.
Referenced by NBNetBuilder::compute().
int NBNodeCont::removeUnwishedNodes | ( | NBDistrictCont & | dc, |
NBEdgeCont & | ec, | ||
NBTrafficLightLogicCont & | tlc, | ||
NBPTStopCont & | sc, | ||
NBPTLineCont & | lc, | ||
NBParkingCont & | pc, | ||
bool | removeGeometryNodes | ||
) |
Removes "unwished" nodes.
Removes nodes if a) no incoming/outgoing edges exist or b) if the node is a "geometry" node. In the second case, edges that participate at the node will be joined. Whether the node is a geometry node or not, is determined by a call to NBNode::checkIsRemovable. The node is removed from the list of tls-controlled nodes.
[in,opt. | changed] dc The district container needed if a node shall be removed | |
[in,opt. | changed] ec The edge container needed for joining edges | |
[in,opt. | changed] tlc The traffic lights container to remove nodes from | |
[in,opt. | changed] sc The pt stops container to update stop edges | |
[in,opt. | changed] pc The pt stops container to update stop edges | |
[in] | removeGeometryNodes | Whether geometry nodes shall also be removed |
Definition at line 459 of file NBNodeCont.cpp.
References NBParkingCont::addEdges2Keep(), NBPTStopCont::addEdges2Keep(), NBEdge::append(), NBEdgeCont::begin(), begin(), NBNode::checkIsRemovable(), NBEdgeCont::end(), OptionsCont::exists(), NBEdgeCont::extract(), extract(), OptionsCont::getBool(), NBNode::getControllingTLS(), NBNode::getEdges(), NBNode::getEdgesToJoin(), NBEdge::getID(), OptionsCont::getOptions(), OptionsCont::getString(), OptionsCont::getStringVector(), NBEdge::getToNode(), OptionsCont::isSet(), NBNode::isTLControlled(), NBHelpers::loadEdgesFromFile(), myNodes, mySplit, NBPTLineCont::replaceEdge(), NBPTStopCont::replaceEdge(), and NBNode::replaceIncoming().
Referenced by NBNetBuilder::compute().
void NBNodeCont::rename | ( | NBNode * | node, |
const std::string & | newID | ||
) |
Renames the node. Throws exception if newID already exists.
Definition at line 2678 of file NBNodeCont.cpp.
References Named::getID(), myNodes, Named::setID(), and TLF.
Referenced by remapIDs().
bool NBNodeCont::resetNodeShapes | ( | ) |
reset all node shapes
Definition at line 2895 of file NBNodeCont.cpp.
References myNodes.
Referenced by NBNetBuilder::compute().
Returns the node with the given coordinates.
[in] | position | The position at which the node to retrieve lies |
[in] | offset | An offset which can be applied in the case positions are blurred |
Definition at line 126 of file NBNodeCont.cpp.
References NBNode::getPosition(), myRTree, NamedRTree::Search(), Position::x(), and Position::y().
NBNode * NBNodeCont::retrieve | ( | const std::string & | id | ) | const |
Returns the node with the given name.
[in] | id | The id of the node to retrieve |
Definition at line 116 of file NBNodeCont.cpp.
References myNodes.
Referenced by NIImporter_SUMO::_loadNetwork(), addCluster2Join(), NIXMLConnectionsHandler::addCrossing(), NIImporter_SUMO::addJunction(), NIXMLNodesHandler::addNode(), NIXMLEdgesHandler::addSplit(), NIVissimDisturbance::addToNode(), NIImporter_VISUM::buildDistrictNode(), NGEdge::buildNBEdge(), NBEdgeCont::checkConsistency(), NBNetBuilder::compute(), NIXMLNodesHandler::deleteNode(), NIVissimNodeCluster::dict_addDisturbances(), NIVissimDistrictConnection::dict_BuildDistricts(), getFreeID(), NIImporter_VISUM::getNamedNode(), NIImporter_VISUM::getNamedNodeSecure(), NIImporter_OpenDrive::getOrBuildNode(), guessTLs(), GNENet::initJunctionsAndEdges(), NIImporter_OpenStreetMap::insertNodeChecking(), joinLoadedClusters(), joinNodeCluster(), NIImporter_ArcView::load(), NIImporter_OpenDrive::loadNetwork(), NIImporter_VISUM::parse_NodesToTrafficLights(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NIVissimEdge::resolveSameNode(), NIXMLEdgesHandler::setNodes(), NIImporter_OpenDrive::setNodeSecure(), NBEdgeCont::splitGeometry(), and NWWriter_DlrNavteq::writeNodesUnsplitted().
void NBNodeCont::setAsTLControlled | ( | NBNode * | node, |
NBTrafficLightLogicCont & | tlc, | ||
TrafficLightType | type, | ||
std::string | id = "" |
||
) |
Sets the given node as being controlled by a tls.
[in] | node | The node that shall be controlled by a tls |
[in] | tlc | The traffic lights control into which the new traffic light definition shall be stored |
[in] | type | The type of the new tls |
[in] | id | The id of the tls to add |
Definition at line 2469 of file NBNodeCont.cpp.
References Named::getID(), NBTrafficLightLogicCont::insert(), TL, and WRITE_WARNINGF.
Referenced by NBNetBuilder::compute(), and guessTLs().
NBEdge * NBNodeCont::shortestEdge | ( | const NodeSet & | cluster, |
const NodeSet & | startNodes, | ||
const std::vector< NBNode * > & | exclude | ||
) | const |
find closest neighbor for building circle
Definition at line 1697 of file NBNodeCont.cpp.
References Position::distanceTo2D(), and NBNode::getPosition().
Referenced by reduceToCircle().
|
private |
Returns whethe the given node cluster should be controlled by a tls.
[in] | c | The node cluster |
[in] | laneSpeedThreshold | threshold for determining whether a node or cluster should be tls controlled |
Definition at line 2034 of file NBNodeCont.cpp.
Referenced by guessTLs(), and recheckTLSThreshold().
|
inline |
Returns the number of nodes stored in this container.
Definition at line 307 of file NBNodeCont.h.
References myNodes.
Referenced by NILoader::load(), main(), NWWriter_OpenDrive::writeNetwork(), and NWWriter_DlrNavteq::writeNodesUnsplitted().
void NBNodeCont::unregisterJoinedCluster | ( | const std::set< std::string > & | cluster | ) |
remove cluster from list (on netedit-undo)
Definition at line 1984 of file NBNodeCont.cpp.
References myJoinedClusters.
Referenced by GNEChange_RegisterJoin::undo().
|
inline |
Returns whether the node with the id was deleted explicitly.
Definition at line 287 of file NBNodeCont.h.
References myExtractedNodes.
Referenced by NIXMLConnectionsHandler::addCrossing().
|
private |
loaded sets of node ids to join (cleared after use)
Definition at line 455 of file NBNodeCont.h.
Referenced by addCluster2Join(), and joinLoadedClusters().
|
private |
The extracted nodes which are kept for reference.
Definition at line 449 of file NBNodeCont.h.
Referenced by clear(), extract(), and wasRemoved().
|
private |
nodes that received a traffic light due to guessing (–tls.guess)
Definition at line 467 of file NBNodeCont.h.
Referenced by guessTLs(), and recheckGuessedTLS().
|
private |
ids found in loaded join clusters used for error checking
Definition at line 461 of file NBNodeCont.h.
Referenced by addCluster2Join(), and addJoinExclusion().
|
private |
sets of node ids which were joined
Definition at line 458 of file NBNodeCont.h.
Referenced by getJoinedClusters(), registerJoinedCluster(), registerJoinedCluster(), and unregisterJoinedCluster().
|
private |
set of node ids which should not be joined
Definition at line 452 of file NBNodeCont.h.
Referenced by addCluster2Join(), addJoinExclusion(), joinJunctions(), joinLoadedClusters(), and joinSameJunctions().
|
private |
The map of names to nodes.
Definition at line 446 of file NBNodeCont.h.
Referenced by addPrefix(), applyConditionalDefaults(), avoidOverlap(), begin(), clear(), computeKeepClear(), computeLanes2Lanes(), computeLogics(), computeLogics2(), computeNodeShapes(), discardRailSignals(), discardTrafficLights(), end(), extract(), generateNodeClusters(), getAllNames(), guessFringe(), guessTLs(), insert(), insert(), joinSameJunctions(), joinSimilarEdges(), printBuiltNodesStatistics(), remapIDs(), removeSelfLoops(), removeUnwishedNodes(), rename(), resetNodeShapes(), retrieve(), and size().
|
private |
network components that must be removed if not connected to the road network via stop access
Definition at line 476 of file NBNodeCont.h.
Referenced by removeComponents(), and removeRailComponents().
|
private |
node positions for faster lookup
Definition at line 473 of file NBNodeCont.h.
Referenced by extract(), insert(), insert(), and retrieve().
|
private |
nodes that were created when splitting an edge
Definition at line 464 of file NBNodeCont.h.
Referenced by markAsSplit(), and removeUnwishedNodes().
|
private |
nodes that are excluded from tls-guessing
Definition at line 470 of file NBNodeCont.h.
Referenced by guessTLs(), and markAsNotTLS().