TextEffect class abstract

Base class for all text animation effects.

Subclasses implement getAnimations to produce per-character animation data for a given global progress value. Effects are stateless and pure: the same inputs always produce the same output, enabling composition via CharacterAnimation.combine.

Every effect guarantees that f(0) == f(1), meaning characters return to their identity state at both extremes for seamless looping.

Implementers

Constructors

TextEffect({Duration duration = const Duration(milliseconds: 1000), Curve curve = Curves.easeInOut, Duration delayBetweenChars = Duration.zero})
Creates a TextEffect with configurable timing.
const

Properties

curve Curve
Curve applied to the animation timing for easing.
final
delayBetweenChars Duration
Delay between each successive character's animation start.
final
duration Duration
Total duration of one full animation cycle for a single character.
final
hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

applyCurve(double t) double
Applies the effect's curve to a linear value t (0.0–1.0).
getAnimations(double progress, int charCount) List<CharacterAnimation>
Produces a list of per-character animations for the given progress.
getTotalDuration(int charCount) Duration
Returns the total duration needed to animate all charCount characters.
noise(int index, [int offset = 0]) double
Returns a deterministic pseudo-random value (0.0–1.0) for the given index and optional offset.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
staggeredProgress(double globalProgress, int index, int charCount) double
Computes the per-character progress for staggered animations.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited