Skip to main content

Class: TransformMatchingTex

Defined in: animation/transform/TransformMatching.ts:324

TransformMatchingTex animation - transforms matching TeX parts between expressions.

Parts are matched by their LaTeX content using key-based exact matching. When transformMismatches is enabled, unmatched parts are optimally paired using the Hungarian algorithm with position-based cost (center distance), ensuring the closest unmatched source/target parts are transformed together.

Example

// Animate from "x^2 + y^2" to "x^2 + y^2 = r^2"
// The "x^2 + y^2" part will transform smoothly
// The "= r^2" part will fade in
const anim = transformMatchingTex(formula1, formula2);

Extends

Constructors

Constructor

new TransformMatchingTex(source, target, options): TransformMatchingTex

Defined in: animation/transform/TransformMatching.ts:349

Parameters

source

VMobject

target

VMobject

options

TransformMatchingTexOptions = {}

Returns

TransformMatchingTex

Overrides

Animation.constructor

Properties

_hasBegun

protected _hasBegun: boolean = false

Defined in: animation/Animation.ts:47

Track if begin() has been called

Inherited from

Animation._hasBegun


_isFinished

protected _isFinished: boolean = false

Defined in: animation/Animation.ts:44

Whether the animation has finished

Inherited from

Animation._isFinished


_startTime

protected _startTime: number = null

Defined in: animation/Animation.ts:41

Time when the animation started (set by Timeline)

Inherited from

Animation._startTime


duration

readonly duration: number

Defined in: animation/Animation.ts:35

Duration of the animation in seconds

Inherited from

Animation.duration


fadeRatio

readonly fadeRatio: number

Defined in: animation/transform/TransformMatching.ts:332

Fade duration ratio


keyFunc()

readonly keyFunc: (vmobject) => string

Defined in: animation/transform/TransformMatching.ts:329

Key function for matching

Parameters

vmobject

VMobject

Returns

string


mobject

readonly mobject: Mobject

Defined in: animation/Animation.ts:32

The mobject being animated

Inherited from

Animation.mobject


rateFunc

readonly rateFunc: RateFunction

Defined in: animation/Animation.ts:38

Rate function controlling the animation's pacing

Inherited from

Animation.rateFunc


remover

remover: boolean = false

Defined in: animation/Animation.ts:53

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


target

readonly target: VMobject

Defined in: animation/transform/TransformMatching.ts:326

The target mobject to transform into


transformMismatches

readonly transformMismatches: boolean

Defined in: animation/transform/TransformMatching.ts:335

Whether to transform mismatches instead of fading

Accessors

startTime

Get Signature

get startTime(): number

Defined in: animation/Animation.ts:205

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

Returns

number

Set Signature

set startTime(time): void

Defined in: animation/Animation.ts:212

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: animation/transform/TransformMatching.ts:625

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

Overrides

Animation.begin


cleanUpFromScene()

cleanUpFromScene(scene): void

Defined in: animation/Animation.ts:126

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: animation/transform/TransformMatching.ts:673

Called when the animation ends. Subclasses can override to clean up or finalize state.

Returns

void

Overrides

Animation.finish


interpolate()

interpolate(alpha): void

Defined in: animation/transform/TransformMatching.ts:630

Apply the animation at a given progress value.

Parameters

alpha

number

Progress from 0 (start) to 1 (end)

Returns

void

Overrides

Animation.interpolate


isFinished()

isFinished(): boolean

Defined in: animation/Animation.ts:166

Check if the animation has finished

Returns

boolean

Inherited from

Animation.isFinished


reset()

reset(): void

Defined in: animation/Animation.ts:175

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: animation/Animation.ts:143

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