RotateEffect class
Rotate a component around its anchor.
Two constructors are provided:
- RotateEffect.by will rotate the target by the specified
angle
relative to its orientation at the onset of the effect. For example, rotating byangle = tau/4
will turn the component 90° clockwise relative to its initial direction; - RotateEffect.to will rotate the target to the fixed orientation
specified by the
angle
. For example, rotating toangle = tau/4
will turn the component to look East regardless of its initial bearing.
This effect applies incremental changes to the component's angle, and requires that any other effect or update logic applied to the same component also used incremental updates.
- Inheritance
- Mixed-in types
Constructors
- RotateEffect.by(double angle, EffectController controller, {void onComplete()?, ComponentKey? key})
- RotateEffect.to(double angle, EffectController controller, {void onComplete()?, ComponentKey? key})
-
factory
Properties
- children → ComponentSet
-
The children components of this component.
no setterinherited
-
completed
→ Future<
void> -
A future that completes when the effect is finished.
no setterinherited
- controller → EffectController
-
An object that describes how the effect should evolve over time.
finalinherited
- debugColor ↔ Color
-
The color that the debug output should be rendered with.
getter/setter pairinherited
- debugCoordinatesPrecision ↔ int?
-
How many decimal digits to print when displaying coordinates in the
debug mode. Setting this to null will suppress all coordinates from
the output.
getter/setter pairinherited
- debugMode ↔ bool
-
Returns whether this Component is in debug mode or not.
When a child is added to the Component it gets the same debugMode as
its parent has when it is prepared.
getter/setter pairinherited
- debugPaint → Paint
-
The debugColor represented as a Paint object.
no setterinherited
- debugTextPaint → TextPaint
-
Returns a TextPaint object with the debugColor set as color for the
text.
no setterinherited
- hasChildren → bool
-
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- isLoaded → bool
-
Whether this component has completed its onLoad step.
no setterinherited
- isLoading → bool
-
Whether the component is currently executing its onLoad step.
no setterinherited
- isMounted → bool
-
Whether this component is currently added to a component tree.
no setterinherited
- isMounting → bool
-
no setterinherited
- isPaused → bool
-
Whether the effect is paused or not.
no setterinherited
- isRemoved → bool
-
Whether the component has been removed. Originally this flag is
false
, but it becomestrue
after the component was mounted and then removed from its parent. The flag becomesfalse
again when the component is mounted to a new parent.no setterinherited - isRemoving → bool
-
Whether the component is scheduled to be removed.
no setterinherited
- key → ComponentKey?
-
A key that can be used to identify this component in the tree.
finalinherited
-
loaded
→ Future<
void> -
A future that completes when this component finishes loading.
no setterinherited
-
mounted
→ Future<
void> -
A future that will complete once the component is mounted on its parent.
no setterinherited
- onComplete ↔ void Function()?
-
Optional callback function to be invoked once the effect completes.
getter/setter pairinherited
- parent ↔ Component?
-
Who owns this component in the component tree.
getter/setter pairinherited
- previousProgress → double
-
The effect's
progress
variable as it was the last time that theapply()
method was called. Mostly used by the derived classes.no setterinherited - priority ↔ int
-
Render priority of this component. This allows you to control the order in
which your components are rendered.
getter/setter pairinherited
-
removed
→ Future<
void> -
A future that completes when this component is removed from its parent.
no setterinherited
- removeOnFinish ↔ bool
-
Whether the effect should be removed from its parent once it is completed,
true by default.
getter/setter pairinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- target ↔ AngleProvider
-
getter/setter pairinherited
Methods
-
add(
Component component) → FutureOr< void> -
Schedules
component
to be added as a child to this component.inherited -
addAll(
Iterable< Component> components) → Future<void> -
A convenience method to add multiple children at once.
inherited
-
addToParent(
Component parent) → FutureOr< void> -
Adds this component as a child of
parent
(see add for details).inherited -
advance(
double dt) → double -
Used for SequenceEffect. This is similar to
update()
, but cannot be paused, does not obey removeOnFinish, and returns the "leftover time" similar toEffectController.advance
.inherited -
ancestors(
{bool includeSelf = false}) → Iterable< Component> -
An iterator producing this component's parent, then its parent's parent,
then the great-grand-parent, and so on, until it reaches a component
without a parent.
inherited
-
apply(
double progress) → void -
Apply the given
progress
level to the effect's target.override -
componentsAtLocation<
T> (T locationContext, List< T> ? nestedContexts, T? transformContext(CoordinateTransform, T), bool checkContains(Component, T)) → Iterable<Component> -
This is a generic implementation of componentsAtPoint; refer to those
docs for context.
inherited
-
componentsAtPoint(
Vector2 point, [List< Vector2> ? nestedPoints]) → Iterable<Component> -
An iterable of descendant components intersecting the given point. The
point
is in the local coordinate space.inherited -
contains(
Component c) → bool -
Whether the children list contains the given component.
inherited
-
containsLocalPoint(
Vector2 point) → bool -
Checks whether the
point
is within this component's bounds.inherited -
containsPoint(
Vector2 point) → bool -
Same as containsLocalPoint, but for a "global"
point
.inherited -
createComponentSet(
) → ComponentSet -
This method creates the children container for the current component.
Override this method if you need to have a custom ComponentSet within
a particular class.
inherited
-
descendants(
{bool includeSelf = false, bool reversed = false}) → Iterable< Component> -
Recursively enumerates all nested children.
inherited
-
findGame(
) → FlameGame< World> ? -
Fetches the nearest FlameGame ancestor to the component.
inherited
-
findParent<
T extends Component> ({bool includeSelf = false}) → T? -
Returns the closest parent further up the hierarchy that satisfies type=T,
or null if no such parent can be found.
inherited
-
findRootGame(
) → FlameGame< World> ? -
Fetches the root FlameGame ancestor to the component.
inherited
-
firstChild<
T extends Component> () → T? -
Returns the first child that matches the given type
T
, or null if there are no such children.inherited -
handleLifecycleEventAdd(
Component parent) → LifecycleEventStatus -
inherited
-
handleLifecycleEventMove(
Component newParent) → LifecycleEventStatus -
inherited
-
handleLifecycleEventRemove(
Component parent) → LifecycleEventStatus -
inherited
-
handleResize(
Vector2 size) → void -
inherited
-
lastChild<
T extends Component> () → T? -
Returns the last child that matches the given type
T
, or null if there are no such children.inherited -
measure(
) → double - Calculate the "measure" of the effect, which is the effect's distance from min to max progress. The "measure" is any property for which the notion of speed is well-defined.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onChildrenChanged(
Component child, ChildrenChangeType type) → void -
This method will be invoked from lifecycle if
child
has been added to or removed from its parent children list.inherited -
onFinish(
) → void -
This method is called once when the effect is about to finish, but before
it is removed from its parent. The notion of "about to finish" is defined
by the controller: this method is called when
controller.completed
property first becomes true.inherited -
onGameResize(
Vector2 size) → void -
Called whenever the size of the top-level Canvas changes.
inherited
-
onLoad(
) → FutureOr< void> -
Late initialization method for Component.
inherited
-
onMount(
) → void -
Called when the component is added to its parent.
inherited
-
onParentResize(
Vector2 maxSize) → void -
Called whenever the parent of this component changes size; and also once
before onMount.
inherited
-
onRemove(
) → void -
Called right before the component is removed from the game.
inherited
-
onStart(
) → void -
This method is called once when the effect is about to start, but before
the first call to
apply()
. The notion of "about to start" is defined by the controller: this method is called whencontroller.started
property first becomes true.inherited -
pause(
) → void -
Pause the effect. The effect will not respond to updates while it is
paused. Calling
resume()
orreset()
will un-pause it. Pausing an already paused effect is a no-op.inherited -
propagateToChildren<
T extends Component> (bool handler(T), {bool includeSelf = false}) → bool -
This method first calls the passed handler on the leaves in the tree,
the children without any children of their own.
Then it continues through all other children. The propagation continues
until the handler returns false, which means "do not continue", or when
the handler has been called with all children.
inherited
-
recede(
double dt) → double -
Used for SequenceEffect. This is similar to
update()
, but the effect is moved back in time. The callbacks onStart/onFinish will not be called. This method returns the "leftover time" similar toEffectController.recede
.inherited -
remove(
Component component) → void -
Removes a component from the component tree.
inherited
-
removeAll(
Iterable< Component> components) → void -
Removes all the children in the list and calls onRemove for all of them
and their children.
inherited
-
removeFromParent(
) → void -
Remove the component from its parent in the next tick.
inherited
-
removeWhere(
bool test(Component component)) → void -
Removes all the children for which the
test
function returns true.inherited -
render(
Canvas canvas) → void -
inherited
-
renderDebugMode(
Canvas canvas) → void -
inherited
-
renderTree(
Canvas canvas) → void -
inherited
-
reset(
) → void -
Restore the effect to its original state as it was when the effect was
just created.
inherited
-
resetToEnd(
) → void -
inherited
-
resume(
) → void -
Resume updates in a previously paused effect. If the effect is not
currently paused, this call is a no-op.
inherited
-
setLoaded(
) → void -
Used by the FlameGame to set the loaded state of the component, since
the game isn't going through the whole normal component life cycle.
inherited
-
setMounted(
) → void -
Used by the FlameGame to set the mounted state of the component, since
the game isn't going through the whole normal component life cycle.
inherited
-
setRemoved(
) → void -
Used by the FlameGame to set the removed state of the component, since
the game isn't going through the whole normal component life cycle.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
update(
double dt) → void -
Implementation of Component's
update()
method. Derived classes are not expected to redefine this.inherited -
updateTree(
double dt) → void -
This method traverses the component tree and calls update on all its
children according to their priority order, relative to the
priority of the direct siblings, not the children or the ancestors.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited