rainbow_color
RainbowColor simplifies interpolation a numerical domain onto a multi-color range. RainbowColor accepts a numerical domain
(i.e. a start and end number) and a spectrum of two or more colors, and offers the list access operator ([]
) for
interpolation.
This package also provides RainbowColorTween
, a multi-color variant of the standard ColorTween, eliminating the need
to build more complex TweenSequence
for equal-weight transitions.
Usage
To interpolate a color among the spectrum, use the list access operator, e.g.
import 'package:rainbow_color/rainbow_color.dart';
var rb = Rainbow(spectrum: [Color(0xFFFF0000), Color(0xFFFFFFFF), Color(0xff00ff00)],
rangeStart: -10,
rangeEnd: 10);
Color warmColor = rb[-9.32];
Color coldColor = rb[8.44];
Or use RainbowColorTween
in place of ColorTween
to interpolate among multiple colors instead of two.
@override
void initState() {
super.initState();
_controller = AnimationController(duration: widget.duration, vsync: this);
_clAnim = RainbowColorTween([Color(0x33FFAAAA),
Color(0x33000000),
Color(0x00000000)]).animate(_controller)
..addListener(() {
setState(() {});
});
}
See Also
This is a Flutter-oriented version of the vanilla Dart package rainbow_vis.