Skip to main content

Class: ChangingDecimal

Defined in: src/animation/numbers/index.ts:46

ChangingDecimal - Animate a DecimalNumber's value changing from start to end.

This animation smoothly interpolates between two numeric values, updating the DecimalNumber's display on each frame. The number formatting (decimal places, sign, commas) is preserved throughout the animation.

Example​

// Create a decimal number starting at 0
const num = new DecimalNumber({ value: 0, numDecimalPlaces: 2 });

// Animate from 0 to 100
timeline.add(new ChangingDecimal(num, { endValue: 100 }));

// Animate from a specific start value
timeline.add(new ChangingDecimal(num, {
startValue: 50,
endValue: 200,
duration: 2
}));

Extends​

Constructors​

Constructor​

new ChangingDecimal(decimalNumber, options): ChangingDecimal

Defined in: src/animation/numbers/index.ts:59

Parameters​

decimalNumber​

DecimalNumber

options​

ChangingDecimalOptions

Returns​

ChangingDecimal

Overrides​

Animation.constructor

Properties​

_hasBegun​

protected _hasBegun: boolean = false

Defined in: src/animation/Animation.ts:49

Track if begin() has been called

Inherited from​

Animation._hasBegun


_isFinished​

protected _isFinished: boolean = false

Defined in: src/animation/Animation.ts:46

Whether the animation has finished

Inherited from​

Animation._isFinished


_startTime​

protected _startTime: number = null

Defined in: src/animation/Animation.ts:43

Time when the animation started (set by Timeline)

Inherited from​

Animation._startTime


decimalNumber​

readonly decimalNumber: DecimalNumber

Defined in: src/animation/numbers/index.ts:48

The DecimalNumber being animated


duration​

readonly duration: number

Defined in: src/animation/Animation.ts:37

Duration of the animation in seconds

Inherited from​

Animation.duration


mobject​

readonly mobject: Mobject

Defined in: src/animation/Animation.ts:34

The mobject being animated

Inherited from​

Animation.mobject


rateFunc​

readonly rateFunc: RateFunction

Defined in: src/animation/Animation.ts:40

Rate function controlling the animation's pacing

Inherited from​

Animation.rateFunc


remover​

remover: boolean = false

Defined in: src/animation/Animation.ts:55

If true, the scene will remove this mobject after the animation finishes. Used by FadeOut (like Python manim's remover=True).

Inherited from​

Animation.remover

Accessors​

startTime​

Get Signature​

get startTime(): number

Defined in: src/animation/Animation.ts:236

Get the start time of this animation (set by Timeline)

Returns​

number

Set Signature​

set startTime(time): void

Defined in: src/animation/Animation.ts:243

Set the start time of this animation (used by Timeline)

Parameters​
time​

number

Returns​

void

Inherited from​

Animation.startTime

Methods​

begin()​

begin(): void

Defined in: src/animation/Animation.ts:78

Called when the animation starts. Subclasses can override to set up initial state. On the very first call, captures a snapshot of the mobject so that reset() can restore it for clean backward seeking.

Returns​

void

Inherited from​

Animation.begin


cleanUpFromScene()​

cleanUpFromScene(scene): void

Defined in: src/animation/Animation.ts:141

Hook called by Scene after the animation finishes, before the next play(). Default: removes mobject if remover is set (FadeOut, Write({remover:true})). Override for animations that need to mutate scene membership — e.g. ReplacementTransform swaps source for target.

Parameters​

scene​

AnimationScene

Returns​

void

Inherited from​

Animation.cleanUpFromScene


finish()​

finish(): void

Defined in: src/animation/numbers/index.ts:85

Called when the animation ends. Ensures the final value is set exactly.

Returns​

void

Overrides​

Animation.finish


getEndValue()​

getEndValue(): number

Defined in: src/animation/numbers/index.ts:101

Get the end value of the animation

Returns​

number


getStartValue()​

getStartValue(): number

Defined in: src/animation/numbers/index.ts:94

Get the start value of the animation

Returns​

number


getSubAlpha()​

protected getSubAlpha(alpha, index, count, lagRatio): number

Defined in: src/animation/Animation.ts:161

Manim CE's get_sub_alpha: remaps a global progress alpha into the local progress of family member index (of count) under a lagRatio stagger. With lagRatio <= 0 (or a single member), every member tracks alpha directly. Subclasses that stagger across a mobject's family (e.g. Create) should index this by familyMembersWithPoints(), never by rendering-layer primitives.

Parameters​

alpha​

number

index​

number

count​

number

lagRatio​

number

Returns​

number

Inherited from​

Animation.getSubAlpha


interpolate()​

interpolate(alpha): void

Defined in: src/animation/numbers/index.ts:72

Interpolate the decimal value at the given alpha.

Parameters​

alpha​

number

Progress from 0 (start) to 1 (end), after rate function applied

Returns​

void

Overrides​

Animation.interpolate


isFinished()​

isFinished(): boolean

Defined in: src/animation/Animation.ts:197

Check if the animation has finished

Returns​

boolean

Inherited from​

Animation.isFinished


reset()​

reset(): void

Defined in: src/animation/Animation.ts:206

Reset the animation to its initial state. Restores the mobject to its pre-animation visual state so that re-seeking (especially backward) produces correct results.

Returns​

void

Inherited from​

Animation.reset


update()​

update(_dt, currentTime): void

Defined in: src/animation/Animation.ts:174

Update the animation for the current frame.

Parameters​

_dt​

number

Time delta since last frame (unused, but available for subclasses)

currentTime​

number

Current time in the timeline

Returns​

void

Inherited from​

Animation.update