SpeedEffectController class
This controller can force execution of an effect at a predefined speed.
For most of the effect controllers, their duration is set by the user in advance. This controller is different: it knows the target speed at which the parent effect wants to proceed, communicates with the effect to determine its total distance, and uses that to calculate the desired duration for the child effect controller.
Some restrictions apply:
- the speed cannot be zero (or negative),
- the child controller must be a DurationEffectController,
- the parent effect must be a
MeasurableEffect
.
- Inheritance
-
- Object
- EffectController
- SpeedEffectController
- Mixed-in types
Constructors
- SpeedEffectController(DurationEffectController child, {required double speed})
Properties
- child → DurationEffectController
-
Returns the wrapped child effect controller.
no setteroverride
- completed → bool
-
Has the effect already finished?
no setteroverride
- duration → double?
-
Total duration of the effect. If the duration cannot be determined, this
will return
null
. For an infinite effect the duration is infinity.no setteroverride - hashCode → int
-
The hash code for this object.
no setterinherited
- isInfinite → bool
-
Will the effect continue to run forever (never completes)?
no setterinherited
- isRandom → bool
-
Is the effect's duration random or fixed?
no setteroverride
- progress → double
-
The current progress of the effect, a value between 0 and 1.
no setteroverride
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- speed → double
-
final
- started → bool
-
Has the effect started running? Some effects use a "delay" parameter to
postpone the start of an animation. This property then tells you whether
this delay period has already passed.
no setterinherited
Methods
-
advance(
double dt) → double -
Advances this controller's internal clock by
dt
seconds.override -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onMount(
Effect parent) → void -
This is called by the Effect class when the controller is attached to
that effect. Controllers with children should propagate this to their
children.
override
-
recede(
double dt) → double -
Similar to
advance()
, but makes the effect controller move back in time.override -
setToEnd(
) → void -
Puts the controller into its final "completed" state.
override
-
setToStart(
) → void -
Reverts the controller to its initial state, as it was before the start
of the animation.
override
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited