updateDistance method Null safety
- EngineSettings settings
Update the distance with a formatted value with the trailing unit
Note: distances < 1km will be shown in meters
Implementation
updateDistance(EngineSettings settings) {
final length = Length(removeTrailingZeros: false);
length.convert(LENGTH.meters, result.distance);
late Unit _distance;
late dynamic value;
final isMetric = settings.isMetric;
// Miles
if (!isMetric) {
_distance = length.miles;
value = _distance.value!.to2Dp;
} else {
final inKm = result.distance >= 1000;
// Kilometers
if (inKm) {
_distance = length.kilometers;
value = _distance.value!.to2Dp;
}
// Meters
else {
_distance = length.meters;
value = _distance.value!.floor();
}
}
distance.value = '$value ${_distance.symbol}';
}