drawGrids method

void drawGrids(
  1. CanvasWrapper canvasWrapper,
  2. PaintHolder<RadarChartData> holder
)

Implementation

void drawGrids(
  CanvasWrapper canvasWrapper,
  PaintHolder<RadarChartData> holder,
) {
  final data = holder.data;
  final size = canvasWrapper.size;

  final centerX = radarCenterX(size);
  final centerY = radarCenterY(size);
  final centerOffset = Offset(centerX, centerY);

  /// controls Radar chart size
  final radius = radarRadius(size);

  final angle = (2 * pi) / data.titleCount;

  /// drawing grids
  for (var index = 0; index < data.titleCount; index++) {
    final endX = centerX + radius * cos(angle * index - pi / 2);
    final endY = centerY + radius * sin(angle * index - pi / 2);

    final gridOffset = Offset(endX, endY);

    _gridPaint
      ..color = data.gridBorderData.color
      ..strokeWidth = data.gridBorderData.width;
    canvasWrapper.drawLine(centerOffset, gridOffset, _gridPaint);
  }
}