paint method
Renders the series data on the canvas, using the data generated during the update call.
Implementation
@override
void paint(ChartCanvas canvas, double animationPercent) {
// Clean up the arcs that no longer exist.
if (animationPercent == 1.0) {
final keysToRemove = <String>[];
_seriesArcMap.forEach((String key, List<AnimatedArcList<D>> arcLists) {
final arcListToRemove = <AnimatedArcList<D>>[];
for (var arcList in arcLists) {
arcList.arcs.removeWhere((AnimatedArc<D> arc) => arc.animatingOut);
if (arcList.arcs.isEmpty) {
arcListToRemove.add(arcList);
}
}
arcListToRemove.forEach(arcLists.remove);
if (arcLists.isEmpty) {
keysToRemove.add(key);
}
});
keysToRemove.forEach(_seriesArcMap.remove);
}
super.paint(canvas, animationPercent);
}