Generates curve points from the given data points.
@override List<Point> generate(List<Point> points) { if (points.isEmpty) return []; return [...points, points.first]; }