Class TrajectoryGroup<G extends GtuData>

java.lang.Object
org.opentrafficsim.kpi.sampling.TrajectoryGroup<G>
Type Parameters:
G - gtu data type
All Implemented Interfaces:
Iterable<Trajectory<G>>

public class TrajectoryGroup<G extends GtuData> extends Object implements Iterable<Trajectory<G>>
Contains all trajectories pertaining to a certain space-time region.

Copyright (c) 2013-2024 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
  • Constructor Details

    • TrajectoryGroup

      public TrajectoryGroup(org.djunits.value.vdouble.scalar.Time startTime, LaneData<?> lane)
      Constructor without length specification. The complete lane will be used.
      Parameters:
      startTime - Time; start time of trajectories
      lane - LaneData<?>; lane
    • TrajectoryGroup

      public TrajectoryGroup(org.djunits.value.vdouble.scalar.Time startTime, org.djunits.value.vdouble.scalar.Length startPosition, org.djunits.value.vdouble.scalar.Length endPosition, LaneData<?> lane)
      Parameters:
      startTime - Time; start time of trajectory group
      startPosition - Length; start position
      endPosition - Length; end position
      lane - LaneData<?>; the lane
  • Method Details

    • addTrajectory

      public final void addTrajectory(Trajectory<G> trajectory)
      Add trajectory.
      Parameters:
      trajectory - Trajectory<G>; trajectory to add
    • getStartTime

      public final org.djunits.value.vdouble.scalar.Time getStartTime()
      Returns:
      startTime.
    • getLength

      public final org.djunits.value.vdouble.scalar.Length getLength()
      Returns:
      length.
    • contains

      public final boolean contains(Trajectory<?> trajectory)
      Whether this TrajectoryGroup holds the given trajectory. Note that this is false if the given trajectory is derived from a trajectory in this TrajectoryGroup.
      Parameters:
      trajectory - Trajectory<?>; trajectory
      Returns:
      whether this TrajectoryGroup holds the given trajectory.
    • size

      public final int size()
      Returns the number of trajectories in this group.
      Returns:
      number of trajectories in this group
    • getTrajectories

      public final List<Trajectory<G>> getTrajectories()
      Returns a list of trajectories.
      Returns:
      list of trajectories
    • getTrajectoryGroup

      public final TrajectoryGroup<G> getTrajectoryGroup(org.djunits.value.vdouble.scalar.Length x0, org.djunits.value.vdouble.scalar.Length x1)
      Returns trajectory group between two locations.
      Parameters:
      x0 - Length; start length
      x1 - Length; end length
      Returns:
      list of trajectories
    • getTrajectoryGroup

      public final TrajectoryGroup<G> getTrajectoryGroup(org.djunits.value.vdouble.scalar.Time t0, org.djunits.value.vdouble.scalar.Time t1)
      Returns trajectory group between two times.
      Parameters:
      t0 - Time; start time
      t1 - Time; end time
      Returns:
      list of trajectories
    • getTrajectoryGroup

      public final TrajectoryGroup<G> getTrajectoryGroup(org.djunits.value.vdouble.scalar.Length x0, org.djunits.value.vdouble.scalar.Length x1, org.djunits.value.vdouble.scalar.Time t0, org.djunits.value.vdouble.scalar.Time t1)
      Returns trajectory group between two locations and between two times.
      Parameters:
      x0 - Length; start length
      x1 - Length; end length
      t0 - Time; start time
      t1 - Time; end time
      Returns:
      list of trajectories
    • getLane

      public final LaneData<?> getLane()
      Returns the lane.
      Returns:
      lane
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • toString

      public final String toString()
      Overrides:
      toString in class Object
    • iterator

      public Iterator<Trajectory<G>> iterator()
      Specified by:
      iterator in interface Iterable<G extends GtuData>