generatePath method

Path generatePath({
  1. bool? useBezier,
  2. required Rect rect,
})

Implementation

Path generatePath({bool? useBezier, required Rect rect}) {
  final height = rect.height;
  final width = rect.width;

  final double section = (2.0 * pi / numberOfSides);
  final double polygonSize = min(width, height);
  final double radius = polygonSize / 2;
  final double centerX = width / 2;
  final double centerY = height / 2;

  final Path polygonPath = new Path();
  polygonPath.moveTo(
      (centerX + radius * cos(0)), (centerY + radius * sin(0)));

  for (int i = 1; i < numberOfSides; i++) {
    polygonPath.lineTo((centerX + radius * cos(section * i)),
        (centerY + radius * sin(section * i)));
  }

  polygonPath.close();
  return polygonPath;
}