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, int wrapWidth = 65}) → 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