drawDash method
Draws a dashed line along the path.
This method manually calculates and draws the dashes and gaps, as Flutter's native dash support can be inconsistent.
Implementation
void drawDash(UiPaint paint, Canvas uiCanvas) {
List<double> dasharray = paint.getStrokeDasharray()!;
List<Offsets>? dashed = _dashedPaths[dasharray.join()];
dashed ??= PathHelper.calculateDashes(_points, dasharray);
_dashedPaths[dasharray.join()] = dashed;
for (var offsets in dashed) {
uiCanvas.drawLine(offsets.start, offsets.end, paint.expose());
}
}