drawStar method

void drawStar(
  1. int num, {
  2. double initialAngle = 0,
})

Implementation

void drawStar(int num, {double initialAngle = 0}) {
  rotate(() {
    final Path path = Path();
    for (int i = 0; i < num; i++) {
      final double radian = radians(initialAngle + 360 / num * i.toDouble());
      final double x = radius * (i.isEven ? 0.5 : 1) * cos(radian);
      final double y = radius * (i.isEven ? 0.5 : 1) * sin(radian);
      if (i == 0) {
        path.moveTo(x, y);
      } else {
        path.lineTo(x, y);
      }
    }
    path.close();
    canvas!.drawPath(path, paint!);
  });
}