arc method
void
arc({})
Implementation
void arc({
required Ellipse ellipse,
required double startAngle,
required double endAngle,
ArcMode mode = ArcMode.openStrokePieFill,
}) {
switch (mode) {
case ArcMode.openStrokePieFill:
_paintingContext.canvas
..drawArc(ellipse.rect, startAngle, endAngle - startAngle, true, _paintingContext.fillPaint)
..drawArc(ellipse.rect, startAngle, endAngle - startAngle, false, _paintingContext.strokePaint);
break;
case ArcMode.open:
_paintingContext.canvas
..drawArc(ellipse.rect, startAngle, endAngle - startAngle, false, _paintingContext.fillPaint)
..drawArc(ellipse.rect, startAngle, endAngle - startAngle, false, _paintingContext.strokePaint);
break;
case ArcMode.chord:
final chordPath = Path()
..addArc(ellipse.rect, startAngle, endAngle - startAngle)
..close();
_paintingContext.canvas
..drawArc(ellipse.rect, startAngle, endAngle - startAngle, false, _paintingContext.fillPaint)
..drawPath(chordPath, _paintingContext.strokePaint);
break;
case ArcMode.pie:
_paintingContext.canvas
..drawArc(ellipse.rect, startAngle, endAngle - startAngle, true, _paintingContext.fillPaint)
..drawArc(ellipse.rect, startAngle, endAngle - startAngle, true, _paintingContext.strokePaint);
break;
}
_paintingContext.markHasUnappliedCanvasCommands();
}