Class Tween

java.lang.Object
pi.animation.tweening.Tween

public class Tween extends Object
A Tween is an interpolation between start values and target values over a given time period. It modifies the start values by applying an easing function (TweenEquation) each tick.
  • Constructor Details

    • Tween

      public Tween(Tweenable target, TweenType type, int duration)
      Instantiates a new tween.
      Parameters:
      target - the Tweenable target object
      type - the TweenType determining which values of the target object will be modified.
      duration - the duration of the Tween in milliseconds.
  • Method Details

    • begin

      public Tween begin()
      Begins the Tween by setting its start time to the current game time in ticks.
      Returns:
      the Tween instance
    • ease

      public Tween ease(TweenEquation easeEquation)
      Sets a custom easing function for this Tween.
      Parameters:
      easeEquation - the TweenEquation applied to the tween values.
      Returns:
      the Tween instance.
    • ease

      public Tween ease(TweenFunction easingFunction)
      Sets a predefined easing function for this Tween.
      Parameters:
      easingFunction - the TweenFunction applied to the tween values.
      Returns:
      the Tween instance.
    • getDuration

      public int getDuration()
      Gets the duration of the Tween.
      Returns:
      the duration of the Tween in milliseconds
    • getEquation

      public TweenEquation getEquation()
      Gets the tween equation that modifies the start values each tick.
      Returns:
      the TweenEquation
    • getStartTime

      public long getStartTime()
      Gets the start tick of the Tween.
      Returns:
      the start time in ticks
    • getStartValues

      public float[] getStartValues()
      Gets the start values.
      Returns:
      the start values
    • getTarget

      public Tweenable getTarget()
      Gets the Tweenable target object.
      Returns:
      the target
    • getTargetValues

      public float[] getTargetValues()
      Gets the target values.
      Returns:
      the target values
    • getType

      public TweenType getType()
      Gets the tween type determining which values of the Tweenable object will be modified.
      Returns:
      the TweenType of this Tween
    • hasStopped

      public boolean hasStopped()
      Checks if the Tween has stopped.
      Returns:
      true, if successful
    • reset

      public Tween reset()
      Resets the Tween values to the start values.
      Returns:
      the Tween instance
    • resume

      public Tween resume()
      Resumes the stopped Tween.
      Returns:
      the Tween instance
    • setDuration

      public void setDuration(int duration)
      Sets the Tween duration.
      Parameters:
      duration - the new duration in milliseconds
    • stop

      public Tween stop()
      Stops the Tween.
      Returns:
      the Tween instance
    • target

      public Tween target(float... targetValues)
      Sets the target values absolutely.
      Parameters:
      targetValues - the absolute target values
      Returns:
      the Tween instance
    • targetRelative

      public Tween targetRelative(float... targetValues)
      Sets the target values relatively to the start values.
      Parameters:
      targetValues - the relative target values with respect to the start values
      Returns:
      the Tween instance