AnimatedDrawing class
A widget that iteratively draws path segment data to a defined canvas (drawing line animation).
Path data can be either passed directly (AnimatedDrawing.paths) or via an Svg file (AnimatedDrawing.svg).
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- AnimatedDrawing
Constructors
-
AnimatedDrawing.paths(List<
Path> paths, {List<Paint> paints = const <Paint>[], AnimationController? controller, bool? run, Duration? duration, Curve? animationCurve, VoidCallback? onFinish, PaintedPathCallback? onPaint, PathOrder? animationOrder, double? width, double? height, AnimationRange? range, LineAnimation? lineAnimation = LineAnimation.oneByOne, bool scaleToViewport = true, DebugOptions? debug}) - Creates an instance of AnimatedDrawing by directly passing path elements to the constructor (still experimental).
- AnimatedDrawing.svg(String assetPath, {AnimationController? controller, bool? run, Duration? duration, Curve? animationCurve, VoidCallback? onFinish, PaintedPathCallback? onPaint, PathOrder? animationOrder, double? width, double? height, AnimationRange? range, LineAnimation? lineAnimation = LineAnimation.oneByOne, bool scaleToViewport = true, DebugOptions? debug})
-
Parses path data from an SVG asset. In order to use assets in your project specify those in
pubspec.yaml
:
Properties
- animationCurve → Curve?
-
Easing curves are used to adjust the rate of change of an animation over time, allowing them to speed up and slow down, rather than moving at a constant rate.
final
- animationOrder → PathOrder?
-
Denotes the order in which the path elements are drawn to canvas when lineAnimation is set to LineAnimation.oneByOne. When no animationOrder is specified it defaults to
PathOrder.original
. Do not confuse this option with the default rendering order, whereas the first path elements are painted first to the canvas and therefore potentially occluded by subsequent elements (w3-specs). For now the rendering order always defaults toPathOrder.original
.final - assetPath → String
-
Provide path data via an SVG asset.
final
- controller → AnimationController?
-
When a animation controller is specified, the progress of the animation can be controlled externally.
final
- debug → DebugOptions?
-
For debugging, not for production use.
final
- duration → Duration?
-
When no custom animation controller is provided the duration of the animation can be controlled via duration.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- height → double?
-
When height is specified parent constraints are ignored. When only width or height is specified the original aspect ratio is preserved.
final
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- lineAnimation → LineAnimation?
-
Specifies in which way the path elements are drawn to the canvas.
final
- onFinish → VoidCallback?
-
Callback is evoked after one animation cycle has finished.
final
- onPaint → PaintedPathCallback?
-
Callback is evoked when a complete path is painted to the canvas.
final
-
paints
→ List<
Paint> -
When specified each Path object in paths is painted by applying the corresponding
Paint
object.final -
paths
→ List<
Path> -
Provide path data via an list of Path objects.
final
- range → AnimationRange?
-
Specifies a start and end point from where to start and stop the animation.
final
- run → bool?
-
When no custom animation controller is provided the state of the animation can be controlled via run.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- scaleToViewport → bool
-
Denotes if the path elements should be scaled in order to fit into viewport.
final
- width → double?
-
When width is specified parent constraints are ignored. When only width or height is specified the original aspect ratio is preserved.
final
Methods
-
assertAnimationParameters(
) → void -
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → AbstractAnimatedDrawingState -
Creates the mutable state for this widget at a given location in the tree.
override
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of
DiagnosticsNode
objects describing this node's children.inherited -
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) → String -
A string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a string representation of this node and its descendants.
inherited
-
toStringShallow(
{String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a one-line detailed description of the object.
inherited
-
toStringShort(
) → String -
A short, textual description of this widget.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited