java/com.sap.sailing.domain.shared.android/src/com/sap/sailing/domain/base/BoatClass.java
... ...
@@ -8,7 +8,7 @@ import com.sap.sse.common.Named;
8 8
import com.sap.sse.common.TimePoint;
9 9
10 10
public interface BoatClass extends Named, IsManagedByCache<SharedDomainFactory<?>> {
11
- final Duration APPROXIMATE_AVERAGE_MANEUVER_DURATION = Duration.ONE_SECOND.times(8); // as discussed with Dennis Gehrlein
11
+ final Duration APPROXIMATE_AVERAGE_MANEUVER_DURATION = Duration.ONE_SECOND.times(10);
12 12
13 13
/**
14 14
* The distance returned by this method should be appropriate for use in
java/com.sap.sailing.domain/src/com/sap/sailing/domain/maneuverdetection/impl/ManeuverDetectorImpl.java
... ...
@@ -190,7 +190,7 @@ public class ManeuverDetectorImpl extends AbstractManeuverDetectorImpl {
190 190
* Checks whether {@code currentFix} can be grouped together with the previous fixes in order to be regarded as a
191 191
* single maneuver spot. For this, the {@code newCourseChangeDirection must match the direction of provided {@code
192 192
* lastCourseChangeDirection}. Additionally, the distance from {@code previousFix} to {@code currentFix} must be <=
193
- * 5 hull lengths, or the time difference <= 2*getApproximatedManeuverDuration().
193
+ * 4 hull lengths, or the time difference <= getApproximatedManeuverDuration().
194 194
*
195 195
* @param lastCourseChangeDirection The last course within previous three fixes counting from {@code currentFix}
196 196
*
... ...
@@ -209,10 +209,10 @@ public class ManeuverDetectorImpl extends AbstractManeuverDetectorImpl {
209 209
if (lastCourseChangeDirection != newCourseChangeDirection) {
210 210
result = false;
211 211
} else {
212
- Distance threeHullLengths = trackedRace.getRace().getBoatOfCompetitor(competitor).getBoatClass().getHullLength().scale(5);
212
+ Distance fourHullLengths = trackedRace.getRace().getBoatOfCompetitor(competitor).getBoatClass().getHullLength().scale(4);
213 213
if (currentFix.getTimePoint().asMillis()
214
- - previousFix.getTimePoint().asMillis() > getApproximateManeuverDuration().asMillis()*2
215
- && currentFix.getPosition().getDistance(previousFix.getPosition()).compareTo(threeHullLengths) > 0) {
214
+ - previousFix.getTimePoint().asMillis() > getApproximateManeuverDuration().asMillis()
215
+ && currentFix.getPosition().getDistance(previousFix.getPosition()).compareTo(fourHullLengths) > 0) {
216 216
result = false;
217 217
} else {
218 218
result = true;