drawDashedLine method
Implementation
void drawDashedLine(Canvas canvas, Offset start, Offset end, Paint paint) {
const double dashWidth = 3;
const double dashSpace = 2;
double distance = (end - start).distance;
double dashCount = (distance / (dashWidth + dashSpace)).floorToDouble();
for (int i = 0; i < dashCount; ++i) {
double startX = start.dx + (end.dx - start.dx) * (i / dashCount);
double startY = start.dy + (end.dy - start.dy) * (i / dashCount);
double endX = start.dx + (end.dx - start.dx) * ((i + 0.5) / dashCount);
double endY = start.dy + (end.dy - start.dy) * ((i + 0.5) / dashCount);
canvas.drawLine(Offset(startX, startY), Offset(endX, endY), paint);
}
}