fix: keep los metadata on failure

This commit is contained in:
just_stuff_tm 2026-02-23 15:59:18 -05:00
parent e2585c0992
commit ea2f35ec2e

View file

@ -50,13 +50,13 @@ class LineOfSightResult {
const LineOfSightResult.error({
required this.totalDistanceMeters,
required this.errorMessage,
this.usedKFactor = 4.0 / 3.0,
this.frequencyMHz,
}) : hasData = false,
isClear = false,
maxObstructionMeters = 0,
firstObstructionDistanceMeters = null,
samples = const [],
usedKFactor = 4.0 / 3.0,
frequencyMHz = null;
samples = const [];
}
class LineOfSightPathSegment {
@ -203,6 +203,8 @@ class LineOfSightService {
return LineOfSightResult.error(
totalDistanceMeters: totalDistanceMeters,
errorMessage: errorElevationUnavailable,
usedKFactor: kFactor,
frequencyMHz: frequencyMHz,
);
}
@ -227,9 +229,11 @@ class LineOfSightService {
double obstructionToleranceMeters = 0.0,
}) {
if (points.length < 2 || elevations.length != points.length) {
return const LineOfSightResult.error(
return LineOfSightResult.error(
totalDistanceMeters: 0,
errorMessage: errorInvalidInput,
usedKFactor: kFactor,
frequencyMHz: frequencyMHz,
);
}