mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-11-14 06:18:12 +00:00
Added statistic windward distance to starboard side at start
This commit is contained in:
1 parent
1a35348a15
commit
34cbd620ce
4 files changed
+25
No files matched your search
+1
@@ -93,6 +93,7 @@ TackAtStart=Tack at Start
|
||||
SpeedTenSecondsAfterStart=Speed 10s After Start
|
||||
RankThirtySecondsAfterStart=Rank 30s After Start
|
||||
WindwardDistanceToAdvantageousEndOfLine=Windward Distance to Advantageous End of Line
|
||||
WindwardDistanceToStarboardSideAtStart=Windward Distance to Starboardside of Line
|
||||
RankAfterHalfOfTheFirstLeg=Rank after the half of the first leg
|
||||
AdvantageousEndOfLine=Advantageous End of Line
|
||||
TimeSpentInSeconds=Time Spent in Seconds
|
||||
|
||||
+1
@@ -93,6 +93,7 @@ TackAtStart=Startbug
|
||||
SpeedTenSecondsAfterStart=Geschwindigkeit 10s nach dem Startzeitpunkt
|
||||
RankThirtySecondsAfterStart=Absolute Platzierung 30s nach dem Startzeitpunkt
|
||||
WindwardDistanceToAdvantageousEndOfLine=Windwärtige Distanz zum Bevorteilten Ende der Startlinie
|
||||
WindwardDistanceToStarboardSideAtStart=Windwärtige Distanz zur Steuerbordseite beim Start
|
||||
RankAfterHalfOfTheFirstLeg=Platzierung nach der Hälfte des ersten Schenkels
|
||||
AdvantageousEndOfLine=Bevorteiltes Ende der Startlinie
|
||||
TimeSpentInSeconds=Benötigte Zeit in Sekunden
|
||||
|
||||
+3
@@ -79,4 +79,7 @@ public interface HasRaceOfCompetitorContext {
|
||||
|
||||
@Statistic(messageKey="LineLengthAtStart", resultDecimals=1)
|
||||
public Distance getLineLengthAtStart();
|
||||
|
||||
@Statistic(messageKey="WindwardDistanceToStarboardSideAtStart", resultDecimals=2)
|
||||
Distance getWindwardDistanceToStarboardSideAtStart();
|
||||
}
|
||||
+20
@@ -126,6 +126,26 @@ public class RaceOfCompetitorWithContext implements HasRaceOfCompetitorContext {
|
||||
return distance;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Distance getWindwardDistanceToStarboardSideAtStart() {
|
||||
TrackedRace trackedRace = getTrackedRace();
|
||||
TimePoint startOfRace = trackedRace.getStartOfRace();
|
||||
LineDetails startLine = trackedRace.getStartLine(startOfRace);
|
||||
Mark starboardMark = startLine.getStarboardMarkWhileApproachingLine();
|
||||
if (starboardMark == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
GPSFixTrack<Mark, GPSFix> starboardMarkTrack = trackedRace.getOrCreateTrack(starboardMark);
|
||||
Position advantageousMarkPosition = starboardMarkTrack.getEstimatedPosition(startOfRace, false);
|
||||
GPSFixTrack<Competitor, GPSFixMoving> competitorTrack = trackedRace.getTrack(getCompetitor());
|
||||
Position competitorPosition = competitorTrack.getEstimatedPosition(startOfRace, false);
|
||||
|
||||
TrackedLeg trackedLeg = trackedRace.getTrackedLeg(trackedRace.getRace().getCourse().getFirstLeg());
|
||||
Distance distance = trackedLeg.getWindwardDistance(competitorPosition, advantageousMarkPosition, startOfRace, WindPositionMode.LEG_MIDDLE);
|
||||
return distance;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ClusterDTO getPercentageClusterForRelativeScore() {
|
||||
Double relativeScore = getTrackedRaceContext().getRelativeScoreForCompetitor(getCompetitor());
|
||||
|
||||
Reference in new issue
Block a user