|
SUMO - Simulation of Urban MObility
|
A temporary storage for edges imported from Vissim. More...
#include <NIVissimEdge.h>
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 (SUMOReal pos) |
| SUMOReal | crossesAtPoint (const Position &p1, const Position &p2) const |
| bool | crossesEdge (NIVissimAbstractEdge *c) const |
| Position | crossesEdgeAtPoint (NIVissimAbstractEdge *c) const |
| Position | getBegin2D () const |
| NIVissimEdge * | getBestIncoming () const |
| NIVissimEdge * | getBestOutgoing () const |
| NIVissimConnection * | getConnectionTo (NIVissimEdge *e) |
| const IntVector & | getDisturbances () const |
| Position | getEnd2D () const |
| Returns the end position of the edge. | |
| const PositionVector & | getGeometry () const |
| Position | getGeomPosition (SUMOReal pos) const |
| int | getID () const |
| SUMOReal | getLength () const |
| Returns the length of the node. | |
| NBNode * | getNodeAt (const Position &p, NBNode *other=0) |
| Returns the node at the given position As this may be ambigous, a second node not to return may be supplied. | |
| 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, int noLanes, SUMOReal zuschlag1, SUMOReal zuschlag2, SUMOReal length, const PositionVector &geom, const NIVissimClosedLanesVector &clv) | |
| Constructor. | |
| bool | overlapsWith (const AbstractPoly &p, SUMOReal offset=0.0) const |
| void | removeFromConnectionCluster (NIVissimConnectionCluster *c) |
| void | setNodeCluster (int nodeid) |
| void | setSpeed (size_t 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, SUMOReal offset) |
| Builds NBEdges from the VissimEdges within the dictionary. | |
| static void | dict_checkEdges2Join () |
| static void | dict_propagateSpeeds () |
| static bool | dictionary (int id, NIVissimEdge *o) |
| Adds the edge to the dictionary. | |
| static bool | dictionary (int id, NIVissimAbstractEdge *e) |
| static bool | dictionary (int id, const std::string &name, const std::string &type, int noLanes, SUMOReal zuschlag1, SUMOReal zuschlag2, SUMOReal length, const PositionVector &geom, const NIVissimClosedLanesVector &clv) |
| Adds the described item to the dictionary Builds the edge first. | |
| static NIVissimEdge * | dictionary (int id) |
| Returns the named edge from the dictionary. | |
| static IntVector | getWithin (const AbstractPoly &p, SUMOReal offset=0.0) |
| static void | reportUnsetSpeeds () |
| Writes edges with unset speeds to the warnings message log instance. | |
| static void | splitAndAssignToNodes () |
Protected Attributes | |
| IntVector | 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, SUMOReal 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 |
| SUMOReal | getRealSpeed (int distNo) |
| std::pair < NIVissimConnectionCluster *, NBNode * > | getToNode (NBNodeCont &nc, ConnectionClusters &clusters) |
| Returns the destination node. | |
| void | propagateOwn () |
| void | propagateSpeed (SUMOReal speed, IntVector forLanes) |
| std::pair< NBNode *, NBNode * > | remapOneOfNodes (NBNodeCont &nc, NIVissimDistrictConnection *d, NBNode *fromNode, NBNode *toNode) |
| std::pair< NBNode *, NBNode * > | resolveSameNode (NBNodeCont &nc, SUMOReal 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 NBNode * | getNodeSecure (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. | |
| DoubleVector | myDistrictConnections |
| IntVector | myIncomingConnections |
| List of connections incoming to this edge. | |
| std::vector< SUMOReal > | myLaneSpeeds |
| std::string | myName |
| The name of the edge. | |
| unsigned int | myNoLanes |
| The number of lanes the edge has. | |
| IntVector | myOutgoingConnections |
| List of connections outgoing from this edge. | |
| IntVector | myPatchedSpeeds |
| std::vector< NIVissimEdge * > | myToTreatAsSame |
| std::string | myType |
| The tape of the edge. | |
| SUMOReal | myZuschlag1 |
| Additional load values for this edge. | |
| SUMOReal | 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 |
A temporary storage for edges imported from Vissim.
Definition at line 62 of file NIVissimEdge.h.
typedef std::vector<NIVissimConnectionCluster*> NIVissimEdge::ConnectionClusters [private] |
The definition for a container for connection clusters.
Definition at line 171 of file NIVissimEdge.h.
typedef std::map<int, NIVissimEdge*> NIVissimEdge::DictType [private] |
Definition of the dictionary type.
Reimplemented from NIVissimAbstractEdge.
Definition at line 297 of file NIVissimEdge.h.
| NIVissimEdge::NIVissimEdge | ( | int | id, |
| const std::string & | name, | ||
| const std::string & | type, | ||
| int | noLanes, | ||
| SUMOReal | zuschlag1, | ||
| SUMOReal | zuschlag2, | ||
| SUMOReal | length, | ||
| const PositionVector & | geom, | ||
| const NIVissimClosedLanesVector & | clv | ||
| ) |
Constructor.
Definition at line 120 of file NIVissimEdge.cpp.
References NIVissimAbstractEdge::myID, myLaneSpeeds, and myMaxID.
Referenced by dictionary().
| NIVissimEdge::~NIVissimEdge | ( | ) |
| void NIVissimAbstractEdge::addDisturbance | ( | int | disturbance | ) | [inherited] |
Definition at line 196 of file NIVissimAbstractEdge.cpp.
References NIVissimAbstractEdge::myDisturbances.
| void NIVissimEdge::addIncomingConnection | ( | int | id | ) |
Adds a connection where this edge is the destination.
Definition at line 786 of file NIVissimEdge.cpp.
References myIncomingConnections.
| void NIVissimEdge::addOutgoingConnection | ( | int | id | ) |
Adds a connection where this edge is the source.
Definition at line 792 of file NIVissimEdge.cpp.
References myOutgoingConnections.
| void NIVissimEdge::addToConnectionCluster | ( | NIVissimConnectionCluster * | c | ) |
Definition at line 824 of file NIVissimEdge.cpp.
References myConnectionClusters.
Referenced by NIVissimConnectionCluster::recheckEdges().
| bool NIVissimEdge::addToTreatAsSame | ( | NIVissimEdge * | e | ) |
Definition at line 930 of file NIVissimEdge.cpp.
References addToTreatAsSame(), and myToTreatAsSame.
Referenced by addToTreatAsSame(), and dict_checkEdges2Join().
| 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.
Definition at line 187 of file NIVissimEdge.cpp.
References dictionary(), myConnectionClusters, myDict, myIncomingConnections, myOutgoingConnections, and SUMOReal.
Referenced by NIImporter_Vissim::postLoadBuild().
| void NIVissimEdge::buildGeom | ( | ) | [virtual] |
Implements NIVissimAbstractEdge.
Definition at line 782 of file NIVissimEdge.cpp.
| void NIVissimEdge::buildNBEdge | ( | NBDistrictCont & | dc, |
| NBNodeCont & | nc, | ||
| NBEdgeCont & | ec, | ||
| SUMOReal | sameNodesOffset | ||
| ) | [private] |
Builds the NBEdge from this VissimEdge.
| [in] | dc | The district container used if this edge must be split |
| [in] | nc | The node container used for (optionally) building this edge's nodes |
| [in] | ec | The edge control to add this edge to |
| [in] | sameNodesOffset | Offset used to discriminate nodes |
| ProcessError | If one of the built nodes or edges could not be added to the according container |
Definition at line 429 of file NIVissimEdge.cpp.
References OptionsCont::getFloat(), getFromNode(), Named::getID(), OptionsCont::getOptions(), NBNode::getPosition(), getToNode(), NBEdgeCont::insert(), NBNodeCont::insert(), LANESPREAD_CENTER, myAmWithinJunction, myConnectionClusters, myDistrictConnections, NIVissimAbstractEdge::myGeom, NIVissimAbstractEdge::myID, myLaneSpeeds, myLanesWithMissingSpeeds, myName, myNoLanes, myType, NODETYPE_NOJUNCTION, resolveSameNode(), NBEdgeCont::retrieve(), NBEdge::setSpeed(), NBEdgeCont::splitAt(), SUMOReal, toString(), and WRITE_WARNING.
Referenced by dict_buildNBEdges().
| void NIVissimEdge::checkDistrictConnectionExistanceAt | ( | SUMOReal | pos | ) |
Definition at line 852 of file NIVissimEdge.cpp.
References myDistrictConnections.
Referenced by NIVissimDistrictConnection::checkEdgeEnd().
| void NIVissimEdge::checkUnconnectedLaneSpeeds | ( | ) | [private] |
Definition at line 284 of file NIVissimEdge.cpp.
References dictionary(), getOutgoingConnected(), NIVissimConnection::getToEdgeID(), NIVissimConnection::getToLanes(), myLaneSpeeds, propagateSpeed(), and SUMOReal.
Referenced by dict_propagateSpeeds().
| void NIVissimAbstractEdge::clearDict | ( | ) | [static, inherited] |
Definition at line 181 of file NIVissimAbstractEdge.cpp.
References NIVissimAbstractEdge::myDict.
Referenced by NIImporter_Vissim::~NIImporter_Vissim().
| SUMOReal NIVissimAbstractEdge::crossesAtPoint | ( | const Position & | p1, |
| const Position & | p2 | ||
| ) | const [inherited] |
Definition at line 139 of file NIVissimAbstractEdge.cpp.
References PositionVector::getBegin(), PositionVector::getEnd(), GeomHelper::intersection_position(), NIVissimAbstractEdge::myGeom, and GeomHelper::nearest_position_on_line_to_point2D().
| bool NIVissimAbstractEdge::crossesEdge | ( | NIVissimAbstractEdge * | c | ) | const [inherited] |
Definition at line 127 of file NIVissimAbstractEdge.cpp.
References PositionVector::intersects(), and NIVissimAbstractEdge::myGeom.
Referenced by NIVissimNodeCluster::buildNBNode().
| Position NIVissimAbstractEdge::crossesEdgeAtPoint | ( | NIVissimAbstractEdge * | c | ) | const [inherited] |
Definition at line 133 of file NIVissimAbstractEdge.cpp.
References PositionVector::intersectsAtPoint(), and NIVissimAbstractEdge::myGeom.
Referenced by NIVissimDisturbance::addToNode(), and NIVissimNodeCluster::buildNBNode().
| void NIVissimEdge::dict_buildNBEdges | ( | NBDistrictCont & | dc, |
| NBNodeCont & | nc, | ||
| NBEdgeCont & | ec, | ||
| SUMOReal | offset | ||
| ) | [static] |
Builds NBEdges from the VissimEdges within the dictionary.
Definition at line 250 of file NIVissimEdge.cpp.
References buildNBEdge(), and myDict.
Referenced by NIImporter_Vissim::postLoadBuild().
| void NIVissimEdge::dict_checkEdges2Join | ( | ) | [static] |
Definition at line 874 of file NIVissimEdge.cpp.
References addToTreatAsSame(), Line::atan2DegreeAngle(), Position::distanceTo(), PositionVector::getBegin(), getConnectionTo(), PositionVector::getEnd(), NIVissimConnection::getFromEdgeID(), NIVissimConnection::getFromPosition(), NIVissimAbstractEdge::getGeometry(), NIVissimAbstractEdge::getID(), PositionVector::length(), myDict, and Line::p2().
Referenced by NIImporter_Vissim::postLoadBuild().
| void NIVissimEdge::dict_propagateSpeeds | ( | ) | [static] |
Definition at line 260 of file NIVissimEdge.cpp.
References checkUnconnectedLaneSpeeds(), myDict, propagateOwn(), propagateSpeed(), and setDistrictSpeed().
Referenced by NIImporter_Vissim::postLoadBuild().
| bool NIVissimEdge::dictionary | ( | int | id, |
| NIVissimEdge * | o | ||
| ) | [static] |
Adds the edge to the dictionary.
Definition at line 165 of file NIVissimEdge.cpp.
References myDict.
| bool NIVissimEdge::dictionary | ( | int | id, |
| const std::string & | name, | ||
| const std::string & | type, | ||
| int | noLanes, | ||
| SUMOReal | zuschlag1, | ||
| SUMOReal | zuschlag2, | ||
| SUMOReal | length, | ||
| const PositionVector & | geom, | ||
| const NIVissimClosedLanesVector & | clv | ||
| ) | [static] |
Adds the described item to the dictionary Builds the edge first.
Definition at line 148 of file NIVissimEdge.cpp.
References NIVissimEdge().
Referenced by NIVissimConnectionCluster::add(), buildConnectionClusters(), checkUnconnectedLaneSpeeds(), NIVissimConnectionCluster::extendByToTreatAsSame(), getBestIncoming(), getBestOutgoing(), NIVissimDisturbance::getConnection(), getConnectionTo(), getOutgoingConnected(), NIVissimConnectionCluster::getPositionForEdge(), getRealSpeed(), NIVissimConnectionCluster::isWeakDistrictConnRealisation(), NIVissimConnectionCluster::liesOnSameEdgesEnd(), NIVissimEdge::connection_position_sorter::operator()(), NIVissimSingleTypeParser_VWunschentscheidungsdefinition::parse(), NIVissimSingleTypeParser_Streckendefinition::parse(), propagateOwn(), propagateSpeed(), NIVissimConnectionCluster::recheckEdges(), and setDistrictSpeed().
| NIVissimEdge * NIVissimEdge::dictionary | ( | int | id | ) | [static] |
Returns the named edge from the dictionary.
Reimplemented from NIVissimAbstractEdge.
Definition at line 177 of file NIVissimEdge.cpp.
References myDict.
| bool NIVissimAbstractEdge::dictionary | ( | int | id, |
| NIVissimAbstractEdge * | e | ||
| ) | [static, inherited] |
Definition at line 73 of file NIVissimAbstractEdge.cpp.
References NIVissimAbstractEdge::myDict.
Referenced by NIVissimDisturbance::computeBounding(), NIVissimExtendedEdgePoint::getGeomPosition(), and NIVissimAbstractEdge::NIVissimAbstractEdge().
| Position NIVissimEdge::getBegin2D | ( | ) | const |
Returns the begin position of the edge
Definition at line 834 of file NIVissimEdge.cpp.
References NIVissimAbstractEdge::myGeom.
| NIVissimEdge * NIVissimEdge::getBestIncoming | ( | ) | const |
Definition at line 999 of file NIVissimEdge.cpp.
References dictionary(), NIVissimConnection::getFromEdgeID(), and myIncomingConnections.
Referenced by NIVissimConnection::buildEdgeConnections().
| NIVissimEdge * NIVissimEdge::getBestOutgoing | ( | ) | const |
Definition at line 1009 of file NIVissimEdge.cpp.
References dictionary(), NIVissimConnection::getToEdgeID(), and myOutgoingConnections.
Referenced by NIVissimConnection::buildEdgeConnections().
| NIVissimConnection * NIVissimEdge::getConnectionTo | ( | NIVissimEdge * | e | ) |
Definition at line 957 of file NIVissimEdge.cpp.
References dictionary(), NIVissimConnection::getFromEdgeID(), NIVissimAbstractEdge::getID(), NIVissimConnection::getToEdgeID(), myIncomingConnections, and myOutgoingConnections.
Referenced by dict_checkEdges2Join().
| const IntVector & NIVissimAbstractEdge::getDisturbances | ( | ) | const [inherited] |
Definition at line 202 of file NIVissimAbstractEdge.cpp.
References NIVissimAbstractEdge::myDisturbances.
Referenced by NIVissimConnectionCluster::getDisturbanceParticipators().
| Position NIVissimEdge::getEnd2D | ( | ) | const |
Returns the end position of the edge.
Definition at line 840 of file NIVissimEdge.cpp.
References NIVissimAbstractEdge::myGeom.
| std::pair< NIVissimConnectionCluster *, NBNode * > NIVissimEdge::getFromNode | ( | NBNodeCont & | nc, |
| ConnectionClusters & | clusters | ||
| ) | [private] |
Returns the origin node.
Definition at line 585 of file NIVissimEdge.cpp.
References NIVissimConnectionCluster::around(), PositionVector::getBegin(), NIVissimConnectionCluster::getNBNode(), NBNodeCont::insert(), myDistrictConnections, NIVissimAbstractEdge::myGeom, NIVissimAbstractEdge::myID, NODETYPE_NOJUNCTION, and SUMOReal.
Referenced by buildNBEdge().
| const PositionVector & NIVissimAbstractEdge::getGeometry | ( | ) | const [inherited] |
Definition at line 190 of file NIVissimAbstractEdge.cpp.
References NIVissimAbstractEdge::myGeom.
Referenced by dict_checkEdges2Join(), NIVissimConnectionCluster::getIncomingContinuation(), NIVissimConnectionCluster::getIncomingContinuationGeometry(), NIVissimConnectionCluster::getOutgoingContinuation(), NIVissimConnectionCluster::getOutgoingContinuationGeometry(), NIVissimConnectionCluster::isWeakDistrictConnRealisation(), NIVissimConnectionCluster::liesOnSameEdgesEnd(), NIVissimConnectionCluster::same_direction_sorter::operator()(), and NIVissimConnectionCluster::recomputeBoundary().
| Position NIVissimAbstractEdge::getGeomPosition | ( | SUMOReal | pos | ) | const [inherited] |
Definition at line 95 of file NIVissimAbstractEdge.cpp.
References GeomHelper::extrapolate_second(), PositionVector::length(), NIVissimAbstractEdge::myGeom, PositionVector::pop_back(), PositionVector::positionAtLengthPosition(), PositionVector::push_back(), and SUMOReal.
Referenced by NIVissimDistrictConnection::geomPosition().
| int NIVissimAbstractEdge::getID | ( | ) | const [inherited] |
Definition at line 176 of file NIVissimAbstractEdge.cpp.
References NIVissimAbstractEdge::myID.
Referenced by NIVissimDisturbance::addToNode(), NIVissimConnection::buildEdgeConnections(), dict_checkEdges2Join(), getConnectionTo(), NIVissimConnectionCluster::getIncomingContinuation(), NIVissimConnectionCluster::getIncomingContinuationGeometry(), NIVissimConnectionCluster::getOutgoingContinuation(), NIVissimConnectionCluster::getOutgoingContinuationGeometry(), and NIVissimConnectionCluster::removeConnections().
| SUMOReal NIVissimEdge::getLength | ( | ) | const |
Returns the length of the node.
Definition at line 846 of file NIVissimEdge.cpp.
References PositionVector::length(), and NIVissimAbstractEdge::myGeom.
Referenced by setDistrictSpeed().
Returns the node at the given position As this may be ambigous, a second node not to return may be supplied.
| static NBNode* NIVissimEdge::getNodeSecure | ( | int | nodeid, |
| const Position & | pos, | ||
| const std::string & | possibleName | ||
| ) | [static, private] |
| std::vector< NIVissimConnection * > NIVissimEdge::getOutgoingConnected | ( | int | lane | ) | const [private] |
Definition at line 412 of file NIVissimEdge.cpp.
References dictionary(), NIVissimConnection::getFromLanes(), NIVissimConnection::getToEdgeID(), and myOutgoingConnections.
Referenced by checkUnconnectedLaneSpeeds(), propagateOwn(), propagateSpeed(), and setDistrictSpeed().
| SUMOReal NIVissimEdge::getRealSpeed | ( | int | distNo | ) | [private] |
Definition at line 531 of file NIVissimEdge.cpp.
References dictionary(), SUMOReal, and WRITE_WARNING.
Referenced by propagateSpeed().
| std::pair< NIVissimConnectionCluster *, NBNode * > NIVissimEdge::getToNode | ( | NBNodeCont & | nc, |
| ConnectionClusters & | clusters | ||
| ) | [private] |
Returns the destination node.
Definition at line 620 of file NIVissimEdge.cpp.
References PositionVector::getEnd(), NBNodeCont::insert(), PositionVector::length(), myDistrictConnections, NIVissimAbstractEdge::myGeom, NIVissimAbstractEdge::myID, NODETYPE_NOJUNCTION, and SUMOReal.
Referenced by buildNBEdge().
| const std::vector< NIVissimEdge * > & NIVissimEdge::getToTreatAsSame | ( | ) | const |
Definition at line 976 of file NIVissimEdge.cpp.
References myToTreatAsSame.
Referenced by NIVissimConnectionCluster::extendByToTreatAsSame().
| IntVector NIVissimAbstractEdge::getWithin | ( | const AbstractPoly & | p, |
| SUMOReal | offset = 0.0 |
||
| ) | [static, inherited] |
Definition at line 151 of file NIVissimAbstractEdge.cpp.
References NIVissimAbstractEdge::myDict, NIVissimAbstractEdge::myID, and NIVissimAbstractEdge::overlapsWith().
Referenced by NIVissimNodeDef_Poly::searchAndSetConnections().
| bool NIVissimAbstractEdge::hasNodeCluster | ( | ) | const [inherited] |
Definition at line 170 of file NIVissimAbstractEdge.cpp.
References NIVissimAbstractEdge::myNode.
| void NIVissimEdge::mergedInto | ( | NIVissimConnectionCluster * | old, |
| NIVissimConnectionCluster * | act | ||
| ) |
Definition at line 799 of file NIVissimEdge.cpp.
References myConnectionClusters.
| bool NIVissimAbstractEdge::overlapsWith | ( | const AbstractPoly & | p, |
| SUMOReal | offset = 0.0 |
||
| ) | const [inherited] |
Definition at line 164 of file NIVissimAbstractEdge.cpp.
References NIVissimAbstractEdge::myGeom, and PositionVector::overlapsWith().
Referenced by NIVissimAbstractEdge::getWithin().
| void NIVissimEdge::propagateOwn | ( | ) | [private] |
Definition at line 321 of file NIVissimEdge.cpp.
References dictionary(), getOutgoingConnected(), NIVissimConnection::getToEdgeID(), NIVissimConnection::getToLanes(), myLaneSpeeds, and propagateSpeed().
Referenced by dict_propagateSpeeds().
| void NIVissimEdge::propagateSpeed | ( | SUMOReal | speed, |
| IntVector | forLanes | ||
| ) | [private] |
Definition at line 338 of file NIVissimEdge.cpp.
References dictionary(), getOutgoingConnected(), getRealSpeed(), NIVissimConnection::getToEdgeID(), NIVissimConnection::getToLanes(), myLaneSpeeds, myNoLanes, myPatchedSpeeds, and propagateSpeed().
Referenced by checkUnconnectedLaneSpeeds(), dict_propagateSpeeds(), propagateOwn(), propagateSpeed(), and setDistrictSpeed().
| std::pair< NBNode *, NBNode * > NIVissimEdge::remapOneOfNodes | ( | NBNodeCont & | nc, |
| NIVissimDistrictConnection * | d, | ||
| NBNode * | fromNode, | ||
| NBNode * | toNode | ||
| ) | [private] |
Definition at line 667 of file NIVissimEdge.cpp.
References Position::distanceTo(), NBNodeCont::erase(), NIVissimDistrictConnection::geomPosition(), NIVissimDistrictConnection::getID(), NBNode::getPosition(), NBNodeCont::insert(), and NODETYPE_NOJUNCTION.
| void NIVissimEdge::removeFromConnectionCluster | ( | NIVissimConnectionCluster * | c | ) |
Definition at line 815 of file NIVissimEdge.cpp.
References myConnectionClusters.
Referenced by NIVissimConnectionCluster::recheckEdges().
| 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 982 of file NIVissimEdge.cpp.
References myLanesWithMissingSpeeds, and WRITE_WARNING.
Referenced by NIImporter_Vissim::postLoadBuild().
| std::pair< NBNode *, NBNode * > NIVissimEdge::resolveSameNode | ( | NBNodeCont & | nc, |
| SUMOReal | 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 694 of file NIVissimEdge.cpp.
References NIVissimConnectionCluster::around(), NIVissimDistrictConnection::dict_findForEdge(), NIVissimDistrictConnection::geomPosition(), PositionVector::getBegin(), PositionVector::getEnd(), NIVissimDistrictConnection::getID(), NIVissimDistrictConnection::getPosition(), NBNodeCont::insert(), PositionVector::length(), myConnectionClusters, NIVissimAbstractEdge::myGeom, NIVissimAbstractEdge::myID, NODETYPE_NOJUNCTION, NBNodeCont::retrieve(), and SUMOReal.
Referenced by buildNBEdge().
| void NIVissimEdge::setDistrictSpeed | ( | ) | [private] |
Definition at line 381 of file NIVissimEdge.cpp.
References NIVissimDistrictConnection::dict_findForEdge(), dictionary(), getLength(), NIVissimDistrictConnection::getMeanSpeed(), getOutgoingConnected(), NIVissimConnection::getToEdgeID(), NIVissimConnection::getToLanes(), myDistrictConnections, NIVissimAbstractEdge::myID, myLaneSpeeds, myNoLanes, propagateSpeed(), and SUMOReal.
Referenced by dict_propagateSpeeds().
| void NIVissimEdge::setNodeCluster | ( | int | nodeid | ) | [virtual] |
Implements NIVissimAbstractEdge.
Definition at line 776 of file NIVissimEdge.cpp.
References NIVissimAbstractEdge::myNode.
| void NIVissimEdge::setSpeed | ( | size_t | lane, |
| int | speedDist | ||
| ) |
Definition at line 865 of file NIVissimEdge.cpp.
References myPatchedSpeeds.
| void NIVissimAbstractEdge::splitAndAssignToNodes | ( | ) | [static, inherited] |
Definition at line 112 of file NIVissimAbstractEdge.cpp.
References NIVissimAbstractEdge::myDict, and NIVissimAbstractEdge::splitAssigning().
| void NIVissimAbstractEdge::splitAssigning | ( | ) | [inherited] |
Definition at line 120 of file NIVissimAbstractEdge.cpp.
Referenced by NIVissimAbstractEdge::splitAndAssignToNodes().
| bool NIVissimEdge::wasWithinAJunction | ( | ) | const [inline] |
Returns whether this edge was found to be within a junction.
Definition at line 114 of file NIVissimEdge.h.
References myAmWithinJunction.
Referenced by NIVissimConnection::buildEdgeConnections().
friend class NIVissimNodeDef_Edges [friend] |
Definition at line 121 of file NIVissimEdge.h.
friend class NIVissimNodeDef_Poly [friend] |
Definition at line 122 of file NIVissimEdge.h.
bool NIVissimEdge::myAmWithinJunction [private] |
Information whether this edge was not build due to being within a junction.
Definition at line 293 of file NIVissimEdge.h.
Referenced by buildNBEdge(), and wasWithinAJunction().
List of lanes closed on this edge.
Definition at line 273 of file NIVissimEdge.h.
Referenced by ~NIVissimEdge().
List of connection clusters along this edge.
Definition at line 276 of file NIVissimEdge.h.
Referenced by addToConnectionCluster(), buildConnectionClusters(), buildNBEdge(), mergedInto(), removeFromConnectionCluster(), resolveSameNode(), NIVissimNodeDef_Poly::searchAndSetConnections(), and NIVissimNodeDef_Edges::searchAndSetConnections().
NIVissimEdge::DictType NIVissimEdge::myDict [static, private] |
The dictionary.
Reimplemented from NIVissimAbstractEdge.
Definition at line 300 of file NIVissimEdge.h.
Referenced by buildConnectionClusters(), dict_buildNBEdges(), dict_checkEdges2Join(), dict_propagateSpeeds(), and dictionary().
Definition at line 284 of file NIVissimEdge.h.
Referenced by buildNBEdge(), checkDistrictConnectionExistanceAt(), getFromNode(), getToNode(), and setDistrictSpeed().
IntVector NIVissimAbstractEdge::myDisturbances [protected, inherited] |
Definition at line 78 of file NIVissimAbstractEdge.h.
Referenced by NIVissimAbstractEdge::addDisturbance(), and NIVissimAbstractEdge::getDisturbances().
PositionVector NIVissimAbstractEdge::myGeom [protected, inherited] |
Definition at line 77 of file NIVissimAbstractEdge.h.
Referenced by NIVissimConnection::buildGeom(), buildNBEdge(), NIVissimAbstractEdge::crossesAtPoint(), NIVissimAbstractEdge::crossesEdge(), NIVissimAbstractEdge::crossesEdgeAtPoint(), getBegin2D(), getEnd2D(), getFromNode(), NIVissimAbstractEdge::getGeometry(), NIVissimAbstractEdge::getGeomPosition(), getLength(), getToNode(), NIVissimAbstractEdge::NIVissimAbstractEdge(), NIVissimAbstractEdge::overlapsWith(), and resolveSameNode().
int NIVissimAbstractEdge::myID [protected, inherited] |
Definition at line 76 of file NIVissimAbstractEdge.h.
Referenced by buildNBEdge(), getFromNode(), NIVissimAbstractEdge::getID(), getToNode(), NIVissimAbstractEdge::getWithin(), NIVissimEdge(), resolveSameNode(), and setDistrictSpeed().
IntVector NIVissimEdge::myIncomingConnections [private] |
List of connections incoming to this edge.
Definition at line 279 of file NIVissimEdge.h.
Referenced by addIncomingConnection(), buildConnectionClusters(), getBestIncoming(), and getConnectionTo().
std::vector<SUMOReal> NIVissimEdge::myLaneSpeeds [private] |
Definition at line 288 of file NIVissimEdge.h.
Referenced by buildNBEdge(), checkUnconnectedLaneSpeeds(), NIVissimEdge(), propagateOwn(), propagateSpeed(), and setDistrictSpeed().
std::vector< std::string > NIVissimEdge::myLanesWithMissingSpeeds [static, private] |
Definition at line 305 of file NIVissimEdge.h.
Referenced by buildNBEdge(), and reportUnsetSpeeds().
int NIVissimEdge::myMaxID = 0 [static, private] |
The current maximum id; needed for further id assignment.
Definition at line 303 of file NIVissimEdge.h.
Referenced by NIVissimEdge().
std::string NIVissimEdge::myName [private] |
int NIVissimAbstractEdge::myNode [protected, inherited] |
Definition at line 79 of file NIVissimAbstractEdge.h.
Referenced by NIVissimAbstractEdge::hasNodeCluster(), setNodeCluster(), and NIVissimConnection::setNodeCluster().
unsigned int NIVissimEdge::myNoLanes [private] |
The number of lanes the edge has.
Definition at line 267 of file NIVissimEdge.h.
Referenced by buildNBEdge(), propagateSpeed(), and setDistrictSpeed().
IntVector NIVissimEdge::myOutgoingConnections [private] |
List of connections outgoing from this edge.
Definition at line 282 of file NIVissimEdge.h.
Referenced by addOutgoingConnection(), buildConnectionClusters(), getBestOutgoing(), getConnectionTo(), and getOutgoingConnected().
IntVector NIVissimEdge::myPatchedSpeeds [private] |
Definition at line 286 of file NIVissimEdge.h.
Referenced by propagateSpeed(), and setSpeed().
std::vector<NIVissimEdge*> NIVissimEdge::myToTreatAsSame [private] |
Definition at line 290 of file NIVissimEdge.h.
Referenced by addToTreatAsSame(), and getToTreatAsSame().
std::string NIVissimEdge::myType [private] |
SUMOReal NIVissimEdge::myZuschlag1 [private] |
Additional load values for this edge.
Definition at line 270 of file NIVissimEdge.h.
SUMOReal NIVissimEdge::myZuschlag2 [private] |
Definition at line 270 of file NIVissimEdge.h.