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

A temporary storage for edges imported from Vissim. More...

#include <NIVissimEdge.h>

Inheritance diagram for NIVissimEdge:
[legend]
Collaboration diagram for NIVissimEdge:
[legend]

Data Structures

class  connection_cluster_position_sorter
class  connection_position_sorter

Public Member Functions

void addDisturbance (int disturbance)
void addIncomingConnection (int id)
 Adds a connection where this edge is the destination.
void addOutgoingConnection (int id)
 Adds a connection where this edge is the source.
void addToConnectionCluster (NIVissimConnectionCluster *c)
bool addToTreatAsSame (NIVissimEdge *e)
void buildGeom ()
void checkDistrictConnectionExistanceAt (double pos)
bool crossesEdge (NIVissimAbstractEdge *c) const
Position crossesEdgeAtPoint (NIVissimAbstractEdge *c) const
Position getBegin2D () const
NIVissimEdgegetBestIncoming () const
NIVissimEdgegetBestOutgoing () const
NIVissimConnectiongetConnectionTo (NIVissimEdge *e)
const std::vector< int > & getDisturbances () const
Position getEnd2D () const
 Returns the end position of the edge.
const PositionVectorgetGeometry () const
Position getGeomPosition (double pos) const
int getID () const
double getLength () const
 Returns the length of the node.
const std::vector< NIVissimEdge * > & getToTreatAsSame () const
bool hasNodeCluster () const
void mergedInto (NIVissimConnectionCluster *old, NIVissimConnectionCluster *act)
 NIVissimEdge (int id, const std::string &name, const std::string &type, std::vector< double > laneWidths, double zuschlag1, double zuschlag2, double length, const PositionVector &geom, const NIVissimClosedLanesVector &clv)
 Constructor.
bool overlapsWith (const AbstractPoly &p, double offset=0.0) const
void removeFromConnectionCluster (NIVissimConnectionCluster *c)
void setNodeCluster (int nodeid)
void setSpeed (int lane, int speedDist)
void splitAssigning ()
bool wasWithinAJunction () const
 Returns whether this edge was found to be within a junction.
 ~NIVissimEdge ()
 Destructor.

Static Public Member Functions

static void buildConnectionClusters ()
 Clusters connections of each edge.
static void clearDict ()
static void dict_buildNBEdges (NBDistrictCont &dc, NBNodeCont &nc, NBEdgeCont &ec, double offset)
 Builds NBEdges from the VissimEdges within the dictionary.
static void dict_checkEdges2Join ()
static void dict_propagateSpeeds ()
static bool dictionary (int id, NIVissimAbstractEdge *e)
static NIVissimEdgedictionary (int id)
 Returns the named edge from the dictionary.
static bool dictionary (int id, const std::string &name, const std::string &type, int noLanes, double zuschlag1, double zuschlag2, double length, const PositionVector &geom, const NIVissimClosedLanesVector &clv)
 Adds the described item to the dictionary Builds the edge first.
static bool dictionary (int id, NIVissimEdge *o)
 Adds the edge to the dictionary.
static std::vector< int > getWithin (const AbstractPoly &p, double offset=0.0)
static void reportUnsetSpeeds ()
 Writes edges with unset speeds to the warnings message log instance.
static void splitAndAssignToNodes ()

Protected Attributes

std::vector< int > myDisturbances
PositionVector myGeom
int myID
int myNode

Private Types

typedef std::vector< NIVissimConnectionCluster * > ConnectionClusters
 The definition for a container for connection clusters.
typedef std::map< int, NIVissimEdge * > DictType
 Definition of the dictionary type.

Private Member Functions

void buildNBEdge (NBDistrictCont &dc, NBNodeCont &nc, NBEdgeCont &ec, double sameNodesOffset)
 Builds the NBEdge from this VissimEdge.
void checkUnconnectedLaneSpeeds ()
std::pair< NIVissimConnectionCluster *, NBNode * > getFromNode (NBNodeCont &nc, ConnectionClusters &clusters)
 Returns the origin node.
std::vector< NIVissimConnection * > getOutgoingConnected (int lane) const
double getRealSpeed (int distNo)
std::pair< NIVissimConnectionCluster *, NBNode * > getToNode (NBNodeCont &nc, ConnectionClusters &clusters)
 Returns the destination node.
void propagateOwn ()
void propagateSpeed (double speed, std::vector< int > forLanes)
std::pair< NBNode *, NBNode * > remapOneOfNodes (NBNodeCont &nc, NIVissimDistrictConnection *d, NBNode *fromNode, NBNode *toNode)
std::pair< NBNode *, NBNode * > resolveSameNode (NBNodeCont &nc, double offset, NBNode *prevFrom, NBNode *prevTo)
 Tries to resolve the problem that the same node has been returned as origin and destination node.
void setDistrictSpeed ()

Static Private Member Functions

static NBNodegetNodeSecure (int nodeid, const Position &pos, const std::string &possibleName)

Private Attributes

bool myAmWithinJunction
 Information whether this edge was not build due to being within a junction.
NIVissimClosedLanesVector myClosedLanes
 List of lanes closed on this edge.
ConnectionClusters myConnectionClusters
 List of connection clusters along this edge.
std::vector< double > myDistrictConnections
std::vector< int > myIncomingConnections
 List of connections incoming to this edge.
std::vector< double > myLaneSpeeds
std::vector< double > myLaneWidths
std::string myName
 The name of the edge.
int myNoLanes
 The number of lanes the edge has.
std::vector< int > myOutgoingConnections
 List of connections outgoing from this edge.
std::vector< int > myPatchedSpeeds
std::vector< NIVissimEdge * > myToTreatAsSame
std::string myType
 The type of the edge.
double myZuschlag1
 Additional load values for this edge.
double myZuschlag2

Static Private Attributes

static DictType myDict
 The dictionary.
static std::vector< std::string > myLanesWithMissingSpeeds
static int myMaxID = 0
 The current maximum id; needed for further id assignment.

Friends

class NIVissimNodeDef_Edges
class NIVissimNodeDef_Poly

Detailed Description

A temporary storage for edges imported from Vissim.

Definition at line 50 of file NIVissimEdge.h.

Member Typedef Documentation

◆ ConnectionClusters

The definition for a container for connection clusters.

Definition at line 157 of file NIVissimEdge.h.

◆ DictType

typedef std::map<int, NIVissimEdge*> NIVissimEdge::DictType
private

Definition of the dictionary type.

Definition at line 284 of file NIVissimEdge.h.

Constructor & Destructor Documentation

◆ NIVissimEdge()

NIVissimEdge::NIVissimEdge ( int id,
const std::string & name,
const std::string & type,
std::vector< double > laneWidths,
double zuschlag1,
double zuschlag2,
double length,
const PositionVector & geom,
const NIVissimClosedLanesVector & clv )

◆ ~NIVissimEdge()

NIVissimEdge::~NIVissimEdge ( )

Destructor.

Definition at line 128 of file NIVissimEdge.cpp.

References myClosedLanes.

Member Function Documentation

◆ addDisturbance()

void NIVissimAbstractEdge::addDisturbance ( int disturbance)
inherited

Definition at line 166 of file NIVissimAbstractEdge.cpp.

References myDisturbances.

◆ addIncomingConnection()

void NIVissimEdge::addIncomingConnection ( int id)

Adds a connection where this edge is the destination.

Definition at line 778 of file NIVissimEdge.cpp.

References myIncomingConnections.

◆ addOutgoingConnection()

void NIVissimEdge::addOutgoingConnection ( int id)

Adds a connection where this edge is the source.

Definition at line 784 of file NIVissimEdge.cpp.

References myOutgoingConnections.

◆ addToConnectionCluster()

void NIVissimEdge::addToConnectionCluster ( NIVissimConnectionCluster * c)

Definition at line 816 of file NIVissimEdge.cpp.

References myConnectionClusters.

Referenced by NIVissimConnectionCluster::recheckEdges().

Here is the caller graph for this function:

◆ addToTreatAsSame()

bool NIVissimEdge::addToTreatAsSame ( NIVissimEdge * e)

Definition at line 919 of file NIVissimEdge.cpp.

References myToTreatAsSame, and NIVissimEdge().

Referenced by dict_checkEdges2Join().

Here is the caller graph for this function:

◆ buildConnectionClusters()

void NIVissimEdge::buildConnectionClusters ( )
static

Clusters connections of each edge.

For every edge stored in this container, its connections are collected and joined into "clusters" if they have the same "direction" (incoming/outgoing) and are not further than 10m away from each other.

Todo
Probably the distance (MAX_CLUSTER_DISTANCE=10m) should be made variable

Definition at line 176 of file NIVissimEdge.cpp.

References NIVissimConnection::dictionary(), myConnectionClusters, myDict, myIncomingConnections, myOutgoingConnections, NIVissimEdge(), and VectorHelper< T >::removeDouble().

Referenced by NIImporter_Vissim::postLoadBuild().

Here is the caller graph for this function:

◆ buildGeom()

void NIVissimEdge::buildGeom ( )
virtual

Implements NIVissimAbstractEdge.

Definition at line 774 of file NIVissimEdge.cpp.

◆ buildNBEdge()

void NIVissimEdge::buildNBEdge ( NBDistrictCont & dc,
NBNodeCont & nc,
NBEdgeCont & ec,
double sameNodesOffset )
private

Builds the NBEdge from this VissimEdge.

Parameters
[in]dcThe district container used if this edge must be split
[in]ncThe node container used for (optionally) building this edge's nodes
[in]ecThe edge control to add this edge to
[in]sameNodesOffsetOffset used to discriminate nodes
Exceptions
ProcessErrorIf one of the built nodes or edges could not be added to the according container

Definition at line 418 of file NIVissimEdge.cpp.

References CENTER, OptionsCont::getFloat(), getFromNode(), Named::getID(), NBEdge::getID(), OptionsCont::getOptions(), NBNode::getPosition(), getToNode(), NBEdgeCont::insert(), NBNodeCont::insert(), myAmWithinJunction, myConnectionClusters, myDistrictConnections, NIVissimAbstractEdge::myGeom, NIVissimAbstractEdge::myID, myLaneSpeeds, myLanesWithMissingSpeeds, myLaneWidths, myName, myNoLanes, myType, NOJUNCTION, resolveSameNode(), NBEdgeCont::retrieve(), NBEdge::setLaneWidth(), NBEdge::setSpeed(), NBEdgeCont::splitAt(), TL, TLF, toString(), NBEdge::UNSPECIFIED_FRICTION, NBEdge::UNSPECIFIED_OFFSET, NBEdge::UNSPECIFIED_WIDTH, and WRITE_WARNINGF.

Referenced by dict_buildNBEdges().

Here is the caller graph for this function:

◆ checkDistrictConnectionExistanceAt()

void NIVissimEdge::checkDistrictConnectionExistanceAt ( double pos)

Definition at line 844 of file NIVissimEdge.cpp.

References myDistrictConnections.

Referenced by NIVissimDistrictConnection::checkEdgeEnd().

Here is the caller graph for this function:

◆ checkUnconnectedLaneSpeeds()

void NIVissimEdge::checkUnconnectedLaneSpeeds ( )
private

Definition at line 273 of file NIVissimEdge.cpp.

References dictionary(), getOutgoingConnected(), NIVissimConnection::getToEdgeID(), NIVissimConnection::getToLanes(), myLaneSpeeds, NIVissimEdge(), and propagateSpeed().

Referenced by dict_propagateSpeeds().

Here is the caller graph for this function:

◆ clearDict()

void NIVissimAbstractEdge::clearDict ( )
staticinherited

Definition at line 151 of file NIVissimAbstractEdge.cpp.

References myDict.

Referenced by NIImporter_Vissim::~NIImporter_Vissim().

Here is the caller graph for this function:

◆ crossesEdge()

bool NIVissimAbstractEdge::crossesEdge ( NIVissimAbstractEdge * c) const
inherited

Definition at line 109 of file NIVissimAbstractEdge.cpp.

References myGeom, and NIVissimAbstractEdge().

Referenced by NIVissimNodeCluster::buildNBNode().

Here is the caller graph for this function:

◆ crossesEdgeAtPoint()

Position NIVissimAbstractEdge::crossesEdgeAtPoint ( NIVissimAbstractEdge * c) const
inherited

Definition at line 115 of file NIVissimAbstractEdge.cpp.

References myGeom, and NIVissimAbstractEdge().

Referenced by NIVissimNodeCluster::buildNBNode().

Here is the caller graph for this function:

◆ dict_buildNBEdges()

void NIVissimEdge::dict_buildNBEdges ( NBDistrictCont & dc,
NBNodeCont & nc,
NBEdgeCont & ec,
double offset )
static

Builds NBEdges from the VissimEdges within the dictionary.

Definition at line 239 of file NIVissimEdge.cpp.

References buildNBEdge(), myDict, and NIVissimEdge().

Referenced by NIImporter_Vissim::postLoadBuild().

Here is the caller graph for this function:

◆ dict_checkEdges2Join()

void NIVissimEdge::dict_checkEdges2Join ( )
static

Definition at line 866 of file NIVissimEdge.cpp.

References addToTreatAsSame(), GeomHelper::angleDiff(), PositionVector::beginEndAngle(), DEG2RAD, getConnectionTo(), NIVissimConnection::getFromEdgeID(), NIVissimConnection::getFromPosition(), NIVissimAbstractEdge::getGeometry(), NIVissimAbstractEdge::getID(), PositionVector::length(), myDict, and NIVissimEdge().

Referenced by NIImporter_Vissim::postLoadBuild().

Here is the caller graph for this function:

◆ dict_propagateSpeeds()

void NIVissimEdge::dict_propagateSpeeds ( )
static

Definition at line 249 of file NIVissimEdge.cpp.

References checkUnconnectedLaneSpeeds(), myDict, NIVissimEdge(), propagateOwn(), propagateSpeed(), and setDistrictSpeed().

Referenced by NIImporter_Vissim::postLoadBuild().

Here is the caller graph for this function:

◆ dictionary() [1/4]

bool NIVissimAbstractEdge::dictionary ( int id,
NIVissimAbstractEdge * e )
staticinherited

Definition at line 57 of file NIVissimAbstractEdge.cpp.

References myDict, and NIVissimAbstractEdge().

Referenced by NIVissimNodeCluster::buildNBNode(), NIVissimDisturbance::computeBounding(), NIVissimDisturbance::dict_SetDisturbances(), NIVissimExtendedEdgePoint::getGeomPosition(), and NIVissimTL::NIVissimTLSignal::getPosition().

Here is the caller graph for this function:

◆ dictionary() [2/4]

NIVissimEdge * NIVissimEdge::dictionary ( int id)
static

Returns the named edge from the dictionary.

Definition at line 166 of file NIVissimEdge.cpp.

References myDict.

◆ dictionary() [3/4]

◆ dictionary() [4/4]

bool NIVissimEdge::dictionary ( int id,
NIVissimEdge * o )
static

Adds the edge to the dictionary.

Definition at line 154 of file NIVissimEdge.cpp.

References myDict, and NIVissimEdge().

◆ getBegin2D()

Position NIVissimEdge::getBegin2D ( ) const

Returns the begin position of the edge

Definition at line 826 of file NIVissimEdge.cpp.

References NIVissimAbstractEdge::myGeom.

◆ getBestIncoming()

NIVissimEdge * NIVissimEdge::getBestIncoming ( ) const

Definition at line 990 of file NIVissimEdge.cpp.

References NIVissimConnection::dictionary(), dictionary(), and myIncomingConnections.

Referenced by NIVissimConnection::buildEdgeConnections().

Here is the caller graph for this function:

◆ getBestOutgoing()

NIVissimEdge * NIVissimEdge::getBestOutgoing ( ) const

Definition at line 1007 of file NIVissimEdge.cpp.

References NIVissimConnection::dictionary(), dictionary(), and myOutgoingConnections.

Referenced by NIVissimConnection::buildEdgeConnections().

Here is the caller graph for this function:

◆ getConnectionTo()

NIVissimConnection * NIVissimEdge::getConnectionTo ( NIVissimEdge * e)

Definition at line 948 of file NIVissimEdge.cpp.

References NIVissimConnection::dictionary(), NIVissimConnection::getFromEdgeID(), NIVissimAbstractEdge::getID(), NIVissimConnection::getToEdgeID(), myIncomingConnections, myOutgoingConnections, and NIVissimEdge().

Referenced by dict_checkEdges2Join().

Here is the caller graph for this function:

◆ getDisturbances()

const std::vector< int > & NIVissimAbstractEdge::getDisturbances ( ) const
inherited

Definition at line 172 of file NIVissimAbstractEdge.cpp.

References myDisturbances.

Referenced by NIVissimConnectionCluster::getDisturbanceParticipators().

Here is the caller graph for this function:

◆ getEnd2D()

Position NIVissimEdge::getEnd2D ( ) const

Returns the end position of the edge.

Definition at line 832 of file NIVissimEdge.cpp.

References NIVissimAbstractEdge::myGeom.

◆ getFromNode()

std::pair< NIVissimConnectionCluster *, NBNode * > NIVissimEdge::getFromNode ( NBNodeCont & nc,
ConnectionClusters & clusters )
private

Returns the origin node.

Definition at line 576 of file NIVissimEdge.cpp.

References NIVissimConnectionCluster::around(), NIVissimConnectionCluster::getNBNode(), NBNodeCont::insert(), myDistrictConnections, NIVissimAbstractEdge::myGeom, NIVissimAbstractEdge::myID, NOJUNCTION, and toString().

Referenced by buildNBEdge().

Here is the caller graph for this function:

◆ getGeometry()

◆ getGeomPosition()

Position NIVissimAbstractEdge::getGeomPosition ( double pos) const
inherited

Definition at line 79 of file NIVissimAbstractEdge.cpp.

References PositionVector::extrapolate(), myGeom, and PositionVector::positionAtOffset().

Referenced by NIVissimDistrictConnection::geomPosition().

Here is the caller graph for this function:

◆ getID()

◆ getLength()

double NIVissimEdge::getLength ( ) const

Returns the length of the node.

Definition at line 838 of file NIVissimEdge.cpp.

References NIVissimAbstractEdge::myGeom.

Referenced by setDistrictSpeed().

Here is the caller graph for this function:

◆ getNodeSecure()

NBNode * NIVissimEdge::getNodeSecure ( int nodeid,
const Position & pos,
const std::string & possibleName )
staticprivate

◆ getOutgoingConnected()

std::vector< NIVissimConnection * > NIVissimEdge::getOutgoingConnected ( int lane) const
private

Definition at line 401 of file NIVissimEdge.cpp.

References NIVissimConnection::dictionary(), dictionary(), NIVissimConnection::getFromLanes(), NIVissimConnection::getToEdgeID(), myOutgoingConnections, and NIVissimEdge().

Referenced by checkUnconnectedLaneSpeeds(), propagateOwn(), propagateSpeed(), and setDistrictSpeed().

Here is the caller graph for this function:

◆ getRealSpeed()

double NIVissimEdge::getRealSpeed ( int distNo)
private

Definition at line 522 of file NIVissimEdge.cpp.

References DistributionCont::dictionary(), Distribution::getMax(), TL, toString(), and WRITE_WARNINGF.

Referenced by propagateSpeed().

Here is the caller graph for this function:

◆ getToNode()

std::pair< NIVissimConnectionCluster *, NBNode * > NIVissimEdge::getToNode ( NBNodeCont & nc,
ConnectionClusters & clusters )
private

Returns the destination node.

Definition at line 612 of file NIVissimEdge.cpp.

References NIVissimConnectionCluster::around(), NIVissimConnectionCluster::getNBNode(), NBNodeCont::insert(), myDistrictConnections, NIVissimAbstractEdge::myGeom, NIVissimAbstractEdge::myID, NOJUNCTION, and toString().

Referenced by buildNBEdge().

Here is the caller graph for this function:

◆ getToTreatAsSame()

const std::vector< NIVissimEdge * > & NIVissimEdge::getToTreatAsSame ( ) const

Definition at line 967 of file NIVissimEdge.cpp.

References myToTreatAsSame.

Referenced by NIVissimConnectionCluster::extendByToTreatAsSame().

Here is the caller graph for this function:

◆ getWithin()

std::vector< int > NIVissimAbstractEdge::getWithin ( const AbstractPoly & p,
double offset = 0.0 )
staticinherited

Definition at line 121 of file NIVissimAbstractEdge.cpp.

References myDict, myID, NIVissimAbstractEdge(), and overlapsWith().

◆ hasNodeCluster()

bool NIVissimAbstractEdge::hasNodeCluster ( ) const
inherited

Definition at line 140 of file NIVissimAbstractEdge.cpp.

References myNode.

◆ mergedInto()

void NIVissimEdge::mergedInto ( NIVissimConnectionCluster * old,
NIVissimConnectionCluster * act )

Definition at line 791 of file NIVissimEdge.cpp.

References myConnectionClusters.

◆ overlapsWith()

bool NIVissimAbstractEdge::overlapsWith ( const AbstractPoly & p,
double offset = 0.0 ) const
inherited

Definition at line 134 of file NIVissimAbstractEdge.cpp.

References myGeom.

Referenced by getWithin().

Here is the caller graph for this function:

◆ propagateOwn()

void NIVissimEdge::propagateOwn ( )
private

Definition at line 310 of file NIVissimEdge.cpp.

References dictionary(), getOutgoingConnected(), NIVissimConnection::getToEdgeID(), NIVissimConnection::getToLanes(), myLaneSpeeds, NIVissimEdge(), and propagateSpeed().

Referenced by dict_propagateSpeeds().

Here is the caller graph for this function:

◆ propagateSpeed()

void NIVissimEdge::propagateSpeed ( double speed,
std::vector< int > forLanes )
private

Definition at line 327 of file NIVissimEdge.cpp.

References dictionary(), getOutgoingConnected(), getRealSpeed(), NIVissimConnection::getToEdgeID(), NIVissimConnection::getToLanes(), myLaneSpeeds, myNoLanes, myPatchedSpeeds, NIVissimEdge(), and propagateSpeed().

Referenced by checkUnconnectedLaneSpeeds(), dict_propagateSpeeds(), propagateOwn(), propagateSpeed(), and setDistrictSpeed().

Here is the caller graph for this function:

◆ remapOneOfNodes()

◆ removeFromConnectionCluster()

void NIVissimEdge::removeFromConnectionCluster ( NIVissimConnectionCluster * c)

Definition at line 807 of file NIVissimEdge.cpp.

References myConnectionClusters.

Referenced by NIVissimConnectionCluster::recheckEdges().

Here is the caller graph for this function:

◆ reportUnsetSpeeds()

void NIVissimEdge::reportUnsetSpeeds ( )
static

Writes edges with unset speeds to the warnings message log instance.

Vissim has no direct speed definition of edges; still, we try to propagate speed changes along the streets. If a lane is not covered by such, its id is put into the static container "myLanesWithMissingSpeeds". If the option "vissim.report-unset-speeds" is set, all lane ids stored within this container are written.

Definition at line 973 of file NIVissimEdge.cpp.

References myLanesWithMissingSpeeds, and WRITE_WARNING.

Referenced by NIImporter_Vissim::postLoadBuild().

Here is the caller graph for this function:

◆ resolveSameNode()

std::pair< NBNode *, NBNode * > NIVissimEdge::resolveSameNode ( NBNodeCont & nc,
double offset,
NBNode * prevFrom,
NBNode * prevTo )
private

Tries to resolve the problem that the same node has been returned as origin and destination node.

Definition at line 686 of file NIVissimEdge.cpp.

References NIVissimConnectionCluster::around(), NIVissimDistrictConnection::dict_findForEdge(), NIVissimDistrictConnection::geomPosition(), NIVissimDistrictConnection::getID(), NIVissimDistrictConnection::getPosition(), NBNodeCont::insert(), myConnectionClusters, NIVissimAbstractEdge::myGeom, NIVissimAbstractEdge::myID, NOJUNCTION, NBNodeCont::retrieve(), and toString().

Referenced by buildNBEdge().

Here is the caller graph for this function:

◆ setDistrictSpeed()

void NIVissimEdge::setDistrictSpeed ( )
private

Definition at line 370 of file NIVissimEdge.cpp.

References NIVissimDistrictConnection::dict_findForEdge(), dictionary(), getLength(), NIVissimDistrictConnection::getMeanSpeed(), getOutgoingConnected(), NIVissimConnection::getToEdgeID(), NIVissimConnection::getToLanes(), myDistrictConnections, NIVissimAbstractEdge::myID, myLaneSpeeds, myNoLanes, NIVissimEdge(), and propagateSpeed().

Referenced by dict_propagateSpeeds().

Here is the caller graph for this function:

◆ setNodeCluster()

void NIVissimEdge::setNodeCluster ( int nodeid)
virtual

Implements NIVissimAbstractEdge.

Definition at line 768 of file NIVissimEdge.cpp.

References NIVissimAbstractEdge::myNode.

◆ setSpeed()

void NIVissimEdge::setSpeed ( int lane,
int speedDist )

Definition at line 857 of file NIVissimEdge.cpp.

References myPatchedSpeeds.

Referenced by NIVissimSingleTypeParser_VWunschentscheidungsdefinition::parse().

Here is the caller graph for this function:

◆ splitAndAssignToNodes()

void NIVissimAbstractEdge::splitAndAssignToNodes ( )
staticinherited

Definition at line 94 of file NIVissimAbstractEdge.cpp.

References myDict, NIVissimAbstractEdge(), and splitAssigning().

◆ splitAssigning()

void NIVissimAbstractEdge::splitAssigning ( )
inherited

Definition at line 102 of file NIVissimAbstractEdge.cpp.

Referenced by splitAndAssignToNodes().

Here is the caller graph for this function:

◆ wasWithinAJunction()

bool NIVissimEdge::wasWithinAJunction ( ) const
inline

Returns whether this edge was found to be within a junction.

Returns
Whether this node is assumed to be within a junction

Definition at line 100 of file NIVissimEdge.h.

References myAmWithinJunction.

Referenced by NIVissimConnection::buildEdgeConnections().

Here is the caller graph for this function:

◆ NIVissimNodeDef_Edges

Definition at line 107 of file NIVissimEdge.h.

References NIVissimNodeDef_Edges.

Referenced by NIVissimNodeDef_Edges.

◆ NIVissimNodeDef_Poly

friend class NIVissimNodeDef_Poly
friend

Definition at line 108 of file NIVissimEdge.h.

References NIVissimEdge(), and NIVissimNodeDef_Poly.

Referenced by NIVissimNodeDef_Poly.

Field Documentation

◆ myAmWithinJunction

bool NIVissimEdge::myAmWithinJunction
private

Information whether this edge was not build due to being within a junction.

Definition at line 280 of file NIVissimEdge.h.

Referenced by buildNBEdge(), NIVissimEdge(), and wasWithinAJunction().

◆ myClosedLanes

NIVissimClosedLanesVector NIVissimEdge::myClosedLanes
private

List of lanes closed on this edge.

Definition at line 260 of file NIVissimEdge.h.

Referenced by NIVissimEdge(), and ~NIVissimEdge().

◆ myConnectionClusters

ConnectionClusters NIVissimEdge::myConnectionClusters
private

List of connection clusters along this edge.

Definition at line 263 of file NIVissimEdge.h.

Referenced by addToConnectionCluster(), buildConnectionClusters(), buildNBEdge(), mergedInto(), removeFromConnectionCluster(), and resolveSameNode().

◆ myDict

NIVissimEdge::DictType NIVissimEdge::myDict
staticprivate

◆ myDistrictConnections

std::vector<double> NIVissimEdge::myDistrictConnections
private

◆ myDisturbances

std::vector<int> NIVissimAbstractEdge::myDisturbances
protectedinherited

Definition at line 65 of file NIVissimAbstractEdge.h.

Referenced by addDisturbance(), and getDisturbances().

◆ myGeom

◆ myID

◆ myIncomingConnections

std::vector<int> NIVissimEdge::myIncomingConnections
private

List of connections incoming to this edge.

Definition at line 266 of file NIVissimEdge.h.

Referenced by addIncomingConnection(), buildConnectionClusters(), getBestIncoming(), and getConnectionTo().

◆ myLaneSpeeds

std::vector<double> NIVissimEdge::myLaneSpeeds
private

◆ myLanesWithMissingSpeeds

std::vector< std::string > NIVissimEdge::myLanesWithMissingSpeeds
staticprivate

Definition at line 292 of file NIVissimEdge.h.

Referenced by buildNBEdge(), and reportUnsetSpeeds().

◆ myLaneWidths

std::vector<double> NIVissimEdge::myLaneWidths
private

Definition at line 254 of file NIVissimEdge.h.

Referenced by buildNBEdge(), and NIVissimEdge().

◆ myMaxID

int NIVissimEdge::myMaxID = 0
staticprivate

The current maximum id; needed for further id assignment.

Definition at line 290 of file NIVissimEdge.h.

Referenced by NIVissimEdge().

◆ myName

std::string NIVissimEdge::myName
private

The name of the edge.

Definition at line 247 of file NIVissimEdge.h.

Referenced by buildNBEdge(), and NIVissimEdge().

◆ myNode

int NIVissimAbstractEdge::myNode
protectedinherited

◆ myNoLanes

int NIVissimEdge::myNoLanes
private

The number of lanes the edge has.

Definition at line 253 of file NIVissimEdge.h.

Referenced by buildNBEdge(), NIVissimEdge(), propagateSpeed(), and setDistrictSpeed().

◆ myOutgoingConnections

std::vector<int> NIVissimEdge::myOutgoingConnections
private

List of connections outgoing from this edge.

Definition at line 269 of file NIVissimEdge.h.

Referenced by addOutgoingConnection(), buildConnectionClusters(), getBestOutgoing(), getConnectionTo(), and getOutgoingConnected().

◆ myPatchedSpeeds

std::vector<int> NIVissimEdge::myPatchedSpeeds
private

Definition at line 273 of file NIVissimEdge.h.

Referenced by propagateSpeed(), and setSpeed().

◆ myToTreatAsSame

std::vector<NIVissimEdge*> NIVissimEdge::myToTreatAsSame
private

Definition at line 277 of file NIVissimEdge.h.

Referenced by addToTreatAsSame(), and getToTreatAsSame().

◆ myType

std::string NIVissimEdge::myType
private

The type of the edge.

Definition at line 250 of file NIVissimEdge.h.

Referenced by buildNBEdge(), and NIVissimEdge().

◆ myZuschlag1

double NIVissimEdge::myZuschlag1
private

Additional load values for this edge.

Definition at line 257 of file NIVissimEdge.h.

Referenced by NIVissimEdge().

◆ myZuschlag2

double NIVissimEdge::myZuschlag2
private

Definition at line 257 of file NIVissimEdge.h.

Referenced by NIVissimEdge().


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