ring function
Implementation
@pragma('vm:prefer-inline')
Iterable<Offset> ring(int k, double step) sync* {
for (int i = -k; i <= k; i++) {
yield Offset(i * step, -k * step);
if (k != 0) yield Offset(i * step, k * step);
}
for (int j = -k + 1; j <= k - 1; j++) {
yield Offset(-k * step, j * step);
if (k != 0) yield Offset(k * step, j * step);
}
}