fix: clamp los profile bounds

This commit is contained in:
just_stuff_tm
2026-02-23 18:12:04 -05:00
parent ea2f35ec2e
commit 74e29a6c0f
4 changed files with 11 additions and 9 deletions
+8 -6
View File
@@ -1065,13 +1065,15 @@ class _LosProfilePainter extends CustomPainter {
samples.last.terrainMeters,
);
double distanceForCanvasX(double x) =>
((x - horizontalPadding) / chartWidth) * maxDist;
double distanceForCanvasX(double x) {
final normalized = ((x - horizontalPadding) / chartWidth).clamp(0.0, 1.0);
return normalized * maxDist;
}
double elevationToPixel(double elevation) =>
size.height -
verticalPadding -
((elevation - minY) / ySpan) * chartHeight;
double elevationToPixel(double elevation) {
final normalized = ((elevation - minY) / ySpan).clamp(0.0, 1.0);
return size.height - verticalPadding - normalized * chartHeight;
}
double extrapolateTerrain(double distance, bool isLeft) {
final samplesForSlope = isLeft