Class TrajectoryConfig

java.lang.Object
edu.wpi.first.math.trajectory.TrajectoryConfig

public class TrajectoryConfig extends Object
Represents the configuration for generating a trajectory. This class stores the start velocity, end velocity, max velocity, max acceleration, custom constraints, and the reversed flag.

The class must be constructed with a max velocity and max acceleration. The other parameters (start velocity, end velocity, constraints, reversed) have been defaulted to reasonable values (0, 0, {}, false). These values can be changed via the setXXX methods.

  • Constructor Details

    • TrajectoryConfig

      public TrajectoryConfig(double maxVelocityMetersPerSecond, double maxAccelerationMetersPerSecondSq)
      Constructs the trajectory configuration class.
      Parameters:
      maxVelocityMetersPerSecond - The max velocity for the trajectory.
      maxAccelerationMetersPerSecondSq - The max acceleration for the trajectory.
    • TrajectoryConfig

      public TrajectoryConfig(LinearVelocity maxVelocity, LinearAcceleration maxAcceleration)
      Constructs the trajectory configuration class.
      Parameters:
      maxVelocity - The max velocity for the trajectory.
      maxAcceleration - The max acceleration for the trajectory.
  • Method Details

    • addConstraint

      Adds a user-defined constraint to the trajectory.
      Parameters:
      constraint - The user-defined constraint.
      Returns:
      Instance of the current config object.
    • addConstraints

      public TrajectoryConfig addConstraints(List<? extends TrajectoryConstraint> constraints)
      Adds all user-defined constraints from a list to the trajectory.
      Parameters:
      constraints - List of user-defined constraints.
      Returns:
      Instance of the current config object.
    • setKinematics

      Adds a differential drive kinematics constraint to ensure that no wheel velocity of a differential drive goes above the max velocity.
      Parameters:
      kinematics - The differential drive kinematics.
      Returns:
      Instance of the current config object.
    • setKinematics

      Adds a mecanum drive kinematics constraint to ensure that no wheel velocity of a mecanum drive goes above the max velocity.
      Parameters:
      kinematics - The mecanum drive kinematics.
      Returns:
      Instance of the current config object.
    • setKinematics

      Adds a swerve drive kinematics constraint to ensure that no wheel velocity of a swerve drive goes above the max velocity.
      Parameters:
      kinematics - The swerve drive kinematics.
      Returns:
      Instance of the current config object.
    • getStartVelocity

      public double getStartVelocity()
      Returns the starting velocity of the trajectory.
      Returns:
      The starting velocity of the trajectory.
    • setStartVelocity

      public TrajectoryConfig setStartVelocity(double startVelocityMetersPerSecond)
      Sets the start velocity of the trajectory.
      Parameters:
      startVelocityMetersPerSecond - The start velocity of the trajectory.
      Returns:
      Instance of the current config object.
    • setStartVelocity

      Sets the start velocity of the trajectory.
      Parameters:
      startVelocity - The start velocity of the trajectory.
      Returns:
      Instance of the current config object.
    • getEndVelocity

      public double getEndVelocity()
      Returns the starting velocity of the trajectory.
      Returns:
      The starting velocity of the trajectory.
    • setEndVelocity

      public TrajectoryConfig setEndVelocity(double endVelocityMetersPerSecond)
      Sets the end velocity of the trajectory.
      Parameters:
      endVelocityMetersPerSecond - The end velocity of the trajectory.
      Returns:
      Instance of the current config object.
    • setEndVelocity

      Sets the end velocity of the trajectory.
      Parameters:
      endVelocity - The end velocity of the trajectory.
      Returns:
      Instance of the current config object.
    • getMaxVelocity

      public double getMaxVelocity()
      Returns the maximum velocity of the trajectory.
      Returns:
      The maximum velocity of the trajectory.
    • getMaxAcceleration

      public double getMaxAcceleration()
      Returns the maximum acceleration of the trajectory.
      Returns:
      The maximum acceleration of the trajectory.
    • getConstraints

      Returns the user-defined constraints of the trajectory.
      Returns:
      The user-defined constraints of the trajectory.
    • isReversed

      public boolean isReversed()
      Returns whether the trajectory is reversed or not.
      Returns:
      whether the trajectory is reversed or not.
    • setReversed

      public TrajectoryConfig setReversed(boolean reversed)
      Sets the reversed flag of the trajectory.
      Parameters:
      reversed - Whether the trajectory should be reversed or not.
      Returns:
      Instance of the current config object.