Interface PerceivedGtu

All Superinterfaces:
Comparable<PerceivedObject>, Identifiable, PerceivedObject, TacticalContext
All Known Implementing Classes:
PerceivedGtuBase, PerceivedGtuSimple

public interface PerceivedGtu extends PerceivedObject, TacticalContext
Interface for perceived surrounding GTU's, adding signals, maneuver and behavioral information.

Copyright (c) 2013-2026 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.

Author:
Alexander Verbraeck, Peter Knoppers, Wouter Schakel
  • Method Details

    • getSignals

      PerceivedGtu.Signals getSignals()
      Returns information on the signals. This includes indicators and braking lights.
      Returns:
      information on the signals
    • getManeuver

      PerceivedGtu.Maneuver getManeuver()
      Returns information on the maneuver. This includes lane changing and lateral deviation.
      Returns:
      information on the maneuver
    • getBehavior

      PerceivedGtu.Behavior getBehavior()
      Returns information on the behavior. This includes the car-following model, parameters, desired speed, route, lane change desire and social pressure.
      Returns:
      information on the behavior
    • getSpeed

      default org.djunits.value.vdouble.scalar.Speed getSpeed()
      Description copied from interface: PerceivedObject
      Returns the speed from the kinematics.
      Specified by:
      getSpeed in interface PerceivedObject
      Specified by:
      getSpeed in interface TacticalContext
      Returns:
      the speed from the kinematics
    • getAcceleration

      default org.djunits.value.vdouble.scalar.Acceleration getAcceleration()
      Description copied from interface: PerceivedObject
      Returns the acceleration from the kinematics.
      Specified by:
      getAcceleration in interface PerceivedObject
      Specified by:
      getAcceleration in interface TacticalContext
      Returns:
      the acceleration from the kinematics
    • getParameters

      default Parameters getParameters()
      Description copied from interface: TacticalContext
      Returns the parameters.
      Specified by:
      getParameters in interface TacticalContext
      Returns:
      parameters
    • getCarFollowingModel

      default CarFollowingModel getCarFollowingModel()
      Description copied from interface: TacticalContext
      Returns the car-following model.
      Specified by:
      getCarFollowingModel in interface TacticalContext
      Returns:
      car-following model
    • getSpeedLimits

      default SpeedLimits getSpeedLimits()
      Description copied from interface: TacticalContext
      Returns the speed limits at the current location.
      Specified by:
      getSpeedLimits in interface TacticalContext
      Returns:
      speed limits
    • getMaximumSpeed

      default org.djunits.value.vdouble.scalar.Speed getMaximumSpeed()
      Description copied from interface: TacticalContext
      Returns the maximum seed.
      Specified by:
      getMaximumSpeed in interface TacticalContext
      Returns:
      maximum speed
    • getDesiredSpeed

      default org.djunits.value.vdouble.scalar.Speed getDesiredSpeed()
      Description copied from interface: TacticalContext
      Returns the desired speed from the car-following model.
      Specified by:
      getDesiredSpeed in interface TacticalContext
      Returns:
      desired speed from the car-following model
    • getRoute

      default Optional<Route> getRoute()
      Description copied from interface: TacticalContext
      Returns the route.
      Specified by:
      getRoute in interface TacticalContext
      Returns:
      route
    • getLaneChangeDirection

      default LateralDirectionality getLaneChangeDirection()
      Description copied from interface: TacticalContext
      Returns the lane change direction.
      Specified by:
      getLaneChangeDirection in interface TacticalContext
      Returns:
      lane change direction
    • moved

      default PerceivedGtu moved(org.djunits.value.vdouble.scalar.Length headway, org.djunits.value.vdouble.scalar.Speed speed, org.djunits.value.vdouble.scalar.Acceleration acceleration)
      Returns a view of this perceived headway GTU that returns different values for the headway, speed and acceleration.
      Parameters:
      headway - headway
      speed - speed
      acceleration - acceleration
      Returns:
      copy with different headway, speed and acceleration
      Throws:
      NullPointerException - when any input argument is null
      IllegalStateException - when this perceived GTU is parallel
    • of

      Returns perceived GTU with given kinematics.
      Parameters:
      gtu - GTU that is perceived
      kinematics - kinematics for the vehicle
      Returns:
      perceived view of the GTU
      Throws:
      NullPointerException - when gtu is null
    • of

      static PerceivedGtu of(LaneBasedGtu gtu, PerceivedObject.Kinematics kinematics, org.djunits.value.vdouble.scalar.Duration time)
      Returns perceived GTU at the given time with given kinematics.
      Parameters:
      gtu - GTU that is perceived
      kinematics - kinematics for the vehicle
      time - simulation time at which the GTU is perceived
      Returns:
      perceived view of the GTU
      Throws:
      NullPointerException - when gtu is null