Class ExtTranslation

java.lang.Object
org.team1126.lib.math.geometry.ExtTranslation
All Implemented Interfaces:
Supplier<edu.wpi.first.math.geometry.Translation2d>, Tunables.Tunable

public final class ExtTranslation extends Object
A container for Translation2d objects that enables live tuning via NetworkTables, and dynamically returns flipped variants of the original translation based on the robot's current alliance via Supplier.get().
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected edu.wpi.first.math.geometry.Translation2d
     
    protected edu.wpi.first.math.geometry.Translation2d
     
    protected edu.wpi.first.math.geometry.Translation2d
     
    protected edu.wpi.first.math.geometry.Translation2d
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    ExtTranslation(double x, double y)
    Creates an extended Translation2d.
    ExtTranslation(double distance, edu.wpi.first.math.geometry.Rotation2d angle)
    Creates an extended Translation2d.
    ExtTranslation(edu.wpi.first.math.geometry.Translation2d translation)
    Creates an extended Translation2d.
  • Method Summary

    Modifier and Type
    Method
    Description
    edu.wpi.first.math.geometry.Translation2d
    get()
    Gets the value for the robot's current alliance.
    edu.wpi.first.math.geometry.Translation2d
    get(boolean flipWidth)
    Gets the value for the robot's current alliance.
    edu.wpi.first.math.geometry.Translation2d
    get(boolean blue, boolean flipWidth)
    Gets the value for the specified alliance.
    edu.wpi.first.math.geometry.Translation2d
    Gets the value for the blue alliance.
    edu.wpi.first.math.geometry.Translation2d
    getBlue(boolean flipWidth)
    Gets the value for the blue alliance.
    edu.wpi.first.math.geometry.Translation2d
    Gets the value for the red alliance.
    edu.wpi.first.math.geometry.Translation2d
    getRed(boolean flipWidth)
    Gets the value for the red alliance.
    void
    Initializes the object to be tuned.
    protected void
    set(edu.wpi.first.math.geometry.Translation2d newValue)
    Saves a new value to the container, with all flipped variations.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • original

      protected edu.wpi.first.math.geometry.Translation2d original
    • overWidth

      protected edu.wpi.first.math.geometry.Translation2d overWidth
    • overLength

      protected edu.wpi.first.math.geometry.Translation2d overLength
    • overDiagonal

      protected edu.wpi.first.math.geometry.Translation2d overDiagonal
  • Constructor Details

    • ExtTranslation

      public ExtTranslation(double x, double y)
      Creates an extended Translation2d.
      Parameters:
      x - The blue origin relative x component of the translation.
      y - The blue origin relative y component of the translation.
    • ExtTranslation

      public ExtTranslation(double distance, edu.wpi.first.math.geometry.Rotation2d angle)
      Creates an extended Translation2d.
      Parameters:
      distance - The distance from the origin to the end of the translation.
      angle - The blue origin relative angle between the x-axis and the translation vector.
    • ExtTranslation

      public ExtTranslation(edu.wpi.first.math.geometry.Translation2d translation)
      Creates an extended Translation2d.
      Parameters:
      translation - The blue origin relative translation.
  • Method Details

    • set

      protected void set(edu.wpi.first.math.geometry.Translation2d newValue)
      Saves a new value to the container, with all flipped variations. This method is invoked in the constructor, and can also be utilized by Tunables.Tunable.initTunable(TunableTable).

      This method should implement setting the values of original, overWidth, overLength, and overDiagonal.

      Parameters:
      newValue - The new blue origin relative value.
    • initTunable

      public void initTunable(TunableTable table)
      Description copied from interface: Tunables.Tunable
      Initializes the object to be tuned. This method is called when adding the object to a TunableTable.
      Parameters:
      table - The table the object is being added to.
    • get

      public edu.wpi.first.math.geometry.Translation2d get()
      Gets the value for the robot's current alliance. Flipping behavior is inherited from FieldInfo.symmetryType().
      Specified by:
      get in interface Supplier<T>
    • get

      public edu.wpi.first.math.geometry.Translation2d get(boolean flipWidth)
      Gets the value for the robot's current alliance. Flipping behavior is inherited from FieldInfo.symmetryType().
      Parameters:
      flipWidth - If the value should also be flipped over the field's width, regardless of the robot's alliance.
    • get

      public edu.wpi.first.math.geometry.Translation2d get(boolean blue, boolean flipWidth)
      Gets the value for the specified alliance. Flipping behavior is inherited from FieldInfo.symmetryType().
      Parameters:
      blue - If the blue alliance value should be returned.
      flipWidth - If the value should also be flipped over the field's width, regardless of the alliance.
    • getBlue

      public edu.wpi.first.math.geometry.Translation2d getBlue()
      Gets the value for the blue alliance.
    • getBlue

      public edu.wpi.first.math.geometry.Translation2d getBlue(boolean flipWidth)
      Gets the value for the blue alliance.
      Parameters:
      flipWidth - If the value should also be flipped over the field's width.
    • getRed

      public edu.wpi.first.math.geometry.Translation2d getRed()
      Gets the value for the red alliance.
    • getRed

      public edu.wpi.first.math.geometry.Translation2d getRed(boolean flipWidth)
      Gets the value for the red alliance.
      Parameters:
      flipWidth - If the value should also be flipped over the field's width.