mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-08 13:20:57 +00:00
adjusted outlier detection and aligned algorithms for tracks with/without fix speed; three tests known to be still broken
This commit is contained in:
1 parent
8f671b7010
commit
8c37928073
2 files changed
+7
-2
No files matched your search
+2
-2
@@ -124,7 +124,7 @@ public class DynamicGPSFixMovingTrackImpl<ItemType> extends DynamicTrackImpl<Ite
|
||||
} else {
|
||||
speedToPreviousFactor = e.getSpeed().getMetersPerSecond() / speedToPrevious.getMetersPerSecond();
|
||||
}
|
||||
foundValidPreviousFixInRange = speedToPrevious.compareTo(maxSpeedForSmoothing) <= 0
|
||||
foundValidPreviousFixInRange = (maxSpeedForSmoothing == null || speedToPrevious.compareTo(maxSpeedForSmoothing) <= 0)
|
||||
&& (!fixHasValidSogAndCog || speedToPreviousFactor <= MAX_SPEED_FACTOR_COMPARED_TO_MEASURED_SPEED_FOR_FILTERING);
|
||||
previous = rawFixes.lower(previous);
|
||||
}
|
||||
@@ -143,7 +143,7 @@ public class DynamicGPSFixMovingTrackImpl<ItemType> extends DynamicTrackImpl<Ite
|
||||
} else {
|
||||
speedToNextFactor = e.getSpeed().getMetersPerSecond() / speedToNext.getMetersPerSecond();
|
||||
}
|
||||
foundValidNextFixInRange = speedToNext.compareTo(maxSpeedForSmoothing) <= 0
|
||||
foundValidNextFixInRange = (maxSpeedForSmoothing == null || speedToNext.compareTo(maxSpeedForSmoothing) <= 0)
|
||||
&& (!fixHasValidSogAndCog || speedToNextFactor <= MAX_SPEED_FACTOR_COMPARED_TO_MEASURED_SPEED_FOR_FILTERING);
|
||||
next = rawFixes.higher(next);
|
||||
}
|
||||
|
||||
+5
@@ -163,6 +163,11 @@ public class GPSFixTrackImpl<ItemType, FixType extends GPSFix> extends TrackImpl
|
||||
this(trackedItem, millisecondsOverWhichToAverage, DEFAULT_MAX_SPEED_FOR_SMOOTHING);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param maxSpeedForSmoothening
|
||||
* if <code>null</code>, any fix speed will be accepted as long as fix-provided speed (if any) and
|
||||
* inferred speed can be matched.
|
||||
*/
|
||||
public GPSFixTrackImpl(ItemType trackedItem, long millisecondsOverWhichToAverage, Speed maxSpeedForSmoothening) {
|
||||
super(/* nameForReadWriteLock */ GPSFixTrackImpl.class.getSimpleName()+(trackedItem==null?"":(" for "+trackedItem.toString())));
|
||||
this.trackedItem = trackedItem;
|
||||
|
||||
Reference in new issue
Block a user