Eclipse SUMO - Simulation of Urban MObility
Loading...
Searching...
No Matches
MSPModel_Striping::PState Class Reference

Container for pedestrian state and individual position update function. More...

#include <MSPModel_Striping.h>

Inheritance diagram for MSPModel_Striping::PState:
[legend]
Collaboration diagram for MSPModel_Striping::PState:
[legend]

Public Member Functions

double distanceTo (const Obstacle &obs, const bool includeMinGap=true) const
double distToLaneEnd () const
 the absolute distance to the end of the lane in walking direction (or to the arrivalPos)
double getAngle (const MSStageMoving &stage, SUMOTime now) const
 return the current orientation in degrees
virtual const std::string & getID () const
 return ID of the person (or sometimes vehicle) being represented
double getImpatience () const
 returns the impatience
double getLatOffset () const
 return the lateral offset to the lane center
double getLength () const
 return the length of the pedestrian
virtual double getMaxX (const bool includeMinGap=true) const
 return the maximum position on the lane
double getMinGap () const
 return the minimum gap of the pedestrian
virtual double getMinX (const bool includeMinGap=true) const
 return the minimum position on the lane
const MSLanegetNextCrossing () const
 placeholder function for the accessing the next crossing
const MSEdgegetNextEdge (const MSStageMoving &stage) const
 return the list of internal edges if the transportable is on an intersection
virtual ObstacleType getOType () const
double getPathLength () const
 return the total length of the current lane (in particular for on a walkingarea)
MSPersongetPerson () const
 return the represented person
Position getPosition (const MSStageMoving &stage, SUMOTime now) const
 return the network coordinate of the transportable
double getPosLat () const
const PositiongetRemotePosition () const
 return the remote position if being controlled by TraCI or JuPedSim
MSStageMovinggetStage () const
 return the current stage
virtual double getWidth () const
 return the person width
bool ignoreRed (const MSLink *link) const
 whether the pedestrian may ignore a red light
virtual bool isFinished () const
 whether the transportable has finished walking
bool isRemoteControlled () const
 whether the person is currently being controlled via TraCI
bool isWaitingToEnter () const
 whether the person still waits to entere the network
void mergeObstacles (Obstacles &into, const Obstacles &obs2)
 replace obstacles in the first vector with obstacles from the second if they are closer to me
void moveTo (MSPerson *p, MSLane *lane, double lanePos, double lanePosLat, SUMOTime t)
 try to move transportable to the given position
bool moveToNextLane (SUMOTime currentTime)
 return whether this pedestrian has passed the end of the current lane and update myRelX if so
void moveToXY (MSPerson *p, Position pos, MSLane *lane, double lanePos, double lanePosLat, double angle, int routeOffset, const ConstMSEdgeVector &edges, SUMOTime t)
 try to move transportable to the given position
int otherStripe () const
int otherStripe (const double relY) const
 PState (MSPerson *person, MSStageMoving *stage, const MSLane *lane)
 PState (MSPerson *person, MSStageMoving *stage, std::istringstream *in=nullptr)
 constructor for loading state
void reset (const double edgePos, const double latPos)
void reverse (const double pathLength, const double usableWidth)
void saveState (std::ostringstream &out)
 Saves the current state into the given stream.
bool stopForYellow (const MSLink *link) const
 whether the pedestrian should stop at a yellow light
int stripe () const
void walk (const Obstacles &obs)
 perform position update
 ~PState ()
double getEdgePos (SUMOTime) const
 abstract methods inherited from MSTransportableStateAdapter
int getDirection () const
 return the walking direction (FORWARD, BACKWARD, UNDEFINED_DIRECTION)
SUMOTime getWaitingTime () const
 return the time the transportable spent standing
virtual SUMOTime getTotalWaitingTime () const
double getSpeed (const MSStageMoving &) const
 return the current speed of the transportable
bool isJammed () const
 whether the transportable is jammed
const MSLanegetLane () const
 the current lane of the transportable

Static Public Member Functions

static void mergeObstacles (Obstacles &into, const Obstacles &obs2, int dir, int offset)
 replace obstacles in the first vector with obstacles from the second if they are closer in the given direction
static int stripe (const double relY)

Data Fields

NextLaneInfo myNLI
 information about the upcoming lane
const WalkingAreaPathmyWalkingAreaPath
 the current walkingAreaPath or 0

Protected Member Functions

 PState ()
 constructor for PStateVehicle

Protected Attributes

bool myAmJammed = false
 whether the person is jammed
double myAngle = std::numeric_limits<double>::max()
 cached angle
int myDir = MSPModel::UNDEFINED_DIRECTION
 the walking direction on the current lane (1 forward, -1 backward)
double myEdgePos = 0.
 the advancement along the current lane
const MSLanemyLane = nullptr
 the current lane of this pedestrian
MSPersonmyPerson = nullptr
 the person who is being represented
double myPosLat = 0.
 the orthogonal shift on the current lane
Position myRemoteXYPos = Position::INVALID
 remote-controlled position
double mySpeed = 0.
 the current walking speed
double mySpeedLat = 0.
 the current lateral walking speed
MSStageMovingmyStage = nullptr
 the current stage of this pedestrian
SUMOTime myTotalWaitingTime = 0
 the total time spent at speed 0
SUMOTime myWaitingTime = 0
 the consecutive time spent at speed 0
bool myWaitingToEnter = false
 whether the pedestrian is waiting to start its walk

Private Member Functions

PStateoperator= (const PState &)=delete
 Invalidated assignment operator.

Detailed Description

Container for pedestrian state and individual position update function.

Definition at line 259 of file MSPModel_Striping.h.

Constructor & Destructor Documentation

◆ PState() [1/3]

◆ PState() [2/3]

◆ ~PState()

MSPModel_Striping::PState::~PState ( )
inline

Definition at line 266 of file MSPModel_Striping.h.

◆ PState() [3/3]

MSPModel_Striping::PState::PState ( )
protected

Member Function Documentation

◆ distanceTo()

double MSPModel_Striping::PState::distanceTo ( const Obstacle & obs,
const bool includeMinGap = true ) const

◆ distToLaneEnd()

double MSPModel_Striping::PState::distToLaneEnd ( ) const

the absolute distance to the end of the lane in walking direction (or to the arrivalPos)

Definition at line 1753 of file MSPModel_Striping.cpp.

References DELTA_T, MSPModel::FORWARD, getMinGap(), MSPModel_InteractingState::myDir, MSPModel_InteractingState::myEdgePos, MSPModel_InteractingState::myLane, MSPModel_InteractingState::myStage, MSPModel_InteractingState::myWaitingTime, and myWalkingAreaPath.

Referenced by MSPModel_Striping::arriveAndAdvance(), MSPModel_Striping::moveInDirectionOnLane(), and moveToNextLane().

Here is the caller graph for this function:

◆ getAngle()

double MSPModel_Striping::PState::getAngle ( const MSStageMoving & ,
SUMOTime  ) const
virtual

return the current orientation in degrees

Reimplemented from MSPModel_InteractingState.

Definition at line 2206 of file MSPModel_Striping.cpp.

References MSPModel::BACKWARD, INVALID_DOUBLE, M_PI, MAX2(), MSPModel_InteractingState::myAngle, MSPModel_InteractingState::myDir, MSPModel_InteractingState::myEdgePos, MSPModel_InteractingState::myLane, MSPModel_InteractingState::mySpeed, MSPModel_InteractingState::mySpeedLat, myWalkingAreaPath, and PositionVector::rotationAtOffset().

Referenced by moveToXY().

Here is the caller graph for this function:

◆ getDirection()

int MSPModel_InteractingState::getDirection ( ) const
inlinevirtualinherited

return the walking direction (FORWARD, BACKWARD, UNDEFINED_DIRECTION)

Implements MSTransportableStateAdapter.

Definition at line 148 of file MSPModel_Interacting.h.

References myDir.

Referenced by MSPModel_Striping::arriveAndAdvance(), MSPModel_Striping::MovePedestrians::execute(), MSPModel_Striping::getNeighboringObstacles(), MSPModel_Striping::getNextLane(), MSPModel_Striping::moveInDirection(), and MSPModel_Striping::moveInDirectionOnLane().

Here is the caller graph for this function:

◆ getEdgePos()

double MSPModel_InteractingState::getEdgePos ( SUMOTime ) const
inlinevirtualinherited

abstract methods inherited from MSTransportableStateAdapter

return the offset from the start of the current edge measured in its natural direction

Implements MSTransportableStateAdapter.

Definition at line 143 of file MSPModel_Interacting.h.

References myEdgePos.

Referenced by MSPModel_JuPedSim::execute(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), and MSPModel_Striping::by_xpos_sorter::operator()().

Here is the caller graph for this function:

◆ getID()

virtual const std::string & MSPModel_InteractingState::getID ( ) const
inlinevirtualinherited

return ID of the person (or sometimes vehicle) being represented

Reimplemented in MSPModel_Striping::PStateVehicle.

Definition at line 208 of file MSPModel_Interacting.h.

References myPerson.

Referenced by MSPModel_Striping::getNeighboringObstacles(), MSPModel_Striping::PState::moveTo(), MSPModel_Striping::PState::moveToXY(), MSPModel_Striping::by_xpos_sorter::operator()(), and MSPModel_Striping::PState::PState().

Here is the caller graph for this function:

◆ getImpatience()

double MSPModel_Striping::PState::getImpatience ( ) const

returns the impatience

Definition at line 2165 of file MSPModel_Striping.cpp.

References MAX2(), MSPModel_Striping::MAX_WAIT_TOLERANCE, MIN2(), MSPModel_InteractingState::myPerson, MSPModel_InteractingState::myStage, and STEPS2TIME.

Referenced by MSPModel_Striping::moveInDirectionOnLane().

Here is the caller graph for this function:

◆ getLane()

const MSLane * MSPModel_InteractingState::getLane ( ) const
inlinevirtualinherited

the current lane of the transportable

Reimplemented from MSTransportableStateAdapter.

Definition at line 172 of file MSPModel_Interacting.h.

References myLane.

Referenced by MSPModel_Striping::arriveAndAdvance(), MSPModel_JuPedSim::execute(), MSPModel_Striping::loadState(), MSPModel_Striping::moveInDirectionOnLane(), MSPModel_Striping::registerCrossingApproach(), and MSPModel_JuPedSim::remove().

Here is the caller graph for this function:

◆ getLatOffset()

double MSPModel_Striping::PState::getLatOffset ( ) const
inlinevirtual

return the lateral offset to the lane center

Reimplemented from MSPModel_InteractingState.

Definition at line 347 of file MSPModel_Striping.h.

References MSPModel_InteractingState::myLane, MSPModel_InteractingState::myPosLat, and MSPModel_Striping::posLatConversion().

Referenced by getPosition(), and moveToXY().

Here is the caller graph for this function:

◆ getLength()

double MSPModel_Striping::PState::getLength ( ) const

return the length of the pedestrian

Definition at line 1704 of file MSPModel_Striping.cpp.

References MSPModel_InteractingState::myPerson.

Referenced by getMaxX(), getMinX(), and MSPModel_Striping::moveInDirectionOnLane().

Here is the caller graph for this function:

◆ getMaxX()

double MSPModel_Striping::PState::getMaxX ( const bool includeMinGap = true) const
virtual

return the maximum position on the lane

Reimplemented in MSPModel_Striping::PStateVehicle.

Definition at line 1694 of file MSPModel_Striping.cpp.

References MSPModel::FORWARD, getLength(), getMinGap(), MSPModel_InteractingState::myDir, and MSPModel_InteractingState::myEdgePos.

Referenced by distanceTo(), MSPModel_Striping::getVehicleObstacles(), and mergeObstacles().

Here is the caller graph for this function:

◆ getMinGap()

double MSPModel_Striping::PState::getMinGap ( ) const

return the minimum gap of the pedestrian

Definition at line 1710 of file MSPModel_Striping.cpp.

References MSPModel_InteractingState::myPerson.

Referenced by distToLaneEnd(), getMaxX(), getMinX(), and MSPModel_Striping::moveInDirectionOnLane().

Here is the caller graph for this function:

◆ getMinX()

double MSPModel_Striping::PState::getMinX ( const bool includeMinGap = true) const
virtual

return the minimum position on the lane

Reimplemented in MSPModel_Striping::PStateVehicle.

Definition at line 1684 of file MSPModel_Striping.cpp.

References MSPModel::FORWARD, getLength(), getMinGap(), MSPModel_InteractingState::myDir, and MSPModel_InteractingState::myEdgePos.

Referenced by distanceTo(), MSPModel_Striping::getVehicleObstacles(), and mergeObstacles().

Here is the caller graph for this function:

◆ getNextCrossing()

const MSLane * MSPModel_Striping::PState::getNextCrossing ( ) const
virtual

placeholder function for the accessing the next crossing

Reimplemented from MSPModel_InteractingState.

Definition at line 2240 of file MSPModel_Striping.cpp.

References myNLI.

◆ getNextEdge()

const MSEdge * MSPModel_Striping::PState::getNextEdge ( const MSStageMoving & stage) const
virtual

return the list of internal edges if the transportable is on an intersection

Implements MSTransportableStateAdapter.

Definition at line 2234 of file MSPModel_Striping.cpp.

References myNLI.

◆ getOType()

virtual ObstacleType MSPModel_Striping::PState::getOType ( ) const
inlinevirtual

Reimplemented in MSPModel_Striping::PStateVehicle.

Definition at line 333 of file MSPModel_Striping.h.

References MSPModel_Striping::OBSTACLE_PED.

◆ getPathLength()

double MSPModel_Striping::PState::getPathLength ( ) const
virtual

return the total length of the current lane (in particular for on a walkingarea)

Reimplemented from MSTransportableStateAdapter.

Definition at line 2441 of file MSPModel_Striping.cpp.

References myWalkingAreaPath.

◆ getPerson()

◆ getPosition()

Position MSPModel_Striping::PState::getPosition ( const MSStageMoving & stage,
SUMOTime now ) const
virtual

return the network coordinate of the transportable

Implements MSTransportableStateAdapter.

Definition at line 2172 of file MSPModel_Striping.cpp.

References DEG2RAD, MSPModel::FORWARD, MSStage::getLanePosition(), getLatOffset(), Position::INVALID, INVALID_DOUBLE, MSPModel_InteractingState::myDir, MSPModel_InteractingState::myEdgePos, MSPModel_InteractingState::myLane, MSPModel_InteractingState::myRemoteXYPos, and myWalkingAreaPath.

Referenced by MSPModel_Striping::getNextLaneObstacles(), MSPModel_Striping::moveInDirection(), and moveToXY().

Here is the caller graph for this function:

◆ getPosLat()

double MSPModel_Striping::PState::getPosLat ( ) const
inline

Definition at line 351 of file MSPModel_Striping.h.

References MSPModel_InteractingState::myPosLat.

Referenced by MSPModel_Striping::getNextLaneObstacles(), MSPModel_Striping::getVehicleObstacles(), and MSPModel_Striping::moveInDirection().

Here is the caller graph for this function:

◆ getRemotePosition()

const Position & MSPModel_InteractingState::getRemotePosition ( ) const
inlineinherited

return the remote position if being controlled by TraCI or JuPedSim

Definition at line 203 of file MSPModel_Interacting.h.

References myRemoteXYPos.

Referenced by MSPModel_Striping::moveInDirectionOnLane().

Here is the caller graph for this function:

◆ getSpeed()

double MSPModel_InteractingState::getSpeed ( const MSStageMoving & ) const
inlinevirtualinherited

return the current speed of the transportable

Implements MSTransportableStateAdapter.

Definition at line 162 of file MSPModel_Interacting.h.

References mySpeed.

Referenced by MSPModel_JuPedSim::execute(), and MSPModel_Striping::moveInDirectionOnLane().

Here is the caller graph for this function:

◆ getStage()

MSStageMoving * MSPModel_InteractingState::getStage ( ) const
inlineinherited

◆ getTotalWaitingTime()

virtual SUMOTime MSPModel_InteractingState::getTotalWaitingTime ( ) const
inlinevirtualinherited

Reimplemented from MSTransportableStateAdapter.

Definition at line 157 of file MSPModel_Interacting.h.

References myTotalWaitingTime.

◆ getWaitingTime()

SUMOTime MSPModel_InteractingState::getWaitingTime ( ) const
inlinevirtualinherited

return the time the transportable spent standing

Implements MSTransportableStateAdapter.

Definition at line 153 of file MSPModel_Interacting.h.

References myWaitingTime.

◆ getWidth()

double MSPModel_Striping::PState::getWidth ( ) const
virtual

return the person width

Reimplemented in MSPModel_Striping::PStateVehicle.

Definition at line 2549 of file MSPModel_Striping.cpp.

References MSPModel_InteractingState::myPerson.

Referenced by otherStripe().

Here is the caller graph for this function:

◆ ignoreRed()

bool MSPModel_Striping::PState::ignoreRed ( const MSLink * link) const

whether the pedestrian may ignore a red light

Definition at line 2511 of file MSPModel_Striping.cpp.

References DEBUGCOND, MSNet::getInstance(), MSLink::getLastStateChange(), MSLink::haveRed(), MSPModel_InteractingState::myPerson, SIMTIME, STEPS2TIME, and SUMO_ATTR_JM_DRIVE_AFTER_RED_TIME.

Referenced by MSPModel_Striping::moveInDirectionOnLane().

Here is the caller graph for this function:

◆ isFinished()

virtual bool MSTransportableStateAdapter::isFinished ( ) const
inlinevirtualinherited

whether the transportable has finished walking

Reimplemented in MSPModel_JuPedSim::PState.

Definition at line 215 of file MSPModel.h.

◆ isJammed()

bool MSPModel_InteractingState::isJammed ( ) const
inlinevirtualinherited

whether the transportable is jammed

Reimplemented from MSTransportableStateAdapter.

Definition at line 167 of file MSPModel_Interacting.h.

References myAmJammed.

Referenced by MSPModel_Striping::getNeighboringObstacles(), MSPModel_Striping::getNextLaneObstacles(), and MSPModel_Striping::moveInDirectionOnLane().

Here is the caller graph for this function:

◆ isRemoteControlled()

bool MSPModel_Striping::PState::isRemoteControlled ( ) const

whether the person is currently being controlled via TraCI

Definition at line 2555 of file MSPModel_Striping.cpp.

References MSPModel_InteractingState::myPerson.

Referenced by MSPModel_Striping::arriveAndAdvance().

Here is the caller graph for this function:

◆ isWaitingToEnter()

bool MSPModel_InteractingState::isWaitingToEnter ( ) const
inlineinherited

whether the person still waits to entere the network

Definition at line 198 of file MSPModel_Interacting.h.

References myWaitingToEnter.

Referenced by MSPModel_JuPedSim::add(), MSPModel_JuPedSim::execute(), MSPModel_Striping::getNeighboringObstacles(), MSPModel_Striping::getNextLaneObstacles(), MSPModel_Striping::moveInDirectionOnLane(), MSPModel_Striping::Obstacle::Obstacle(), and MSPModel_Striping::PState::walk().

Here is the caller graph for this function:

◆ mergeObstacles() [1/2]

void MSPModel_Striping::PState::mergeObstacles ( Obstacles & into,
const Obstacles & obs2 )

replace obstacles in the first vector with obstacles from the second if they are closer to me

Definition at line 2470 of file MSPModel_Striping.cpp.

References distanceTo(), gDebugFlag1, getMaxX(), getMinX(), MSPModel_Striping::OBSTACLE_PED, and MSPModel_Striping::OBSTACLE_VEHICLE.

Referenced by MSPModel_Striping::getNextLaneObstacles(), and MSPModel_Striping::moveInDirectionOnLane().

Here is the caller graph for this function:

◆ mergeObstacles() [2/2]

void MSPModel_Striping::PState::mergeObstacles ( Obstacles & into,
const Obstacles & obs2,
int dir,
int offset )
static

replace obstacles in the first vector with obstacles from the second if they are closer in the given direction

Definition at line 2492 of file MSPModel_Striping.cpp.

References MSPModel::FORWARD.

◆ moveTo()

◆ moveToNextLane()

◆ moveToXY()

void MSPModel_Striping::PState::moveToXY ( MSPerson * p,
Position pos,
MSLane * lane,
double lanePos,
double lanePosLat,
double angle,
int routeOffset,
const ConstMSEdgeVector & edges,
SUMOTime t )
virtual

try to move transportable to the given position

Reimplemented from MSTransportableStateAdapter.

Definition at line 2304 of file MSPModel_Striping.cpp.

References MSPModel::BACKWARD, DIST2SPEED, Position::distanceTo2D(), MSPModel::FORWARD, GeomHelper::fromNaviDegree(), getAngle(), MSLane::getEdge(), MSPModel_InteractingState::getID(), Named::getID(), Named::getIDSecure(), MSNet::getInstance(), getLatOffset(), GeomHelper::getMinAngleDiff(), MSTransportableControl::getMovementModel(), MSPModel_Striping::getNextLane(), MSNet::getPersonControl(), getPosition(), getSidewalk(), MSTransportable::getVClass(), MSTransportable::getVehicleType(), MSLane::getWidth(), MSVehicleType::getWidth(), MSPModel_Striping::guessPath(), Position::INVALID, MSEdge::isNormal(), MSEdge::isWalkingArea(), MSPModel_Striping::MSPModel_Striping(), MSPModel_Interacting::myActiveLanes, MSPModel_InteractingState::myAngle, MSPModel_InteractingState::myDir, MSPModel_InteractingState::myEdgePos, MSPModel_InteractingState::myLane, myNLI, MSPModel_InteractingState::myPerson, MSPModel_InteractingState::myPosLat, MSPModel_InteractingState::myRemoteXYPos, MSPModel_InteractingState::mySpeed, MSPModel_InteractingState::myStage, myWalkingAreaPath, GeomHelper::naviDegree(), MSPModel_Interacting::registerActive(), MSPModel_Interacting::remove(), MSLane::requireCollisionCheck(), MSPModel::SIDEWALK_OFFSET, SIMTIME, SPEED2DIST, MSPModel_Striping::stripeWidth, time2string(), toString(), MSPModel::UNDEFINED_DIRECTION, WRITE_WARNING, Position::x(), and Position::y().

Referenced by moveTo().

Here is the caller graph for this function:

◆ operator=()

PState & MSPModel_Striping::PState::operator= ( const PState & )
privatedelete

Invalidated assignment operator.

References PState().

◆ otherStripe() [1/2]

int MSPModel_Striping::PState::otherStripe ( ) const

Definition at line 1747 of file MSPModel_Striping.cpp.

References MAX2(), MIN2(), MSPModel_InteractingState::myLane, MSPModel_InteractingState::myPosLat, MSPModel_Striping::numStripes(), and otherStripe().

Referenced by MSPModel_Striping::getNeighboringObstacles(), MSPModel_Striping::getNextLaneObstacles(), MSPModel_Striping::moveInDirectionOnLane(), otherStripe(), and walk().

Here is the caller graph for this function:

◆ otherStripe() [2/2]

int MSPModel_Striping::PState::otherStripe ( const double relY) const

◆ reset()

void MSPModel_Striping::PState::reset ( const double edgePos,
const double latPos )

Definition at line 2255 of file MSPModel_Striping.cpp.

References MSPModel_InteractingState::myDir, MSPModel_InteractingState::myEdgePos, MSPModel_InteractingState::myPosLat, MSPModel_InteractingState::mySpeed, MSPModel_InteractingState::mySpeedLat, and MSPModel::UNDEFINED_DIRECTION.

Referenced by MSPModel_Striping::moveInDirection().

Here is the caller graph for this function:

◆ reverse()

void MSPModel_Striping::PState::reverse ( const double pathLength,
const double usableWidth )

Definition at line 2246 of file MSPModel_Striping.cpp.

References MSPModel_InteractingState::myDir, MSPModel_InteractingState::myEdgePos, MSPModel_InteractingState::myPosLat, MSPModel_InteractingState::mySpeedLat, and myWalkingAreaPath.

Referenced by MSPModel_Striping::moveInDirection().

Here is the caller graph for this function:

◆ saveState()

◆ stopForYellow()

bool MSPModel_Striping::PState::stopForYellow ( const MSLink * link) const

whether the pedestrian should stop at a yellow light

Definition at line 2530 of file MSPModel_Striping.cpp.

References DEBUGCOND, MSNet::getInstance(), MSLink::getLastStateChange(), MSLink::haveYellow(), MSPModel_InteractingState::myPerson, SIMTIME, STEPS2TIME, and SUMO_ATTR_JM_DRIVE_AFTER_YELLOW_TIME.

Referenced by MSPModel_Striping::moveInDirectionOnLane().

Here is the caller graph for this function:

◆ stripe() [1/2]

int MSPModel_Striping::PState::stripe ( ) const

◆ stripe() [2/2]

int MSPModel_Striping::PState::stripe ( const double relY)
static

Definition at line 1716 of file MSPModel_Striping.cpp.

References MSPModel_Striping::stripeWidth.

◆ walk()

void MSPModel_Striping::PState::walk ( const Obstacles & obs)

perform position update

Definition at line 1906 of file MSPModel_Striping.cpp.

References MSPModel::BACKWARD, MSPModel_Striping::dawdling, DEBUGCOND, DELTA_T, MSPModel_Striping::Obstacle::description, DIST2SPEED, MSPModel_Striping::DIST_OVERLAP, distanceTo(), MSPModel::FORWARD, Named::getIDSecure(), MSNet::getInstance(), MSNet::getPersonControl(), MSPModel_Striping::getReserved(), MSPModel_Striping::INAPPROPRIATE_PENALTY, MSPModel_InteractingState::isWaitingToEnter(), MSPModel_Striping::jamFactor, MSPModel_Striping::jamTime, MSPModel_Striping::jamTimeCrossing, MSPModel_Striping::jamTimeNarrow, MSPModel_Striping::LATERAL_PENALTY, MSPModel_Striping::LATERAL_SPEED_FACTOR, MSPModel_Striping::LOOKAHEAD_ONCOMING, MSPModel_Striping::LOOKAHEAD_SAMEDIR, MAX2(), MIN2(), MIN3(), MSPModel_Striping::MIN_STARTUP_DIST, MSPModel_InteractingState::myAmJammed, MSPModel_InteractingState::myAngle, MSPModel_InteractingState::myDir, MSPModel_InteractingState::myEdgePos, MSPModel_InteractingState::myLane, MSPModel_InteractingState::myPerson, MSPModel_InteractingState::myPosLat, MSPModel_InteractingState::mySpeed, MSPModel_InteractingState::mySpeedLat, MSPModel_InteractingState::myStage, MSPModel_InteractingState::myTotalWaitingTime, MSPModel_InteractingState::myWaitingTime, MSPModel_InteractingState::myWaitingToEnter, MSPModel_Striping::myWalkingAreaFoes, MSPModel_Striping::numStripes(), MSPModel_Striping::OBSTACLE_END, MSPModel_Striping::OBSTACLE_PED, MSPModel_Striping::OBSTACLE_VEHICLE, MSPModel_Striping::OBSTRUCTED_PENALTY, MSPModel_Striping::OBSTRUCTION_THRESHOLD, MSPModel_Striping::ONCOMING_CONFLICT_PENALTY, otherStripe(), RandHelper::rand(), MSTransportableControl::registerJammed(), MSPModel_Striping::RESERVE_FOR_ONCOMING_FACTOR, MSPModel_Striping::RESERVE_FOR_ONCOMING_FACTOR_JUNCTIONS, SIMSTEP, SIMTIME, MSPModel_Striping::Obstacle::speed, SPEED2DIST, STEPS2TIME, stripe(), MSPModel_Striping::stripeWidth, SUMO_const_haltingSpeed, SVC_PEDESTRIAN, time2string(), TL, MSPModel_Striping::USE_NET_SPEEDS, WRITE_WARNINGF, MSPModel_Striping::Obstacle::xBack, and MSPModel_Striping::Obstacle::xFwd.

Referenced by MSPModel_Striping::moveInDirectionOnLane().

Here is the caller graph for this function:

Field Documentation

◆ myAmJammed

bool MSPModel_InteractingState::myAmJammed = false
protectedinherited

◆ myAngle

double MSPModel_InteractingState::myAngle = std::numeric_limits<double>::max()
mutableprotectedinherited

◆ myDir

◆ myEdgePos

◆ myLane

◆ myNLI

NextLaneInfo MSPModel_Striping::PState::myNLI

information about the upcoming lane

Definition at line 276 of file MSPModel_Striping.h.

Referenced by getNextCrossing(), getNextEdge(), MSPModel_Striping::moveInDirectionOnLane(), moveToNextLane(), moveToXY(), PState(), PState(), and saveState().

◆ myPerson

◆ myPosLat

◆ myRemoteXYPos

◆ mySpeed

◆ mySpeedLat

double MSPModel_InteractingState::mySpeedLat = 0.
protectedinherited

◆ myStage

◆ myTotalWaitingTime

SUMOTime MSPModel_InteractingState::myTotalWaitingTime = 0
protectedinherited

the total time spent at speed 0

Definition at line 239 of file MSPModel_Interacting.h.

Referenced by getTotalWaitingTime(), and MSPModel_Striping::PState::walk().

◆ myWaitingTime

SUMOTime MSPModel_InteractingState::myWaitingTime = 0
protectedinherited

◆ myWaitingToEnter

bool MSPModel_InteractingState::myWaitingToEnter = false
protectedinherited

◆ myWalkingAreaPath


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