Class DifferentialDrivetrainInput

java.lang.Object
org.chsrobotics.lib.drive.differential.DifferentialDrivetrainInput

public class DifferentialDrivetrainInput extends Object
A data class that holds differential drivetrain inputs, split into drivetrain's left and right sides.
  • Field Details

    • left

      public final double left
  • Constructor Details

    • DifferentialDrivetrainInput

      public DifferentialDrivetrainInput(double left, double right)
      Constructs a DifferentialDrivetrainInput.
      Parameters:
      left - : value corresponding with left side input.
      right - : value corresponding with right side input.
  • Method Details

    • multiply

      public DifferentialDrivetrainInput multiply(double scalar)
      Returns a new DifferentialDrivetrainInput with the left and right values multiplied by a scalar.
      Parameters:
      scalar - The multiplicand.
      Returns:
      A scaled DifferentialDrivetrainInput.
    • add

      Returns a new DifferentialDrivetrainInput consisting of the sum of left and right values.
      Parameters:
      other - The DifferentialDrivetrainInput to add.
      Returns:
      The sum of the two DifferentialDrivetrainInputs.
    • clamp

      public DifferentialDrivetrainInput clamp(double maxAbsValue)
      Returns a new DifferentialDrivetrainInput clamped to not exceed a maximum absolute value.
      Parameters:
      maxAbsValue - The absolute value to clamp to. If zero, this will return a DifferentialDrivetrainInput of 0,0.
      Returns:
      A DifferentialDrivetrainInput with left and right sides independently clamped.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object