Class Tween

Class for creating a tweening animation Tween

License

Tween does not have a license at this time. For licensing contact the author

Author

https://github.com/doubleactii

Constructors

  • Parameters

    • options: TweenOptions = {}

      The options for the tween animation

    Returns Tween

Properties

version: string = "VERSION_REPLACE_ME"

The version of the module.

start: Record<string, any> = {}
end: Record<string, any> = {}
duration: number = 1000
easing: EasingFunction = Tween.linear
events: Partial<Record<EventType, EventCallback>> = {}
exportedValues: Record<string, any> = {}
tweening: boolean = false
update: null | ((values) => void) = null

Type declaration

    • (values): void
    • Parameters

      • values: Record<string, any>

      Returns void

paused: boolean = false
lastTime: number = 0
elapsed: number = 0
oscillating: boolean = false

Methods

  • Linear easing function - constant speed

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Quadratic ease-in function - slow start

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Quadratic ease-out function - slow end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Quadratic ease-in-out function - slow start and end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Sine ease-in function - very slow start

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Sine ease-out function - very slow end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Sine ease-in-out function - very slow start and end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Exponential ease-in function - very slow start, fast end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Exponential ease-out function - fast start, very slow end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Exponential ease-in-out function - very slow start and end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Circular ease-in function - slow start

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Circular ease-out function - slow end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Circular ease-in-out function - slow start and end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Cubic ease-in function - slow start

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Cubic ease-out function - slow end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Cubic ease-in-out function - slow start and end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Quartic ease-in function - slow start

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Quartic ease-out function - slow end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Quartic ease-in-out function - slow start and end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Quintic ease-in function - slow start

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Quintic ease-out function - slow end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Quintic ease-in-out function - slow start and end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Elastic ease-in function - oscillating start

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Elastic ease-out function - oscillating end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Elastic ease-in-out function - oscillating start and end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Back ease-in function - overshoots at start

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Back ease-out function - overshoots at end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Back ease-in-out function - overshoots at start and end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Bounce ease-in function - bounces at start

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Bounce ease-out function - bounces at end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Bounce ease-in-out function - bounces at start and end

    Parameters

    • t: number

      Current time

    • b: number

      Starting value

    • c: number

      Change in value

    • d: number

      Duration

    Returns number

    The eased value

  • Parameters

    • pNumber: number

      The number to clamp

    • pMin: number = 0

      The minimum number

    • pMax: number = 1

      The maximum number

    Returns number

    The number clamped between the minimum and maximum values

  • Converts an Hex color value to an array of [r, g, b].

    Parameters

    • pHex: string

      The Hex color in the form "#fff" or "#ffffff" or tagless.

    Returns number[]

    The array [r, g, b].

  • Converts an array of [r, g, b] to an Hex color code.

    Parameters

    • pColorArray: number[]

      The rgb color array to convert into a hex

    Returns string

    The hex color

  • Parameters

    • options: TweenOptions = {}

      The options for the tween animation

    Returns this

  • Attaches a callback to the specified event.

    Parameters

    • pEvent: EventType

      The event to attach the callback to

    • pCallback: EventCallback

      The function to be called when the event is triggered

    Returns this

    The Tween instance

  • Update each frame.

    Returns void

  • Animates the tween by oscillating between the start and end properties.

    Parameters

    • pUpdate: ((values) => void)

      A callback function to update the values during the oscillation.

        • (values): void
        • Parameters

          • values: Record<string, any>

          Returns void

    • pOscillate: boolean = false

      A flag to indicate if the tween should oscillate.

    Returns this

    Returns the Tween instance for method chaining.

  • Resumes the tween animation

    Returns this

    The instance of the Tween object

  • Pauses the tween animation

    Returns this

    The instance of the Tween object

  • Stops the tween and clears all data.

    Returns void