Eclipse SUMO - Simulation of Urban MObility
Loading...
Searching...
No Matches
NBNodesEdgesSorter Class Reference

#include <NBAlgorithms.h>

Data Structures

class  crossing_by_junction_angle_sorter
 Sorts crossings by minimum clockwise clockwise edge angle. Use the ordering found in myAllEdges of the given node. More...
class  edge_by_junction_angle_sorter
 Sorts incoming and outgoing edges clockwise around the given node. More...

Static Public Member Functions

static void sortNodesEdges (NBNodeCont &nc, bool useNodeShape=false)
 Sorts a node's edges clockwise regarding driving direction.
static void swapWhenReversed (const NBNode *const n, const std::vector< NBEdge * >::iterator &i1, const std::vector< NBEdge * >::iterator &i2)
 Assures correct order for same-angle opposite-direction edges.

Detailed Description

Definition at line 115 of file NBAlgorithms.h.

Member Function Documentation

◆ sortNodesEdges()

void NBNodesEdgesSorter::sortNodesEdges ( NBNodeCont & nc,
bool useNodeShape = false )
static

Sorts a node's edges clockwise regarding driving direction.

Parameters
[in]ncThe container of nodes to loop along
[in]useNodeShapeWhether to sort based on the node shape (instead of only the edge angle)

Definition at line 229 of file NBAlgorithms.cpp.

References NBNodeCont::begin(), and NBNodeCont::end().

Referenced by NBNetBuilder::compute(), and GNENet::initJunctionsAndEdges().

Here is the caller graph for this function:

◆ swapWhenReversed()

void NBNodesEdgesSorter::swapWhenReversed ( const NBNode *const n,
const std::vector< NBEdge * >::iterator & i1,
const std::vector< NBEdge * >::iterator & i2 )
static

Assures correct order for same-angle opposite-direction edges.

Parameters
[in]nThe currently processed node
[in]i1Pointer to first edge
[in]i2Pointer to second edge

Definition at line 237 of file NBAlgorithms.cpp.

References NBEdge::getToNode(), NBEdge::isTurningDirectionAt(), and n.

Referenced by NBNode::sortEdges().

Here is the caller graph for this function:

The documentation for this class was generated from the following files: