SUMO - Simulation of Urban MObility
NBDistrict Class Reference

A class representing a single district. More...

#include <NBDistrict.h>

Inheritance diagram for NBDistrict:
Inheritance graph
Collaboration diagram for NBDistrict:
Collaboration graph

Public Member Functions

void addShape (const PositionVector &p)
 Sets the shape of this district. More...
 
bool addSink (NBEdge *const sink, SUMOReal weight)
 Adds a sink. More...
 
bool addSource (NBEdge *const source, SUMOReal weight)
 Adds a source. More...
 
void addTo (const StoringVisitor &cont) const
 Adds this object to the given container. More...
 
const std::string & getID () const
 Returns the id. More...
 
const PositiongetPosition () const
 Returns the position of this district's center. More...
 
const PositionVectorgetShape () const
 Returns the shape. More...
 
const std::vector< NBEdge * > & getSinkEdges () const
 Returns the sinks. More...
 
const std::vector< SUMOReal > & getSinkWeights () const
 Returns the weights of the sinks. More...
 
const std::vector< NBEdge * > & getSourceEdges () const
 Returns the sources. More...
 
const std::vector< SUMOReal > & getSourceWeights () const
 Returns the weights of the sources. More...
 
 NBDistrict (const std::string &id, const Position &pos)
 Constructor with id, and position. More...
 
 NBDistrict (const std::string &id)
 Constructor without position. More...
 
void removeFromSinksAndSources (NBEdge *const e)
 Removes the given edge from the lists of sources and sinks. More...
 
void replaceIncoming (const EdgeVector &which, NBEdge *const by)
 Replaces incoming edges from the vector (sinks) by the given edge. More...
 
void replaceOutgoing (const EdgeVector &which, NBEdge *const by)
 Replaces outgoing edges from the vector (source) by the given edge. More...
 
void setCenter (const Position &pos)
 Sets the center coordinates. More...
 
void setID (const std::string &newID)
 resets the id More...
 
 ~NBDistrict ()
 Destructor. More...
 
Applying offset
void reshiftPosition (SUMOReal xoff, SUMOReal yoff)
 Applies an offset to the district. More...
 
void mirrorX ()
 mirror coordinates along the x-axis More...
 

Static Public Member Functions

template<class T >
static std::string getIDSecure (const T *obj, const std::string &fallBack="NULL")
 get an identifier for Named-like object which may be Null More...
 

Protected Attributes

std::string myID
 The name of the object. More...
 

Private Types

typedef std::vector< SUMORealWeightsCont
 Definition of a vector of connection weights. More...
 

Private Member Functions

 NBDistrict (const NBDistrict &s)
 
NBDistrictoperator= (const NBDistrict &s)
 

Private Attributes

Position myPosition
 The position of the district. More...
 
PositionVector myShape
 The shape of the dsitrict. More...
 
EdgeVector mySinks
 The sinks (connection from network to district) More...
 
WeightsCont mySinkWeights
 The weights of the sinks. More...
 
EdgeVector mySources
 The sources (connection from district to network) More...
 
WeightsCont mySourceWeights
 The weights of the sources. More...
 

Detailed Description

A class representing a single district.

A "district" is an area within the network which may be referenced by O/D-matrices. It stems from importing VISUM-networks. Work with VISUM- -networks also made it necessary that a district knows the edges at which new vehicles shall approach the simulated network (sources) and those to use when leaving the network (sinks). These connections to the network are weighted.

Later work on VISUM required also parsing the shape of a district. This information is used by some external tools only, it is even not shown within the GUI.

Todo:
Recheck whether this can be somehow joined with ODDistrict

Definition at line 72 of file NBDistrict.h.

Member Typedef Documentation

§ WeightsCont

typedef std::vector<SUMOReal> NBDistrict::WeightsCont
private

Definition of a vector of connection weights.

Definition at line 247 of file NBDistrict.h.

Constructor & Destructor Documentation

§ NBDistrict() [1/3]

NBDistrict::NBDistrict ( const std::string &  id,
const Position pos 
)

Constructor with id, and position.

Parameters
[in]idThe id of the district
[in]posThe position of the district

Definition at line 53 of file NBDistrict.cpp.

§ NBDistrict() [2/3]

NBDistrict::NBDistrict ( const std::string &  id)

Constructor without position.

The position must be computed later

Parameters
[in]idThe id of the district

Definition at line 58 of file NBDistrict.cpp.

§ ~NBDistrict()

NBDistrict::~NBDistrict ( )

Destructor.

Definition at line 62 of file NBDistrict.cpp.

§ NBDistrict() [3/3]

NBDistrict::NBDistrict ( const NBDistrict s)
private

invalid copy constructor

Member Function Documentation

§ addShape()

void NBDistrict::addShape ( const PositionVector p)

Sets the shape of this district.

Parameters
[in]pThe new shape

Definition at line 195 of file NBDistrict.cpp.

References myShape.

Referenced by getPosition().

§ addSink()

bool NBDistrict::addSink ( NBEdge *const  sink,
SUMOReal  weight 
)

Adds a sink.

It is checked whether the edge has already been added as a sink. false is returned in this case. Otherwise, the sink is pushed into the list of sink and the weight into the list of sink weights. both lists stay sorted this way. true is returned.

Parameters
[in]sinkAn edge that shall be used as sink
[in]weightThe weight of the sink
Returns
Whether the sink could be added (was not added before)
Todo:
Consider using only one list for sinks/weights

Definition at line 94 of file NBDistrict.cpp.

References Named::getID(), mySinks, and mySinkWeights.

Referenced by NBDistrictCont::addSink(), and NIVissimDistrictConnection::dict_BuildDistricts().

§ addSource()

bool NBDistrict::addSource ( NBEdge *const  source,
SUMOReal  weight 
)

Adds a source.

It is checked whether the edge has already been added as a source. false is returned in this case. Otherwise, the source is pushed into the list of sources and the weight into the list of source weights. both lists stay sorted this way. true is returned.

Parameters
[in]sourceAn edge that shall be used as source
[in]weightThe weight of the source
Returns
Whether the source could be added (was not added before)
Todo:
Consider using only one list for sources/weights

Definition at line 81 of file NBDistrict.cpp.

References Named::getID(), mySources, and mySourceWeights.

Referenced by NBDistrictCont::addSource(), and NIVissimDistrictConnection::dict_BuildDistricts().

§ addTo()

void Named::addTo ( const StoringVisitor cont) const
inlineinherited

Adds this object to the given container.

Parameters

Definition at line 129 of file Named.h.

References Named::StoringVisitor::add().

§ getID()

const std::string& Named::getID ( ) const
inlineinherited

Returns the id.

Returns
The stored id

Definition at line 66 of file Named.h.

References Named::myID.

Referenced by NIImporter_SUMO::_loadNetwork(), MSVehicle::adaptToLeader(), MSVehicle::adaptToLeaders(), PCPolyContainer::add(), MSVehicleTransfer::add(), TraCIServerAPI_Lane::StoringVisitor::add(), MSDetectorControl::add(), Named::StoringVisitor::add(), ShapeContainer::add(), IntermodalRouter< E, L, N, V >::addAccess(), NLTriggerBuilder::addAccess(), RORouteDef::addAlternative(), MSLane::addApproachingLane(), MSNet::addBusStop(), MSNet::addChargingStation(), NBLoadedSUMOTLDef::addConnection(), NLHandler::addConnection(), MSNet::addContainerStop(), NIXMLConnectionsHandler::addCrossing(), RODFDetectorCon::addDetector(), RONet::addEdge(), ROJTREdge::addFollowerProbability(), MSTLLogicControl::TLSLogicVariants::addLogic(), RONet::addNode(), NIImporter_SUMO::addPhase(), GUIEdge::addRerouter(), NBEdge::addRestrictedLane(), RONet::addRouteDef(), addSink(), addSource(), NIXMLEdgesHandler::addSplit(), NBTrafficLightLogic::addStep(), MSRouteHandler::addStop(), ROVehicle::addStop(), MSVehicle::addStop(), NBEdge::addStraightConnections(), NIXMLTrafficLightsHandler::addTlConnection(), NIVissimDisturbance::addToNode(), MSVehicle::addTraciBusOrContainerStop(), MSVehicle::addTraciStop(), AGActivityTripWriter::addTrip(), GUITrafficLightLogicWrapper::begin2TrackPhases(), MSTransportable::Stage_Waiting::beginEventOutput(), MSTransportable::Stage_Driving::beginEventOutput(), NLEdgeControlBuilder::build(), NIVisumTL::build(), RODFNet::buildApproachList(), MS_E2_ZS_CollectorOverLanes::buildCollector(), MSSOTLE2Sensors::buildContinueSensior(), MSSOTLE2Sensors::buildCountSensorForLane(), MSSOTLE2Sensors::buildCountSensorForOutLane(), NBNode::buildCrossings(), NBNode::buildCrossingsAndWalkingAreas(), NIImporter_VISUM::buildDistrictNode(), NIVissimConnection::buildEdgeConnections(), RODFNet::buildEdgeFlowMap(), GNETLSEditorFrame::buildIinternalLanes(), NBEdge::buildInnerEdges(), NGEdge::buildNBEdge(), NIVissimEdge::buildNBEdge(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), MELoop::buildSegmentsFor(), MSSOTLE2Sensors::buildSensorForLane(), MSSOTLE2Sensors::buildSensorForOutLane(), NBNode::buildWalkingAreas(), MSBaseVehicle::calculateArrivalParams(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSLaneChanger::changeOpposite(), MELoop::changeSegment(), MSSimpleTrafficLightLogic::changeStepAndDuration(), NBEdge::checkGeometry(), MSVehicleTransfer::checkInsertions(), MSVehicle::checkRewindLinkLanes(), MSSwarmTrafficLightLogic::choosePolicy(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), RORouteHandler::closeRouteDistribution(), RORouteHandler::closeVehicle(), NBTrafficLightDefinition::collectAllLinks(), NBLoadedSUMOTLDef::collectEdges(), NBTrafficLightDefinition::collectEdges(), NBLoadedSUMOTLDef::collectEdgeVectors(), NBLoadedTLDef::collectLinks(), ROJTRRouter::compute(), NBTrafficLightDefinition::compute(), NBNode::computeInternalLaneShape(), NBEdge::computeLaneShapes(), NBNode::computeLogic(), NBOwnTLDef::computeLogicAndConts(), NBNode::computeNodeShape(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), RODFNet::computeRoutesFor(), NBTrafficLightLogicCont::computeSingleLogic(), NBNode::computeSmoothShape(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), NGNet::connect(), NLDetectorBuilder::convUncontE2PosLength(), MSSOTLWaveTrafficLightLogic::countVehicles(), MSSOTLE2Sensors::countVehicles(), GUINet::createTLWrapper(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::decidePolicy(), NIVissimDistrictConnection::dict_BuildDistricts(), NBEdge::divideOnEdges(), NBEdge::divideSelectedLanesOnEdges(), MSTransportable::Stage_Waiting::endEventOutput(), MSTransportable::Stage_Driving::endEventOutput(), MSE3Collector::enter(), METriggeredCalibrator::execute(), MSCalibrator::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitchStates::execute(), Command_SaveTLSSwitches::execute(), MSVTypeProbe::execute(), MSPModel_Striping::MovePedestrians::execute(), MSTrafficLightLogic::SwitchCommand::execute(), MSVehicle::executeMove(), MSLane::executeMovements(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), NBEdgeCont::extract(), TraCIServerAPI_Vehicle::findCloserLane(), NBRampsComputer::fulfillsRampConstraints(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), GNEConnection::getAttribute(), MSVehicle::getBackPosition(), MSNet::getBusStopID(), MSVehicle::getCenterOnEdge(), MSDevice_Battery::getChargingStationID(), MSNet::getChargingStationID(), NBEdge::getConnection(), NBEdge::getConnectionRef(), MSNet::getContainerStopID(), NBEdge::getCrossingAngle(), RODFNet::getDetectorEdge(), MSMeanData::getEdgeID(), MSE2Collector::getEstimateQueueLength(), NBEdge::getFirstNonPedestrianLane(), MSLane::getFollower(), MSLane::getFollowerOnConsecutive(), MSLane::getFollowersOnConsecutive(), GNEEdge::getGNEJunctionDest(), GNEEdge::getGNEJunctionSource(), MSLink::getInternalLengthsAfter(), MS_E2_ZS_CollectorOverLanes::getLanePredeccessorLanes(), MSLane::getLastVehicleInformation(), MSVehicle::getLatOffset(), MSLane::getLeader(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), MSTLLogicControl::TLSLogicVariants::getLogicInstantiatingOff(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForInputLanes(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForOutputLanes(), NIImporter_VISUM::getNamedEdgeContinuating(), MSPerson::getNextEdge(), MSPModel_Striping::getNextLane(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSLane::getOppositePos(), GUIInstantInductLoop::MyWrapper::getParameterWindow(), GUIMEInductLoop::MyWrapper::getParameterWindow(), GUIVehicle::getParameterWindow(), GUI_E2_ZS_Collector::MyWrapper::getParameterWindow(), GUIInductLoop::MyWrapper::getParameterWindow(), MSLane::getPartialBehind(), MSSOTLTrafficLightLogic::getPhaseIndexWithMaxCTS(), MSSwarmTrafficLightLogic::getPheromoneForInputLanes(), MSSwarmTrafficLightLogic::getPheromoneForOutputLanes(), GUITrafficLightLogicWrapper::getPopUpMenu(), NLTriggerBuilder::getPosition(), NLDetectorBuilder::getPositionChecking(), NBNode::getPossiblySplittedIncoming(), NBNode::getPossiblySplittedOutgoing(), NIImporter_VISUM::getReversedContinuating(), MSVehicleControl::getWaitingVehicle(), MSLink::getZipperSpeed(), NBNode::guessCrossings(), RODFDetectorCon::guessEmptyFlows(), NBEdgeCont::guessSidewalks(), NBNodeCont::guessTLs(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSLane::handleCollisionBetween(), NBEdgeCont::ignoreFilterMatch(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailSignal::init(), MSActuatedTrafficLightLogic::init(), MSTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBNodeCont::insert(), NBTrafficLightLogicCont::insert(), NBEdgeCont::insert(), MSEdge::insertVehicle(), IntermodalNetwork< E, L, N, V >::IntermodalNetwork(), GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), MSTLLogicControl::isActive(), MSPedestrianPushButton::isActiveForEdge(), MSPedestrianPushButton::isActiveOnAnySideOfTheRoad(), RODFNet::isDestination(), RODFNet::isFalseSource(), MSLane::isInsertionSuccess(), RODFNet::isSource(), MSSOTLTrafficLightLogic::isThresholdPassed(), NBNodeCont::joinJunctions(), NBEdgeCont::joinSameNodeConnectingEdges(), MSE3Collector::leave(), MSE3Collector::leaveFront(), MSDevice_BTreceiver::BTreceiverUpdate::leaveRange(), MSPedestrianPushButton::loadCrossingEdgeMap(), NIImporter_OpenDrive::loadNetwork(), MSPedestrianPushButton::loadPushButtons(), NBEdge::MainDirections::MainDirections(), ODDistrictCont::makeDistricts(), NBNodeCont::mapToNumericalIDs(), NBEdgeCont::mapToNumericalIDs(), GNEJunction::markAsModified(), MSSOTLE2Sensors::meanVehiclesSpeed(), METriggeredCalibrator::METriggeredCalibrator(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), NBRampsComputer::moveRampRight(), MSPModel_Striping::PState::moveToNextLane(), MSCalibrator::MSCalibrator(), MSChargingStation::MSChargingStation(), MSDevice_Battery::MSDevice_Battery(), NBLoadedTLDef::myCompute(), NIXMLEdgesHandler::myEndElement(), NIImporter_SUMO::myEndElement(), NIXMLConnectionsHandler::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), NBConnection::NBConnection(), NBRequest::NBRequest(), MSDevice_BTreceiver::notifyEnter(), MSDevice_BTsender::notifyEnter(), MSDevice_Example::notifyEnter(), MSDevice_Tripinfo::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSDevice_Transportable::notifyLeave(), MSE3Collector::MSE3EntryReminder::notifyLeave(), MSDevice_Example::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSDevice_BTsender::notifyLeave(), MSDevice_Example::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSMeanData::MeanDataValues::notifyMove(), MSDevice_BTsender::notifyMove(), MSE2Collector::notifyMove(), GUIViewTraffic::onGamingClick(), GNEViewNet::onLeftBtnPress(), RORouteHandler::openRoute(), Named::ComparatorIdLess::operator()(), NBTurningDirectionsComputer::combination_by_angle_sorter::operator()(), RODFNet::idComp::operator()(), NBNetBuilder::by_id_sorter::operator()(), NBOwnTLDef::edge_by_incoming_priority_sorter::operator()(), NBContHelper::same_connection_edge_sorter::operator()(), NBContHelper::edge_by_angle_to_nodeShapeCentroid_sorter::operator()(), NBNode::nodes_by_id_sorter::operator()(), MSEdge::by_id_sorter::operator()(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_LanesConnections(), NIImporter_VISUM::parse_Turns(), NIImporter_VISUM::parse_TurnsToSignalGroups(), NIXMLConnectionsHandler::parseDeprecatedLaneDefinition(), NIXMLConnectionsHandler::parseLaneBound(), MSRouteHandler::parseWalkPositions(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), MSLCM_SL2015::patchSpeed(), MSLCM_LC2013::patchSpeed(), NBLoadedTLDef::SignalGroup::patchTYellow(), MSVehicle::planMove(), MSLane::planMovements(), MSRightOfWayJunction::postloadInit(), NBEdge::prepareEdgePriorities(), MSAbstractLaneChangeModel::primaryLaneChanged(), AGStreet::print(), TraCIServerAPI_InductionLoop::processGet(), TraCIServerAPI_TLS::processGet(), TraCIServerAPI_Vehicle::processGet(), TraCIServerAPI_Person::processGet(), TraCIServerAPI_ArealDetector::processGet(), TraCIServerAPI_Lane::processGet(), MSVehicle::processNextStop(), TraCIServerAPI_Vehicle::processSet(), NIXMLNodesHandler::processTrafficLightDefinitions(), NWWriter_SUMO::prohibitionConnection(), MSPModel_Striping::PState::PState(), NBEdgeCont::recheckPostProcessConnections(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NBLoadedTLDef::SignalGroup::remapIncoming(), NBLoadedTLDef::SignalGroup::remapOutgoing(), NBLoadedSUMOTLDef::removeConnection(), NBNodeCont::removeIsolatedRoads(), MSCalibrator::removePending(), NBNode::removeSelfLoops(), NBEdgeCont::removeUnwishedEdges(), NBNodeCont::rename(), NBEdgeCont::rename(), GNENet::renameEdge(), GNENet::renameJunction(), RORouteDef::repairCurrentRoute(), NBConnection::replaceFrom(), MSBaseVehicle::replaceRouteEdges(), NBConnection::replaceTo(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), MSBaseVehicle::reroute(), MSLane::resetPartialOccupation(), NBEdge::restoreRestrictedLane(), GNEEdge::retrieveConnection(), NIXMLTrafficLightsHandler::retrieveLaneIndex(), RODFNet::revalidateFlows(), RONet::saveAndRemoveRoutesUntil(), MSBaseVehicle::saveState(), MSLane::saveState(), MSDevice_Battery::setAirDragCoefficient(), NBNodeCont::setAsTLControlled(), MSChargingStation::setChargeDelay(), MSChargingStation::setChargingPower(), MSDevice_Battery::setConstantPowerIntake(), NBEdge::setControllingTLInformation(), MSChargingStation::setEfficency(), MSDevice_Battery::setFrontSurfaceArea(), MSDevice_Battery::setInternalMomentOfInertia(), GNEJunction::setLogicValid(), MSDevice_Battery::setMass(), MSDevice_Battery::setMaximumBatteryCapacity(), NIXMLEdgesHandler::setNodes(), MSLane::setPartialOccupation(), MSDevice_Battery::setPowerMax(), MSDevice_Battery::setPropulsionEfficiency(), MSDevice_Battery::setRadialDragCoefficient(), MSDevice_Battery::setRecuperationEfficiency(), MSLink::setRequestInformation(), MSDevice_Battery::setRollDragCoefficient(), MSTLLogicControl::TLSLogicVariants::setStateInstantiatingOnline(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBOwnTLDef::setTLControllingInformation(), NBTrafficLightLogicCont::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBEdge::shiftPositionAtNode(), NBEdgeCont::splitAt(), MSLane::succLinkSec(), GUITrafficLightLogicWrapper::switchTLSLogic(), MELoop::teleportVehicle(), METriggeredCalibrator::tryEmit(), MSSOTLTrafficLightLogic::trySwitch(), MSVehicle::updateBestLanes(), MSSOTLTrafficLightLogic::updateCTS(), GNETLSEditorFrame::updateDescription(), MSSwarmTrafficLightLogic::updatePheromoneLevels(), MSSwarmTrafficLightLogic::updateSensitivities(), MSDevice_BTreceiver::BTreceiverUpdate::updateVisibility(), TraCIServerAPI_Vehicle::vtdMap(), MSPModel_Striping::PState::walk(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), MSBatteryExport::write(), MSEmissionExport::write(), MSFCDExport::write(), MSInstantInductLoop::write(), MSLink::writeApproaching(), NBSign::writeAsPOI(), NWWriter_SUMO::writeConnection(), NWWriter_SUMO::writeDistrict(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), NWWriter_SUMO::writeEdge(), MSMeanData::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), NWWriter_SUMO::writeInternalConnections(), writeInterval(), NWWriter_SUMO::writeJunction(), MSQueueExport::writeLane(), MSFullExport::writeLane(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_OpenDrive::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), NWWriter_SUMO::writeRoundabout(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_DlrNavteq::writeTrafficSignals(), MSFCDExport::writeTransportable(), RODFDetectorCon::writeValidationDetectors(), MSFullExport::writeVehicles(), PointOfInterest::writeXML(), SUMO::Polygon::writeXML(), MSRouteProbe::writeXMLOutput(), MSE2Collector::writeXMLOutput(), MSInductLoop::writeXMLOutput(), and RONet::~RONet().

§ getIDSecure()

§ getPosition()

const Position& NBDistrict::getPosition ( ) const
inline

Returns the position of this district's center.

Returns
The position of this district's center
Todo:
Recheck when this information is set/needed

Definition at line 130 of file NBDistrict.h.

References addShape(), myPosition, removeFromSinksAndSources(), replaceIncoming(), replaceOutgoing(), and setCenter().

Referenced by NIImporter_VISUM::buildDistrictNode().

§ getShape()

const PositionVector& NBDistrict::getShape ( ) const
inline

Returns the shape.

Returns
The district's shape

Definition at line 222 of file NBDistrict.h.

References mirrorX(), myShape, reshiftPosition(), and SUMOReal.

Referenced by NWWriter_SUMO::writeDistrict().

§ getSinkEdges()

const std::vector<NBEdge*>& NBDistrict::getSinkEdges ( ) const
inline

Returns the sinks.

Returns
The sink edges

Definition at line 214 of file NBDistrict.h.

References mySinks.

Referenced by NWWriter_SUMO::writeDistrict().

§ getSinkWeights()

const std::vector<SUMOReal>& NBDistrict::getSinkWeights ( ) const
inline

Returns the weights of the sinks.

Returns
The sink weights

Definition at line 206 of file NBDistrict.h.

References mySinkWeights.

Referenced by NWWriter_SUMO::writeDistrict().

§ getSourceEdges()

const std::vector<NBEdge*>& NBDistrict::getSourceEdges ( ) const
inline

Returns the sources.

Returns
The source edges

Definition at line 198 of file NBDistrict.h.

References mySources.

Referenced by NWWriter_SUMO::writeDistrict().

§ getSourceWeights()

const std::vector<SUMOReal>& NBDistrict::getSourceWeights ( ) const
inline

Returns the weights of the sources.

Returns
The source weights

Definition at line 190 of file NBDistrict.h.

References mySourceWeights.

Referenced by NWWriter_SUMO::writeDistrict().

§ mirrorX()

void NBDistrict::mirrorX ( )

mirror coordinates along the x-axis

Definition at line 74 of file NBDistrict.cpp.

References PositionVector::mirrorX(), Position::mul(), myPosition, and myShape.

Referenced by getShape().

§ operator=()

NBDistrict& NBDistrict::operator= ( const NBDistrict s)
private

invalid assignment operator

§ removeFromSinksAndSources()

void NBDistrict::removeFromSinksAndSources ( NBEdge *const  e)

Removes the given edge from the lists of sources and sinks.

The according weights are removed, too.

Parameters
[in]eThe edge to remove from sinks/sources

Definition at line 177 of file NBDistrict.cpp.

References mySinks, mySinkWeights, mySources, and mySourceWeights.

Referenced by getPosition().

§ replaceIncoming()

void NBDistrict::replaceIncoming ( const EdgeVector which,
NBEdge *const  by 
)

Replaces incoming edges from the vector (sinks) by the given edge.

When an edge is split/joined/removed/etc., it may get necessary to replace prior edges by new ones. This method replaces all occurences of the edges from "which" within incoming edges (sinks) by the given edge.

The new sink edge's weight is the sum of the weights of the replaced edges.

Parameters
[in]whichList of edges to replace
[in]byThe replacement

Definition at line 113 of file NBDistrict.cpp.

References mySinks, mySinkWeights, and SUMOReal.

Referenced by getPosition(), and NBNode::replaceIncoming().

§ replaceOutgoing()

void NBDistrict::replaceOutgoing ( const EdgeVector which,
NBEdge *const  by 
)

Replaces outgoing edges from the vector (source) by the given edge.

When an edge is split/joined/removed/etc., it may get necessary to replace prior edges by new ones. This method replaces all occurences of the edges from "which" within outgoing edges (sources) by the given edge.

The new source edge's weight is the sum of the weights of the replaced edges.

Parameters
[in]whichList of edges to replace
[in]byThe replacement

Definition at line 145 of file NBDistrict.cpp.

References mySources, mySourceWeights, and SUMOReal.

Referenced by getPosition(), and NBNode::replaceOutgoing().

§ reshiftPosition()

void NBDistrict::reshiftPosition ( SUMOReal  xoff,
SUMOReal  yoff 
)

Applies an offset to the district.

Parameters
[in]xoffThe x-offset to apply
[in]yoffThe y-offset to apply

Definition at line 67 of file NBDistrict.cpp.

References Position::add(), PositionVector::add(), myPosition, and myShape.

Referenced by getShape().

§ setCenter()

void NBDistrict::setCenter ( const Position pos)

Sets the center coordinates.

Parameters
[in]posThe new center to assign
Todo:
Recheck when this information is set/needed

Definition at line 107 of file NBDistrict.cpp.

References myPosition.

Referenced by getPosition().

§ setID()

void Named::setID ( const std::string &  newID)
inlineinherited

resets the id

Parameters
[in]newIDThe new id of this object

Definition at line 74 of file Named.h.

References Named::myID.

Referenced by NBNodeCont::mapToNumericalIDs(), NBEdgeCont::mapToNumericalIDs(), NBNodeCont::rename(), and NBEdgeCont::rename().

Field Documentation

§ myID

§ myPosition

Position NBDistrict::myPosition
private

The position of the district.

Definition at line 262 of file NBDistrict.h.

Referenced by getPosition(), mirrorX(), reshiftPosition(), and setCenter().

§ myShape

PositionVector NBDistrict::myShape
private

The shape of the dsitrict.

Definition at line 265 of file NBDistrict.h.

Referenced by addShape(), getShape(), mirrorX(), and reshiftPosition().

§ mySinks

EdgeVector NBDistrict::mySinks
private

The sinks (connection from network to district)

Definition at line 256 of file NBDistrict.h.

Referenced by addSink(), getSinkEdges(), removeFromSinksAndSources(), and replaceIncoming().

§ mySinkWeights

WeightsCont NBDistrict::mySinkWeights
private

The weights of the sinks.

Definition at line 259 of file NBDistrict.h.

Referenced by addSink(), getSinkWeights(), removeFromSinksAndSources(), and replaceIncoming().

§ mySources

EdgeVector NBDistrict::mySources
private

The sources (connection from district to network)

Definition at line 250 of file NBDistrict.h.

Referenced by addSource(), getSourceEdges(), removeFromSinksAndSources(), and replaceOutgoing().

§ mySourceWeights

WeightsCont NBDistrict::mySourceWeights
private

The weights of the sources.

Definition at line 253 of file NBDistrict.h.

Referenced by addSource(), getSourceWeights(), removeFromSinksAndSources(), and replaceOutgoing().


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