Class: TransformMatchingShapes
Defined in: animation/transform/TransformMatching.ts:148
TransformMatchingShapes animation - transforms matching shapes between mobjects.
Uses the Hungarian algorithm for optimal shape matching:
- When a keyFunc is provided: exact key-based matching (same as before)
- When no keyFunc: builds a similarity matrix and uses the Hungarian algorithm to find the globally optimal one-to-one assignment that maximizes total similarity, subject to a minimum threshold.
Matched shapes transform smoothly, while unmatched shapes fade in/out.
Extends
Constructors
Constructor
new TransformMatchingShapes(
source,target,options):TransformMatchingShapes
Defined in: animation/transform/TransformMatching.ts:170
Parameters
source
target
options
TransformMatchingShapesOptions = {}
Returns
TransformMatchingShapes
Overrides
Properties
_hasBegun
protected_hasBegun:boolean=false
Defined in: animation/Animation.ts:38
Track if begin() has been called
Inherited from
_isFinished
protected_isFinished:boolean=false
Defined in: animation/Animation.ts:35
Whether the animation has finished
Inherited from
_startTime
protected_startTime:number=null
Defined in: animation/Animation.ts:32
Time when the animation started (set by Timeline)
Inherited from
duration
readonlyduration:number
Defined in: animation/Animation.ts:26
Duration of the animation in seconds
Inherited from
fadeRatio
readonlyfadeRatio:number
Defined in: animation/transform/TransformMatching.ts:159
Fade duration ratio
keyFunc()?
readonlyoptionalkeyFunc: (vmobject) =>string
Defined in: animation/transform/TransformMatching.ts:156
Optional key function for matching
Parameters
vmobject
Returns
string
matchThreshold
readonlymatchThreshold:number
Defined in: animation/transform/TransformMatching.ts:153
Minimum similarity threshold for matching
mobject
readonlymobject:Mobject
Defined in: animation/Animation.ts:23
The mobject being animated
Inherited from
rateFunc
readonlyrateFunc:RateFunction
Defined in: animation/Animation.ts:29
Rate function controlling the animation's pacing
Inherited from
remover
remover:
boolean=false
Defined in: animation/Animation.ts:44
If true, the scene will remove this mobject after the animation finishes. Used by FadeOut (like Python manim's remover=True).
Inherited from
target
readonlytarget:VMobject
Defined in: animation/transform/TransformMatching.ts:150
The target mobject to transform into
Accessors
startTime
Get Signature
get startTime():
number
Defined in: animation/Animation.ts:184
Get the start time of this animation (set by Timeline)
Returns
number
Set Signature
set startTime(
time):void
Defined in: animation/Animation.ts:191
Set the start time of this animation (used by Timeline)
Parameters
time
number
Returns
void
Inherited from
Methods
begin()
begin():
void
Defined in: animation/transform/TransformMatching.ts:309
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
finish()
finish():
void
Defined in: animation/transform/TransformMatching.ts:340
Called when the animation ends. Subclasses can override to clean up or finalize state.
Returns
void
Overrides
interpolate()
interpolate(
alpha):void
Defined in: animation/transform/TransformMatching.ts:314
Apply the animation at a given progress value.
Parameters
alpha
number
Progress from 0 (start) to 1 (end)
Returns
void
Overrides
isFinished()
isFinished():
boolean
Defined in: animation/Animation.ts:145
Check if the animation has finished
Returns
boolean
Inherited from
reset()
reset():
void
Defined in: animation/Animation.ts:154
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
update()
update(
_dt,currentTime):void
Defined in: animation/Animation.ts:122
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