invertDistance method
Inverts a distance in canvas to abstract distance.
Implementation
@override
double invertDistance(double canvasDistance, [Dim? dim]) {
// The radius in angle calculation is approximately the middle radius.
final a = canvasDistance / ((startRadius + endRadius) * 2);
final r = canvasDistance / (endRadius - startRadius).abs();
if (dim == Dim.x) {
return transposed ? r : a;
} else if (dim == Dim.y) {
return transposed ? a : r;
} else {
return (a + r) / 2;
}
}