Skip to content

API Reference / @gtkx/animated / Interpolation

Class: Interpolation<Input, Output> ​

An Interpolation is a memoized value that's computed whenever one of its FluidValue dependencies has its value changed.

Other FrameValue objects can depend on this. For example, passing an Interpolation as the to prop of a useSpring call will trigger an animation toward the memoized value.

Extends ​

Type Parameters ​

Input ​

Input = any

Output ​

Output = any

Constructors ​

Constructor ​

new Interpolation<Input, Output>(source, args): Interpolation<Input, Output>

Parameters ​

source ​

unknown

args ​

InterpolatorArgs<Input, Output>

Returns ​

Interpolation<Input, Output>

Overrides ​

FrameValue.constructor

Properties ​

_active ​

protected _active: Set<FluidValue<any, any>>

The inputs which are currently animating


_priority ​

protected _priority: number

Inherited from ​

FrameValue._priority


calc ​

readonly calc: InterpolatorFn<Input, Output>

The function that maps inputs values to output


id ​

readonly id: number

Inherited from ​

FrameValue.id


idle ​

idle: boolean

Equals false when in the frameloop

Overrides ​

FrameValue.idle


key? ​

optional key?: string

Useful for debugging.

Overrides ​

FrameValue.key


source ​

readonly source: unknown

The source of input values

Accessors ​

priority ​

Get Signature ​

get priority(): number

Returns ​

number

Set Signature ​

set priority(priority): void

Parameters ​
priority ​

number

Returns ​

void

Inherited from ​

FrameValue.priority

Methods ​

_attach() ​

protected _attach(): void

Called when the first child is added.

Returns ​

void

Overrides ​

FrameValue._attach


_detach() ​

protected _detach(): void

Called when the last child is removed.

Returns ​

void

Overrides ​

FrameValue._detach


_get() ​

protected _get(): Output

Returns ​

Output


_onChange() ​

protected _onChange(value, idle?): void

Tell our children about our new value

Parameters ​

value ​

Output

idle? ​

boolean

Returns ​

void

Inherited from ​

FrameValue._onChange


_onPriorityChange() ​

protected _onPriorityChange(priority): void

Tell our children about our new priority

Parameters ​

priority ​

number

Returns ​

void

Inherited from ​

FrameValue._onPriorityChange


_start() ​

protected _start(): void

Returns ​

void


advance() ​

advance(_dt?): void

Internal

Parameters ​

_dt? ​

number

Returns ​

void

Overrides ​

FrameValue.advance


eventObserved() ​

eventObserved(event): void

Internal

Parameters ​

event ​

Event

Returns ​

void

Overrides ​

FrameValue.eventObserved


get() ​

get(): Output

Get the current value

Returns ​

Output

Inherited from ​

FrameValue.get


interpolate() ​

interpolate<Out>(...args): Interpolation<Output, Out>

Type Parameters ​

Out ​

Out

Parameters ​

args ​

...InterpolatorArgs<Output, Out>

Returns ​

Interpolation<Output, Out>

Deprecated ​

Use the to method instead.

Inherited from ​

FrameValue.interpolate


observerAdded() ​

protected observerAdded(count): void

Called after an observer is added.

Parameters ​

count ​

number

Returns ​

void

Inherited from ​

FrameValue.observerAdded


observerRemoved() ​

protected observerRemoved(count): void

Called after an observer is removed.

Parameters ​

count ​

number

Returns ​

void

Inherited from ​

FrameValue.observerRemoved


to() ​

to<Out>(...args): Interpolation<Output, Out>

Create a spring that maps our value to another value

Type Parameters ​

Out ​

Out

Parameters ​

args ​

...InterpolatorArgs<Output, Out>

Returns ​

Interpolation<Output, Out>

Inherited from ​

FrameValue.to


toJSON() ​

toJSON(): Output

Returns ​

Output

Inherited from ​

FrameValue.toJSON