SingleSpringController class

A lightweight controller that drives a single double value using SpringSimulation. Equivalent to motor's SingleMotionController.

Features:

  • value — current animated value.
  • velocity — current spring velocity (units/second).
  • animateTo — start/redirect a spring toward a new target, preserving current velocity.
  • spring can be changed at any time; a running simulation is redirected immediately (mirrors motor's hot-swap behaviour).
  • Optional lowerBound/upperBound clamping (mirrors BoundedSingleMotionController).
  • Implements Listenable so it works directly with ListenableBuilder.
Inheritance

Constructors

SingleSpringController({required TickerProvider vsync, required SpringDescription spring, double initialValue = 0.0, double? lowerBound, double? upperBound})

Properties

hashCode int
The hash code for this object.
no setterinherited
hasListeners bool
Whether any listeners are currently registered.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
spring SpringDescription
The spring description. Changing it will redirect any running simulation immediately, preserving current velocity.
getter/setter pair
value double
The current animated value.
no setter
velocity double
no setter

Methods

addListener(VoidCallback listener) → void
Register a closure to be called when the object changes.
inherited
animateTo(double target, {double? fromVelocity}) → void
Animates toward target, preserving current velocity. If fromVelocity is provided it overrides the current velocity.
dispose() → void
Discards any resources used by the object. After this is called, the object is not in a usable state and should be discarded (calls to addListener will throw after the object is disposed).
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
notifyListeners() → void
Call all the registered listeners.
inherited
removeListener(VoidCallback listener) → void
Remove a previously registered closure from the list of closures that are notified when the object changes.
inherited
setValue(double value) → void
Immediately sets the value without animating.
toString() String
A string representation of this object.
inherited

Operators

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