563da6fe145980c6116d7b90c4c8a51b3d99f7e1
java/com.sap.sailing.dashboards.gwt/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/gwt/ui/shared/GPSFixDTOWithSpeedWindTackAndLegTypeIterable_CustomFieldSerializer.java
| ... | ... | @@ -9,14 +9,14 @@ import com.google.gwt.user.client.rpc.SerializationException; |
| 9 | 9 | import com.google.gwt.user.client.rpc.SerializationStreamReader; |
| 10 | 10 | import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
| 11 | 11 | import com.sap.sailing.domain.common.LegType; |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | 12 | import com.sap.sailing.domain.common.Tack; |
| 14 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 15 | 13 | import com.sap.sailing.gwt.ui.shared.GPSFixDTOWithSpeedWindTackAndLegType; |
| 16 | 14 | import com.sap.sailing.gwt.ui.shared.GPSFixDTOWithSpeedWindTackAndLegTypeIterable; |
| 17 | 15 | import com.sap.sailing.gwt.ui.shared.SpeedWithBearingDTO; |
| 18 | 16 | import com.sap.sse.common.Bearing; |
| 17 | +import com.sap.sse.common.Position; |
|
| 19 | 18 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 19 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 20 | 20 | |
| 21 | 21 | /** |
| 22 | 22 | * Serializes the {@link GPSFixDTOWithSpeedWindTackAndLegType} objects one by one, writing only primitive values to the |
java/com.sap.sailing.dashboards.gwt/src/main/java/com/sap/sailing/dashboards/gwt/client/widgets/windbot/compass/LocationPointerCompass.java
| ... | ... | @@ -11,7 +11,7 @@ import com.google.gwt.user.client.ui.Composite; |
| 11 | 11 | import com.google.gwt.user.client.ui.HasWidgets; |
| 12 | 12 | import com.google.gwt.user.client.ui.Image; |
| 13 | 13 | import com.google.gwt.user.client.ui.Widget; |
| 14 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | +import com.sap.sse.common.Position; |
|
| 15 | 15 | |
| 16 | 16 | /** |
| 17 | 17 | * @author Alexander Ries (D062114) |
java/com.sap.sailing.dashboards.gwt/src/main/java/com/sap/sailing/dashboards/gwt/client/widgets/windbot/compass/LocationPointerCompassAngleDistance.java
| ... | ... | @@ -10,9 +10,9 @@ import com.sap.sailing.dashboards.gwt.client.device.LocationListener; |
| 10 | 10 | import com.sap.sailing.dashboards.gwt.client.device.Orientation; |
| 11 | 11 | import com.sap.sailing.dashboards.gwt.client.device.OrientationListener; |
| 12 | 12 | import com.sap.sailing.dashboards.gwt.client.device.OrientationType; |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 13 | +import com.sap.sse.common.Position; |
|
| 15 | 14 | import com.sap.sse.common.Util.Pair; |
| 15 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 16 | 16 | |
| 17 | 17 | /** |
| 18 | 18 | * The classes task is to notify its listeners about changes in distance and angle from the actual device to a pointed |
java/com.sap.sailing.dashboards.gwt/src/main/java/com/sap/sailing/dashboards/gwt/server/util/actions/startanalysis/StartAnalysisDTOFactory.java
| ... | ... | @@ -19,13 +19,13 @@ import com.sap.sailing.domain.base.Competitor; |
| 19 | 19 | import com.sap.sailing.domain.base.Waypoint; |
| 20 | 20 | import com.sap.sailing.domain.common.LegType; |
| 21 | 21 | import com.sap.sailing.domain.common.NoWindException; |
| 22 | -import com.sap.sailing.domain.common.Position; |
|
| 23 | 22 | import com.sap.sailing.domain.common.Wind; |
| 24 | 23 | import com.sap.sailing.domain.common.racelog.RacingProcedureType; |
| 25 | 24 | import com.sap.sailing.domain.shared.tracking.LineDetails; |
| 26 | 25 | import com.sap.sailing.domain.tracking.MarkPassing; |
| 27 | 26 | import com.sap.sailing.domain.tracking.TrackedLeg; |
| 28 | 27 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 28 | +import com.sap.sse.common.Position; |
|
| 29 | 29 | import com.sap.sse.common.TimePoint; |
| 30 | 30 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 31 | 31 |
java/com.sap.sailing.dashboards.gwt/src/main/java/com/sap/sailing/dashboards/gwt/server/util/actions/startlineadvantage/DefaultPolarWindAngleBoatSpeedFunction.java
| ... | ... | @@ -6,9 +6,9 @@ import org.apache.commons.math.analysis.polynomials.PolynomialSplineFunction; |
| 6 | 6 | |
| 7 | 7 | import com.sap.sailing.domain.base.SpeedWithConfidence; |
| 8 | 8 | import com.sap.sailing.domain.base.impl.SpeedWithConfidenceImpl; |
| 9 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 10 | 9 | import com.sap.sse.common.Bearing; |
| 11 | 10 | import com.sap.sse.common.Speed; |
| 11 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 12 | 12 | |
| 13 | 13 | /** |
| 14 | 14 | * Contains a {@link PolynomialSplineFunction} that describes the boat speed at incoming wind angles from 0 to 180 degrees. |
java/com.sap.sailing.dashboards.gwt/src/main/java/com/sap/sailing/dashboards/gwt/server/util/actions/startlineadvantage/StartlineAdvantageByGeometryCalculator.java
| ... | ... | @@ -6,11 +6,11 @@ import com.google.gwt.core.shared.GwtIncompatible; |
| 6 | 6 | import com.sap.sailing.domain.base.Course; |
| 7 | 7 | import com.sap.sailing.domain.base.Mark; |
| 8 | 8 | import com.sap.sailing.domain.base.Waypoint; |
| 9 | -import com.sap.sailing.domain.common.Position; |
|
| 10 | 9 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 11 | 10 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 12 | 11 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 13 | 12 | import com.sap.sse.common.Distance; |
| 13 | +import com.sap.sse.common.Position; |
|
| 14 | 14 | import com.sap.sse.common.TimePoint; |
| 15 | 15 | import com.sap.sse.common.Util.Pair; |
| 16 | 16 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
java/com.sap.sailing.dashboards.gwt/src/main/java/com/sap/sailing/dashboards/gwt/server/util/actions/startlineadvantage/StartlineAdvantagesByWindCalculator.java
| ... | ... | @@ -13,17 +13,17 @@ import com.sap.sailing.dashboards.gwt.shared.dto.StartLineAdvantageDTO; |
| 13 | 13 | import com.sap.sailing.dashboards.gwt.shared.dto.StartlineAdvantagesWithMaxAndAverageDTO; |
| 14 | 14 | import com.sap.sailing.domain.base.DomainFactory; |
| 15 | 15 | import com.sap.sailing.domain.base.SpeedWithConfidence; |
| 16 | -import com.sap.sailing.domain.common.Position; |
|
| 17 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 18 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 19 | 16 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 20 | 17 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 21 | 18 | import com.sap.sse.common.Bearing; |
| 22 | 19 | import com.sap.sse.common.Distance; |
| 20 | +import com.sap.sse.common.Position; |
|
| 23 | 21 | import com.sap.sse.common.Speed; |
| 24 | 22 | import com.sap.sse.common.TimePoint; |
| 25 | 23 | import com.sap.sse.common.Util.Pair; |
| 26 | 24 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 25 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 26 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 27 | 27 | |
| 28 | 28 | /** |
| 29 | 29 | * @author Alexander Ries (D062114) |
java/com.sap.sailing.dashboards.gwt/src/main/java/com/sap/sailing/dashboards/gwt/server/util/actions/startlineadvantage/precalculation/StartlineAdvantageCalculationData.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.dashboards.gwt.server.util.actions.startlineadvantage.precalculation; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.domain.common.Wind; |
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | 5 | |
| 6 | 6 | /** |
| 7 | 7 | * In order to calculate the startline adavantage by wind, the data objects defined in this class |
java/com.sap.sailing.dashboards.gwt/src/main/java/com/sap/sailing/dashboards/gwt/server/util/actions/startlineadvantage/precalculation/StartlineAdvantageCalculationDataRetriever.java
| ... | ... | @@ -9,18 +9,18 @@ import com.sap.sailing.domain.base.DomainFactory; |
| 9 | 9 | import com.sap.sailing.domain.base.Mark; |
| 10 | 10 | import com.sap.sailing.domain.base.Waypoint; |
| 11 | 11 | import com.sap.sailing.domain.common.ManeuverType; |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | 12 | import com.sap.sailing.domain.common.Wind; |
| 14 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 15 | 13 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 16 | 14 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 17 | 15 | import com.sap.sailing.domain.polars.PolarDataService; |
| 18 | 16 | import com.sap.sailing.domain.shared.tracking.LineDetails; |
| 19 | 17 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 20 | 18 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 19 | +import com.sap.sse.common.Position; |
|
| 21 | 20 | import com.sap.sse.common.Speed; |
| 22 | 21 | import com.sap.sse.common.TimePoint; |
| 23 | 22 | import com.sap.sse.common.Util.Pair; |
| 23 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 24 | 24 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 25 | 25 | |
| 26 | 26 | /** |
java/com.sap.sailing.datamining.shared/src/com/sap/sailing/datamining/shared/SailingDataMiningSerializationDummy.java
| ... | ... | @@ -4,13 +4,13 @@ import com.sap.sailing.domain.common.LegType; |
| 4 | 4 | import com.sap.sailing.domain.common.ManeuverType; |
| 5 | 5 | import com.sap.sailing.domain.common.NauticalSide; |
| 6 | 6 | import com.sap.sailing.domain.common.Tack; |
| 7 | -import com.sap.sailing.domain.common.impl.CentralAngleDistance; |
|
| 8 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 9 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 10 | 7 | import com.sap.sse.common.Bearing; |
| 11 | 8 | import com.sap.sse.common.Distance; |
| 12 | 9 | import com.sap.sse.common.Duration; |
| 13 | 10 | import com.sap.sse.common.Speed; |
| 11 | +import com.sap.sse.common.impl.CentralAngleDistance; |
|
| 12 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 13 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 14 | 14 | import com.sap.sse.datamining.shared.SerializationDummy; |
| 15 | 15 | import com.sap.sse.datamining.shared.data.AverageWithStats; |
| 16 | 16 |
java/com.sap.sailing.datamining.test/src/com/sap/sailing/datamining/impl/components/TestSegmentsTackType.java
| ... | ... | @@ -24,9 +24,6 @@ import com.sap.sailing.domain.base.Competitor; |
| 24 | 24 | import com.sap.sailing.domain.base.CompetitorWithBoat; |
| 25 | 25 | import com.sap.sailing.domain.base.Waypoint; |
| 26 | 26 | import com.sap.sailing.domain.base.impl.CourseAreaImpl; |
| 27 | -import com.sap.sailing.domain.common.Position; |
|
| 28 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 29 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 30 | 27 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 31 | 28 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 32 | 29 | import com.sap.sailing.domain.leaderboard.Leaderboard; |
| ... | ... | @@ -42,9 +39,12 @@ import com.sap.sailing.domain.tracking.impl.MarkPassingImpl; |
| 42 | 39 | import com.sap.sse.common.Distance; |
| 43 | 40 | import com.sap.sse.common.Distance.NullDistance; |
| 44 | 41 | import com.sap.sse.common.Duration; |
| 42 | +import com.sap.sse.common.Position; |
|
| 45 | 43 | import com.sap.sse.common.TimePoint; |
| 46 | 44 | import com.sap.sse.common.Util; |
| 47 | 45 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 46 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 47 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 48 | 48 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 49 | 49 | |
| 50 | 50 | public class TestSegmentsTackType extends StoredTrackBasedTest { |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/SailingClusterGroups.java
| ... | ... | @@ -3,8 +3,8 @@ package com.sap.sailing.datamining; |
| 3 | 3 | import java.util.ArrayList; |
| 4 | 4 | import java.util.Collection; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 7 | 6 | import com.sap.sse.common.Speed; |
| 7 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 8 | 8 | import com.sap.sse.datamining.data.Cluster; |
| 9 | 9 | import com.sap.sse.datamining.data.ClusterBoundary; |
| 10 | 10 | import com.sap.sse.datamining.data.ClusterFormatter; |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/data/HasBravoFixContext.java
| ... | ... | @@ -1,10 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.datamining.data; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.common.NoWindException; |
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | 4 | import com.sap.sailing.domain.common.tracking.BravoFix; |
| 6 | 5 | import com.sap.sse.common.Bearing; |
| 7 | 6 | import com.sap.sse.common.Speed; |
| 7 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 8 | 8 | import com.sap.sse.datamining.annotations.Connector; |
| 9 | 9 | import com.sap.sse.datamining.annotations.Statistic; |
| 10 | 10 |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/data/HasGPSFixContext.java
| ... | ... | @@ -1,12 +1,12 @@ |
| 1 | 1 | package com.sap.sailing.datamining.data; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.common.NoWindException; |
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | 4 | import com.sap.sailing.domain.common.TackType; |
| 6 | 5 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 7 | 6 | import com.sap.sse.common.Bearing; |
| 8 | 7 | import com.sap.sse.common.Distance; |
| 9 | 8 | import com.sap.sse.common.Speed; |
| 9 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 10 | 10 | import com.sap.sse.datamining.annotations.Connector; |
| 11 | 11 | import com.sap.sse.datamining.annotations.Dimension; |
| 12 | 12 | import com.sap.sse.datamining.annotations.Statistic; |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/data/HasManeuver.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.datamining.data; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.Positioned; |
|
| 5 | 3 | import com.sap.sailing.domain.tracking.Maneuver; |
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | +import com.sap.sse.common.Positioned; |
|
| 6 | 6 | import com.sap.sse.common.TimePoint; |
| 7 | 7 | import com.sap.sse.common.Timed; |
| 8 | 8 | import com.sap.sse.datamining.annotations.Connector; |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/data/HasWind.java
| ... | ... | @@ -3,8 +3,8 @@ package com.sap.sailing.datamining.data; |
| 3 | 3 | import java.util.Locale; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.datamining.Activator; |
| 6 | -import com.sap.sailing.domain.common.Positioned; |
|
| 7 | 6 | import com.sap.sailing.domain.common.Wind; |
| 7 | +import com.sap.sse.common.Positioned; |
|
| 8 | 8 | import com.sap.sse.common.Timed; |
| 9 | 9 | import com.sap.sse.datamining.annotations.Dimension; |
| 10 | 10 | import com.sap.sse.datamining.data.Cluster; |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/data/HasWindFixContext.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.datamining.data; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.domain.common.Wind; |
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | 5 | import com.sap.sse.common.TimePoint; |
| 6 | 6 | import com.sap.sse.datamining.annotations.Connector; |
| 7 | 7 | import com.sap.sse.datamining.annotations.Dimension; |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/components/ManeuverSpeedDetailsRetrievalProcessor.java
| ... | ... | @@ -11,13 +11,13 @@ import com.sap.sailing.datamining.impl.data.ManeuverSpeedDetailsWithContext; |
| 11 | 11 | import com.sap.sailing.datamining.shared.ManeuverSpeedDetailsSettings; |
| 12 | 12 | import com.sap.sailing.domain.base.Competitor; |
| 13 | 13 | import com.sap.sailing.domain.common.NauticalSide; |
| 14 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 15 | 14 | import com.sap.sailing.domain.common.Wind; |
| 16 | 15 | import com.sap.sailing.domain.tracking.Maneuver; |
| 17 | 16 | import com.sap.sailing.domain.tracking.SpeedWithBearingStep; |
| 18 | 17 | import com.sap.sailing.domain.tracking.SpeedWithBearingStepsIterable; |
| 19 | 18 | import com.sap.sailing.domain.tracking.TrackedLegOfCompetitor; |
| 20 | 19 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 20 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 21 | 21 | import com.sap.sse.common.TimePoint; |
| 22 | 22 | import com.sap.sse.datamining.components.Processor; |
| 23 | 23 | import com.sap.sse.datamining.impl.components.AbstractRetrievalProcessor; |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/components/aggregators/ParallelBearingAverageDegreesAggregationProcessor.java
| ... | ... | @@ -6,8 +6,8 @@ import java.util.Map; |
| 6 | 6 | import java.util.Map.Entry; |
| 7 | 7 | import java.util.concurrent.ExecutorService; |
| 8 | 8 | |
| 9 | -import com.sap.sailing.domain.common.BearingCluster; |
|
| 10 | 9 | import com.sap.sse.common.Bearing; |
| 10 | +import com.sap.sse.common.BearingCluster; |
|
| 11 | 11 | import com.sap.sse.datamining.components.AggregationProcessorDefinition; |
| 12 | 12 | import com.sap.sse.datamining.components.Processor; |
| 13 | 13 | import com.sap.sse.datamining.impl.components.GroupedDataEntry; |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/components/aggregators/ParallelDistanceMedianAggregationProcessor.java
| ... | ... | @@ -9,8 +9,8 @@ import java.util.Map; |
| 9 | 9 | import java.util.Map.Entry; |
| 10 | 10 | import java.util.concurrent.ExecutorService; |
| 11 | 11 | |
| 12 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 13 | 12 | import com.sap.sse.common.Distance; |
| 13 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 14 | 14 | import com.sap.sse.datamining.components.AggregationProcessorDefinition; |
| 15 | 15 | import com.sap.sse.datamining.components.Processor; |
| 16 | 16 | import com.sap.sse.datamining.impl.components.GroupedDataEntry; |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/components/aggregators/ParallelSpeedMedianAggregationProcessor.java
| ... | ... | @@ -9,8 +9,8 @@ import java.util.Map; |
| 9 | 9 | import java.util.Map.Entry; |
| 10 | 10 | import java.util.concurrent.ExecutorService; |
| 11 | 11 | |
| 12 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 13 | 12 | import com.sap.sse.common.Speed; |
| 13 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 14 | 14 | import com.sap.sse.datamining.components.AggregationProcessorDefinition; |
| 15 | 15 | import com.sap.sse.datamining.components.Processor; |
| 16 | 16 | import com.sap.sse.datamining.impl.components.GroupedDataEntry; |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/components/aggregators/ParallelSpeedSumAggregationProcessor.java
| ... | ... | @@ -4,8 +4,8 @@ import java.util.Collection; |
| 4 | 4 | import java.util.Map; |
| 5 | 5 | import java.util.concurrent.ExecutorService; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 8 | 7 | import com.sap.sse.common.Speed; |
| 8 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 9 | 9 | import com.sap.sse.datamining.components.AggregationProcessorDefinition; |
| 10 | 10 | import com.sap.sse.datamining.components.Processor; |
| 11 | 11 | import com.sap.sse.datamining.impl.components.SimpleAggregationProcessorDefinition; |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/data/AbstractTrackedLegSliceOfCompetitorWithContext.java
| ... | ... | @@ -20,8 +20,6 @@ import com.sap.sailing.domain.base.Competitor; |
| 20 | 20 | import com.sap.sailing.domain.common.LegType; |
| 21 | 21 | import com.sap.sailing.domain.common.ManeuverType; |
| 22 | 22 | import com.sap.sailing.domain.common.NoWindException; |
| 23 | -import com.sap.sailing.domain.common.Position; |
|
| 24 | -import com.sap.sailing.domain.common.Positioned; |
|
| 25 | 23 | import com.sap.sailing.domain.leaderboard.Leaderboard; |
| 26 | 24 | import com.sap.sailing.domain.leaderboard.caching.LeaderboardDTOCalculationReuseCache; |
| 27 | 25 | import com.sap.sailing.domain.tracking.BravoFixTrack; |
| ... | ... | @@ -32,6 +30,8 @@ import com.sap.sailing.domain.tracking.TrackedRace; |
| 32 | 30 | import com.sap.sailing.domain.tracking.WindLegTypeAndLegBearingAndORCPerformanceCurveCache; |
| 33 | 31 | import com.sap.sse.common.Distance; |
| 34 | 32 | import com.sap.sse.common.Duration; |
| 33 | +import com.sap.sse.common.Position; |
|
| 34 | +import com.sap.sse.common.Positioned; |
|
| 35 | 35 | import com.sap.sse.common.Speed; |
| 36 | 36 | import com.sap.sse.common.TimePoint; |
| 37 | 37 | import com.sap.sse.common.TimeRange; |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/data/BravoFixWithContext.java
| ... | ... | @@ -3,8 +3,6 @@ package com.sap.sailing.datamining.impl.data; |
| 3 | 3 | import com.sap.sailing.datamining.data.HasBravoFixContext; |
| 4 | 4 | import com.sap.sailing.datamining.data.HasTrackedLegOfCompetitorContext; |
| 5 | 5 | import com.sap.sailing.domain.base.Competitor; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 8 | 6 | import com.sap.sailing.domain.common.Wind; |
| 9 | 7 | import com.sap.sailing.domain.common.tracking.BravoFix; |
| 10 | 8 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -12,7 +10,9 @@ import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 12 | 10 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 13 | 11 | import com.sap.sailing.domain.tracking.WindPositionMode; |
| 14 | 12 | import com.sap.sse.common.Bearing; |
| 13 | +import com.sap.sse.common.Position; |
|
| 15 | 14 | import com.sap.sse.common.Speed; |
| 15 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 16 | 16 | import com.sap.sse.common.TimePoint; |
| 17 | 17 | |
| 18 | 18 | /** |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/data/CompleteManeuverCurveWithEstimationDataWithContext.java
| ... | ... | @@ -5,11 +5,11 @@ import com.sap.sailing.datamining.data.HasRaceOfCompetitorContext; |
| 5 | 5 | import com.sap.sailing.datamining.shared.ManeuverSettings; |
| 6 | 6 | import com.sap.sailing.domain.common.ManeuverType; |
| 7 | 7 | import com.sap.sailing.domain.common.NauticalSide; |
| 8 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 9 | 8 | import com.sap.sailing.domain.maneuverdetection.CompleteManeuverCurveWithEstimationData; |
| 10 | 9 | import com.sap.sailing.domain.tracking.ManeuverCurveBoundaries; |
| 11 | 10 | import com.sap.sse.common.Bearing; |
| 12 | 11 | import com.sap.sse.common.Duration; |
| 12 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 13 | 13 | import com.sap.sse.common.TimePoint; |
| 14 | 14 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 15 | 15 | import com.sap.sse.datamining.shared.impl.dto.ClusterDTO; |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/data/FoilingSegmentWithContext.java
| ... | ... | @@ -7,10 +7,8 @@ import com.sap.sailing.datamining.Activator; |
| 7 | 7 | import com.sap.sailing.datamining.data.HasBravoFixTrackContext; |
| 8 | 8 | import com.sap.sailing.datamining.data.HasFoilingSegmentContext; |
| 9 | 9 | import com.sap.sailing.domain.base.Competitor; |
| 10 | -import com.sap.sailing.domain.common.BearingCluster; |
|
| 11 | 10 | import com.sap.sailing.domain.common.LegType; |
| 12 | 11 | import com.sap.sailing.domain.common.NoWindException; |
| 13 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 14 | 12 | import com.sap.sailing.domain.common.Wind; |
| 15 | 13 | import com.sap.sailing.domain.common.tracking.BravoFix; |
| 16 | 14 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -18,8 +16,10 @@ import com.sap.sailing.domain.tracking.BravoFixTrack; |
| 18 | 16 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 19 | 17 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 20 | 18 | import com.sap.sse.common.Bearing; |
| 19 | +import com.sap.sse.common.BearingCluster; |
|
| 21 | 20 | import com.sap.sse.common.Distance; |
| 22 | 21 | import com.sap.sse.common.Duration; |
| 22 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 23 | 23 | import com.sap.sse.common.TimePoint; |
| 24 | 24 | import com.sap.sse.datamining.data.Cluster; |
| 25 | 25 | import com.sap.sse.datamining.shared.impl.dto.ClusterDTO; |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/data/GPSFixWithContext.java
| ... | ... | @@ -5,8 +5,6 @@ import java.util.function.BiFunction; |
| 5 | 5 | import com.sap.sailing.datamining.data.HasGPSFixContext; |
| 6 | 6 | import com.sap.sailing.datamining.data.HasTrackedLegOfCompetitorContext; |
| 7 | 7 | import com.sap.sailing.domain.common.NoWindException; |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 10 | 8 | import com.sap.sailing.domain.common.TackType; |
| 11 | 9 | import com.sap.sailing.domain.common.Wind; |
| 12 | 10 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -15,7 +13,9 @@ import com.sap.sailing.domain.tracking.TrackedRace; |
| 15 | 13 | import com.sap.sailing.domain.tracking.WindPositionMode; |
| 16 | 14 | import com.sap.sse.common.Bearing; |
| 17 | 15 | import com.sap.sse.common.Distance; |
| 16 | +import com.sap.sse.common.Position; |
|
| 18 | 17 | import com.sap.sse.common.Speed; |
| 18 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 19 | 19 | import com.sap.sse.common.TimePoint; |
| 20 | 20 | |
| 21 | 21 | /** |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/data/ManeuverWithContext.java
| ... | ... | @@ -4,10 +4,8 @@ import com.sap.sailing.datamining.data.HasManeuverContext; |
| 4 | 4 | import com.sap.sailing.datamining.data.HasTrackedLegOfCompetitorContext; |
| 5 | 5 | import com.sap.sailing.domain.base.Competitor; |
| 6 | 6 | import com.sap.sailing.domain.common.ManeuverType; |
| 7 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 8 | 7 | import com.sap.sailing.domain.common.Tack; |
| 9 | 8 | import com.sap.sailing.domain.common.Wind; |
| 10 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 11 | 9 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 12 | 10 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 13 | 11 | import com.sap.sailing.domain.tracking.Maneuver; |
| ... | ... | @@ -15,8 +13,10 @@ import com.sap.sailing.domain.tracking.ManeuverCurveBoundaries; |
| 15 | 13 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 16 | 14 | import com.sap.sse.common.Distance; |
| 17 | 15 | import com.sap.sse.common.Speed; |
| 16 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 18 | 17 | import com.sap.sse.common.TimePoint; |
| 19 | 18 | import com.sap.sse.common.Util.Pair; |
| 19 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 20 | 20 | |
| 21 | 21 | /** |
| 22 | 22 | * Equality is based on the {@link #getManeuver() maneuver} only. |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/data/RaceOfCompetitorWithContext.java
| ... | ... | @@ -24,7 +24,6 @@ import com.sap.sailing.domain.base.Waypoint; |
| 24 | 24 | import com.sap.sailing.domain.common.ManeuverType; |
| 25 | 25 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 26 | 26 | import com.sap.sailing.domain.common.NoWindException; |
| 27 | -import com.sap.sailing.domain.common.Position; |
|
| 28 | 27 | import com.sap.sailing.domain.common.Tack; |
| 29 | 28 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 30 | 29 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -41,6 +40,7 @@ import com.sap.sailing.domain.tracking.WindPositionMode; |
| 41 | 40 | import com.sap.sse.common.Bearing; |
| 42 | 41 | import com.sap.sse.common.Distance; |
| 43 | 42 | import com.sap.sse.common.Duration; |
| 43 | +import com.sap.sse.common.Position; |
|
| 44 | 44 | import com.sap.sse.common.Speed; |
| 45 | 45 | import com.sap.sse.common.TimePoint; |
| 46 | 46 | import com.sap.sse.common.Util; |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/data/RaceResultOfCompetitorWithContext.java
| ... | ... | @@ -18,10 +18,7 @@ import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 18 | 18 | import com.sap.sailing.domain.common.LegType; |
| 19 | 19 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 20 | 20 | import com.sap.sailing.domain.common.NoWindException; |
| 21 | -import com.sap.sailing.domain.common.Position; |
|
| 22 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 23 | 21 | import com.sap.sailing.domain.common.Tack; |
| 24 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableSpeed; |
|
| 25 | 22 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 26 | 23 | import com.sap.sailing.domain.leaderboard.Leaderboard; |
| 27 | 24 | import com.sap.sailing.domain.leaderboard.caching.LeaderboardDTOCalculationReuseCache; |
| ... | ... | @@ -31,11 +28,14 @@ import com.sap.sailing.domain.tracking.TrackedLegOfCompetitor; |
| 31 | 28 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 32 | 29 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 33 | 30 | import com.sap.sse.common.Duration; |
| 31 | +import com.sap.sse.common.Position; |
|
| 34 | 32 | import com.sap.sse.common.Speed; |
| 33 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 35 | 34 | import com.sap.sse.common.TimePoint; |
| 36 | 35 | import com.sap.sse.common.Util; |
| 37 | 36 | import com.sap.sse.common.Util.Pair; |
| 38 | 37 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 38 | +import com.sap.sse.common.scalablevalue.impl.ScalableSpeed; |
|
| 39 | 39 | import com.sap.sse.datamining.data.Cluster; |
| 40 | 40 | import com.sap.sse.datamining.shared.impl.dto.ClusterDTO; |
| 41 | 41 |
java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/data/TrackedRaceWithContext.java
| ... | ... | @@ -31,7 +31,6 @@ import com.sap.sailing.domain.base.Regatta; |
| 31 | 31 | import com.sap.sailing.domain.common.LegType; |
| 32 | 32 | import com.sap.sailing.domain.common.NauticalSide; |
| 33 | 33 | import com.sap.sailing.domain.common.NoWindException; |
| 34 | -import com.sap.sailing.domain.common.Position; |
|
| 35 | 34 | import com.sap.sailing.domain.common.WindSource; |
| 36 | 35 | import com.sap.sailing.domain.common.WindSourceType; |
| 37 | 36 | import com.sap.sailing.domain.shared.tracking.LineDetails; |
| ... | ... | @@ -42,6 +41,7 @@ import com.sap.sailing.geocoding.ReverseGeocoder; |
| 42 | 41 | import com.sap.sse.common.Bearing; |
| 43 | 42 | import com.sap.sse.common.Distance; |
| 44 | 43 | import com.sap.sse.common.Duration; |
| 44 | +import com.sap.sse.common.Position; |
|
| 45 | 45 | import com.sap.sse.common.TimePoint; |
| 46 | 46 | import com.sap.sse.common.Util; |
| 47 | 47 | import com.sap.sse.common.impl.DegreeBearingImpl; |
java/com.sap.sailing.declination.test/src/com/sap/sailing/declination/impl/WMMFileTest.java
| ... | ... | @@ -14,8 +14,8 @@ import org.junit.jupiter.api.Test; |
| 14 | 14 | |
| 15 | 15 | import com.sap.sailing.declination.Declination; |
| 16 | 16 | import com.sap.sailing.declination.DeclinationService; |
| 17 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 18 | 17 | import com.sap.sse.common.TimePoint; |
| 18 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 19 | 19 | |
| 20 | 20 | public class WMMFileTest { |
| 21 | 21 | private static Geomagnetism g; |
java/com.sap.sailing.declination.test/src/com/sap/sailing/declination/test/BGSDeclinationServiceTest.java
| ... | ... | @@ -11,7 +11,7 @@ import org.junit.jupiter.api.Test; |
| 11 | 11 | |
| 12 | 12 | import com.sap.sailing.declination.Declination; |
| 13 | 13 | import com.sap.sailing.declination.impl.BGSImporter; |
| 14 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 14 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 15 | 15 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 16 | 16 | |
| 17 | 17 | public class BGSDeclinationServiceTest extends DeclinationServiceTest<BGSImporter> { |
java/com.sap.sailing.declination.test/src/com/sap/sailing/declination/test/ColoradoDeclinationServiceTest.java
| ... | ... | @@ -12,7 +12,7 @@ import org.junit.jupiter.api.Test; |
| 12 | 12 | |
| 13 | 13 | import com.sap.sailing.declination.Declination; |
| 14 | 14 | import com.sap.sailing.declination.impl.ColoradoImporter; |
| 15 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 15 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 16 | 16 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 17 | 17 | |
| 18 | 18 | @Disabled("currently, http://magcalc.geomag.info/ seems down") |
java/com.sap.sailing.declination.test/src/com/sap/sailing/declination/test/ColoradoTest.java
| ... | ... | @@ -15,7 +15,7 @@ import org.xml.sax.SAXException; |
| 15 | 15 | |
| 16 | 16 | import com.sap.sailing.declination.Declination; |
| 17 | 17 | import com.sap.sailing.declination.impl.ColoradoImporter; |
| 18 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 18 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 19 | 19 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 20 | 20 | |
| 21 | 21 | @Disabled("currently, http://magcalc.geomag.info/ seems down") |
java/com.sap.sailing.declination.test/src/com/sap/sailing/declination/test/DeclinationImportTest.java
| ... | ... | @@ -13,7 +13,7 @@ import org.xml.sax.SAXException; |
| 13 | 13 | |
| 14 | 14 | import com.sap.sailing.declination.Declination; |
| 15 | 15 | import com.sap.sailing.declination.impl.DeclinationImporter; |
| 16 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 16 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 17 | 17 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 18 | 18 | |
| 19 | 19 | public abstract class DeclinationImportTest<I extends DeclinationImporter> extends AbstractDeclinationTest<I> { |
java/com.sap.sailing.declination.test/src/com/sap/sailing/declination/test/DeclinationServiceTest.java
| ... | ... | @@ -14,8 +14,8 @@ import com.sap.sailing.declination.Declination; |
| 14 | 14 | import com.sap.sailing.declination.DeclinationService; |
| 15 | 15 | import com.sap.sailing.declination.impl.DeclinationImporter; |
| 16 | 16 | import com.sap.sailing.declination.impl.DeclinationServiceImplWithStore; |
| 17 | -import com.sap.sailing.domain.common.impl.CentralAngleDistance; |
|
| 18 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 17 | +import com.sap.sse.common.impl.CentralAngleDistance; |
|
| 18 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 19 | 19 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 20 | 20 | |
| 21 | 21 | public abstract class DeclinationServiceTest<I extends DeclinationImporter> extends AbstractDeclinationTest<I> { |
java/com.sap.sailing.declination.test/src/com/sap/sailing/declination/test/DeclinationStoreTest.java
| ... | ... | @@ -31,12 +31,12 @@ import com.sap.sailing.declination.Declination; |
| 31 | 31 | import com.sap.sailing.declination.impl.DeclinationImporter; |
| 32 | 32 | import com.sap.sailing.declination.impl.DeclinationRecordImpl; |
| 33 | 33 | import com.sap.sailing.declination.impl.DeclinationStore; |
| 34 | -import com.sap.sailing.domain.common.Position; |
|
| 35 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 36 | 34 | import com.sap.sailing.domain.common.quadtree.QuadTree; |
| 37 | 35 | import com.sap.sse.common.Bearing; |
| 36 | +import com.sap.sse.common.Position; |
|
| 38 | 37 | import com.sap.sse.common.TimePoint; |
| 39 | 38 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 39 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 40 | 40 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 41 | 41 | |
| 42 | 42 | public abstract class DeclinationStoreTest<I extends DeclinationImporter> extends AbstractDeclinationTest<I> { |
java/com.sap.sailing.declination.test/src/com/sap/sailing/declination/test/SimpleDeclinationTest.java
| ... | ... | @@ -12,10 +12,10 @@ import org.xml.sax.SAXException; |
| 12 | 12 | |
| 13 | 13 | import com.sap.sailing.declination.Declination; |
| 14 | 14 | import com.sap.sailing.declination.impl.DeclinationImporter; |
| 15 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 16 | 15 | import com.sap.sse.common.Bearing; |
| 17 | 16 | import com.sap.sse.common.Duration; |
| 18 | 17 | import com.sap.sse.common.TimePoint; |
| 18 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 19 | 19 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 20 | 20 | |
| 21 | 21 | public abstract class SimpleDeclinationTest<I extends DeclinationImporter> extends AbstractDeclinationTest<I> { |
java/com.sap.sailing.declination.test/src/com/sap/sailing/declination/test/WMMDeclinationServiceTest.java
| ... | ... | @@ -12,7 +12,7 @@ import org.junit.jupiter.api.Test; |
| 12 | 12 | |
| 13 | 13 | import com.sap.sailing.declination.Declination; |
| 14 | 14 | import com.sap.sailing.declination.impl.WMMCalculatorDeclinationService; |
| 15 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 15 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 16 | 16 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 17 | 17 | |
| 18 | 18 | public class WMMDeclinationServiceTest { |
java/com.sap.sailing.declination/src/com/sap/sailing/declination/Declination.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.declination; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sse.common.Bearing; |
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | 5 | import com.sap.sse.common.TimePoint; |
| 6 | 6 | import com.sap.sse.common.Timed; |
| 7 | 7 |
java/com.sap.sailing.declination/src/com/sap/sailing/declination/DeclinationService.java
| ... | ... | @@ -5,9 +5,9 @@ import java.text.ParseException; |
| 5 | 5 | |
| 6 | 6 | import com.sap.sailing.declination.impl.DeclinationImporter; |
| 7 | 7 | import com.sap.sailing.declination.impl.WMMCalculatorDeclinationService; |
| 8 | -import com.sap.sailing.domain.common.Mile; |
|
| 9 | -import com.sap.sailing.domain.common.Position; |
|
| 10 | 8 | import com.sap.sse.common.Distance; |
| 9 | +import com.sap.sse.common.Mile; |
|
| 10 | +import com.sap.sse.common.Position; |
|
| 11 | 11 | import com.sap.sse.common.TimePoint; |
| 12 | 12 | |
| 13 | 13 | public interface DeclinationService { |
java/com.sap.sailing.declination/src/com/sap/sailing/declination/impl/AbstractDeclinationRecord.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.declination.impl; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.declination.Declination; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 4 | import com.sap.sse.common.Bearing; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | 6 | import com.sap.sse.common.TimePoint; |
| 7 | 7 | |
| 8 | 8 | public abstract class AbstractDeclinationRecord implements Declination { |
java/com.sap.sailing.declination/src/com/sap/sailing/declination/impl/BGSImporter.java
| ... | ... | @@ -18,10 +18,10 @@ import org.xml.sax.SAXException; |
| 18 | 18 | import org.xml.sax.helpers.DefaultHandler; |
| 19 | 19 | |
| 20 | 20 | import com.sap.sailing.declination.Declination; |
| 21 | -import com.sap.sailing.domain.common.Position; |
|
| 22 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 21 | +import com.sap.sse.common.Position; |
|
| 23 | 22 | import com.sap.sse.common.TimePoint; |
| 24 | 23 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 24 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 25 | 25 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 26 | 26 | |
| 27 | 27 | /** |
java/com.sap.sailing.declination/src/com/sap/sailing/declination/impl/ColoradoImporter.java
| ... | ... | @@ -15,10 +15,10 @@ import org.xml.sax.SAXException; |
| 15 | 15 | import org.xml.sax.helpers.DefaultHandler; |
| 16 | 16 | |
| 17 | 17 | import com.sap.sailing.declination.Declination; |
| 18 | -import com.sap.sailing.domain.common.Position; |
|
| 19 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 18 | +import com.sap.sse.common.Position; |
|
| 20 | 19 | import com.sap.sse.common.TimePoint; |
| 21 | 20 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 21 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 22 | 22 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 23 | 23 | |
| 24 | 24 | /** |
java/com.sap.sailing.declination/src/com/sap/sailing/declination/impl/DeclinationImporter.java
| ... | ... | @@ -14,7 +14,7 @@ import javax.xml.parsers.ParserConfigurationException; |
| 14 | 14 | import org.xml.sax.SAXException; |
| 15 | 15 | |
| 16 | 16 | import com.sap.sailing.declination.Declination; |
| 17 | -import com.sap.sailing.domain.common.Position; |
|
| 17 | +import com.sap.sse.common.Position; |
|
| 18 | 18 | import com.sap.sse.common.TimePoint; |
| 19 | 19 | import com.sap.sse.util.ThreadPoolUtil; |
| 20 | 20 |
java/com.sap.sailing.declination/src/com/sap/sailing/declination/impl/DeclinationRecordForExactTimePoint.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.declination.impl; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.declination.Declination; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 4 | import com.sap.sse.common.Bearing; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | 6 | import com.sap.sse.common.TimePoint; |
| 7 | 7 | import com.sap.sse.common.Util; |
| 8 | 8 |
java/com.sap.sailing.declination/src/com/sap/sailing/declination/impl/DeclinationRecordImpl.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.declination.impl; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.declination.Declination; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 4 | import com.sap.sse.common.Bearing; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | 6 | import com.sap.sse.common.TimePoint; |
| 7 | 7 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 8 | 8 |
java/com.sap.sailing.declination/src/com/sap/sailing/declination/impl/DeclinationServiceImplWithStore.java
| ... | ... | @@ -9,9 +9,9 @@ import java.util.Map; |
| 9 | 9 | |
| 10 | 10 | import com.sap.sailing.declination.Declination; |
| 11 | 11 | import com.sap.sailing.declination.DeclinationService; |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | 12 | import com.sap.sailing.domain.common.quadtree.QuadTree; |
| 14 | 13 | import com.sap.sse.common.Distance; |
| 14 | +import com.sap.sse.common.Position; |
|
| 15 | 15 | import com.sap.sse.common.TimePoint; |
| 16 | 16 | |
| 17 | 17 | public class DeclinationServiceImplWithStore implements DeclinationService { |
java/com.sap.sailing.declination/src/com/sap/sailing/declination/impl/DeclinationStore.java
| ... | ... | @@ -19,12 +19,12 @@ import javax.xml.parsers.ParserConfigurationException; |
| 19 | 19 | import org.xml.sax.SAXException; |
| 20 | 20 | |
| 21 | 21 | import com.sap.sailing.declination.Declination; |
| 22 | -import com.sap.sailing.domain.common.Position; |
|
| 23 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 24 | 22 | import com.sap.sailing.domain.common.quadtree.QuadTree; |
| 25 | 23 | import com.sap.sse.common.Bearing; |
| 24 | +import com.sap.sse.common.Position; |
|
| 26 | 25 | import com.sap.sse.common.TimePoint; |
| 27 | 26 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 27 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 28 | 28 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 29 | 29 | |
| 30 | 30 | /** |
java/com.sap.sailing.declination/src/com/sap/sailing/declination/impl/NOAAImporter.java
| ... | ... | @@ -17,7 +17,7 @@ import org.w3c.dom.Element; |
| 17 | 17 | import org.xml.sax.SAXException; |
| 18 | 18 | |
| 19 | 19 | import com.sap.sailing.declination.Declination; |
| 20 | -import com.sap.sailing.domain.common.Position; |
|
| 20 | +import com.sap.sse.common.Position; |
|
| 21 | 21 | import com.sap.sse.common.TimePoint; |
| 22 | 22 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 23 | 23 | import com.sap.sse.util.XmlUtil; |
java/com.sap.sailing.declination/src/com/sap/sailing/declination/impl/WMMCalculatorDeclinationService.java
| ... | ... | @@ -10,8 +10,8 @@ import java.util.TreeMap; |
| 10 | 10 | import com.sap.sailing.declination.Declination; |
| 11 | 11 | import com.sap.sailing.declination.DeclinationService; |
| 12 | 12 | import com.sap.sailing.declination.impl.Geomagnetism.Result; |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | 13 | import com.sap.sse.common.Distance; |
| 14 | +import com.sap.sse.common.Position; |
|
| 15 | 15 | import com.sap.sse.common.TimePoint; |
| 16 | 16 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 17 | 17 |
java/com.sap.sailing.domain.bravoadapter/src/com/sap/sailing/domain/bravoadapter/impl/BravoGPSFixImporter.java
| ... | ... | @@ -11,8 +11,6 @@ import java.util.logging.Level; |
| 11 | 11 | import java.util.logging.Logger; |
| 12 | 12 | |
| 13 | 13 | import com.sap.sailing.declination.DeclinationService; |
| 14 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 15 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 16 | 14 | import com.sap.sailing.domain.common.sensordata.BravoExtendedSensorDataMetadata; |
| 17 | 15 | import com.sap.sailing.domain.common.tracking.DoubleVectorFix; |
| 18 | 16 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -25,6 +23,8 @@ import com.sap.sailing.server.gateway.windimport.bravo.FunnyDegreeConverter; |
| 25 | 23 | import com.sap.sailing.server.trackfiles.impl.BravoExtendedDataImporterImpl; |
| 26 | 24 | import com.sap.sse.common.Bearing; |
| 27 | 25 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 26 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 27 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 28 | 28 | |
| 29 | 29 | public class BravoGPSFixImporter implements GPSFixImporter { |
| 30 | 30 | private static final Logger logger = Logger.getLogger(BravoGPSFixImporter.class.getName()); |
java/com.sap.sailing.domain.common/.settings/org.eclipse.core.resources.prefs
| ... | ... | @@ -1,10 +1,6 @@ |
| 1 | 1 | eclipse.preferences.version=1 |
| 2 | -encoding//src/com/sap/sailing/domain/common/AbstractPosition.java=UTF-8 |
|
| 3 | 2 | encoding//src/com/sap/sailing/domain/common/BoatClassMasterdata.java=UTF-8 |
| 4 | 3 | encoding//src/com/sap/sailing/domain/common/LegType.java=UTF-8 |
| 5 | -encoding//src/com/sap/sailing/domain/common/Position.java=UTF-8 |
|
| 6 | -encoding//src/com/sap/sailing/domain/common/confidence/impl/ConfidenceBasedAveragerImpl.java=utf-8 |
|
| 7 | -encoding//src/com/sap/sailing/domain/common/impl/AbstractSpeedWithAbstractBearingImpl.java=UTF-8 |
|
| 8 | 4 | encoding//src/com/sap/sailing/domain/common/orc/impl/ORCPerformanceCurveLegImpl.java=UTF-8 |
| 9 | 5 | encoding//src/com/sap/sailing/domain/common/tracking/impl/AbstractCompactGPSFixMovingImpl.java=UTF-8 |
| 10 | 6 | encoding//src/com/sap/sailing/domain/common/tracking/impl/CompactPositionHelper.java=UTF-8 |
java/com.sap.sailing.domain.common/META-INF/MANIFEST.MF
| ... | ... | @@ -8,7 +8,6 @@ Bundle-RequiredExecutionEnvironment: JavaSE-1.8 |
| 8 | 8 | Bundle-ActivationPolicy: lazy |
| 9 | 9 | Export-Package: com.sap.sailing.domain.common, |
| 10 | 10 | com.sap.sailing.domain.common.abstractlog, |
| 11 | - com.sap.sailing.domain.common.confidence, |
|
| 12 | 11 | com.sap.sailing.domain.common.confidence.impl, |
| 13 | 12 | com.sap.sailing.domain.common.dto, |
| 14 | 13 | com.sap.sailing.domain.common.i18n, |
| ... | ... | @@ -22,7 +21,6 @@ Export-Package: com.sap.sailing.domain.common, |
| 22 | 21 | com.sap.sailing.domain.common.racelog, |
| 23 | 22 | com.sap.sailing.domain.common.racelog.tracking, |
| 24 | 23 | com.sap.sailing.domain.common.racelog.utils, |
| 25 | - com.sap.sailing.domain.common.scalablevalue.impl, |
|
| 26 | 24 | com.sap.sailing.domain.common.security, |
| 27 | 25 | com.sap.sailing.domain.common.subscription, |
| 28 | 26 | com.sap.sailing.domain.common.sensordata, |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/AbstractDistance.java
| ... | ... | @@ -1,110 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 4 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 5 | -import com.sap.sse.common.Distance; |
|
| 6 | -import com.sap.sse.common.Duration; |
|
| 7 | -import com.sap.sse.common.Speed; |
|
| 8 | -import com.sap.sse.common.impl.SecondsDurationImpl; |
|
| 9 | - |
|
| 10 | -public abstract class AbstractDistance implements Distance { |
|
| 11 | - |
|
| 12 | - private static final long serialVersionUID = 4393500221539639333L; |
|
| 13 | - |
|
| 14 | - @Override |
|
| 15 | - public boolean equals(Object o) { |
|
| 16 | - return (o instanceof Distance) && this.compareTo((Distance) o) == 0; |
|
| 17 | - } |
|
| 18 | - |
|
| 19 | - @Override |
|
| 20 | - public int hashCode() { |
|
| 21 | - return 9128347 ^ (int) getMeters(); |
|
| 22 | - } |
|
| 23 | - |
|
| 24 | - @Override |
|
| 25 | - public int compareTo(Distance o) { |
|
| 26 | - final double meters = getMeters(); |
|
| 27 | - final double otherMeters = o.getMeters(); |
|
| 28 | - return meters > otherMeters ? 1 : meters == otherMeters ? 0 : -1; |
|
| 29 | - } |
|
| 30 | - |
|
| 31 | - private Speed inSeconds(double seconds) { |
|
| 32 | - return new KilometersPerHourSpeedImpl(getKilometers() * 3600 / seconds); |
|
| 33 | - } |
|
| 34 | - |
|
| 35 | - @Override |
|
| 36 | - public Speed inTime(long milliseconds) { |
|
| 37 | - return new KilometersPerHourSpeedImpl(getKilometers() * 1000. * 3600. / milliseconds); |
|
| 38 | - } |
|
| 39 | - |
|
| 40 | - @Override |
|
| 41 | - public Speed inTime(Duration duration) { |
|
| 42 | - return inSeconds(duration.asSeconds()); |
|
| 43 | - } |
|
| 44 | - |
|
| 45 | - @Override |
|
| 46 | - public Duration atSpeed(Speed speed) { |
|
| 47 | - return new SecondsDurationImpl(getMeters() / speed.getMetersPerSecond()); |
|
| 48 | - } |
|
| 49 | - |
|
| 50 | - @Override |
|
| 51 | - public double getNauticalMiles() { |
|
| 52 | - return getMeters() / Mile.METERS_PER_NAUTICAL_MILE; |
|
| 53 | - } |
|
| 54 | - |
|
| 55 | - @Override |
|
| 56 | - public double getMeters() { |
|
| 57 | - return getNauticalMiles() * Mile.METERS_PER_NAUTICAL_MILE; |
|
| 58 | - } |
|
| 59 | - |
|
| 60 | - @Override |
|
| 61 | - public double getKilometers() { |
|
| 62 | - return getMeters() / 1000; |
|
| 63 | - } |
|
| 64 | - |
|
| 65 | - @Override |
|
| 66 | - public double getGeographicalMiles() { |
|
| 67 | - return getMeters() / Mile.METERS_PER_GEOGRAPHICAL_MILE; |
|
| 68 | - } |
|
| 69 | - |
|
| 70 | - @Override |
|
| 71 | - public double getSeaMiles() { |
|
| 72 | - return getMeters() / Mile.METERS_PER_SEA_MILE; |
|
| 73 | - } |
|
| 74 | - |
|
| 75 | - @Override |
|
| 76 | - public double getCentralAngleDeg() { |
|
| 77 | - return getCentralAngleRad() / Math.PI * 180.; // one geographical mile equals one minute |
|
| 78 | - } |
|
| 79 | - |
|
| 80 | - @Override |
|
| 81 | - public double getCentralAngleRad() { |
|
| 82 | - return getCentralAngleDeg() * Math.PI / 180.; |
|
| 83 | - } |
|
| 84 | - |
|
| 85 | - @Override |
|
| 86 | - public String toString() { |
|
| 87 | - return getMeters()+"m"; |
|
| 88 | - } |
|
| 89 | - |
|
| 90 | - @Override |
|
| 91 | - public Distance add(Distance d) { |
|
| 92 | - return new NauticalMileDistance(getNauticalMiles()+d.getNauticalMiles()); |
|
| 93 | - } |
|
| 94 | - |
|
| 95 | - @Override |
|
| 96 | - public double divide(Distance other) { |
|
| 97 | - return getMeters() / other.getMeters(); |
|
| 98 | - } |
|
| 99 | - |
|
| 100 | - @Override |
|
| 101 | - public Distance abs() { |
|
| 102 | - final Distance result; |
|
| 103 | - if (getMeters() >= 0) { |
|
| 104 | - result = this; |
|
| 105 | - } else { |
|
| 106 | - result = scale(-1); |
|
| 107 | - } |
|
| 108 | - return result; |
|
| 109 | - } |
|
| 110 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/AbstractPosition.java
| ... | ... | @@ -1,284 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.impl.CentralAngleDistance; |
|
| 4 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 5 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 6 | -import com.sap.sailing.domain.common.impl.RadianBearingImpl; |
|
| 7 | -import com.sap.sailing.domain.common.impl.RadianPosition; |
|
| 8 | -import com.sap.sse.common.Bearing; |
|
| 9 | -import com.sap.sse.common.Distance; |
|
| 10 | -import com.sap.sse.common.Duration; |
|
| 11 | -import com.sap.sse.common.Speed; |
|
| 12 | -import com.sap.sse.common.Util; |
|
| 13 | -import com.sap.sse.common.impl.DegreeBearingImpl; |
|
| 14 | -import com.sap.sse.common.util.RoundingUtil; |
|
| 15 | - |
|
| 16 | -public class AbstractPosition implements Position { |
|
| 17 | - private static final long serialVersionUID = -3057027562787541064L; |
|
| 18 | - |
|
| 19 | - public int hashCode() { |
|
| 20 | - return (int) (4711. * getLngRad() * getLatRad()); |
|
| 21 | - } |
|
| 22 | - |
|
| 23 | - public boolean equals(Object o) { |
|
| 24 | - if (o == null) { |
|
| 25 | - return false; |
|
| 26 | - } if (this == o) { |
|
| 27 | - return true; |
|
| 28 | - } else { |
|
| 29 | - return o instanceof Position && getLatRad() == ((Position) o).getLatRad() |
|
| 30 | - && getLngRad() == ((Position) o).getLngRad(); |
|
| 31 | - } |
|
| 32 | - } |
|
| 33 | - |
|
| 34 | - @Override |
|
| 35 | - public double getLngRad() { |
|
| 36 | - return getLngDeg() / 180. * Math.PI; |
|
| 37 | - } |
|
| 38 | - |
|
| 39 | - @Override |
|
| 40 | - public double getLatRad() { |
|
| 41 | - return getLatDeg() / 180. * Math.PI; |
|
| 42 | - } |
|
| 43 | - |
|
| 44 | - @Override |
|
| 45 | - public double getLatDeg() { |
|
| 46 | - return getLatRad() / Math.PI * 180.; |
|
| 47 | - } |
|
| 48 | - |
|
| 49 | - @Override |
|
| 50 | - public double getLngDeg() { |
|
| 51 | - return getLngRad() / Math.PI * 180.; |
|
| 52 | - } |
|
| 53 | - |
|
| 54 | - @Override |
|
| 55 | - public double getCentralAngleRad(Position p) { |
|
| 56 | - // Sinnott: |
|
| 57 | - double dLat = p.getLatRad() - getLatRad(); |
|
| 58 | - double dLon = p.getLngRad() - getLngRad(); |
|
| 59 | - double a = Math.sin(dLat / 2.) * Math.sin(dLat / 2.) + Math.cos(getLatRad()) * Math.cos(p.getLatRad()) |
|
| 60 | - * Math.sin(dLon / 2.) * Math.sin(dLon / 2.); |
|
| 61 | - return 2. * Math.atan2(Math.sqrt(a), Math.sqrt(1. - a)); |
|
| 62 | - // Spherical Law of Cosines; simpler formula, but doesn't work well for very small distances |
|
| 63 | - // return Math.acos(Math.sin(getLatRad()) * Math.sin(p.getLatRad()) |
|
| 64 | - // + Math.cos(getLatRad()) * Math.cos(p.getLatRad()) |
|
| 65 | - // * Math.cos(p.getLngRad() - getLngRad())); |
|
| 66 | - } |
|
| 67 | - |
|
| 68 | - @Override |
|
| 69 | - public Distance getDistance(Position p) { |
|
| 70 | - final Distance result; |
|
| 71 | - if (p == this || this.equals(p)) { |
|
| 72 | - result = Distance.NULL; |
|
| 73 | - } else { |
|
| 74 | - result = new CentralAngleDistance(getCentralAngleRad(p)); |
|
| 75 | - } |
|
| 76 | - return result; |
|
| 77 | - } |
|
| 78 | - |
|
| 79 | - @Override |
|
| 80 | - public double getQuickApproximateNauticalMileDistance(Position p) { |
|
| 81 | - double latDeg = getLatDeg(); |
|
| 82 | - double pLatDeg = p.getLatDeg(); |
|
| 83 | - final double latDiffDeg = Math.abs(latDeg - pLatDeg); |
|
| 84 | - double cosineOfAverageLatitude = Math.cos((latDeg+pLatDeg)/2./180.*Math.PI); |
|
| 85 | - final double normalizedLngDiffDeg = cosineOfAverageLatitude * Math.abs(getLngDeg() - p.getLngDeg()); |
|
| 86 | - // One degree of latitude or one degree of longitude at the equator each correspond to 60 nautical miles. |
|
| 87 | - return Math.sqrt(latDiffDeg*latDiffDeg + normalizedLngDiffDeg*normalizedLngDiffDeg) * 60.; |
|
| 88 | - } |
|
| 89 | - |
|
| 90 | - @Override |
|
| 91 | - public Bearing getBearingGreatCircle(Position p) { |
|
| 92 | - final Bearing bearing; |
|
| 93 | - if (p != null) { |
|
| 94 | - double result = Math.atan2(Math.sin(p.getLngRad() - getLngRad()) * Math.cos(p.getLatRad()), |
|
| 95 | - Math.cos(getLatRad()) * Math.sin(p.getLatRad()) |
|
| 96 | - - Math.sin(getLatRad()) * Math.cos(p.getLatRad()) * Math.cos(p.getLngRad() - getLngRad())); |
|
| 97 | - if (result < 0) { |
|
| 98 | - result = result + 2 * Math.PI; |
|
| 99 | - } |
|
| 100 | - bearing = new RadianBearingImpl(result); |
|
| 101 | - } else { |
|
| 102 | - bearing = null; |
|
| 103 | - } |
|
| 104 | - return bearing; |
|
| 105 | - } |
|
| 106 | - |
|
| 107 | - @Override |
|
| 108 | - public Position translateRhumb(Bearing bearing, Distance distance) { |
|
| 109 | - /* |
|
| 110 | - * This algorithm is limited to distances such that dlon < pi/2, i.e those that extend around less than one |
|
| 111 | - * quarter of the circumference of the earth in longitude. A completely general, but more complicated algorithm |
|
| 112 | - * is necessary if greater distances are allowed. |
|
| 113 | - */ |
|
| 114 | - double distanceRad = distance.getKilometers() / 6371.0; // r = 6371 means earth's radius in km |
|
| 115 | - double lat1 = getLatRad(); |
|
| 116 | - double lon1 = getLngRad(); |
|
| 117 | - double bearingRad = bearing.getRadians(); |
|
| 118 | - double lat2 = Math.asin(Math.sin(lat1) * Math.cos(distanceRad) + Math.cos(lat1) * Math.sin(distanceRad) |
|
| 119 | - * Math.cos(bearingRad)); |
|
| 120 | - double lon2 = lon1 |
|
| 121 | - + Math.atan2(Math.sin(bearingRad) * Math.sin(distanceRad) * Math.cos(lat1), Math.cos(distanceRad) |
|
| 122 | - - Math.sin(lat1) * Math.sin(lat2)); |
|
| 123 | - lon2 = (lon2 + 3 * Math.PI) % (2 * Math.PI) - Math.PI; // normalize to -180..+180 |
|
| 124 | - return new DegreePosition(lat2 / Math.PI * 180., lon2 / Math.PI * 180.); |
|
| 125 | - } |
|
| 126 | - |
|
| 127 | - @Override |
|
| 128 | - public Position translateGreatCircle(Bearing bearing, Distance distance) { |
|
| 129 | - double lat = Math.asin(Math.sin(getLatRad()) * Math.cos(distance.getCentralAngleRad()) + Math.cos(getLatRad()) |
|
| 130 | - * Math.sin(distance.getCentralAngleRad()) * Math.cos(bearing.getRadians())); |
|
| 131 | - double lng = getLngRad() |
|
| 132 | - + Math.atan2( |
|
| 133 | - Math.sin(bearing.getRadians()) * Math.sin(distance.getCentralAngleRad()) |
|
| 134 | - * Math.cos(getLatRad()), |
|
| 135 | - Math.cos(distance.getCentralAngleRad()) - Math.sin(getLatRad()) * Math.sin(lat)); |
|
| 136 | - return new RadianPosition(lat, lng); |
|
| 137 | - } |
|
| 138 | - |
|
| 139 | - @Override |
|
| 140 | - public Distance absoluteCrossTrackError(Position p, Bearing bearing) { |
|
| 141 | - return new CentralAngleDistance(Math.abs(crossTrackError(p, bearing).getCentralAngleRad())); |
|
| 142 | - } |
|
| 143 | - |
|
| 144 | - @Override |
|
| 145 | - public Distance crossTrackError(Position p, Bearing bearing) { |
|
| 146 | - return new CentralAngleDistance(Math.asin(Math.sin(p.getCentralAngleRad(this)) |
|
| 147 | - * Math.sin(p.getBearingGreatCircle(this).getRadians() - bearing.getRadians()))); |
|
| 148 | - } |
|
| 149 | - |
|
| 150 | - @Override |
|
| 151 | - public Position projectToLineThrough(Position pos, Bearing bearing) { |
|
| 152 | - return pos.translateGreatCircle(bearing, this.alongTrackDistance(pos, bearing)); |
|
| 153 | - } |
|
| 154 | - |
|
| 155 | - @Override |
|
| 156 | - public Distance alongTrackDistance(Position from, Bearing bearing) { |
|
| 157 | - final Distance result; |
|
| 158 | - if (from != null && bearing != null) { |
|
| 159 | - double direction = Math.signum(Math.cos(from.getBearingGreatCircle(this).getRadians() - bearing.getRadians())); |
|
| 160 | - // Test if denominator gets ridiculously small; if so, the cross-track error is about 90� central angle. |
|
| 161 | - // This means that the cross-track error is maximized, and that there is no way to determine how far along |
|
| 162 | - // the great circle described by pos2 and bearing we should travel. This is an exception which will |
|
| 163 | - // surface as a division-by-zero exception or a NaN result |
|
| 164 | - result = new CentralAngleDistance(direction |
|
| 165 | - * Math.acos(Math.cos(from.getCentralAngleRad(this)) |
|
| 166 | - / Math.cos(crossTrackError(from, bearing).getCentralAngleRad()))); |
|
| 167 | - } else { |
|
| 168 | - result = null; |
|
| 169 | - } |
|
| 170 | - return result; |
|
| 171 | - } |
|
| 172 | - |
|
| 173 | - @Override |
|
| 174 | - public Distance getDistanceToLine(Position left, Position right) { |
|
| 175 | - final Distance result; |
|
| 176 | - final Distance crossTrackError = this.crossTrackError(left, left.getBearingGreatCircle(right)); |
|
| 177 | - final int factor = crossTrackError.getMeters()>0?1:-1; |
|
| 178 | - double toLeft = Math.abs(left.getBearingGreatCircle(this).getDifferenceTo(left.getBearingGreatCircle(right)) |
|
| 179 | - .getDegrees()); |
|
| 180 | - double toRight = Math.abs(right.getBearingGreatCircle(this).getDifferenceTo(right.getBearingGreatCircle(left)) |
|
| 181 | - .getDegrees()); |
|
| 182 | - if (toLeft > 90) { |
|
| 183 | - result = this.getDistance(left).scale(factor); |
|
| 184 | - } else if (toRight > 90) { |
|
| 185 | - result = this.getDistance(right).scale(factor); |
|
| 186 | - } else { |
|
| 187 | - result = crossTrackError; |
|
| 188 | - } |
|
| 189 | - return result; |
|
| 190 | - } |
|
| 191 | - |
|
| 192 | - @Override |
|
| 193 | - public Position getLocalCoordinates(Position localOrigin, Bearing localEquatorBearing) { |
|
| 194 | - return this.getTargetCoordinates(localOrigin, localEquatorBearing, new DegreePosition(0.0, 0.0), new DegreeBearingImpl(90.0)); |
|
| 195 | - } |
|
| 196 | - |
|
| 197 | - @Override |
|
| 198 | - public Position getTargetCoordinates(Position localOrigin, Bearing localEquatorBearing, Position targetOrigin, Bearing targetEquatorBearing) { |
|
| 199 | - Bearing localBearing = localEquatorBearing.getDifferenceTo(localOrigin.getBearingGreatCircle(this)); |
|
| 200 | - Distance localDistance = this.getDistance(localOrigin); |
|
| 201 | - return targetOrigin.translateGreatCircle(targetEquatorBearing.add(localBearing), localDistance); |
|
| 202 | - } |
|
| 203 | - |
|
| 204 | - @Override |
|
| 205 | - public String toString() { |
|
| 206 | - return "(" + getLatDeg() + "," + getLngDeg() + ")"; |
|
| 207 | - } |
|
| 208 | - |
|
| 209 | - @Override |
|
| 210 | - public Position getIntersection(Bearing thisBearing, Position to, Bearing toBearing) { |
|
| 211 | - /* |
|
| 212 | - * See http://www.movable-type.co.uk/scripts/latlong-vectors.html#intersection for explanation |
|
| 213 | - */ |
|
| 214 | - double radBearing1 = thisBearing.getRadians(); |
|
| 215 | - double radLatPos1 = getLatRad(); |
|
| 216 | - double radLngPos1 = getLngRad(); |
|
| 217 | - double[] greatCircle1 = createGreatCircleVector(radBearing1, radLatPos1, radLngPos1); |
|
| 218 | - double radBearing2 = toBearing.getRadians(); |
|
| 219 | - double radLatPos2 = to.getLatRad(); |
|
| 220 | - double radLngPos2 = to.getLngRad(); |
|
| 221 | - double[] greatCircle2 = createGreatCircleVector(radBearing2, radLatPos2, radLngPos2); |
|
| 222 | - double[] intersection1 = computeCrossProductOf3PartVectors(greatCircle1, greatCircle2); |
|
| 223 | - double[] intersection2 = computeCrossProductOf3PartVectors(greatCircle2, greatCircle1); |
|
| 224 | - Position intersectionPosition1 = cartesianVectorToPosition(intersection1); |
|
| 225 | - Position intersectionPosition2 = cartesianVectorToPosition(intersection2); |
|
| 226 | - Distance sumOfDistances1 = getDistance(intersectionPosition1).add(intersectionPosition1.getDistance(to)); |
|
| 227 | - Distance sumOfDistances2 = getDistance(intersectionPosition2).add(intersectionPosition2.getDistance(to)); |
|
| 228 | - return sumOfDistances1.compareTo(sumOfDistances2) < 0 ? intersectionPosition1 : intersectionPosition2; |
|
| 229 | - } |
|
| 230 | - |
|
| 231 | - @Override |
|
| 232 | - public SpeedWithBearing getSpeedWithBearingToReachOnGreatCircle(Position to, Duration inTime) { |
|
| 233 | - final Bearing bearing = getBearingGreatCircle(to); |
|
| 234 | - final Distance distance = getDistance(to); |
|
| 235 | - final Speed speed = distance.inTime(inTime); |
|
| 236 | - return new KnotSpeedWithBearingImpl(speed.getKnots(), bearing); |
|
| 237 | - } |
|
| 238 | - |
|
| 239 | - private Position cartesianVectorToPosition(double[] vector) { |
|
| 240 | - double lat = Math.atan2(vector[2], Math.sqrt(vector[0]*vector[0] + vector[1]*vector[1])); |
|
| 241 | - double lng = Math.atan2(vector[1], vector[0]); |
|
| 242 | - return new RadianPosition(lat, lng); |
|
| 243 | - } |
|
| 244 | - |
|
| 245 | - private double[] computeCrossProductOf3PartVectors(double[] vec1, double[] vec2) { |
|
| 246 | - double[] crossProduct= new double[3]; |
|
| 247 | - crossProduct[0] = vec1[1]*vec2[2] - vec1[2]*vec2[1]; |
|
| 248 | - crossProduct[1] = vec1[2]*vec2[0] - vec1[0]*vec2[2]; |
|
| 249 | - crossProduct[2] = vec1[0]*vec2[1] - vec1[1]*vec2[0]; |
|
| 250 | - return crossProduct; |
|
| 251 | - } |
|
| 252 | - |
|
| 253 | - private double[] createGreatCircleVector(double radBearing, double radLatPos, double radLngPos) { |
|
| 254 | - double[] greatCircle = new double[3]; |
|
| 255 | - greatCircle[0] = Math.sin(radLngPos) * Math.cos(radBearing) - Math.sin(radLatPos) * Math.cos(radLngPos) * Math.sin(radBearing); |
|
| 256 | - greatCircle[1] = -Math.cos(radLngPos) * Math.cos(radBearing) - Math.sin(radLatPos) * Math.sin(radLngPos) * Math.sin(radBearing); |
|
| 257 | - greatCircle[2] = Math.cos(radLatPos) * Math.sin(radBearing); |
|
| 258 | - return greatCircle; |
|
| 259 | - } |
|
| 260 | - |
|
| 261 | - @Override |
|
| 262 | - public String getAsDegreesAndDecimalMinutesWithCardinalPoints() { |
|
| 263 | - final String lat = (getLatDeg()>=0 ? "N" : "S") + getDegreesAndDecimalMinutesOfNonNegativeAngle(Math.abs(getLatDeg()), /* degreePlaces */ 2, /* minuteDecimals */ 3); |
|
| 264 | - final String lng = (getLngDeg()>=0 ? "E" : "W") + getDegreesAndDecimalMinutesOfNonNegativeAngle(Math.abs(getLngDeg()), /* degreePlaces */ 3, /* minuteDecimals */ 3); |
|
| 265 | - return lat+" "+lng; |
|
| 266 | - } |
|
| 267 | - |
|
| 268 | - private String getDegreesAndDecimalMinutesOfNonNegativeAngle(double nonNegativeAngle, int degreePlaces, int minuteDecimals) { |
|
| 269 | - final double abs = Math.abs(nonNegativeAngle); |
|
| 270 | - int integerDegrees = (int) nonNegativeAngle; |
|
| 271 | - double minutes = RoundingUtil.format((abs-(int) abs)*60.0, 3); |
|
| 272 | - if (minutes >= 60.0) { |
|
| 273 | - minutes -= 60.0; |
|
| 274 | - integerDegrees++; |
|
| 275 | - } |
|
| 276 | - return Util.padPositiveValue(integerDegrees, degreePlaces, 0, /* round */ true) + "°"+ |
|
| 277 | - Util.padPositiveValue(minutes, 2, minuteDecimals, /* round */ true)+"'"; |
|
| 278 | - } |
|
| 279 | - |
|
| 280 | - @Override |
|
| 281 | - public String getAsSignedDecimalDegrees() { |
|
| 282 | - return "("+getLatDeg()+", "+getLngDeg()+")"; |
|
| 283 | - } |
|
| 284 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/AbstractSpeedImpl.java
| ... | ... | @@ -1,89 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 4 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 5 | -import com.sap.sse.common.Distance; |
|
| 6 | -import com.sap.sse.common.Duration; |
|
| 7 | -import com.sap.sse.common.Speed; |
|
| 8 | -import com.sap.sse.common.TimePoint; |
|
| 9 | -import com.sap.sse.common.impl.SecondsDurationImpl; |
|
| 10 | - |
|
| 11 | -public abstract class AbstractSpeedImpl implements Speed { |
|
| 12 | - |
|
| 13 | - private static final long serialVersionUID = 4910662213901175982L; |
|
| 14 | - |
|
| 15 | - @Override |
|
| 16 | - public double getBeaufort() { |
|
| 17 | - return Math.exp(Math.log(getMetersPerSecond()/0.8360) * 2./3.); |
|
| 18 | - } |
|
| 19 | - |
|
| 20 | - @Override |
|
| 21 | - public Distance travel(TimePoint t1, TimePoint t2) { |
|
| 22 | - return travel(t1.until(t2)); |
|
| 23 | - } |
|
| 24 | - |
|
| 25 | - @Override |
|
| 26 | - public Distance travel(Duration duration) { |
|
| 27 | - return new NauticalMileDistance(duration.asHours() * getKnots()); |
|
| 28 | - } |
|
| 29 | - |
|
| 30 | - @Override |
|
| 31 | - public Duration getDuration(Distance distance) { |
|
| 32 | - return distance == null ? null : new SecondsDurationImpl(distance.getMeters() / getMetersPerSecond()); |
|
| 33 | - } |
|
| 34 | - |
|
| 35 | - @Override |
|
| 36 | - public double getMetersPerSecond() { |
|
| 37 | - return getKnots() * Mile.METERS_PER_NAUTICAL_MILE / 3600; |
|
| 38 | - } |
|
| 39 | - |
|
| 40 | - @Override |
|
| 41 | - public double getKilometersPerHour() { |
|
| 42 | - return getKnots() * Mile.METERS_PER_NAUTICAL_MILE / 1000; |
|
| 43 | - } |
|
| 44 | - |
|
| 45 | - @Override |
|
| 46 | - public double getStatuteMilesPerHour() { |
|
| 47 | - return getMetersPerSecond() * 2.2369; |
|
| 48 | - } |
|
| 49 | - |
|
| 50 | - @Override |
|
| 51 | - public int compareTo(Speed speed) { |
|
| 52 | - final double metersPerSecond = getMetersPerSecond(); |
|
| 53 | - final double otherMetersPerSecond = speed.getMetersPerSecond(); |
|
| 54 | - return Double.compare(metersPerSecond, otherMetersPerSecond); |
|
| 55 | - } |
|
| 56 | - |
|
| 57 | - @Override |
|
| 58 | - public String toString() { |
|
| 59 | - return ""+getKnots()+"kn"; |
|
| 60 | - } |
|
| 61 | - |
|
| 62 | - @Override |
|
| 63 | - public int hashCode() { |
|
| 64 | - return 31 * (int) getMetersPerSecond(); |
|
| 65 | - } |
|
| 66 | - |
|
| 67 | - @Override |
|
| 68 | - public boolean equals(Object object) { |
|
| 69 | - if (object == null || !(object instanceof Speed)) { |
|
| 70 | - return false; |
|
| 71 | - } |
|
| 72 | - return getMetersPerSecond() == ((Speed) object).getMetersPerSecond(); |
|
| 73 | - } |
|
| 74 | - |
|
| 75 | - @Override |
|
| 76 | - public double getKnots() { |
|
| 77 | - return getKilometersPerHour() * 1000. / Mile.METERS_PER_NAUTICAL_MILE; |
|
| 78 | - } |
|
| 79 | - |
|
| 80 | - @Override |
|
| 81 | - public double divide(Speed speed) { |
|
| 82 | - return getKnots() / speed.getKnots(); |
|
| 83 | - } |
|
| 84 | - |
|
| 85 | - @Override |
|
| 86 | - public Speed scale(double d) { |
|
| 87 | - return new KnotSpeedImpl(getKnots()*d); |
|
| 88 | - } |
|
| 89 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/BearingChangeAnalyzer.java
| ... | ... | @@ -1,37 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.impl.BearingChangeAnalyzerImpl; |
|
| 4 | -import com.sap.sse.common.Bearing; |
|
| 5 | - |
|
| 6 | -/** |
|
| 7 | - * Helps analyze a change of a course over ground / {@link Bearing} and in particular can judge whether |
|
| 8 | - * such a course change passed over a certain other course over ground / {@link Bearing}. |
|
| 9 | - * |
|
| 10 | - * @author Axel Uhl (d043530) |
|
| 11 | - * |
|
| 12 | - */ |
|
| 13 | -public interface BearingChangeAnalyzer { |
|
| 14 | - BearingChangeAnalyzer INSTANCE = new BearingChangeAnalyzerImpl(); |
|
| 15 | - |
|
| 16 | - /** |
|
| 17 | - * Determines whether during a maneuver a certain course was reached and crossed. When used with the wind direction, |
|
| 18 | - * this can tell whether a boat tacked or jibed. |
|
| 19 | - * |
|
| 20 | - * @param totalCourseChangeInDegrees |
|
| 21 | - * tells how far and to which direction the course was changed. Positive values mean a change to |
|
| 22 | - * {@link NauticalSide#STARBOARD}, negative values to {@link NauticalSide#PORT}. This is required to |
|
| 23 | - * understand over which side the competitor reached the new course from the old course; if could have |
|
| 24 | - * been either way. Example: if the <code>courseBeforeManeuver</code> was 355deg and the |
|
| 25 | - * <code>courseAfterManeuver</code> was 005deg then if the <code>totalCourseChangeInDegrees</code> was |
|
| 26 | - * positive then the competitor passed the 000deg course, whereas had the |
|
| 27 | - * <code>totalCourseChangeInDegrees</code> been negative and less than 370deg then the competitor would |
|
| 28 | - * have passed the 180deg course but not the 000deg course. |
|
| 29 | - * @return the number of times that the course identified by |
|
| 30 | - * <code>wasThisCourseReachedAndCrossedDuringManeuver</code> was crossed; <code>0</code> means it was not |
|
| 31 | - * crossed; any positive number tells how many times it was crossed, otherwise. Numbers greater than |
|
| 32 | - * <code>1</code> require <code>totalCourseChangeInDegrees</code> to be greater than 360 degrees. |
|
| 33 | - * |
|
| 34 | - */ |
|
| 35 | - int didPass(Bearing courseBeforeManeuver, double totalCourseChangeInDegrees, |
|
| 36 | - Bearing courseAfterManeuver, Bearing wasThisCourseReachedAndCrossedDuringManeuver); |
|
| 37 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/BearingCluster.java
| ... | ... | @@ -1,58 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 4 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidenceCluster; |
|
| 5 | -import com.sap.sailing.domain.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 6 | -import com.sap.sse.common.Bearing; |
|
| 7 | - |
|
| 8 | -/** |
|
| 9 | - * Contains a number of {@link Bearing} objects and maintains the average bearing. For a given {@link Bearing} it |
|
| 10 | - * can determine the difference to this cluster's average bearing. It can also split the cluster into two, based |
|
| 11 | - * on the two bearings farthest apart. The cluster can contain multiple occurrences of the same and also |
|
| 12 | - * multiple occurrences of mutually equal {@link Bearing} objects which is one possible way of computing a |
|
| 13 | - * weighted average.<p> |
|
| 14 | - * |
|
| 15 | - * It is assumed that bearings added to this cluster are no further than 180 degrees apart. Violating this |
|
| 16 | - * rule will lead to unpredictable results. |
|
| 17 | - * |
|
| 18 | - * @author Axel Uhl (d043530) |
|
| 19 | - * |
|
| 20 | - */ |
|
| 21 | -public class BearingCluster { |
|
| 22 | - private final BearingWithConfidenceCluster<Void> cluster; |
|
| 23 | - |
|
| 24 | - public BearingCluster() { |
|
| 25 | - cluster = new BearingWithConfidenceCluster<Void>(/* weigher */ null); |
|
| 26 | - } |
|
| 27 | - |
|
| 28 | - private BearingCluster(BearingWithConfidenceCluster<Void> cluster) { |
|
| 29 | - this.cluster = cluster; |
|
| 30 | - } |
|
| 31 | - |
|
| 32 | - public BearingCluster[] splitInTwo(double minimumDegreeDifferenceBetweenTacks) { |
|
| 33 | - BearingWithConfidenceCluster<Void>[] array = cluster.splitInTwo(minimumDegreeDifferenceBetweenTacks, /* relativeTo */ null); |
|
| 34 | - BearingCluster[] result = new BearingCluster[array.length]; |
|
| 35 | - int i=0; |
|
| 36 | - for (BearingWithConfidenceCluster<Void> element : array) { |
|
| 37 | - result[i++] = new BearingCluster(element); |
|
| 38 | - } |
|
| 39 | - return result; |
|
| 40 | - } |
|
| 41 | - |
|
| 42 | - public Bearing getAverage() { |
|
| 43 | - BearingWithConfidence<Void> average = cluster.getAverage(null); |
|
| 44 | - return average == null ? null : average.getObject(); |
|
| 45 | - } |
|
| 46 | - |
|
| 47 | - public boolean isEmpty() { |
|
| 48 | - return cluster.isEmpty(); |
|
| 49 | - } |
|
| 50 | - |
|
| 51 | - public int size() { |
|
| 52 | - return cluster.size(); |
|
| 53 | - } |
|
| 54 | - |
|
| 55 | - public void add(Bearing bearing) { |
|
| 56 | - cluster.add(new BearingWithConfidenceImpl<Void>(bearing, /* confidence */ 1.0, /* relativeTo */ null)); |
|
| 57 | - } |
|
| 58 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/BoatClassMasterdata.java
| ... | ... | @@ -5,8 +5,8 @@ import java.util.HashMap; |
| 5 | 5 | import java.util.List; |
| 6 | 6 | import java.util.Map; |
| 7 | 7 | |
| 8 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 9 | 8 | import com.sap.sse.common.Distance; |
| 9 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 10 | 10 | |
| 11 | 11 | |
| 12 | 12 | public enum BoatClassMasterdata { |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/Bounds.java
| ... | ... | @@ -1,44 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common; |
|
| 2 | - |
|
| 3 | -import com.sap.sse.common.Distance; |
|
| 4 | - |
|
| 5 | -public interface Bounds { |
|
| 6 | - Position getNorthEast(); |
|
| 7 | - |
|
| 8 | - Position getSouthWest(); |
|
| 9 | - |
|
| 10 | - Position getNorthWest(); |
|
| 11 | - |
|
| 12 | - Position getSouthEast(); |
|
| 13 | - |
|
| 14 | - Bounds intersect(Bounds other); |
|
| 15 | - |
|
| 16 | - /** |
|
| 17 | - * A short-hand for {@link #union} |
|
| 18 | - */ |
|
| 19 | - Bounds extend(Bounds other); |
|
| 20 | - |
|
| 21 | - Bounds extend(Position p); |
|
| 22 | - |
|
| 23 | - Bounds union(Bounds other); |
|
| 24 | - |
|
| 25 | - boolean intersects(Bounds other); |
|
| 26 | - |
|
| 27 | - boolean contains(Position other); |
|
| 28 | - |
|
| 29 | - boolean contains(Bounds other); |
|
| 30 | - |
|
| 31 | - boolean isCrossesDateLine(); |
|
| 32 | - |
|
| 33 | - boolean containsLatDeg(double latDeg); |
|
| 34 | - |
|
| 35 | - boolean containsLngDeg(double lngDeg); |
|
| 36 | - |
|
| 37 | - boolean isEmpty(); |
|
| 38 | - |
|
| 39 | - /** |
|
| 40 | - * @return the length of the diagonal from the {@link #getNorthWest() NW} to the {@link #getSouthEast() SE} corner |
|
| 41 | - * of this bounding box |
|
| 42 | - */ |
|
| 43 | - Distance getDiameter(); |
|
| 44 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/CourseChange.java
| ... | ... | @@ -1,17 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common; |
|
| 2 | - |
|
| 3 | - |
|
| 4 | - |
|
| 5 | -/** |
|
| 6 | - * A course change represents a change of the course over ground as well as the speed over ground. |
|
| 7 | - * {@link SpeedWithBearing#applyCourseChange(CourseChange) Applying} this {@link CourseChange} object to a |
|
| 8 | - * {@link SpeedWithBearing} results in the {@link SpeedWithBearing} as it was after this course change. |
|
| 9 | - * |
|
| 10 | - * @author Axel Uhl (d043530) |
|
| 11 | - * |
|
| 12 | - */ |
|
| 13 | -public interface CourseChange { |
|
| 14 | - double getCourseChangeInDegrees(); |
|
| 15 | - |
|
| 16 | - double getSpeedChangeInKnots(); |
|
| 17 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/DoublePair.java
| ... | ... | @@ -1,20 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common; |
|
| 2 | - |
|
| 3 | -public class DoublePair { |
|
| 4 | - private final double a; |
|
| 5 | - private final double b; |
|
| 6 | - |
|
| 7 | - public DoublePair(double a, double b) { |
|
| 8 | - super(); |
|
| 9 | - this.a = a; |
|
| 10 | - this.b = b; |
|
| 11 | - } |
|
| 12 | - |
|
| 13 | - public double getA() { |
|
| 14 | - return a; |
|
| 15 | - } |
|
| 16 | - |
|
| 17 | - public double getB() { |
|
| 18 | - return b; |
|
| 19 | - } |
|
| 20 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/DoubleTriple.java
| ... | ... | @@ -1,26 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common; |
|
| 2 | - |
|
| 3 | -public class DoubleTriple { |
|
| 4 | - private final double a; |
|
| 5 | - private final double b; |
|
| 6 | - private final double c; |
|
| 7 | - |
|
| 8 | - public DoubleTriple(double a, double b, double c) { |
|
| 9 | - super(); |
|
| 10 | - this.a = a; |
|
| 11 | - this.b = b; |
|
| 12 | - this.c = c; |
|
| 13 | - } |
|
| 14 | - |
|
| 15 | - public double getA() { |
|
| 16 | - return a; |
|
| 17 | - } |
|
| 18 | - |
|
| 19 | - public double getB() { |
|
| 20 | - return b; |
|
| 21 | - } |
|
| 22 | - |
|
| 23 | - public double getC() { |
|
| 24 | - return c; |
|
| 25 | - } |
|
| 26 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/Mile.java
| ... | ... | @@ -1,9 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common; |
|
| 2 | - |
|
| 3 | -public interface Mile { |
|
| 4 | - static double METERS_PER_SEA_MILE = 1852.3; |
|
| 5 | - static double METERS_PER_NAUTICAL_MILE = 1852; |
|
| 6 | - static double METERS_PER_GEOGRAPHICAL_MILE = 400080. / 216. /* = 40008000/360/60 */; |
|
| 7 | - static double METERS_PER_STATUTE_MILE = 1609.344; |
|
| 8 | - static double METERS_PER_SECOND_PER_KNOT = METERS_PER_NAUTICAL_MILE / 3600.; |
|
| 9 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/Moving.java
| ... | ... | @@ -1,5 +1,6 @@ |
| 1 | 1 | package com.sap.sailing.domain.common; |
| 2 | 2 | |
| 3 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 3 | 4 | import com.sap.sse.datamining.annotations.Connector; |
| 4 | 5 | |
| 5 | 6 | public interface Moving { |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/NonCardinalBounds.java
| ... | ... | @@ -2,7 +2,9 @@ package com.sap.sailing.domain.common; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.common.impl.NonCardinalBoundsImpl; |
| 4 | 4 | import com.sap.sse.common.Bearing; |
| 5 | +import com.sap.sse.common.Bounds; |
|
| 5 | 6 | import com.sap.sse.common.Distance; |
| 7 | +import com.sap.sse.common.Position; |
|
| 6 | 8 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 7 | 9 | |
| 8 | 10 | /** |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/Placemark.java
| ... | ... | @@ -4,6 +4,7 @@ import java.io.Serializable; |
| 4 | 4 | import java.util.Comparator; |
| 5 | 5 | |
| 6 | 6 | import com.sap.sse.common.Distance; |
| 7 | +import com.sap.sse.common.Position; |
|
| 7 | 8 | |
| 8 | 9 | /** |
| 9 | 10 | * Used to define a populated place in the world.<br /> |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/Position.java
| ... | ... | @@ -1,148 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common; |
|
| 2 | - |
|
| 3 | -import java.io.Serializable; |
|
| 4 | - |
|
| 5 | -import com.sap.sse.common.Bearing; |
|
| 6 | -import com.sap.sse.common.Distance; |
|
| 7 | -import com.sap.sse.common.Duration; |
|
| 8 | - |
|
| 9 | - |
|
| 10 | -public interface Position extends Serializable { |
|
| 11 | - double getLatRad(); |
|
| 12 | - |
|
| 13 | - double getLngRad(); |
|
| 14 | - |
|
| 15 | - double getLatDeg(); |
|
| 16 | - |
|
| 17 | - double getLngDeg(); |
|
| 18 | - |
|
| 19 | - /** |
|
| 20 | - * Generates a string representation of the form S03°45.235' E003°22.837' |
|
| 21 | - */ |
|
| 22 | - String getAsDegreesAndDecimalMinutesWithCardinalPoints(); |
|
| 23 | - |
|
| 24 | - /** |
|
| 25 | - * Generates a string representation of the form (-3.7539166666, 3.3806166666) |
|
| 26 | - */ |
|
| 27 | - String getAsSignedDecimalDegrees(); |
|
| 28 | - |
|
| 29 | - /** |
|
| 30 | - * Central angle between this position and the other position, in radians |
|
| 31 | - */ |
|
| 32 | - double getCentralAngleRad(Position p); |
|
| 33 | - |
|
| 34 | - Distance getDistance(Position p); |
|
| 35 | - |
|
| 36 | - /** |
|
| 37 | - * The bearing from this position towards <code>p</code> on a great circle, using the shortest path. |
|
| 38 | - * |
|
| 39 | - * @return {@code null} if {@code p} is {@code null}, otherwise the bearing from {@code this} {@link Position} to |
|
| 40 | - * {@code p} along a great circle |
|
| 41 | - */ |
|
| 42 | - Bearing getBearingGreatCircle(Position p); |
|
| 43 | - |
|
| 44 | - /** |
|
| 45 | - * Translates along a rhumb line, assuming travel at constant bearing. This |
|
| 46 | - * is therfore not translating along a great circle but as a straight line, e.g., |
|
| 47 | - * on a Marcator projection. |
|
| 48 | - */ |
|
| 49 | - Position translateRhumb(Bearing bearing, Distance distance); |
|
| 50 | - |
|
| 51 | - /** |
|
| 52 | - * Translates along a great circle, assuming travel at varying bearing where |
|
| 53 | - * <code>bearing</code> tells the bearing at this position. Invariant: |
|
| 54 | - * <code>translate(getBearingGreatCircle(p), getDistance(p)).equals(p)</code> |
|
| 55 | - */ |
|
| 56 | - Position translateGreatCircle(Bearing bearing, Distance distance); |
|
| 57 | - |
|
| 58 | - /** |
|
| 59 | - * Projects this position onto the great circle through <code>p</code> with bearing <code>bearing</code>. Note that |
|
| 60 | - * if the angle between this position and the great circle is 90 degrees then there is no solution, and a |
|
| 61 | - * <code>NaN</code> or exception will result. |
|
| 62 | - */ |
|
| 63 | - Position projectToLineThrough(Position p, Bearing bearing); |
|
| 64 | - |
|
| 65 | - /** |
|
| 66 | - * @return an unsigned distance |
|
| 67 | - */ |
|
| 68 | - Distance absoluteCrossTrackError(Position p, Bearing bearing); |
|
| 69 | - |
|
| 70 | - /** |
|
| 71 | - * @return a signed distance; positive distances mean that this position is to the right (starboard) of the |
|
| 72 | - * line one gets when traveling from <code>p</code> with <code>bearing</code> |
|
| 73 | - */ |
|
| 74 | - Distance crossTrackError(Position p, Bearing bearing); |
|
| 75 | - |
|
| 76 | - /** |
|
| 77 | - * Computes how far along the great circle starting at <code>from</code> and pointing to <code>bearing</code> one |
|
| 78 | - * has to travel to reach the projection of this position onto the great circle described by <code>from</code> and |
|
| 79 | - * <code>bearing</code>. Note that if the angle between this position and the great circle is 90 degrees then there |
|
| 80 | - * is no solution, and a <code>NaN</code> or exception will result. |
|
| 81 | - * <p> |
|
| 82 | - * |
|
| 83 | - * The distance returned will be negative if one needs to travel towards the reverse of {@code bearing} to reach this |
|
| 84 | - * position starting at {@code from} on the shortest path.<p> |
|
| 85 | - * |
|
| 86 | - * If either <code>from</code> or <code>bearing</code> or both are <code>null</code>, <code>null</code> is returned. |
|
| 87 | - */ |
|
| 88 | - |
|
| 89 | - Distance alongTrackDistance(Position from, Bearing bearing); |
|
| 90 | - |
|
| 91 | - /** |
|
| 92 | - * Computes the distance from this position to the line between <code>left</code> and <code>right</code>. This distance |
|
| 93 | - * is positive if <code>left</code> is actually the position farther to the left, as seen from this position; negative |
|
| 94 | - * otherwise. |
|
| 95 | - */ |
|
| 96 | - Distance getDistanceToLine(Position left, Position right); |
|
| 97 | - |
|
| 98 | - /** |
|
| 99 | - * Transform a position into its representation in a local geo-coordinate frame where <code>localOrigin</code> is |
|
| 100 | - * locally represented as <code>(latitude, longitude) = (0,0)</code> and <code>localEquatorBearing</code> is locally |
|
| 101 | - * represented as <code>East = 90 degrees</code>. |
|
| 102 | - * <p> |
|
| 103 | - * |
|
| 104 | - * This can be used to move a GPS-track to the origin <code>(0,0)</code> and aligning wind direction with North, or |
|
| 105 | - * bearing of start line with East. |
|
| 106 | - */ |
|
| 107 | - Position getLocalCoordinates(Position localOrigin, Bearing localEquatorBearing); |
|
| 108 | - |
|
| 109 | - /** |
|
| 110 | - * Transform a position from local geo-coordinate frame <code>(localOrigin, localEquatorBearing)</code> |
|
| 111 | - * into the corresponding position in target geo-coordinate frame <code>(targetOrigin, targetEquatorBearing)</code>. |
|
| 112 | - * The transformation is equivalent to a rotation of the earth, which moves <code>localOrigin</code> |
|
| 113 | - * to <code>targetOrigin</code> while aligning <code>localEquatorBearing</code> to <code>targetEquatorBearing</code>.<p> |
|
| 114 | - * |
|
| 115 | - * This can be used to move a GPS-track from one location to another, in order to compare GPS-tracks from different areas |
|
| 116 | - * by superposing and aligning them based on wind direction or bearing of start line. |
|
| 117 | - */ |
|
| 118 | - Position getTargetCoordinates(Position localOrigin, Bearing localEquatorBearing, Position targetOrigin, Bearing targetEquatorBearing); |
|
| 119 | - |
|
| 120 | - /** |
|
| 121 | - * Computes an approximate distance between this position and <code>p</code> by |
|
| 122 | - * using the average latitude's cosine to scale the longitudes and then calculate |
|
| 123 | - * the distance non-spherically in an imaginary Euklidian plane. The error is below |
|
| 124 | - * 1% even for several hundred nautical miles of randomly chosen distances, and even |
|
| 125 | - * lower (~.1%) for distances below ten nautical miles.<p> |
|
| 126 | - * |
|
| 127 | - * The method executes efficiently and requires only one call to the cosine method. |
|
| 128 | - */ |
|
| 129 | - double getQuickApproximateNauticalMileDistance(Position p); |
|
| 130 | - |
|
| 131 | - /** |
|
| 132 | - * Computes the intersection of two paths. The first path is defined by the underlying position and the parameter |
|
| 133 | - * <code>thisBearing</code>. The second path is defined by parameters <code>to</code> and <code>toBearing</code> |
|
| 134 | - * |
|
| 135 | - * @param thisBearing defines first path with <code>this</code> position |
|
| 136 | - * @param to defines second path with <code>toBearing</code> |
|
| 137 | - * @param toBearing defines second path <code>to</code> position |
|
| 138 | - * @return position of intersection. Since there are usually 2 intersections, we return the smaller intersection. |
|
| 139 | - */ |
|
| 140 | - Position getIntersection(Bearing thisBearing, Position to, Bearing toBearing); |
|
| 141 | - |
|
| 142 | - /** |
|
| 143 | - * Calculates the speed vector needed to reach the {@code to} position from this position in time |
|
| 144 | - * {@code inTime}. A {@link NullPointerException} will be thrown if either {@code to} or {@code inTime} |
|
| 145 | - * is {@code null}. |
|
| 146 | - */ |
|
| 147 | - SpeedWithBearing getSpeedWithBearingToReachOnGreatCircle(Position to, Duration inTime); |
|
| 148 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/Positioned.java
| ... | ... | @@ -1,7 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common; |
|
| 2 | - |
|
| 3 | -import java.io.Serializable; |
|
| 4 | - |
|
| 5 | -public interface Positioned extends Serializable { |
|
| 6 | - Position getPosition(); |
|
| 7 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/SpeedWithBearing.java
| ... | ... | @@ -1,52 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 4 | -import com.sap.sse.common.Bearing; |
|
| 5 | -import com.sap.sse.common.Duration; |
|
| 6 | -import com.sap.sse.common.Speed; |
|
| 7 | -import com.sap.sse.common.TimePoint; |
|
| 8 | -import com.sap.sse.datamining.annotations.Statistic; |
|
| 9 | - |
|
| 10 | - |
|
| 11 | - |
|
| 12 | -public interface SpeedWithBearing extends Speed { |
|
| 13 | - @Statistic(messageKey="bearing", resultDecimals=1) |
|
| 14 | - Bearing getBearing(); |
|
| 15 | - |
|
| 16 | - /** |
|
| 17 | - * Traveling at this speed starting at time <code>from</code> in position <code>pos</code> until time |
|
| 18 | - * </code>to</code>, how far have we traveled? If <code>to</code> is before </code>from</code>, the speed will be |
|
| 19 | - * applied in reverse. |
|
| 20 | - */ |
|
| 21 | - Position travelTo(Position pos, TimePoint from, TimePoint to); |
|
| 22 | - |
|
| 23 | - default Position travelTo(Position from, Duration duration) { |
|
| 24 | - return from.translateGreatCircle(getBearing(), travel(duration)); |
|
| 25 | - } |
|
| 26 | - |
|
| 27 | - /** |
|
| 28 | - * Computes the minimal (in terms of bearing change) course and speed change required to reach the |
|
| 29 | - * target speed and bearing specified. |
|
| 30 | - */ |
|
| 31 | - CourseChange getCourseChangeRequiredToReach(SpeedWithBearing targetSpeedWithBearing); |
|
| 32 | - |
|
| 33 | - SpeedWithBearing applyCourseChange(CourseChange courseChange); |
|
| 34 | - |
|
| 35 | - /** |
|
| 36 | - * Projects this speed onto <code>bearing</code>. The speed will keep its sign, regardless of whether the <code>bearing</code> points in |
|
| 37 | - * the opposite direction or not. The resulting speed can never be greater than this speed. If this speed's bearing is orthogonal to |
|
| 38 | - * <code>bearing</code>, a zero speed will result. |
|
| 39 | - * |
|
| 40 | - * @param position the position at which to perform the projection; the angle between the bearings depends on the position |
|
| 41 | - */ |
|
| 42 | - Speed projectTo(Position position, Bearing bearing); |
|
| 43 | - |
|
| 44 | - /** |
|
| 45 | - * Adds two directed speeds onto each other using vector addition. |
|
| 46 | - */ |
|
| 47 | - SpeedWithBearing add(SpeedWithBearing other); |
|
| 48 | - |
|
| 49 | - default SpeedWithBearing scale(double d) { |
|
| 50 | - return new KnotSpeedWithBearingImpl(getKnots(), getBearing()); |
|
| 51 | - } |
|
| 52 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/Wind.java
| ... | ... | @@ -1,6 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.domain.common; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sse.common.Bearing; |
| 4 | +import com.sap.sse.common.Positioned; |
|
| 5 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 4 | 6 | import com.sap.sse.common.Timed; |
| 5 | 7 | |
| 6 | 8 | /** |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/BearingWithConfidence.java
| ... | ... | @@ -1,9 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.DoublePair; |
|
| 4 | -import com.sap.sse.common.Bearing; |
|
| 5 | -import com.sap.sse.common.scalablevalue.HasConfidenceAndIsScalable; |
|
| 6 | - |
|
| 7 | - |
|
| 8 | -public interface BearingWithConfidence<RelativeTo> extends HasConfidenceAndIsScalable<DoublePair, Bearing, RelativeTo> { |
|
| 9 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/BearingWithConfidenceCluster.java
| ... | ... | @@ -1,180 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence; |
|
| 2 | - |
|
| 3 | -import java.util.ArrayList; |
|
| 4 | -import java.util.Collections; |
|
| 5 | -import java.util.List; |
|
| 6 | - |
|
| 7 | -import com.sap.sailing.domain.common.DoublePair; |
|
| 8 | -import com.sap.sailing.domain.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 9 | -import com.sap.sse.common.Bearing; |
|
| 10 | -import com.sap.sse.common.Util; |
|
| 11 | -import com.sap.sse.common.scalablevalue.HasConfidence; |
|
| 12 | - |
|
| 13 | -/** |
|
| 14 | - * Contains a number of {@link Bearing} objects and maintains the average bearing. For a given {@link Bearing} it |
|
| 15 | - * can determine the difference to this cluster's average bearing. It can also split the cluster into two, based |
|
| 16 | - * on the two bearings farthest apart. The cluster can contain multiple occurrences of the same and also |
|
| 17 | - * multiple occurrences of mutually equal {@link Bearing} objects which is one possible way of computing a |
|
| 18 | - * weighted average.<p> |
|
| 19 | - * |
|
| 20 | - * It is assumed that bearings added to this cluster are no further than 180 degrees apart. Violating this |
|
| 21 | - * rule will lead to unpredictable results. |
|
| 22 | - * |
|
| 23 | - * @author Axel Uhl (d043530) |
|
| 24 | - * |
|
| 25 | - */ |
|
| 26 | -public class BearingWithConfidenceCluster<RelativeTo> { |
|
| 27 | - private final List<BearingWithConfidence<RelativeTo>> bearings; |
|
| 28 | - private final Weigher<RelativeTo> weigher; |
|
| 29 | - private final ConfidenceBasedAverager<DoublePair, Bearing, RelativeTo> averager; |
|
| 30 | - |
|
| 31 | - /** |
|
| 32 | - * @param weigher |
|
| 33 | - * if <code>null</code>, the <code>relativeTo</code> parameter of {@link #getAverage(Object)} will be ignored, |
|
| 34 | - * and only the confidences provided by the {@link BearingWithConfidence} objects will be taken into |
|
| 35 | - * account. Otherwise, the <code>weigher</code> will be used to determine the confidence relative to |
|
| 36 | - * the <code>relativeTo</code> argument of {@link #getAverage(Object)}. |
|
| 37 | - */ |
|
| 38 | - public BearingWithConfidenceCluster(Weigher<RelativeTo> weigher) { |
|
| 39 | - bearings = new ArrayList<BearingWithConfidence<RelativeTo>>(); |
|
| 40 | - this.weigher = weigher; |
|
| 41 | - averager = ConfidenceFactory.INSTANCE.createAverager(weigher); |
|
| 42 | - } |
|
| 43 | - |
|
| 44 | - /** |
|
| 45 | - * Finds the two bearings in the cluster that are farthest apart (at least <code>minimumDegreeDifferenceBetweenTacks</code>). |
|
| 46 | - * Then, the remaining bearings in this cluster are associated with the one of the two extreme bearings to which they are |
|
| 47 | - * closer. The two resulting clusters are returned. |
|
| 48 | - * |
|
| 49 | - * @param minimumDegreeDifferenceBetweenTacks |
|
| 50 | - * tells the minimum degree difference that must exist between the two extreme bearings before they are |
|
| 51 | - * considered to represent boats on different tacks. If more than one bearing exists in this cluster |
|
| 52 | - * but no two bearings are at least <code>minimumDegreeDifferenceBetweenTacks</code> degrees apart from |
|
| 53 | - * each other, only fir first of the two clusters returned will contain bearings while the second one |
|
| 54 | - * remains empty. |
|
| 55 | - * @return two bearing clusters; both empty if this cluster is empty; only the second one empty if this cluster |
|
| 56 | - * contains only one bearing. Otherwise, the two bearings farthest apart (greatest absolute |
|
| 57 | - * {@link Bearing#getDifferenceTo(Bearing) difference}) are guaranteed to be in different clusters, and |
|
| 58 | - * all other bearings contained in this cluster will be contained in the cluster that contains the extreme |
|
| 59 | - * bearing to which it's closer. |
|
| 60 | - */ |
|
| 61 | - public BearingWithConfidenceCluster<RelativeTo>[] splitInTwo(double minimumDegreeDifferenceBetweenTacks, RelativeTo relativeTo) { |
|
| 62 | - BearingWithConfidenceCluster<RelativeTo>[] result = createBearingClusterArraySizeTwo(); |
|
| 63 | - result[0] = createEmptyCluster(); |
|
| 64 | - result[1] = createEmptyCluster(); |
|
| 65 | - if (bearings.size() >= 2) { |
|
| 66 | - Util.Pair<BearingWithConfidence<RelativeTo>, BearingWithConfidence<RelativeTo>> extremeBearings = getExtremeBearings(minimumDegreeDifferenceBetweenTacks); |
|
| 67 | - if (extremeBearings != null) { |
|
| 68 | - result[0].add(extremeBearings.getA()); |
|
| 69 | - result[1].add(extremeBearings.getB()); |
|
| 70 | - } |
|
| 71 | - for (BearingWithConfidence<RelativeTo> bearing : bearings) { |
|
| 72 | - if (extremeBearings == null || (bearing != extremeBearings.getA() && bearing != extremeBearings.getB())) { |
|
| 73 | - if (extremeBearings == null |
|
| 74 | - || result[0].getDifferenceFromAverage(bearing.getObject(), relativeTo) <= result[1] |
|
| 75 | - .getDifferenceFromAverage(bearing.getObject(), relativeTo)) { |
|
| 76 | - result[0].add(bearing); |
|
| 77 | - } else { |
|
| 78 | - result[1].add(bearing); |
|
| 79 | - } |
|
| 80 | - } |
|
| 81 | - } |
|
| 82 | - } else if (!bearings.isEmpty()) { |
|
| 83 | - // add the only bearing to the first of the two resulting clusters |
|
| 84 | - result[0].add(bearings.get(0)); |
|
| 85 | - } |
|
| 86 | - return result; |
|
| 87 | - } |
|
| 88 | - |
|
| 89 | - @SuppressWarnings("unchecked") |
|
| 90 | - protected BearingWithConfidenceCluster<RelativeTo>[] createBearingClusterArraySizeTwo() { |
|
| 91 | - return (BearingWithConfidenceCluster<RelativeTo>[]) new BearingWithConfidenceCluster<?>[2]; |
|
| 92 | - } |
|
| 93 | - |
|
| 94 | - /** |
|
| 95 | - * To avoid that a bearing with low confidence decides about the clustering, the difference between two bearings |
|
| 96 | - * is scaled by their confidences. This scaled distance is then maximized for those bearings at least |
|
| 97 | - * <code>minimumDegreeDifferenceBetweenTacks</code> degrees apart. |
|
| 98 | - */ |
|
| 99 | - private Util.Pair<BearingWithConfidence<RelativeTo>, BearingWithConfidence<RelativeTo>> getExtremeBearings(double minimumDegreeDifferenceBetweenTacks) { |
|
| 100 | - assert bearings.size() >= 2; |
|
| 101 | - double maxAbsDegDiff = 0; |
|
| 102 | - Util.Pair<BearingWithConfidence<RelativeTo>, BearingWithConfidence<RelativeTo>> result = null; |
|
| 103 | - for (int i=0; i<bearings.size(); i++) { |
|
| 104 | - for (int j=i+1; j<bearings.size(); j++) { |
|
| 105 | - final double confidenceScaledDifference = getConfidenceScaledDifference(bearings.get(i), bearings.get(j)); |
|
| 106 | - if (Math.abs(bearings.get(i).getObject().getDifferenceTo(bearings.get(j).getObject()).getDegrees()) >= minimumDegreeDifferenceBetweenTacks |
|
| 107 | - && confidenceScaledDifference > maxAbsDegDiff) { |
|
| 108 | - result = new Util.Pair<BearingWithConfidence<RelativeTo>, BearingWithConfidence<RelativeTo>>(bearings.get(i), bearings.get(j)); |
|
| 109 | - maxAbsDegDiff = confidenceScaledDifference; |
|
| 110 | - assert Math.abs(bearings.get(i).getObject().getDifferenceTo(bearings.get(j).getObject()).getDegrees()) <= 180.; |
|
| 111 | - } |
|
| 112 | - } |
|
| 113 | - } |
|
| 114 | - return result; |
|
| 115 | - } |
|
| 116 | - |
|
| 117 | - private double getConfidenceScaledDifference(BearingWithConfidence<RelativeTo> bearingWithConfidence1, |
|
| 118 | - BearingWithConfidence<RelativeTo> bearingWithConfidence2) { |
|
| 119 | - return Math.abs(bearingWithConfidence1.getObject().getDifferenceTo(bearingWithConfidence2.getObject()).getDegrees()) * |
|
| 120 | - bearingWithConfidence1.getConfidence() * bearingWithConfidence2.getConfidence(); |
|
| 121 | - } |
|
| 122 | - |
|
| 123 | - public boolean isEmpty() { |
|
| 124 | - return bearings.isEmpty(); |
|
| 125 | - } |
|
| 126 | - |
|
| 127 | - public int size() { |
|
| 128 | - return bearings.size(); |
|
| 129 | - } |
|
| 130 | - |
|
| 131 | - /** |
|
| 132 | - * Adds the <code>bearing</code> if its {@link BearingWithConfidence#getConfidence() confidence} is greater than 0.0 |
|
| 133 | - */ |
|
| 134 | - public void add(BearingWithConfidence<RelativeTo> bearing) { |
|
| 135 | - if (bearing.getConfidence() > 0) { |
|
| 136 | - bearings.add(bearing); |
|
| 137 | - } |
|
| 138 | - } |
|
| 139 | - |
|
| 140 | - /** |
|
| 141 | - * If the cluster contains no bearings, <code>null</code> is returned. Otherwise, the average angle is computed |
|
| 142 | - * by adding up the sin and cos values of the individual bearings, then computing the atan2 of the ratio. If the |
|
| 143 | - * combined confidence of the bearings in the cluster is 0.0, the result will contain <code>null</code> as |
|
| 144 | - * {@link BearingWithConfidence#getObject() object}. |
|
| 145 | - * |
|
| 146 | - * TODO bug5576 comment 40: we could analyze the cluster's variance and let greater variances reduce the confidence |
|
| 147 | - */ |
|
| 148 | - public BearingWithConfidence<RelativeTo> getAverage(RelativeTo relativeTo) { |
|
| 149 | - HasConfidence<DoublePair, Bearing, RelativeTo> average = averager.getAverage(getBearings(), relativeTo); |
|
| 150 | - return average == null ? null : new BearingWithConfidenceImpl<RelativeTo>(average.getObject(), average.getConfidence(), average.getRelativeTo()); |
|
| 151 | - } |
|
| 152 | - |
|
| 153 | - /** |
|
| 154 | - * Absolute difference to {@link #getAverage() this cluster's average bearing} in degrees. If there is no bearing stored in |
|
| 155 | - * this cluster yet, or the combined confidence of the values in the cluster is 0.0, 0.0 is returned. |
|
| 156 | - * |
|
| 157 | - * @return a value <code>>=0.0</code> |
|
| 158 | - */ |
|
| 159 | - private double getDifferenceFromAverage(Bearing bearing, RelativeTo relativeTo) { |
|
| 160 | - Bearing averageBearing = getAverage(relativeTo).getObject(); |
|
| 161 | - return averageBearing == null ? 0.0 : Math.abs(averageBearing.getDifferenceTo(bearing).getDegrees()); |
|
| 162 | - } |
|
| 163 | - |
|
| 164 | - protected Iterable<BearingWithConfidence<RelativeTo>> getBearings() { |
|
| 165 | - return Collections.unmodifiableCollection(bearings); |
|
| 166 | - } |
|
| 167 | - |
|
| 168 | - @Override |
|
| 169 | - public String toString() { |
|
| 170 | - return bearings.toString(); |
|
| 171 | - } |
|
| 172 | - |
|
| 173 | - private BearingWithConfidenceCluster<RelativeTo> createEmptyCluster() { |
|
| 174 | - return new BearingWithConfidenceCluster<RelativeTo>(weigher); |
|
| 175 | - } |
|
| 176 | - |
|
| 177 | - public void clear() { |
|
| 178 | - bearings.clear(); |
|
| 179 | - } |
|
| 180 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/ConfidenceBasedAverager.java
| ... | ... | @@ -1,26 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence; |
|
| 2 | - |
|
| 3 | -import java.util.Iterator; |
|
| 4 | - |
|
| 5 | -import com.sap.sse.common.scalablevalue.HasConfidence; |
|
| 6 | -import com.sap.sse.common.scalablevalue.HasConfidenceAndIsScalable; |
|
| 7 | - |
|
| 8 | -public interface ConfidenceBasedAverager<ValueType, BaseType, RelativeTo> { |
|
| 9 | - /** |
|
| 10 | - * If a non-<code>null</code> weigher has been set for this averager, <code>at</code> must be a valid reference |
|
| 11 | - * point to which the weigher will determine the difference and from it the confidence for each of the |
|
| 12 | - * <code>values</code>. Otherwise, the <code>at</code> argument is ignored. |
|
| 13 | - * |
|
| 14 | - * @return <code>null</code> if <code>values==null</code> or <code>values</code> is empty; otherwise, a non- |
|
| 15 | - * <code>null</code> average with confidence is returned. Note, however, that the |
|
| 16 | - * {@link HasConfidence#getObject() object} in the {@link HasConfidence} result may be <code>null</code>, |
|
| 17 | - * e.g., if the combined confidence went to 0.0 and the averager was unable to determine a reasonable |
|
| 18 | - * average value. The result's confidence is the arithmetic average of the confidences of all values |
|
| 19 | - * that contributed to the result. |
|
| 20 | - */ |
|
| 21 | - HasConfidence<ValueType, BaseType, RelativeTo> getAverage( |
|
| 22 | - Iterable<? extends HasConfidenceAndIsScalable<ValueType, BaseType, RelativeTo>> values, RelativeTo at); |
|
| 23 | - |
|
| 24 | - HasConfidence<ValueType, BaseType, RelativeTo> getAverage( |
|
| 25 | - Iterator<? extends HasConfidenceAndIsScalable<ValueType, BaseType, RelativeTo>> values, RelativeTo at); |
|
| 26 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/ConfidenceFactory.java
| ... | ... | @@ -1,47 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.confidence.impl.ConfidenceBasedAveragerFactoryImpl; |
|
| 5 | -import com.sap.sse.common.Distance; |
|
| 6 | -import com.sap.sse.common.Duration; |
|
| 7 | -import com.sap.sse.common.TimePoint; |
|
| 8 | - |
|
| 9 | -public interface ConfidenceFactory { |
|
| 10 | - ConfidenceFactory INSTANCE = new ConfidenceBasedAveragerFactoryImpl(); |
|
| 11 | - |
|
| 12 | - /** |
|
| 13 | - * @param weigher |
|
| 14 | - * used to determine the confidence of the elements to be averaged, relative to the reference point given |
|
| 15 | - * as parameter to {@link ConfidenceBasedAverager#getAverage(Iterable, Object)}. If <code>null</code>, |
|
| 16 | - * 1.0 will be assumed as default confidence for all values provided, regardless the reference point |
|
| 17 | - * relative to which the average is to be computed |
|
| 18 | - */ |
|
| 19 | - <ValueType, BaseType, RelativeTo> ConfidenceBasedAverager<ValueType, BaseType, RelativeTo> createAverager(Weigher<RelativeTo> weigher); |
|
| 20 | - |
|
| 21 | - <RelativeTo> Weigher<RelativeTo> createConstantWeigher(double constantConfidence); |
|
| 22 | - |
|
| 23 | - /** |
|
| 24 | - * Creates a weigher for time points. With increasing time difference the weight/confidence decreases exponentially. |
|
| 25 | - * It is halved every <code>halfConfidenceAfterMilliseconds</code> milliseconds. |
|
| 26 | - */ |
|
| 27 | - Weigher<TimePoint> createExponentialTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds); |
|
| 28 | - |
|
| 29 | - /** |
|
| 30 | - * Like {@link #createExponentialTimeDifferenceWeigher(long)}, only that additionally a minimum confidence value is defined. |
|
| 31 | - * This can be useful for averagers that have trouble with values scaled down with 0.0. |
|
| 32 | - */ |
|
| 33 | - Weigher<TimePoint> createExponentialTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds, double minimumConfidence); |
|
| 34 | - |
|
| 35 | - Weigher<TimePoint> createHyperbolicTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds); |
|
| 36 | - |
|
| 37 | - Weigher<TimePoint> createStandardDistributionTimeDifferenceWeigher(Duration standardDeviation); |
|
| 38 | - |
|
| 39 | - Weigher<TimePoint> createHyperbolicSquaredTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds); |
|
| 40 | - |
|
| 41 | - /** |
|
| 42 | - * Constructs a weigher that determines a confidence based on a distance. A {@link Distance#NULL zero distance} |
|
| 43 | - * will yield a confidence of 1; a distance of <code>halfConfidence</code> will return a confidence of .5, and the |
|
| 44 | - * confidence will decrease hyperbolically with increasing distance. |
|
| 45 | - */ |
|
| 46 | - Weigher<Position> createHyperbolicDistanceWeigher(Distance halfConfidence); |
|
| 47 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/Weigher.java
| ... | ... | @@ -1,19 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence; |
|
| 2 | - |
|
| 3 | -import java.io.Serializable; |
|
| 4 | - |
|
| 5 | -/** |
|
| 6 | - * A weigher can compute a confidence value for a distance of two <code>RelativeTo</code> objects. |
|
| 7 | - * |
|
| 8 | - * @author Axel Uhl (d043530) |
|
| 9 | - */ |
|
| 10 | -public interface Weigher<RelativeTo> extends Serializable { |
|
| 11 | - /** |
|
| 12 | - * Computes a confidence, based on some weighed notion of "distance" between the two <code>RelativeTo</code> objects. |
|
| 13 | - * |
|
| 14 | - * @param fix the reference point of some object for which to determine the confidence value |
|
| 15 | - * @param request the reference point provided with some aggregation request; the confidence value returned for the fix is |
|
| 16 | - * relative to the request's reference point. |
|
| 17 | - */ |
|
| 18 | - double getConfidence(RelativeTo fix, RelativeTo request); |
|
| 19 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/impl/BearingWithConfidenceImpl.java
| ... | ... | @@ -1,22 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.DoublePair; |
|
| 4 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 5 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 6 | -import com.sap.sse.common.Bearing; |
|
| 7 | -import com.sap.sse.common.scalablevalue.IsScalable; |
|
| 8 | -import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 9 | - |
|
| 10 | -public class BearingWithConfidenceImpl<RelativeTo> extends HasConfidenceImpl<DoublePair, Bearing, RelativeTo> |
|
| 11 | -implements BearingWithConfidence<RelativeTo>, IsScalable<DoublePair, Bearing> { |
|
| 12 | - private static final long serialVersionUID = 1624026377840747818L; |
|
| 13 | - |
|
| 14 | - public BearingWithConfidenceImpl(Bearing bearing, double confidence, RelativeTo relativeTo) { |
|
| 15 | - super(bearing, confidence, relativeTo); |
|
| 16 | - } |
|
| 17 | - |
|
| 18 | - @Override |
|
| 19 | - public ScalableValue<DoublePair, Bearing> getScalableValue() { |
|
| 20 | - return new ScalableBearing(getObject()); |
|
| 21 | - } |
|
| 22 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/impl/ConfidenceBasedAveragerFactoryImpl.java
| ... | ... | @@ -1,58 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.confidence.ConfidenceBasedAverager; |
|
| 5 | -import com.sap.sailing.domain.common.confidence.ConfidenceFactory; |
|
| 6 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 7 | -import com.sap.sse.common.Distance; |
|
| 8 | -import com.sap.sse.common.Duration; |
|
| 9 | -import com.sap.sse.common.TimePoint; |
|
| 10 | - |
|
| 11 | -public class ConfidenceBasedAveragerFactoryImpl implements ConfidenceFactory { |
|
| 12 | - @Override |
|
| 13 | - public <RelativeTo> Weigher<RelativeTo> createConstantWeigher(final double constantConfidence) { |
|
| 14 | - return new Weigher<RelativeTo>() { |
|
| 15 | - private static final long serialVersionUID = 8693131975511149792L; |
|
| 16 | - |
|
| 17 | - @Override |
|
| 18 | - public double getConfidence(RelativeTo fix, RelativeTo request) { |
|
| 19 | - return constantConfidence; |
|
| 20 | - } |
|
| 21 | - }; |
|
| 22 | - } |
|
| 23 | - |
|
| 24 | - @Override |
|
| 25 | - public <ValueType, BaseType, RelativeTo> ConfidenceBasedAverager<ValueType, BaseType, RelativeTo> createAverager(Weigher<RelativeTo> weigher) { |
|
| 26 | - return new ConfidenceBasedAveragerImpl<ValueType, BaseType, RelativeTo>(weigher); |
|
| 27 | - } |
|
| 28 | - |
|
| 29 | - @Override |
|
| 30 | - public Weigher<TimePoint> createHyperbolicTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds) { |
|
| 31 | - return new HyperbolicTimeDifferenceWeigher(halfConfidenceAfterMilliseconds); |
|
| 32 | - } |
|
| 33 | - |
|
| 34 | - @Override |
|
| 35 | - public Weigher<TimePoint> createStandardDistributionTimeDifferenceWeigher(Duration standardDeviation) { |
|
| 36 | - return new StandardDistributionTimeDifferenceWeigher(standardDeviation); |
|
| 37 | - } |
|
| 38 | - |
|
| 39 | - @Override |
|
| 40 | - public Weigher<Position> createHyperbolicDistanceWeigher(Distance halfConfidence) { |
|
| 41 | - return new HyperbolicDistanceWeigher(halfConfidence); |
|
| 42 | - } |
|
| 43 | - |
|
| 44 | - @Override |
|
| 45 | - public Weigher<TimePoint> createHyperbolicSquaredTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds) { |
|
| 46 | - return new HyperbolicSquaredTimeDifferenceWeigher(halfConfidenceAfterMilliseconds); |
|
| 47 | - } |
|
| 48 | - |
|
| 49 | - @Override |
|
| 50 | - public Weigher<TimePoint> createExponentialTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds) { |
|
| 51 | - return new ExponentialTimeDifferenceWeigher(halfConfidenceAfterMilliseconds); |
|
| 52 | - } |
|
| 53 | - |
|
| 54 | - @Override |
|
| 55 | - public Weigher<TimePoint> createExponentialTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds, double minimumConfidence) { |
|
| 56 | - return new ExponentialTimeDifferenceWeigher(halfConfidenceAfterMilliseconds, minimumConfidence); |
|
| 57 | - } |
|
| 58 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/impl/ConfidenceBasedAveragerImpl.java
| ... | ... | @@ -1,87 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence.impl; |
|
| 2 | - |
|
| 3 | -import java.util.Iterator; |
|
| 4 | - |
|
| 5 | -import com.sap.sailing.domain.common.confidence.ConfidenceBasedAverager; |
|
| 6 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 7 | -import com.sap.sse.common.scalablevalue.HasConfidence; |
|
| 8 | -import com.sap.sse.common.scalablevalue.HasConfidenceAndIsScalable; |
|
| 9 | -import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 10 | - |
|
| 11 | - |
|
| 12 | -/** |
|
| 13 | - * A set of values that {@link HasConfidence have a confidence attached} can be averaged using the confidence value to |
|
| 14 | - * weigh values with greater confidence more than those with lesser confidence. It implements the following algorithm |
|
| 15 | - * for a sequence of <code>n</code> tuples <code>(v1, c1), ..., (vn, cn)</code> of a value <code>vi</code> with a |
|
| 16 | - * confidence <code>ci</code> each:<p> |
|
| 17 | - * |
|
| 18 | - * <code>a := (c1*v1 + ... + cn*vn) / (c1 + ... + cn)</code>. For a single value with a confidence this trivially |
|
| 19 | - * results in <code>c1*v1 / (c1)</code> which is equivalent to <code>v1</code>. As another example, consider two values |
|
| 20 | - * with equal confidence <code>0.8</code>. Then, <code>a := (0.8*v1 + 0.8*vn) / (0.8 + 0.8)</code> which resolves to |
|
| 21 | - * <code>0.5*v1 + 0.5*v2</code> which is obviously the arithmetic mean of the two values. If one value has confidence |
|
| 22 | - * <code>0.8</code> and the other <code>0.4</code>, then <code>a := (0.8*v1 + 0.4*vn) / (0.8 + 0.4)</code> which |
|
| 23 | - * resolves to <code>2/3*v1 + 1/3*v2</code> which is a weighed average. |
|
| 24 | - * <p> |
|
| 25 | - * |
|
| 26 | - * Note, that this doesn't exactly take facts for facts. In other words, if one value is provided with a confidence of |
|
| 27 | - * <code>1.0</code>, the average may still be influenced by other values. However, this cleanly resolves otherwise |
|
| 28 | - * mutually contradictory "facts" such a <code>(v1, 1.0), (v2, 1.0)</code> with <code>v1 != v2</code>. It is considered |
|
| 29 | - * bad practice to claim a fact as soon as it results from any kind of measurement or estimation. All measurement |
|
| 30 | - * devices produce some statistical errors, no matter how small (cf. Heisenberg ;-) ). |
|
| 31 | - * |
|
| 32 | - * @author Axel Uhl (d043530) |
|
| 33 | - */ |
|
| 34 | -public class ConfidenceBasedAveragerImpl<ValueType, BaseType, RelativeTo> implements ConfidenceBasedAverager<ValueType, BaseType, RelativeTo> { |
|
| 35 | - private final Weigher<RelativeTo> weigher; |
|
| 36 | - |
|
| 37 | - /** |
|
| 38 | - * @param weigher |
|
| 39 | - * If <code>null</code>, 1.0 will be assumed as default confidence for all values provided, regardless |
|
| 40 | - * the reference point relative to which the average is to be computed |
|
| 41 | - */ |
|
| 42 | - public ConfidenceBasedAveragerImpl(Weigher<RelativeTo> weigher) { |
|
| 43 | - this.weigher = weigher; |
|
| 44 | - } |
|
| 45 | - |
|
| 46 | - @Override |
|
| 47 | - public HasConfidence<ValueType, BaseType, RelativeTo> getAverage( |
|
| 48 | - Iterable<? extends HasConfidenceAndIsScalable<ValueType, BaseType, RelativeTo>> values, RelativeTo at) { |
|
| 49 | - return values == null ? null : getAverage(values.iterator(), at); |
|
| 50 | - } |
|
| 51 | - |
|
| 52 | - @Override |
|
| 53 | - public HasConfidence<ValueType, BaseType, RelativeTo> getAverage( |
|
| 54 | - Iterator<? extends HasConfidenceAndIsScalable<ValueType, BaseType, RelativeTo>> values, RelativeTo at) { |
|
| 55 | - if (values == null || !values.hasNext()) { |
|
| 56 | - return null; |
|
| 57 | - } else { |
|
| 58 | - ScalableValue<ValueType, BaseType> numerator = null; |
|
| 59 | - double confidenceSum = 0; |
|
| 60 | - int count = 0; |
|
| 61 | - while (values.hasNext()) { |
|
| 62 | - HasConfidenceAndIsScalable<ValueType, BaseType, RelativeTo> next = values.next(); |
|
| 63 | - double relativeWeight = getWeight(next, at); |
|
| 64 | - ScalableValue<ValueType, BaseType> weightedNext = next.getScalableValue().multiply(relativeWeight); |
|
| 65 | - if (numerator == null) { |
|
| 66 | - numerator = weightedNext; |
|
| 67 | - } else { |
|
| 68 | - numerator = numerator.add(weightedNext); |
|
| 69 | - } |
|
| 70 | - confidenceSum += relativeWeight; |
|
| 71 | - count++; |
|
| 72 | - } |
|
| 73 | - // TODO consider greater variance to reduce the confidence |
|
| 74 | - double newConfidence = confidenceSum / count; |
|
| 75 | - BaseType result = numerator.divide(confidenceSum); |
|
| 76 | - return new HasConfidenceImpl<ValueType, BaseType, RelativeTo>(result, newConfidence, at); |
|
| 77 | - } |
|
| 78 | - } |
|
| 79 | - |
|
| 80 | - protected double getWeight(HasConfidenceAndIsScalable<ValueType, BaseType, RelativeTo> next, RelativeTo at) { |
|
| 81 | - return (getWeigher() == null ? 1.0 : getWeigher().getConfidence(next.getRelativeTo(), at)) * next.getConfidence(); |
|
| 82 | - } |
|
| 83 | - |
|
| 84 | - private Weigher<RelativeTo> getWeigher() { |
|
| 85 | - return weigher; |
|
| 86 | - } |
|
| 87 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/impl/ExponentialTimeDifferenceWeigher.java
| ... | ... | @@ -1,37 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 4 | -import com.sap.sse.common.TimePoint; |
|
| 5 | - |
|
| 6 | -/** |
|
| 7 | - * The weigher computes an exponentially-decreasing weight based on the time difference of two {@link TimePoint}s. |
|
| 8 | - * The weigher can be configured by the time difference after which the confidence is halved. A minimum confidence can |
|
| 9 | - * optionally be set. |
|
| 10 | - * |
|
| 11 | - * @author Axel Uhl (d043530) |
|
| 12 | - */ |
|
| 13 | -public class ExponentialTimeDifferenceWeigher implements Weigher<TimePoint> { |
|
| 14 | - private static final long serialVersionUID = 1832731495731693670L; |
|
| 15 | - |
|
| 16 | - private final static double logHalf = Math.log(0.5); |
|
| 17 | - |
|
| 18 | - private final long halfConfidenceAfterMilliseconds; |
|
| 19 | - |
|
| 20 | - private final double minimumConfidence; |
|
| 21 | - |
|
| 22 | - public ExponentialTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds, double minimumConfidence) { |
|
| 23 | - this.halfConfidenceAfterMilliseconds = halfConfidenceAfterMilliseconds; |
|
| 24 | - this.minimumConfidence = minimumConfidence; |
|
| 25 | - } |
|
| 26 | - |
|
| 27 | - public ExponentialTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds) { |
|
| 28 | - this(halfConfidenceAfterMilliseconds, /* minimumConfidence */ 0); |
|
| 29 | - } |
|
| 30 | - |
|
| 31 | - @Override |
|
| 32 | - public double getConfidence(TimePoint fix, TimePoint request) { |
|
| 33 | - return Math.max(minimumConfidence, |
|
| 34 | - Math.exp(logHalf * ((double) (Math.abs(request.asMillis() - fix.asMillis())) / (double) halfConfidenceAfterMilliseconds))); |
|
| 35 | - } |
|
| 36 | - |
|
| 37 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/impl/HasConfidenceImpl.java
| ... | ... | @@ -1,36 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sse.common.scalablevalue.HasConfidence; |
|
| 4 | - |
|
| 5 | -public class HasConfidenceImpl<ValueType, BaseType, RelativeTo> implements HasConfidence<ValueType, BaseType, RelativeTo> { |
|
| 6 | - private static final long serialVersionUID = -1635823148449693024L; |
|
| 7 | - private final double confidence; |
|
| 8 | - private final RelativeTo relativeTo; |
|
| 9 | - private final BaseType object; |
|
| 10 | - |
|
| 11 | - public HasConfidenceImpl(BaseType object, double confidence, RelativeTo relativeTo) { |
|
| 12 | - this.confidence = confidence; |
|
| 13 | - this.relativeTo = relativeTo; |
|
| 14 | - this.object = object; |
|
| 15 | - } |
|
| 16 | - |
|
| 17 | - @Override |
|
| 18 | - public double getConfidence() { |
|
| 19 | - return confidence; |
|
| 20 | - } |
|
| 21 | - |
|
| 22 | - @Override |
|
| 23 | - public RelativeTo getRelativeTo() { |
|
| 24 | - return relativeTo; |
|
| 25 | - } |
|
| 26 | - |
|
| 27 | - @Override |
|
| 28 | - public BaseType getObject() { |
|
| 29 | - return object; |
|
| 30 | - } |
|
| 31 | - |
|
| 32 | - @Override |
|
| 33 | - public String toString() { |
|
| 34 | - return ""+getObject()+"@"+getConfidence(); |
|
| 35 | - } |
|
| 36 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/impl/HyperbolicDistanceWeigher.java
| ... | ... | @@ -1,53 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 5 | -import com.sap.sse.common.Distance; |
|
| 6 | - |
|
| 7 | -/** |
|
| 8 | - * Uses {@link Position#getQuickApproximateNauticalMileDistance(Position)} to come |
|
| 9 | - * to a quick and reasonably fair weight for distances where the weight asymptotically |
|
| 10 | - * decreases hyperbolically with distance. |
|
| 11 | - * |
|
| 12 | - * @author Axel Uhl (d043530) |
|
| 13 | - * |
|
| 14 | - */ |
|
| 15 | -public class HyperbolicDistanceWeigher implements Weigher<Position> { |
|
| 16 | - private static final long serialVersionUID = 5521299690322077224L; |
|
| 17 | - |
|
| 18 | - private final Distance halfConfidence; |
|
| 19 | - |
|
| 20 | - public HyperbolicDistanceWeigher(Distance halfConfidence) { |
|
| 21 | - this.halfConfidence = halfConfidence; |
|
| 22 | - } |
|
| 23 | - |
|
| 24 | - /** |
|
| 25 | - * Postconditions: |
|
| 26 | - * <pre> |
|
| 27 | - * |fix-request|=halfConfidence ==> result==0.5 |
|
| 28 | - * 0 <= result <= 1 |
|
| 29 | - * fix==request ==> result==1 |
|
| 30 | - * </pre> |
|
| 31 | - * |
|
| 32 | - * This implies the following formula for result := f(x): |
|
| 33 | - * |
|
| 34 | - * <pre> |
|
| 35 | - * for x := |fix-request| with x>=0: |
|
| 36 | - * f(x) := c/(x+y) |
|
| 37 | - * f(0) = 1 = c/y ==> c = y |
|
| 38 | - * f(halfConfidence) = 0.5 = c/(halfConfidence+y) |
|
| 39 | - * => c/y = 2c/(halfConfidence+y) |
|
| 40 | - * <=> 1/y = 2/(halfConfidence+y) |
|
| 41 | - * <=> halfConfidence + y = 2y |
|
| 42 | - * <=> y = halfConfidence |
|
| 43 | - * => c = halfConfidence |
|
| 44 | - * </pre> |
|
| 45 | - */ |
|
| 46 | - @Override |
|
| 47 | - public double getConfidence(Position fix, Position request) { |
|
| 48 | - double x = fix.getQuickApproximateNauticalMileDistance(request); |
|
| 49 | - double c = halfConfidence.getNauticalMiles(); |
|
| 50 | - double y = c; |
|
| 51 | - return c/(x+y); |
|
| 52 | - } |
|
| 53 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/impl/HyperbolicSquaredTimeDifferenceWeigher.java
| ... | ... | @@ -1,44 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 4 | -import com.sap.sse.common.TimePoint; |
|
| 5 | - |
|
| 6 | -public class HyperbolicSquaredTimeDifferenceWeigher implements Weigher<TimePoint> { |
|
| 7 | - private static final long serialVersionUID = 4378168079868145134L; |
|
| 8 | - private final long halfConfidenceAfterMilliseconds; |
|
| 9 | - |
|
| 10 | - public HyperbolicSquaredTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds) { |
|
| 11 | - this.halfConfidenceAfterMilliseconds = halfConfidenceAfterMilliseconds; |
|
| 12 | - } |
|
| 13 | - |
|
| 14 | - /** |
|
| 15 | - * Postconditions: |
|
| 16 | - * <pre> |
|
| 17 | - * |fix-request|=halfConfidenceAfterMilliseconds ==> result==0.5 |
|
| 18 | - * 0 <= result <= 1 |
|
| 19 | - * fix=request ==> result==1 |
|
| 20 | - * With request approaching infinity, the function grows with the reciprocal of request squared |
|
| 21 | - * </pre> |
|
| 22 | - * |
|
| 23 | - * This implies the following formula for result := f(x): |
|
| 24 | - * |
|
| 25 | - * <pre> |
|
| 26 | - * for x := |fix-request| with x>=0: |
|
| 27 | - * f(x) := c/(x^2+y) |
|
| 28 | - * f(0) = 1 = c/y ==> c = y |
|
| 29 | - * f(halfConfidenceAfterMilliseconds) = 0.5 = c/(halfConfidenceAfterMilliseconds+y) |
|
| 30 | - * => c/y = 2c/(halfConfidenceAfterMilliseconds+y) |
|
| 31 | - * <=> 1/y = 2/(halfConfidenceAfterMilliseconds+y) |
|
| 32 | - * <=> halfConfidenceAfterMilliseconds + y = 2y |
|
| 33 | - * <=> y = halfConfidenceAfterMilliseconds |
|
| 34 | - * => c = halfConfidenceAfterMilliseconds |
|
| 35 | - * </pre> |
|
| 36 | - */ |
|
| 37 | - @Override |
|
| 38 | - public double getConfidence(TimePoint fix, TimePoint request) { |
|
| 39 | - double x = Math.abs(fix.asMillis() - request.asMillis()); |
|
| 40 | - double c = halfConfidenceAfterMilliseconds*halfConfidenceAfterMilliseconds; |
|
| 41 | - double y = c; |
|
| 42 | - return c/(x*x+y); |
|
| 43 | - } |
|
| 44 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/impl/HyperbolicTimeDifferenceWeigher.java
| ... | ... | @@ -1,43 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 4 | -import com.sap.sse.common.TimePoint; |
|
| 5 | - |
|
| 6 | -public class HyperbolicTimeDifferenceWeigher implements Weigher<TimePoint> { |
|
| 7 | - private static final long serialVersionUID = 4378168079868145134L; |
|
| 8 | - private final long halfConfidenceAfterMilliseconds; |
|
| 9 | - |
|
| 10 | - public HyperbolicTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds) { |
|
| 11 | - this.halfConfidenceAfterMilliseconds = halfConfidenceAfterMilliseconds; |
|
| 12 | - } |
|
| 13 | - |
|
| 14 | - /** |
|
| 15 | - * Postconditions: |
|
| 16 | - * <pre> |
|
| 17 | - * |fix-request|=halfConfidenceAfterMilliseconds ==> result==0.5 |
|
| 18 | - * 0 <= result <= 1 |
|
| 19 | - * fix==request ==> result==1 |
|
| 20 | - * </pre> |
|
| 21 | - * |
|
| 22 | - * This implies the following formula for result := f(x): |
|
| 23 | - * |
|
| 24 | - * <pre> |
|
| 25 | - * for x := |fix-request| with x>=0: |
|
| 26 | - * f(x) := c/(x+y) |
|
| 27 | - * f(0) = 1 = c/y ==> c = y |
|
| 28 | - * f(halfConfidenceAfterMilliseconds) = 0.5 = c/(halfConfidenceAfterMilliseconds+y) |
|
| 29 | - * => c/y = 2c/(halfConfidenceAfterMilliseconds+y) |
|
| 30 | - * <=> 1/y = 2/(halfConfidenceAfterMilliseconds+y) |
|
| 31 | - * <=> halfConfidenceAfterMilliseconds + y = 2y |
|
| 32 | - * <=> y = halfConfidenceAfterMilliseconds |
|
| 33 | - * => c = halfConfidenceAfterMilliseconds |
|
| 34 | - * </pre> |
|
| 35 | - */ |
|
| 36 | - @Override |
|
| 37 | - public double getConfidence(TimePoint fix, TimePoint request) { |
|
| 38 | - double x = Math.abs(fix.asMillis() - request.asMillis()); |
|
| 39 | - double c = halfConfidenceAfterMilliseconds; |
|
| 40 | - double y = halfConfidenceAfterMilliseconds; |
|
| 41 | - return c/(x+y); |
|
| 42 | - } |
|
| 43 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/impl/LazyDividedScaledPosition.java
| ... | ... | @@ -1,47 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.AbstractPosition; |
|
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalablePosition; |
|
| 6 | - |
|
| 7 | -/** |
|
| 8 | - * A wind object's position is currently not very frequently used. However, during averaging, computing the average |
|
| 9 | - * position of a number of wind fixes costs quite a few CPU cycles. By making this calculation lazy / on-demand we may |
|
| 10 | - * save some of them. |
|
| 11 | - * |
|
| 12 | - * @author Axel Uhl (d043530) |
|
| 13 | - * |
|
| 14 | - */ |
|
| 15 | -public class LazyDividedScaledPosition extends AbstractPosition { |
|
| 16 | - private static final long serialVersionUID = -4755705843467806809L; |
|
| 17 | - private final ScalablePosition scalablePosition; |
|
| 18 | - private final double divisor; |
|
| 19 | - private Position position; |
|
| 20 | - |
|
| 21 | - public LazyDividedScaledPosition(ScalablePosition scalablePosition, double divisor) { |
|
| 22 | - super(); |
|
| 23 | - this.scalablePosition = scalablePosition; |
|
| 24 | - this.divisor = divisor; |
|
| 25 | - this.position = null; |
|
| 26 | - } |
|
| 27 | - |
|
| 28 | - @Override |
|
| 29 | - public synchronized double getLatRad() { |
|
| 30 | - if (position == null) { |
|
| 31 | - resolve(); |
|
| 32 | - } |
|
| 33 | - return position.getLatRad(); |
|
| 34 | - } |
|
| 35 | - |
|
| 36 | - @Override |
|
| 37 | - public synchronized double getLngRad() { |
|
| 38 | - if (position == null) { |
|
| 39 | - resolve(); |
|
| 40 | - } |
|
| 41 | - return position.getLngRad(); |
|
| 42 | - } |
|
| 43 | - |
|
| 44 | - private synchronized void resolve() { |
|
| 45 | - position = scalablePosition.divide(divisor); |
|
| 46 | - } |
|
| 47 | -} |
|
| ... | ... | \ No newline at end of file |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/impl/PositionAndTimePointWeigher.java
| ... | ... | @@ -1,53 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.confidence.ConfidenceFactory; |
|
| 5 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 6 | -import com.sap.sse.common.Distance; |
|
| 7 | -import com.sap.sse.common.Duration; |
|
| 8 | -import com.sap.sse.common.TimePoint; |
|
| 9 | -import com.sap.sse.common.Util; |
|
| 10 | - |
|
| 11 | -/** |
|
| 12 | - * A weigher that uses a {@link Position} and a {@link TimePoint} to compute a confidence based on |
|
| 13 | - * time and space distance. If the <code>fix</code> or the <code>request</code> parameter in a call |
|
| 14 | - * to {@link #getConfidence(com.sap.sse.common.Util.Pair, com.sap.sse.common.Util.Pair)} have a <code>null</code> |
|
| 15 | - * {@link Position} then no distance-based confidence is considered, and only the time difference is taken |
|
| 16 | - * into account. Otherwise, the time-based confidence and the distance-based confidence are multiplied to |
|
| 17 | - * result in the total confidence.<p> |
|
| 18 | - * |
|
| 19 | - * @author Axel Uhl (d043530) |
|
| 20 | - * |
|
| 21 | - */ |
|
| 22 | -public class PositionAndTimePointWeigher implements Weigher<Util.Pair<Position, TimePoint>> { |
|
| 23 | - private final static String USE_POSITION_SYSTEM_PROPERTY_NAME = "spatialWind"; |
|
| 24 | - private static final long serialVersionUID = -262428237738496818L; |
|
| 25 | - private final Weigher<TimePoint> timeWeigher; |
|
| 26 | - private final Weigher<Position> distanceWeigher; |
|
| 27 | - private final boolean usePosition; |
|
| 28 | - |
|
| 29 | - public PositionAndTimePointWeigher(Duration halfConfidenceAfter, Distance halfConfidenceDistance) { |
|
| 30 | - timeWeigher = ConfidenceFactory.INSTANCE.createHyperbolicTimeDifferenceWeigher( |
|
| 31 | - /* use as standard deviation */ halfConfidenceAfter.asMillis()); |
|
| 32 | - distanceWeigher = ConfidenceFactory.INSTANCE.createHyperbolicDistanceWeigher(halfConfidenceDistance); |
|
| 33 | - this.usePosition = Boolean.valueOf(System.getProperty(USE_POSITION_SYSTEM_PROPERTY_NAME, "true")); |
|
| 34 | - } |
|
| 35 | - |
|
| 36 | - @Override |
|
| 37 | - public double getConfidence(Util.Pair<Position, TimePoint> fix, Util.Pair<Position, TimePoint> reference) { |
|
| 38 | - final double timeConfidence = timeWeigher.getConfidence(fix.getB(), reference.getB()); |
|
| 39 | - final double distanceConfidence; |
|
| 40 | - // For now, we make the use of the position for spatial wind field calculation optional. It has to be turned |
|
| 41 | - // on by providing a system property using -DspatialWind=true |
|
| 42 | - if (usePosition && reference != null) { |
|
| 43 | - if (fix.getA() != null && reference.getA() != null) { |
|
| 44 | - distanceConfidence = distanceWeigher.getConfidence(fix.getA(), reference.getA()); |
|
| 45 | - } else { |
|
| 46 | - distanceConfidence = 0.1; |
|
| 47 | - } |
|
| 48 | - } else { |
|
| 49 | - distanceConfidence = 1; |
|
| 50 | - } |
|
| 51 | - return timeConfidence * distanceConfidence; |
|
| 52 | - } |
|
| 53 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/impl/ScalableWind.java
| ... | ... | @@ -1,12 +1,13 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.confidence.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.DoubleTriple; |
|
| 4 | 3 | import com.sap.sailing.domain.common.Wind; |
| 5 | 4 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 6 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalablePosition; |
|
| 7 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableSpeedWithBearing; |
|
| 5 | +import com.sap.sse.common.DoubleTriple; |
|
| 6 | +import com.sap.sse.common.confidence.impl.LazyDividedScaledPosition; |
|
| 8 | 7 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 9 | 8 | import com.sap.sse.common.scalablevalue.ScalableValue; |
| 9 | +import com.sap.sse.common.scalablevalue.impl.ScalablePosition; |
|
| 10 | +import com.sap.sse.common.scalablevalue.impl.ScalableSpeedWithBearing; |
|
| 10 | 11 | |
| 11 | 12 | /** |
| 12 | 13 | * Wind values are scaled by separately scaling their speed and bearing, and separately scaling their time point, and |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/confidence/impl/StandardDistributionTimeDifferenceWeigher.java
| ... | ... | @@ -1,23 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.confidence.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 4 | -import com.sap.sse.common.Duration; |
|
| 5 | -import com.sap.sse.common.TimePoint; |
|
| 6 | - |
|
| 7 | -public class StandardDistributionTimeDifferenceWeigher implements Weigher<TimePoint> { |
|
| 8 | - private static final long serialVersionUID = 4378168079868145134L; |
|
| 9 | - private final double standardDeviationAsMillis; |
|
| 10 | - private final double oneDividedByStandardDeviationTimesSquareRootOfTwoPi; |
|
| 11 | - |
|
| 12 | - public StandardDistributionTimeDifferenceWeigher(Duration standardDeviation) { |
|
| 13 | - this.standardDeviationAsMillis = standardDeviation.asMillis(); |
|
| 14 | - this.oneDividedByStandardDeviationTimesSquareRootOfTwoPi = 1/(this.standardDeviationAsMillis*Math.sqrt(2*Math.PI)); |
|
| 15 | - } |
|
| 16 | - |
|
| 17 | - @Override |
|
| 18 | - public double getConfidence(TimePoint fix, TimePoint request) { |
|
| 19 | - double xMinusMu = Math.abs(fix.asMillis() - request.asMillis()); |
|
| 20 | - double xMinusMuDividedByStandardDeviation = xMinusMu/standardDeviationAsMillis; |
|
| 21 | - return oneDividedByStandardDeviationTimesSquareRootOfTwoPi * Math.exp(-0.5*xMinusMuDividedByStandardDeviation*xMinusMuDividedByStandardDeviation); |
|
| 22 | - } |
|
| 23 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/dto/CourseAreaDTO.java
| ... | ... | @@ -2,8 +2,8 @@ package com.sap.sailing.domain.common.dto; |
| 2 | 2 | |
| 3 | 3 | import java.util.UUID; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | 5 | import com.sap.sse.common.Distance; |
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | 7 | import com.sap.sse.security.shared.dto.NamedDTO; |
| 8 | 8 | |
| 9 | 9 | /** |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/dto/LeaderboardEntryDTO.java
| ... | ... | @@ -5,13 +5,13 @@ import java.util.List; |
| 5 | 5 | |
| 6 | 6 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 7 | 7 | import com.sap.sailing.domain.common.RaceIdentifier; |
| 8 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 9 | 8 | import com.sap.sailing.domain.common.Tack; |
| 10 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 11 | 9 | import com.sap.sse.common.Bearing; |
| 12 | 10 | import com.sap.sse.common.Distance; |
| 13 | 11 | import com.sap.sse.common.Duration; |
| 14 | 12 | import com.sap.sse.common.Speed; |
| 13 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 14 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 15 | 15 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 16 | 16 | |
| 17 | 17 | /** |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/dto/PlacemarkDTO.java
| ... | ... | @@ -1,6 +1,6 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.dto; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 3 | +import com.sap.sse.common.Position; |
|
| 4 | 4 | import com.sap.sse.security.shared.dto.NamedDTO; |
| 5 | 5 | |
| 6 | 6 | public class PlacemarkDTO extends NamedDTO { |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/AbstractSpeedWithAbstractBearingImpl.java
| ... | ... | @@ -1,103 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.AbstractSpeedImpl; |
|
| 4 | -import com.sap.sailing.domain.common.CourseChange; |
|
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 7 | -import com.sap.sse.common.Bearing; |
|
| 8 | -import com.sap.sse.common.Distance; |
|
| 9 | -import com.sap.sse.common.Speed; |
|
| 10 | -import com.sap.sse.common.TimePoint; |
|
| 11 | -import com.sap.sse.common.impl.DegreeBearingImpl; |
|
| 12 | -import com.sap.sse.common.impl.MillisecondsTimePoint; |
|
| 13 | - |
|
| 14 | -public abstract class AbstractSpeedWithAbstractBearingImpl extends AbstractSpeedImpl implements SpeedWithBearing { |
|
| 15 | - private static final long serialVersionUID = 6136100417593538013L; |
|
| 16 | - |
|
| 17 | - @Override |
|
| 18 | - public Position travelTo(Position pos, TimePoint from, TimePoint to) { |
|
| 19 | - return pos.translateGreatCircle(getBearing(), this.travel(from, to)); |
|
| 20 | - } |
|
| 21 | - |
|
| 22 | - @Override |
|
| 23 | - public String toString() { |
|
| 24 | - return super.toString()+" to "+getBearing().getDegrees()+"°"; |
|
| 25 | - } |
|
| 26 | - |
|
| 27 | - @Override |
|
| 28 | - public int hashCode() { |
|
| 29 | - return super.hashCode() ^ getBearing().hashCode(); |
|
| 30 | - } |
|
| 31 | - |
|
| 32 | - @Override |
|
| 33 | - public boolean equals(Object object) { |
|
| 34 | - return super.equals(object) && object instanceof SpeedWithBearing |
|
| 35 | - && getBearing().equals(((SpeedWithBearing) object).getBearing()); |
|
| 36 | - } |
|
| 37 | - |
|
| 38 | - @Override |
|
| 39 | - public SpeedWithBearing add(SpeedWithBearing other) { |
|
| 40 | - return AbstractSpeedWithAbstractBearingImpl.add(this, other); |
|
| 41 | - } |
|
| 42 | - |
|
| 43 | - @Override |
|
| 44 | - public CourseChange getCourseChangeRequiredToReach(SpeedWithBearing targetSpeedWithBearing) { |
|
| 45 | - return AbstractSpeedWithBearingImpl.getCourseChangeRequiredToReach(this, targetSpeedWithBearing); |
|
| 46 | - } |
|
| 47 | - |
|
| 48 | - public static CourseChange getCourseChangeRequiredToReach(SpeedWithBearing from, SpeedWithBearing to) { |
|
| 49 | - double courseChangeInDegrees = to.getBearing().getDegrees() - from.getBearing().getDegrees(); |
|
| 50 | - if (courseChangeInDegrees < -180.) { |
|
| 51 | - courseChangeInDegrees += 360.; |
|
| 52 | - } else if (courseChangeInDegrees > 180.) { |
|
| 53 | - courseChangeInDegrees -= 360.; |
|
| 54 | - } |
|
| 55 | - double speedChangeInKnots = to.getKnots() - from.getKnots(); |
|
| 56 | - return new CourseChangeImpl(courseChangeInDegrees, speedChangeInKnots); |
|
| 57 | - } |
|
| 58 | - |
|
| 59 | - @Override |
|
| 60 | - public SpeedWithBearing applyCourseChange(CourseChange courseChange) { |
|
| 61 | - return applyCourseChange(this, courseChange); |
|
| 62 | - } |
|
| 63 | - |
|
| 64 | - public static SpeedWithBearing applyCourseChange(SpeedWithBearing from, CourseChange courseChange) { |
|
| 65 | - double newBearingDeg = from.getBearing().getDegrees() + courseChange.getCourseChangeInDegrees(); |
|
| 66 | - if (newBearingDeg < 0) { |
|
| 67 | - newBearingDeg += 360; |
|
| 68 | - } else if (newBearingDeg > 360) { |
|
| 69 | - newBearingDeg -= 360; |
|
| 70 | - } |
|
| 71 | - Bearing newBearing = new DegreeBearingImpl(newBearingDeg); |
|
| 72 | - double newSpeedInKnots = from.getKnots()+courseChange.getSpeedChangeInKnots(); |
|
| 73 | - return new KnotSpeedWithBearingImpl(newSpeedInKnots, newBearing); |
|
| 74 | - } |
|
| 75 | - |
|
| 76 | - private final static TimePoint start = new MillisecondsTimePoint(0); |
|
| 77 | - private final static TimePoint end = start.plus(60000); |
|
| 78 | - |
|
| 79 | - public static Speed projectTo(SpeedWithBearing speedWithBearing, Position position, Bearing projectTo) { |
|
| 80 | - Position traveledOneMinute = speedWithBearing.travelTo(position, start, end); |
|
| 81 | - Position traveledToProjected = traveledOneMinute.projectToLineThrough(position, projectTo); |
|
| 82 | - Distance projectedDistance = position.getDistance(traveledToProjected); |
|
| 83 | - return projectedDistance.inTime(end.asMillis() - start.asMillis()); |
|
| 84 | - } |
|
| 85 | - |
|
| 86 | - @Override |
|
| 87 | - public Speed projectTo(Position position, Bearing projectTo) { |
|
| 88 | - return projectTo(this, position, projectTo); |
|
| 89 | - } |
|
| 90 | - |
|
| 91 | - public static SpeedWithBearing add(SpeedWithBearing first, SpeedWithBearing other) { |
|
| 92 | - double x = first.getMetersPerSecond()*Math.cos(first.getBearing().getRadians()) + other.getMetersPerSecond()*Math.cos(other.getBearing().getRadians()); |
|
| 93 | - double y = first.getMetersPerSecond()*Math.sin(first.getBearing().getRadians()) + other.getMetersPerSecond()*Math.sin(other.getBearing().getRadians()); |
|
| 94 | - double metersPerSecond = Math.sqrt(x*x+y*y); |
|
| 95 | - double directionRad = (2*Math.PI+Math.atan2(y, x))%(2*Math.PI); |
|
| 96 | - return new MeterPerSecondSpeedWithDegreeBearingImpl(metersPerSecond, new RadianBearingImpl(directionRad)); |
|
| 97 | - } |
|
| 98 | - |
|
| 99 | - @Override |
|
| 100 | - public SpeedWithBearing scale(double d) { |
|
| 101 | - return SpeedWithBearing.super.scale(d); |
|
| 102 | - } |
|
| 103 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/AbstractSpeedWithBearingImpl.java
| ... | ... | @@ -1,18 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 4 | -import com.sap.sse.common.Bearing; |
|
| 5 | - |
|
| 6 | -public abstract class AbstractSpeedWithBearingImpl extends AbstractSpeedWithAbstractBearingImpl implements SpeedWithBearing { |
|
| 7 | - private static final long serialVersionUID = -8594305027333573010L; |
|
| 8 | - /* #gwtnofinal */ private Bearing bearing; |
|
| 9 | - |
|
| 10 | - protected AbstractSpeedWithBearingImpl(final Bearing bearing) { |
|
| 11 | - this.bearing = bearing; |
|
| 12 | - } |
|
| 13 | - |
|
| 14 | - @Override |
|
| 15 | - public Bearing getBearing() { |
|
| 16 | - return bearing; |
|
| 17 | - } |
|
| 18 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/BearingChangeAnalyzerImpl.java
| ... | ... | @@ -1,33 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.BearingChangeAnalyzer; |
|
| 4 | -import com.sap.sse.common.Bearing; |
|
| 5 | -import com.sap.sse.common.impl.DegreeBearingImpl; |
|
| 6 | - |
|
| 7 | -public class BearingChangeAnalyzerImpl implements BearingChangeAnalyzer { |
|
| 8 | - |
|
| 9 | - @Override |
|
| 10 | - public int didPass(Bearing courseBeforeManeuver, double totalCourseChangeInDegrees, Bearing courseAfterManeuver, |
|
| 11 | - Bearing wasThisCourseReachedAndCrossedDuringManeuver) { |
|
| 12 | - final int result; |
|
| 13 | - Bearing diffToCourseInQuestion = courseBeforeManeuver.getDifferenceTo(wasThisCourseReachedAndCrossedDuringManeuver); |
|
| 14 | - if (Math.signum(diffToCourseInQuestion.getDegrees()) == Math.signum(totalCourseChangeInDegrees)) { |
|
| 15 | - // simple case: the actual course change was greater than what was required in that direction to |
|
| 16 | - // reach the course in question |
|
| 17 | - result = (int) ((Math.abs(totalCourseChangeInDegrees) + 360. - Math.abs(diffToCourseInQuestion.getDegrees())) / 360.); |
|
| 18 | - } else { |
|
| 19 | - // more complicated: the smallest possible course change required may have been to a different direction than the |
|
| 20 | - // actual course change. The course in question may still have been reached and crossed in the actual course |
|
| 21 | - // change that points the other way has been great enough. Example: courseBeforeManeuver=355deg; |
|
| 22 | - // totalCourseChangeInDegrees=-357; courseAfterManeuver=358deg; wasThisCourseReachedAndCrossedDuringManeuver=000deg. |
|
| 23 | - // The answer has to be TRUE because the course changed to port and was almost a full circle, passing 000deg. |
|
| 24 | - // Still, the diffToCourseInQuestion is 005deg and positive. |
|
| 25 | - // Approach: revert the course change required; revert 005deg to 355deg and check again with this reverted course change. |
|
| 26 | - Bearing revertedDiffToCourseInQuestion = new DegreeBearingImpl(-360 * Math.signum(diffToCourseInQuestion |
|
| 27 | - .getDegrees())+diffToCourseInQuestion.getDegrees()); |
|
| 28 | - result = (int) ((Math.abs(totalCourseChangeInDegrees) + 360. - Math.abs(revertedDiffToCourseInQuestion.getDegrees())) / 360.); |
|
| 29 | - } |
|
| 30 | - return result; |
|
| 31 | - } |
|
| 32 | - |
|
| 33 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/BoundsImpl.java
| ... | ... | @@ -1,186 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.Bounds; |
|
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | -import com.sap.sse.common.Distance; |
|
| 6 | - |
|
| 7 | -public class BoundsImpl implements Bounds { |
|
| 8 | - private final Position sw; |
|
| 9 | - private final Position ne; |
|
| 10 | - private final boolean crossesDateLine; |
|
| 11 | - |
|
| 12 | - public BoundsImpl(Position sw, Position ne) { |
|
| 13 | - super(); |
|
| 14 | - this.sw = sw; |
|
| 15 | - this.ne = ne; |
|
| 16 | - crossesDateLine = ne.getLngDeg() < sw.getLngDeg(); |
|
| 17 | - } |
|
| 18 | - |
|
| 19 | - public BoundsImpl(Position position) { |
|
| 20 | - this(position, position); |
|
| 21 | - } |
|
| 22 | - |
|
| 23 | - @Override |
|
| 24 | - public Position getNorthWest() { |
|
| 25 | - return new DegreePosition(getNorthEast().getLatDeg(), getSouthWest().getLngDeg()); |
|
| 26 | - } |
|
| 27 | - |
|
| 28 | - @Override |
|
| 29 | - public Position getSouthEast() { |
|
| 30 | - return new DegreePosition(getSouthWest().getLatDeg(), getNorthEast().getLngDeg()); |
|
| 31 | - } |
|
| 32 | - |
|
| 33 | - @Override |
|
| 34 | - public Position getNorthEast() { |
|
| 35 | - return ne; |
|
| 36 | - } |
|
| 37 | - |
|
| 38 | - @Override |
|
| 39 | - public Position getSouthWest() { |
|
| 40 | - return sw; |
|
| 41 | - } |
|
| 42 | - |
|
| 43 | - /** |
|
| 44 | - * Considering whether or not this bounds object crosses the date line, calculates the width in degrees longitude |
|
| 45 | - * going from <code>west</code> to <code>east</code>. The result is always a non-negative number. |
|
| 46 | - */ |
|
| 47 | - private double getDistanceDeg(final double west, final double east) { |
|
| 48 | - final double diff = east-west; |
|
| 49 | - final double result; |
|
| 50 | - if (isCrossingDateLine(west, east)) { |
|
| 51 | - result = 360+diff; // diff is negative in this case |
|
| 52 | - } else { |
|
| 53 | - result = diff; |
|
| 54 | - } |
|
| 55 | - return result; |
|
| 56 | - } |
|
| 57 | - |
|
| 58 | - @Override |
|
| 59 | - public Bounds intersect(Bounds other) { |
|
| 60 | - final double maxSouthLatDeg = Math.max(getSouthWest().getLatDeg(), other.getSouthWest().getLatDeg()); |
|
| 61 | - final double minNorthLatDeg = Math.min(getNorthEast().getLatDeg(), other.getNorthEast().getLatDeg()); |
|
| 62 | - final double westDeg; |
|
| 63 | - if (containsLngDeg(other.getSouthWest().getLngDeg())) { |
|
| 64 | - westDeg = other.getSouthWest().getLngDeg(); |
|
| 65 | - } else if (other.containsLngDeg(getSouthWest().getLngDeg())) { |
|
| 66 | - westDeg = getSouthWest().getLngDeg(); |
|
| 67 | - } else { |
|
| 68 | - // no intersection |
|
| 69 | - westDeg = getSouthWest().getLngDeg(); |
|
| 70 | - } |
|
| 71 | - final double eastDeg; |
|
| 72 | - if (containsLngDeg(other.getNorthEast().getLngDeg())) { |
|
| 73 | - eastDeg = other.getNorthEast().getLngDeg(); |
|
| 74 | - } else if (other.containsLngDeg(getNorthEast().getLngDeg())) { |
|
| 75 | - eastDeg = getNorthEast().getLngDeg(); |
|
| 76 | - } else { |
|
| 77 | - // no intersection |
|
| 78 | - eastDeg = getSouthWest().getLngDeg(); |
|
| 79 | - } |
|
| 80 | - return new BoundsImpl(new DegreePosition(maxSouthLatDeg, westDeg), new DegreePosition(minNorthLatDeg, eastDeg)); |
|
| 81 | - } |
|
| 82 | - |
|
| 83 | - @Override |
|
| 84 | - public Bounds union(Bounds other) { |
|
| 85 | - final double minLatDeg = Math.min(getSouthWest().getLatDeg(), other.getSouthWest().getLatDeg()); |
|
| 86 | - final double maxLatDeg = Math.max(getNorthEast().getLatDeg(), other.getNorthEast().getLatDeg()); |
|
| 87 | - // For lng, we can go left or right around the earth; which way results in the smaller bounds? We have four options: |
|
| 88 | - final double[] west = new double[] { getSouthWest().getLngDeg(), other.getSouthWest().getLngDeg() }; |
|
| 89 | - final double[] east = new double[] { getNorthEast().getLngDeg(), other.getNorthEast().getLngDeg() }; |
|
| 90 | - double minLngDegDistance = Double.MAX_VALUE; |
|
| 91 | - double bestWest = 0; |
|
| 92 | - double bestEast = 0; |
|
| 93 | - for (int w=0; w<2; w++) { |
|
| 94 | - for (int e=0; e<2; e++) { |
|
| 95 | - double currentLngDegDistance; |
|
| 96 | - if (spansLngDeg(west[w], east[e], west[1 - w]) && spansLngDeg(west[w], east[e], east[1 - e]) |
|
| 97 | - && (currentLngDegDistance = Math.abs(getDistanceDeg(west[w], east[e]))) < minLngDegDistance) { |
|
| 98 | - minLngDegDistance = currentLngDegDistance; |
|
| 99 | - bestWest = west[w]; |
|
| 100 | - bestEast = east[e]; |
|
| 101 | - } |
|
| 102 | - } |
|
| 103 | - } |
|
| 104 | - return new BoundsImpl(new DegreePosition(minLatDeg, bestWest), new DegreePosition(maxLatDeg, bestEast)); |
|
| 105 | - } |
|
| 106 | - |
|
| 107 | - @Override |
|
| 108 | - public Bounds extend(Bounds other) { |
|
| 109 | - return union(other); |
|
| 110 | - } |
|
| 111 | - |
|
| 112 | - @Override |
|
| 113 | - public Bounds extend(Position p) { |
|
| 114 | - return union(new BoundsImpl(p, p)); |
|
| 115 | - } |
|
| 116 | - |
|
| 117 | - private boolean spansLngDeg(double westLngDeg, double eastLngDeg, double lngDeg) { |
|
| 118 | - return isCrossingDateLine(westLngDeg, eastLngDeg) |
|
| 119 | - ? (lngDeg >= westLngDeg && lngDeg <= 180) || (lngDeg >= -180 && lngDeg <= eastLngDeg) |
|
| 120 | - : westLngDeg <= lngDeg && lngDeg <= eastLngDeg; |
|
| 121 | - } |
|
| 122 | - |
|
| 123 | - private boolean isCrossingDateLine(double westLngDeg, double eastLngDeg) { |
|
| 124 | - return westLngDeg > eastLngDeg; |
|
| 125 | - } |
|
| 126 | - |
|
| 127 | - @Override |
|
| 128 | - public boolean intersects(Bounds other) { |
|
| 129 | - return (containsLatDeg(other.getSouthWest().getLatDeg()) || containsLatDeg(other.getNorthEast().getLatDeg()) || |
|
| 130 | - other.containsLatDeg(getSouthWest().getLatDeg()) || other.containsLatDeg(getNorthEast().getLatDeg())) |
|
| 131 | - && (containsLngDeg(other.getSouthWest().getLngDeg()) || containsLngDeg(other.getNorthEast().getLngDeg()) || |
|
| 132 | - other.containsLngDeg(getSouthWest().getLngDeg()) || other.containsLngDeg(getNorthEast().getLngDeg())); |
|
| 133 | - } |
|
| 134 | - |
|
| 135 | - @Override |
|
| 136 | - public boolean containsLatDeg(double latDeg) { |
|
| 137 | - return latDeg >= getSouthWest().getLatDeg() && latDeg <= getNorthEast().getLatDeg(); |
|
| 138 | - } |
|
| 139 | - |
|
| 140 | - @Override |
|
| 141 | - public boolean containsLngDeg(double lngDeg) { |
|
| 142 | - return spansLngDeg(getSouthWest().getLngDeg(), getNorthEast().getLngDeg(), lngDeg); |
|
| 143 | - } |
|
| 144 | - |
|
| 145 | - @Override |
|
| 146 | - public boolean contains(Position other) { |
|
| 147 | - return |
|
| 148 | - // lat contained: |
|
| 149 | - other.getLatDeg() >= getSouthWest().getLatDeg() && other.getLatDeg() <= getNorthEast().getLatDeg() && |
|
| 150 | - // lng contained: |
|
| 151 | - (isCrossesDateLine() |
|
| 152 | - // between SW and date line... |
|
| 153 | - ? (other.getLngDeg() <= 180 && other.getLngDeg() >= getSouthWest().getLngDeg()) || |
|
| 154 | - // ...or between date line and NE |
|
| 155 | - (other.getLngDeg() >= -180 && other.getLngDeg() <= getNorthEast().getLngDeg()) |
|
| 156 | - // these bounds are not crossing the date line; simple numeric comparison |
|
| 157 | - : other.getLngDeg() >= getSouthWest().getLngDeg() && other.getLngDeg() <= getNorthEast().getLngDeg()) |
|
| 158 | - ; |
|
| 159 | - } |
|
| 160 | - |
|
| 161 | - @Override |
|
| 162 | - public boolean contains(Bounds other) { |
|
| 163 | - return isCrossesDateLine() == other.isCrossesDateLine() && contains(other.getNorthEast()) && contains(other.getSouthWest()); |
|
| 164 | - } |
|
| 165 | - |
|
| 166 | - @Override |
|
| 167 | - public boolean isCrossesDateLine() { |
|
| 168 | - return crossesDateLine; |
|
| 169 | - } |
|
| 170 | - |
|
| 171 | - @Override |
|
| 172 | - public boolean isEmpty() { |
|
| 173 | - return getSouthWest().getLatDeg() >= getNorthEast().getLatDeg() || |
|
| 174 | - getSouthWest().getLngDeg() == getNorthEast().getLngDeg(); |
|
| 175 | - } |
|
| 176 | - |
|
| 177 | - @Override |
|
| 178 | - public Distance getDiameter() { |
|
| 179 | - return getNorthWest().getDistance(getSouthEast()); |
|
| 180 | - } |
|
| 181 | - |
|
| 182 | - @Override |
|
| 183 | - public String toString() { |
|
| 184 | - return "{SW: "+getSouthWest().toString()+", NE: "+getNorthEast().toString()+"}"; |
|
| 185 | - } |
|
| 186 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/CentralAngleDistance.java
| ... | ... | @@ -1,35 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.AbstractDistance; |
|
| 4 | -import com.sap.sailing.domain.common.Mile; |
|
| 5 | -import com.sap.sse.common.Distance; |
|
| 6 | - |
|
| 7 | -public class CentralAngleDistance extends AbstractDistance { |
|
| 8 | - private static final long serialVersionUID = -388639688376644968L; |
|
| 9 | - private final double centralAngleRad; |
|
| 10 | - |
|
| 11 | - public CentralAngleDistance(double centralAngleRad) { |
|
| 12 | - super(); |
|
| 13 | - this.centralAngleRad = centralAngleRad; |
|
| 14 | - } |
|
| 15 | - |
|
| 16 | - @Override |
|
| 17 | - public double getMeters() { |
|
| 18 | - return getGeographicalMiles() * Mile.METERS_PER_GEOGRAPHICAL_MILE; |
|
| 19 | - } |
|
| 20 | - |
|
| 21 | - @Override |
|
| 22 | - public double getCentralAngleRad() { |
|
| 23 | - return centralAngleRad; |
|
| 24 | - } |
|
| 25 | - |
|
| 26 | - @Override |
|
| 27 | - public double getGeographicalMiles() { |
|
| 28 | - return getCentralAngleDeg() * 60.; |
|
| 29 | - } |
|
| 30 | - |
|
| 31 | - @Override |
|
| 32 | - public Distance scale(double factor) { |
|
| 33 | - return new CentralAngleDistance(factor*getCentralAngleRad()); |
|
| 34 | - } |
|
| 35 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/CourseChangeImpl.java
| ... | ... | @@ -1,28 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.CourseChange; |
|
| 4 | - |
|
| 5 | -public class CourseChangeImpl implements CourseChange { |
|
| 6 | - private final double courseChangeInDegrees; |
|
| 7 | - private final double speedChangeInKnots; |
|
| 8 | - |
|
| 9 | - public CourseChangeImpl(double courseChangeInDegrees, double speedChangeInKnots) { |
|
| 10 | - this.courseChangeInDegrees = courseChangeInDegrees; |
|
| 11 | - this.speedChangeInKnots = speedChangeInKnots; |
|
| 12 | - } |
|
| 13 | - |
|
| 14 | - @Override |
|
| 15 | - public double getCourseChangeInDegrees() { |
|
| 16 | - return courseChangeInDegrees; |
|
| 17 | - } |
|
| 18 | - |
|
| 19 | - @Override |
|
| 20 | - public double getSpeedChangeInKnots() { |
|
| 21 | - return speedChangeInKnots; |
|
| 22 | - } |
|
| 23 | - |
|
| 24 | - @Override |
|
| 25 | - public String toString() { |
|
| 26 | - return "changing course by "+getCourseChangeInDegrees()+"deg, "+getSpeedChangeInKnots()+"kn"; |
|
| 27 | - } |
|
| 28 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/DegreeBearingImpl.java
| ... | ... | @@ -1,42 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import java.io.ObjectStreamException; |
|
| 4 | - |
|
| 5 | -import com.sap.sse.common.AbstractBearing; |
|
| 6 | -import com.sap.sse.common.Bearing; |
|
| 7 | -import com.sap.sse.common.settings.GwtIncompatible; |
|
| 8 | - |
|
| 9 | -/** |
|
| 10 | - * This class is marked as deprecated because it was refactored to {@link com.sap.sse.common.impl.DegreeBearingImpl} |
|
| 11 | - * which shall be used instead. Nevertheless it needs to exist due to serialization issues which can be resolved with a |
|
| 12 | - * new general data import at each server instance. The serialization progress of this class is therefore adjusted by |
|
| 13 | - * the use of {@link #readResolve()} which returns the refactored {@link com.sap.sse.common.impl.DegreeBearingImpl} |
|
| 14 | - * object. Deserialization of this class now points to the refactored {@link com.sap.sse.common.impl.DegreeBearingImpl}. |
|
| 15 | - * |
|
| 16 | - * |
|
| 17 | - * @author Maximilian Gro� (D064866) |
|
| 18 | - * |
|
| 19 | - */ |
|
| 20 | -@Deprecated |
|
| 21 | -@GwtIncompatible |
|
| 22 | -public class DegreeBearingImpl extends AbstractBearing implements Bearing { |
|
| 23 | - private static final long serialVersionUID = -8045400378221073451L; |
|
| 24 | - private final double bearingDeg; |
|
| 25 | - |
|
| 26 | - @Deprecated |
|
| 27 | - public DegreeBearingImpl(double bearingDeg) { |
|
| 28 | - super(); |
|
| 29 | - this.bearingDeg = bearingDeg - 360 * (int) (bearingDeg / 360.); |
|
| 30 | - } |
|
| 31 | - |
|
| 32 | - @Deprecated |
|
| 33 | - @Override |
|
| 34 | - public double getDegrees() { |
|
| 35 | - return bearingDeg; |
|
| 36 | - } |
|
| 37 | - |
|
| 38 | - private Object readResolve() throws ObjectStreamException { |
|
| 39 | - return new com.sap.sse.common.impl.DegreeBearingImpl(bearingDeg); |
|
| 40 | - } |
|
| 41 | - |
|
| 42 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/DegreePosition.java
| ... | ... | @@ -1,24 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.AbstractPosition; |
|
| 4 | - |
|
| 5 | -public class DegreePosition extends AbstractPosition { |
|
| 6 | - private static final long serialVersionUID = 2060676561122615530L; |
|
| 7 | - private final double lat; |
|
| 8 | - private final double lng; |
|
| 9 | - |
|
| 10 | - public DegreePosition(double lat, double lng) { |
|
| 11 | - this.lat = lat; |
|
| 12 | - this.lng = lng; |
|
| 13 | - } |
|
| 14 | - |
|
| 15 | - @Override |
|
| 16 | - public double getLatDeg() { |
|
| 17 | - return lat; |
|
| 18 | - } |
|
| 19 | - |
|
| 20 | - @Override |
|
| 21 | - public double getLngDeg() { |
|
| 22 | - return lng; |
|
| 23 | - } |
|
| 24 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/KilometersPerHourSpeedImpl.java
| ... | ... | @@ -1,23 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.AbstractSpeedImpl; |
|
| 4 | -import com.sap.sse.common.Speed; |
|
| 5 | - |
|
| 6 | -public class KilometersPerHourSpeedImpl extends AbstractSpeedImpl implements Speed { |
|
| 7 | - private static final long serialVersionUID = -524654796500981303L; |
|
| 8 | - private final double speedInKilometersPerHour; |
|
| 9 | - |
|
| 10 | - public KilometersPerHourSpeedImpl(double speedInKilometersPerHour) { |
|
| 11 | - this.speedInKilometersPerHour = speedInKilometersPerHour; |
|
| 12 | - } |
|
| 13 | - |
|
| 14 | - @Override |
|
| 15 | - public double getMetersPerSecond() { |
|
| 16 | - return getKilometersPerHour() / 3.6; |
|
| 17 | - } |
|
| 18 | - |
|
| 19 | - @Override |
|
| 20 | - public double getKilometersPerHour() { |
|
| 21 | - return speedInKilometersPerHour; |
|
| 22 | - } |
|
| 23 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/KnotSpeedImpl.java
| ... | ... | @@ -1,30 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.AbstractSpeedImpl; |
|
| 4 | -import com.sap.sse.common.Speed; |
|
| 5 | - |
|
| 6 | -public class KnotSpeedImpl extends AbstractSpeedImpl implements Speed { |
|
| 7 | - private static final long serialVersionUID = 5150851454271610069L; |
|
| 8 | - private final double knots; |
|
| 9 | - |
|
| 10 | - public KnotSpeedImpl(double knots) { |
|
| 11 | - this.knots = knots; |
|
| 12 | - } |
|
| 13 | - |
|
| 14 | - @Override |
|
| 15 | - public double getKnots() { |
|
| 16 | - return knots; |
|
| 17 | - } |
|
| 18 | - |
|
| 19 | - /** |
|
| 20 | - * Saves extra work by only converting the other object's speed to knots; useful in particular |
|
| 21 | - * if both speeds are knot-based speeds |
|
| 22 | - */ |
|
| 23 | - @Override |
|
| 24 | - public boolean equals(Object object) { |
|
| 25 | - if (object == null || !(object instanceof Speed)) { |
|
| 26 | - return false; |
|
| 27 | - } |
|
| 28 | - return getKnots() == ((Speed) object).getKnots(); |
|
| 29 | - } |
|
| 30 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/KnotSpeedWithBearingImpl.java
| ... | ... | @@ -1,19 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sse.common.Bearing; |
|
| 4 | - |
|
| 5 | -public class KnotSpeedWithBearingImpl extends AbstractSpeedWithBearingImpl { |
|
| 6 | - private static final long serialVersionUID = -2300633070560631053L; |
|
| 7 | - private final double speedInKnots; |
|
| 8 | - |
|
| 9 | - public KnotSpeedWithBearingImpl(double speedInKnots, Bearing bearing) { |
|
| 10 | - super(bearing); |
|
| 11 | - this.speedInKnots = speedInKnots; |
|
| 12 | - } |
|
| 13 | - |
|
| 14 | - @Override |
|
| 15 | - public double getKnots() { |
|
| 16 | - return speedInKnots; |
|
| 17 | - } |
|
| 18 | - |
|
| 19 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/MeterDistance.java
| ... | ... | @@ -1,29 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.AbstractDistance; |
|
| 4 | -import com.sap.sse.common.Distance; |
|
| 5 | - |
|
| 6 | -public class MeterDistance extends AbstractDistance { |
|
| 7 | - private static final long serialVersionUID = 1205385257141317881L; |
|
| 8 | - private final double meters; |
|
| 9 | - |
|
| 10 | - public MeterDistance(double meters) { |
|
| 11 | - this.meters = meters; |
|
| 12 | - } |
|
| 13 | - |
|
| 14 | - @Override |
|
| 15 | - public double getMeters() { |
|
| 16 | - return meters; |
|
| 17 | - } |
|
| 18 | - |
|
| 19 | - @Override |
|
| 20 | - public Distance scale(double factor) { |
|
| 21 | - return new MeterDistance(factor * meters); |
|
| 22 | - } |
|
| 23 | - |
|
| 24 | - @Override |
|
| 25 | - public double getCentralAngleDeg() { |
|
| 26 | - return getGeographicalMiles() / 60.; |
|
| 27 | - } |
|
| 28 | - |
|
| 29 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/MeterPerSecondSpeedImpl.java
| ... | ... | @@ -1,23 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.AbstractSpeedImpl; |
|
| 4 | -import com.sap.sse.common.Speed; |
|
| 5 | - |
|
| 6 | -public class MeterPerSecondSpeedImpl extends AbstractSpeedImpl implements Speed { |
|
| 7 | - private static final long serialVersionUID = -524654796500981303L; |
|
| 8 | - private final double metersPerSecond; |
|
| 9 | - |
|
| 10 | - public MeterPerSecondSpeedImpl(double metersPerSecond) { |
|
| 11 | - this.metersPerSecond = metersPerSecond; |
|
| 12 | - } |
|
| 13 | - |
|
| 14 | - @Override |
|
| 15 | - public double getMetersPerSecond() { |
|
| 16 | - return metersPerSecond; |
|
| 17 | - } |
|
| 18 | - |
|
| 19 | - @Override |
|
| 20 | - public double getKilometersPerHour() { |
|
| 21 | - return metersPerSecond*3.6; |
|
| 22 | - } |
|
| 23 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/MeterPerSecondSpeedWithDegreeBearingImpl.java
| ... | ... | @@ -1,29 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sse.common.Bearing; |
|
| 4 | - |
|
| 5 | -public class MeterPerSecondSpeedWithDegreeBearingImpl extends AbstractSpeedWithAbstractBearingImpl { |
|
| 6 | - private static final long serialVersionUID = -524654796500981303L; |
|
| 7 | - private final double metersPerSecond; |
|
| 8 | - private final Bearing bearing; |
|
| 9 | - |
|
| 10 | - public MeterPerSecondSpeedWithDegreeBearingImpl(double metersPerSecond, Bearing bearing) { |
|
| 11 | - this.metersPerSecond = metersPerSecond; |
|
| 12 | - this.bearing = bearing; |
|
| 13 | - } |
|
| 14 | - |
|
| 15 | - @Override |
|
| 16 | - public double getMetersPerSecond() { |
|
| 17 | - return metersPerSecond; |
|
| 18 | - } |
|
| 19 | - |
|
| 20 | - @Override |
|
| 21 | - public double getKilometersPerHour() { |
|
| 22 | - return metersPerSecond*3.6; |
|
| 23 | - } |
|
| 24 | - |
|
| 25 | - @Override |
|
| 26 | - public Bearing getBearing() { |
|
| 27 | - return bearing; |
|
| 28 | - } |
|
| 29 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/NauticalMileDistance.java
| ... | ... | @@ -1,30 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.AbstractDistance; |
|
| 4 | -import com.sap.sse.common.Distance; |
|
| 5 | - |
|
| 6 | -public class NauticalMileDistance extends AbstractDistance { |
|
| 7 | - private static final long serialVersionUID = 3771473789235934127L; |
|
| 8 | - private final double nauticalMiles; |
|
| 9 | - |
|
| 10 | - public NauticalMileDistance(double nauticalMiles) { |
|
| 11 | - super(); |
|
| 12 | - this.nauticalMiles = nauticalMiles; |
|
| 13 | - } |
|
| 14 | - |
|
| 15 | - @Override |
|
| 16 | - public double getNauticalMiles() { |
|
| 17 | - return nauticalMiles; |
|
| 18 | - } |
|
| 19 | - |
|
| 20 | - @Override |
|
| 21 | - public double getCentralAngleDeg() { |
|
| 22 | - return getGeographicalMiles() / 60.; |
|
| 23 | - } |
|
| 24 | - |
|
| 25 | - @Override |
|
| 26 | - public Distance scale(double factor) { |
|
| 27 | - return new NauticalMileDistance(factor * nauticalMiles); |
|
| 28 | - } |
|
| 29 | - |
|
| 30 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/NonCardinalBoundsImpl.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.impl; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.common.NonCardinalBounds; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 4 | import com.sap.sse.common.Bearing; |
| 6 | 5 | import com.sap.sse.common.Distance; |
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | 7 | |
| 8 | 8 | public class NonCardinalBoundsImpl implements NonCardinalBounds { |
| 9 | 9 | /** |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/PlacemarkImpl.java
| ... | ... | @@ -1,9 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.impl; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.common.Placemark; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 4 | import com.sap.sse.common.CountryCodeFactory; |
| 6 | 5 | import com.sap.sse.common.Distance; |
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 7 | 8 | |
| 8 | 9 | /** |
| 9 | 10 | * Used to define a populated place in the world.<br /> |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/RadianBearingImpl.java
| ... | ... | @@ -1,25 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sse.common.AbstractBearing; |
|
| 4 | -import com.sap.sse.common.Bearing; |
|
| 5 | - |
|
| 6 | -public class RadianBearingImpl extends AbstractBearing implements Bearing { |
|
| 7 | - private static final long serialVersionUID = 5044142324540650696L; |
|
| 8 | - private final double bearingRad; |
|
| 9 | - |
|
| 10 | - public RadianBearingImpl(double bearingRad) { |
|
| 11 | - super(); |
|
| 12 | - this.bearingRad = bearingRad - 2*Math.PI * (int) (bearingRad/2./Math.PI); |
|
| 13 | - } |
|
| 14 | - |
|
| 15 | - @Override |
|
| 16 | - public double getDegrees() { |
|
| 17 | - return getRadians() / Math.PI * 180.; |
|
| 18 | - } |
|
| 19 | - |
|
| 20 | - @Override |
|
| 21 | - public double getRadians() { |
|
| 22 | - return bearingRad; |
|
| 23 | - } |
|
| 24 | - |
|
| 25 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/RadianPosition.java
| ... | ... | @@ -1,26 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.AbstractPosition; |
|
| 4 | - |
|
| 5 | -public class RadianPosition extends AbstractPosition { |
|
| 6 | - private static final long serialVersionUID = -8488453506845560385L; |
|
| 7 | - private final double latRad; |
|
| 8 | - private final double lngRad; |
|
| 9 | - |
|
| 10 | - public RadianPosition(double latRad, double lngRad) { |
|
| 11 | - super(); |
|
| 12 | - this.latRad = latRad; |
|
| 13 | - this.lngRad = lngRad; |
|
| 14 | - } |
|
| 15 | - |
|
| 16 | - @Override |
|
| 17 | - public double getLatRad() { |
|
| 18 | - return latRad; |
|
| 19 | - } |
|
| 20 | - |
|
| 21 | - @Override |
|
| 22 | - public double getLngRad() { |
|
| 23 | - return lngRad; |
|
| 24 | - } |
|
| 25 | - |
|
| 26 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/impl/WindImpl.java
| ... | ... | @@ -1,10 +1,11 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | 3 | import com.sap.sailing.domain.common.Wind; |
| 6 | 4 | import com.sap.sse.common.Bearing; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 7 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 8 | 9 | |
| 9 | 10 | public class WindImpl extends KnotSpeedWithBearingImpl implements Wind { |
| 10 | 11 | private static final long serialVersionUID = 5431592324949471980L; |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/orc/ORCCertificate.java
| ... | ... | @@ -3,8 +3,6 @@ package com.sap.sailing.domain.common.orc; |
| 3 | 3 | import java.io.Serializable; |
| 4 | 4 | import java.util.Map; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 7 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 8 | 6 | import com.sap.sse.common.Bearing; |
| 9 | 7 | import com.sap.sse.common.CountryCode; |
| 10 | 8 | import com.sap.sse.common.Distance; |
| ... | ... | @@ -13,6 +11,8 @@ import com.sap.sse.common.Speed; |
| 13 | 11 | import com.sap.sse.common.TimePoint; |
| 14 | 12 | import com.sap.sse.common.WithID; |
| 15 | 13 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 14 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 15 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 16 | 16 | |
| 17 | 17 | /** |
| 18 | 18 | * Represents semantically a real ORC certificate for a {@link Competitor}, which is used to rate different type of |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/quadtree/QuadTree.java
| ... | ... | @@ -2,12 +2,12 @@ package com.sap.sailing.domain.common.quadtree; |
| 2 | 2 | |
| 3 | 3 | import java.io.Serializable; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Bounds; |
|
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | -import com.sap.sailing.domain.common.impl.BoundsImpl; |
|
| 8 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 9 | 5 | import com.sap.sailing.domain.common.quadtree.impl.Node; |
| 10 | 6 | import com.sap.sailing.domain.common.quadtree.impl.Node.GetResult; |
| 7 | +import com.sap.sse.common.Bounds; |
|
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | +import com.sap.sse.common.impl.BoundsImpl; |
|
| 10 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 11 | 11 | |
| 12 | 12 | /** |
| 13 | 13 | * A spatial data structure that provides efficient (O(log n)) access to nearest neighbors and |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/quadtree/impl/Node.java
| ... | ... | @@ -7,12 +7,12 @@ import java.util.Map; |
| 7 | 7 | import java.util.Map.Entry; |
| 8 | 8 | import java.util.Set; |
| 9 | 9 | |
| 10 | -import com.sap.sailing.domain.common.Bounds; |
|
| 11 | -import com.sap.sailing.domain.common.Position; |
|
| 12 | -import com.sap.sailing.domain.common.impl.BoundsImpl; |
|
| 13 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 14 | 10 | import com.sap.sailing.domain.common.quadtree.QuadTree; |
| 11 | +import com.sap.sse.common.Bounds; |
|
| 12 | +import com.sap.sse.common.Position; |
|
| 15 | 13 | import com.sap.sse.common.Util; |
| 14 | +import com.sap.sse.common.impl.BoundsImpl; |
|
| 15 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 16 | 16 | |
| 17 | 17 | /** |
| 18 | 18 | * A node in a {@link QuadTree}. There may be internal nodes that have no elements in them but have exactly |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/scalablevalue/impl/ScalableBearing.java
| ... | ... | @@ -1,87 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.scalablevalue.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.DoublePair; |
|
| 4 | -import com.sap.sailing.domain.common.impl.RadianBearingImpl; |
|
| 5 | -import com.sap.sse.common.Bearing; |
|
| 6 | -import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 7 | -import com.sap.sse.common.scalablevalue.ScalableValueWithDistance; |
|
| 8 | - |
|
| 9 | -public class ScalableBearing implements ScalableValueWithDistance<DoublePair, Bearing> { |
|
| 10 | - private final double sin; |
|
| 11 | - private final double cos; |
|
| 12 | - |
|
| 13 | - public ScalableBearing(Bearing bearing) { |
|
| 14 | - this.sin = Math.sin(bearing.getRadians()); |
|
| 15 | - this.cos = Math.cos(bearing.getRadians()); |
|
| 16 | - } |
|
| 17 | - |
|
| 18 | - private ScalableBearing(double sin, double cos) { |
|
| 19 | - this.sin = sin; |
|
| 20 | - this.cos = cos; |
|
| 21 | - } |
|
| 22 | - |
|
| 23 | - @Override |
|
| 24 | - public ScalableBearing multiply(double factor) { |
|
| 25 | - DoublePair pair = getValue(); |
|
| 26 | - return new ScalableBearing(factor*pair.getA(), factor*pair.getB()); |
|
| 27 | - } |
|
| 28 | - |
|
| 29 | - @Override |
|
| 30 | - public ScalableBearing add(ScalableValue<DoublePair, Bearing> t) { |
|
| 31 | - DoublePair value = getValue(); |
|
| 32 | - DoublePair tValue = t.getValue(); |
|
| 33 | - return new ScalableBearing(value.getA()+tValue.getA(), value.getB()+tValue.getB()); |
|
| 34 | - } |
|
| 35 | - |
|
| 36 | - /** |
|
| 37 | - * If the combined confidence was 0.0, no {@link Bearing} object can reasonably be computed; hence, <code>null</code> |
|
| 38 | - * is returned in such cases. |
|
| 39 | - */ |
|
| 40 | - @Override |
|
| 41 | - public Bearing divide(double divisor) { |
|
| 42 | - Bearing result; |
|
| 43 | - if (sin == 0 && cos == 0) { |
|
| 44 | - result = null; |
|
| 45 | - } else { |
|
| 46 | - double angle; |
|
| 47 | - if (cos == 0) { |
|
| 48 | - angle = sin >= 0 ? Math.PI / 2 : -Math.PI / 2; |
|
| 49 | - } else { |
|
| 50 | - angle = Math.atan2(sin, cos); |
|
| 51 | - } |
|
| 52 | - result = new RadianBearingImpl(angle < 0 ? angle + 2 * Math.PI : angle); |
|
| 53 | - } |
|
| 54 | - return result; |
|
| 55 | - } |
|
| 56 | - |
|
| 57 | - @Override |
|
| 58 | - public DoublePair getValue() { |
|
| 59 | - return new DoublePair(sin, cos); |
|
| 60 | - } |
|
| 61 | - |
|
| 62 | - @Override |
|
| 63 | - public double getDistance(Bearing other) { |
|
| 64 | - return Math.abs(divide(1).getDifferenceTo(other).getDegrees()); |
|
| 65 | - } |
|
| 66 | - |
|
| 67 | - /** |
|
| 68 | - * Computing the difference to a {@link bearing}, as implemented by {@link #getDistance(Bearing)} is correct but |
|
| 69 | - * slow because the {@link Math#atan2(double)} function is used to {@link ScalableBearing#divide(double) bring the |
|
| 70 | - * scalable bearing down to a bearing}. A less precise, yet much faster to compute and still monotonous distance |
|
| 71 | - * measure computes the length of the line segment connecting this bearing's projection onto a circle with the |
|
| 72 | - * projection of the bearing <code>a</code> to the same circle. The distance returned by this method will provide |
|
| 73 | - * almost equal values for very small differences (below 1deg) but significantly smaller values for big differences. |
|
| 74 | - * |
|
| 75 | - * @return an approximate difference in degrees, fairly accurate for small differences, but returning 360.0/PI |
|
| 76 | - * (approximately 114) instead of 180 for the maximum difference |
|
| 77 | - */ |
|
| 78 | - public double getApproximateDegreeDistanceTo(Bearing a) { |
|
| 79 | - double scale = Math.sqrt(sin*sin + cos*cos); |
|
| 80 | - double x = cos/scale; |
|
| 81 | - double y = sin/scale; |
|
| 82 | - double ax = Math.cos(a.getRadians()); |
|
| 83 | - double ay = Math.sin(a.getRadians()); |
|
| 84 | - double normalDistance = Math.sqrt((x-ax)*(x-ax) + (y-ay)*(y-ay)); |
|
| 85 | - return normalDistance / Math.PI * 180.; |
|
| 86 | - } |
|
| 87 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/scalablevalue/impl/ScalableDistance.java
| ... | ... | @@ -1,44 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.scalablevalue.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 4 | -import com.sap.sse.common.Distance; |
|
| 5 | -import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 6 | -import com.sap.sse.common.scalablevalue.ScalableValueWithDistance; |
|
| 7 | - |
|
| 8 | -public class ScalableDistance implements ScalableValueWithDistance<Double, Distance> { |
|
| 9 | - private final double meters; |
|
| 10 | - |
|
| 11 | - public ScalableDistance(Distance distance) { |
|
| 12 | - this.meters = distance.getMeters(); |
|
| 13 | - } |
|
| 14 | - |
|
| 15 | - private ScalableDistance(double meters) { |
|
| 16 | - this.meters = meters; |
|
| 17 | - } |
|
| 18 | - |
|
| 19 | - @Override |
|
| 20 | - public ScalableDistance multiply(double factor) { |
|
| 21 | - return new ScalableDistance(factor*meters); |
|
| 22 | - } |
|
| 23 | - |
|
| 24 | - @Override |
|
| 25 | - public ScalableDistance add(ScalableValue<Double, Distance> t) { |
|
| 26 | - return new ScalableDistance(meters+t.getValue()); |
|
| 27 | - } |
|
| 28 | - |
|
| 29 | - @Override |
|
| 30 | - public Distance divide(double divisor) { |
|
| 31 | - return new MeterDistance(meters / divisor); |
|
| 32 | - } |
|
| 33 | - |
|
| 34 | - @Override |
|
| 35 | - public Double getValue() { |
|
| 36 | - return meters; |
|
| 37 | - } |
|
| 38 | - |
|
| 39 | - @Override |
|
| 40 | - public double getDistance(Distance other) { |
|
| 41 | - return Math.abs(meters-other.getMeters()); |
|
| 42 | - } |
|
| 43 | - |
|
| 44 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/scalablevalue/impl/ScalableDuration.java
| ... | ... | @@ -1,48 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.scalablevalue.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sse.common.Duration; |
|
| 4 | -import com.sap.sse.common.impl.SecondsDurationImpl; |
|
| 5 | -import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 6 | -import com.sap.sse.common.scalablevalue.ScalableValueWithDistance; |
|
| 7 | - |
|
| 8 | -public class ScalableDuration implements ScalableValueWithDistance<Double, Duration> { |
|
| 9 | - private final double seconds; |
|
| 10 | - |
|
| 11 | - public ScalableDuration(Duration duration) { |
|
| 12 | - this.seconds = duration.asSeconds(); |
|
| 13 | - } |
|
| 14 | - |
|
| 15 | - private ScalableDuration(double seconds) { |
|
| 16 | - this.seconds = seconds; |
|
| 17 | - } |
|
| 18 | - |
|
| 19 | - @Override |
|
| 20 | - public ScalableDuration multiply(double factor) { |
|
| 21 | - return new ScalableDuration(factor*seconds); |
|
| 22 | - } |
|
| 23 | - |
|
| 24 | - @Override |
|
| 25 | - public ScalableDuration add(ScalableValue<Double, Duration> t) { |
|
| 26 | - return new ScalableDuration(seconds+t.getValue()); |
|
| 27 | - } |
|
| 28 | - |
|
| 29 | - @Override |
|
| 30 | - public Duration divide(double divisor) { |
|
| 31 | - return new SecondsDurationImpl(seconds / divisor); |
|
| 32 | - } |
|
| 33 | - |
|
| 34 | - @Override |
|
| 35 | - public Double getValue() { |
|
| 36 | - return seconds; |
|
| 37 | - } |
|
| 38 | - |
|
| 39 | - @Override |
|
| 40 | - public double getDistance(Duration other) { |
|
| 41 | - return Math.abs(seconds-other.asSeconds()); |
|
| 42 | - } |
|
| 43 | - |
|
| 44 | - @Override |
|
| 45 | - public String toString() { |
|
| 46 | - return divide(1).toString(); |
|
| 47 | - } |
|
| 48 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/scalablevalue/impl/ScalablePosition.java
| ... | ... | @@ -1,75 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.scalablevalue.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.DoubleTriple; |
|
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | -import com.sap.sailing.domain.common.impl.RadianPosition; |
|
| 6 | -import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 7 | -import com.sap.sse.common.scalablevalue.ScalableValueWithDistance; |
|
| 8 | - |
|
| 9 | -public class ScalablePosition implements ScalableValueWithDistance<ScalablePosition, Position> { |
|
| 10 | - private final double x, y, z; |
|
| 11 | - |
|
| 12 | - public ScalablePosition(Position position) { |
|
| 13 | - this(Math.cos(position.getLatRad()) * Math.cos(position.getLngRad()), |
|
| 14 | - Math.cos(position.getLatRad()) * Math.sin(position.getLngRad()), |
|
| 15 | - Math.sin(position.getLatRad())); |
|
| 16 | - } |
|
| 17 | - |
|
| 18 | - /** |
|
| 19 | - * Use the three components obtained from {@link #getValueAsTriple()} |
|
| 20 | - */ |
|
| 21 | - public ScalablePosition(double x, double y, double z) { |
|
| 22 | - this.x = x; |
|
| 23 | - this.y = y; |
|
| 24 | - this.z = z; |
|
| 25 | - } |
|
| 26 | - |
|
| 27 | - @Override |
|
| 28 | - public ScalablePosition multiply(double factor) { |
|
| 29 | - return new ScalablePosition(factor*x, factor*y, factor*z); |
|
| 30 | - } |
|
| 31 | - |
|
| 32 | - @Override |
|
| 33 | - public ScalablePosition add(ScalableValue<ScalablePosition, Position> t) { |
|
| 34 | - ScalablePosition result; |
|
| 35 | - if (t == null) { |
|
| 36 | - result = this; |
|
| 37 | - } else { |
|
| 38 | - result = new ScalablePosition(x+t.getValue().x, y+t.getValue().y, z+t.getValue().z); |
|
| 39 | - } |
|
| 40 | - return result; |
|
| 41 | - } |
|
| 42 | - |
|
| 43 | - /** |
|
| 44 | - * If combined confidence is 0.0 (all coordinate components are 0.0), <code>null</code> is returned because no |
|
| 45 | - * position can reasonably be constructed out of nowhere. |
|
| 46 | - */ |
|
| 47 | - @Override |
|
| 48 | - public Position divide(double divisor) { |
|
| 49 | - Position result; |
|
| 50 | - if (x == 0 && y == 0 && z == 0) { |
|
| 51 | - result = null; |
|
| 52 | - } else { |
|
| 53 | - // don't need to scale down; atan2 is agnostic regarding scaling factors |
|
| 54 | - double hyp = Math.sqrt(x * x + y * y); |
|
| 55 | - double latRad = Math.atan2(z, hyp); |
|
| 56 | - double lngRad = Math.atan2(y, x); |
|
| 57 | - result = new RadianPosition(latRad, lngRad); |
|
| 58 | - } |
|
| 59 | - return result; |
|
| 60 | - } |
|
| 61 | - |
|
| 62 | - @Override |
|
| 63 | - public ScalablePosition getValue() { |
|
| 64 | - return this; |
|
| 65 | - } |
|
| 66 | - |
|
| 67 | - @Override |
|
| 68 | - public double getDistance(Position other) { |
|
| 69 | - return divide(1).getDistance(other).getCentralAngleDeg(); |
|
| 70 | - } |
|
| 71 | - |
|
| 72 | - public DoubleTriple getValueAsTriple() { |
|
| 73 | - return new DoubleTriple(x, y, z); |
|
| 74 | - } |
|
| 75 | -} |
|
| ... | ... | \ No newline at end of file |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/scalablevalue/impl/ScalableSpeed.java
| ... | ... | @@ -1,44 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.scalablevalue.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 4 | -import com.sap.sse.common.Speed; |
|
| 5 | -import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 6 | -import com.sap.sse.common.scalablevalue.ScalableValueWithDistance; |
|
| 7 | - |
|
| 8 | -public class ScalableSpeed implements ScalableValueWithDistance<Double, Speed> { |
|
| 9 | - private final double knots; |
|
| 10 | - |
|
| 11 | - public ScalableSpeed(Speed speed) { |
|
| 12 | - this.knots = speed.getKnots(); |
|
| 13 | - } |
|
| 14 | - |
|
| 15 | - private ScalableSpeed(double knots) { |
|
| 16 | - this.knots = knots; |
|
| 17 | - } |
|
| 18 | - |
|
| 19 | - @Override |
|
| 20 | - public ScalableSpeed multiply(double factor) { |
|
| 21 | - return new ScalableSpeed(factor*knots); |
|
| 22 | - } |
|
| 23 | - |
|
| 24 | - @Override |
|
| 25 | - public ScalableSpeed add(ScalableValue<Double, Speed> t) { |
|
| 26 | - return new ScalableSpeed(knots+t.getValue()); |
|
| 27 | - } |
|
| 28 | - |
|
| 29 | - @Override |
|
| 30 | - public Speed divide(double divisor) { |
|
| 31 | - return new KnotSpeedImpl(knots / divisor); |
|
| 32 | - } |
|
| 33 | - |
|
| 34 | - @Override |
|
| 35 | - public Double getValue() { |
|
| 36 | - return knots; |
|
| 37 | - } |
|
| 38 | - |
|
| 39 | - @Override |
|
| 40 | - public double getDistance(Speed other) { |
|
| 41 | - return Math.abs(knots-other.getKnots()); |
|
| 42 | - } |
|
| 43 | - |
|
| 44 | -} |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/scalablevalue/impl/ScalableSpeedWithBearing.java
| ... | ... | @@ -1,74 +0,0 @@ |
| 1 | -package com.sap.sailing.domain.common.scalablevalue.impl; |
|
| 2 | - |
|
| 3 | -import com.sap.sailing.domain.common.DoubleTriple; |
|
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 6 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 7 | -import com.sap.sailing.domain.common.impl.RadianBearingImpl; |
|
| 8 | -import com.sap.sse.common.Bearing; |
|
| 9 | -import com.sap.sse.common.Speed; |
|
| 10 | -import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 11 | - |
|
| 12 | -/** |
|
| 13 | - * Separately scales speed and bearing. Instead of considering speed and bearing a single vector that can be scaled, the |
|
| 14 | - * bearing is scaled separately, and the speed is scaled as a scalar value independently of the bearing. This is |
|
| 15 | - * particularly useful for {@link Wind} scaling where it makes more sense to average the wind speed independently of the |
|
| 16 | - * wind direction / bearing than adding up the "wind vectors" and averaging, which would reduce the resulting wind speed |
|
| 17 | - * for constant wind speeds across all fixes with different directions.<p> |
|
| 18 | - * |
|
| 19 | - * The triple used for scaling uses the speed in knots as the first component, the sine as the second and the |
|
| 20 | - * cosine as the third value. |
|
| 21 | - * |
|
| 22 | - * @author Axel Uhl (d043530) |
|
| 23 | - * |
|
| 24 | - */ |
|
| 25 | -public class ScalableSpeedWithBearing implements ScalableValue<DoubleTriple, SpeedWithBearing> { |
|
| 26 | - private final double speedInKnots; |
|
| 27 | - private final double sin; |
|
| 28 | - private final double cos; |
|
| 29 | - |
|
| 30 | - public ScalableSpeedWithBearing(SpeedWithBearing speedWithBearing) { |
|
| 31 | - this(speedWithBearing.getKnots(), Math.sin(speedWithBearing.getBearing() |
|
| 32 | - .getRadians()), Math.cos(speedWithBearing.getBearing().getRadians())); |
|
| 33 | - } |
|
| 34 | - |
|
| 35 | - public ScalableSpeedWithBearing(Speed speed, double sin, double cos) { |
|
| 36 | - this(speed.getKnots(), sin, cos); |
|
| 37 | - } |
|
| 38 | - |
|
| 39 | - public ScalableSpeedWithBearing(double speedInKnots, double sin, double cos) { |
|
| 40 | - this.speedInKnots = speedInKnots; |
|
| 41 | - this.sin = sin; |
|
| 42 | - this.cos = cos; |
|
| 43 | - } |
|
| 44 | - |
|
| 45 | - @Override |
|
| 46 | - public ScalableSpeedWithBearing multiply(double factor) { |
|
| 47 | - return new ScalableSpeedWithBearing(factor*speedInKnots, factor*sin, factor*cos); |
|
| 48 | - } |
|
| 49 | - |
|
| 50 | - @Override |
|
| 51 | - public ScalableSpeedWithBearing add(ScalableValue<DoubleTriple, SpeedWithBearing> t) { |
|
| 52 | - final DoubleTriple tValue = t.getValue(); |
|
| 53 | - return new ScalableSpeedWithBearing(speedInKnots + tValue.getA(), sin+tValue.getB(), cos+tValue.getC()); |
|
| 54 | - } |
|
| 55 | - |
|
| 56 | - @Override |
|
| 57 | - public SpeedWithBearing divide(double divisor) { |
|
| 58 | - Speed newSpeed = new KnotSpeedImpl(speedInKnots / divisor); |
|
| 59 | - double angle; |
|
| 60 | - if (cos == 0) { |
|
| 61 | - angle = sin >= 0 ? Math.PI / 2 : -Math.PI / 2; |
|
| 62 | - } else { |
|
| 63 | - angle = Math.atan2(sin, cos); |
|
| 64 | - } |
|
| 65 | - Bearing bearing = new RadianBearingImpl(angle < 0 ? angle + 2 * Math.PI : angle); |
|
| 66 | - return new KnotSpeedWithBearingImpl(newSpeed.getKnots(), bearing); |
|
| 67 | - } |
|
| 68 | - |
|
| 69 | - @Override |
|
| 70 | - public DoubleTriple getValue() { |
|
| 71 | - return new DoubleTriple(speedInKnots, sin, cos); |
|
| 72 | - } |
|
| 73 | - |
|
| 74 | -} |
|
| ... | ... | \ No newline at end of file |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/BravoFix.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 4 | 3 | import com.sap.sse.common.Bearing; |
| 5 | 4 | import com.sap.sse.common.Distance; |
| 5 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 6 | 6 | import com.sap.sse.datamining.annotations.Dimension; |
| 7 | 7 | import com.sap.sse.datamining.annotations.Statistic; |
| 8 | 8 |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/GPSFix.java
| ... | ... | @@ -1,10 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Positioned; |
|
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 6 | 3 | import com.sap.sse.common.Distance; |
| 4 | +import com.sap.sse.common.Positioned; |
|
| 5 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 7 | 6 | import com.sap.sse.common.Timed; |
| 7 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 8 | 8 | |
| 9 | 9 | public interface GPSFix extends Positioned, Timed, WithValidityCache, WithEstimatedSpeedCache { |
| 10 | 10 | /** |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/WithEstimatedSpeedCache.java
| ... | ... | @@ -1,6 +1,6 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 3 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 4 | 4 | |
| 5 | 5 | public interface WithEstimatedSpeedCache { |
| 6 | 6 | boolean isEstimatedSpeedCached(); |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/AbstractCompactGPSFixImpl.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 4 | 3 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 4 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 5 | 5 | import com.sap.sse.common.TimePoint; |
| 6 | 6 | import com.sap.sse.common.impl.AbstractTimePoint; |
| 7 | 7 |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/AbstractCompactGPSFixMovingImpl.java
| ... | ... | @@ -1,16 +1,16 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.AbstractSpeedImpl; |
|
| 4 | -import com.sap.sailing.domain.common.CourseChange; |
|
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 7 | -import com.sap.sailing.domain.common.impl.AbstractSpeedWithAbstractBearingImpl; |
|
| 8 | -import com.sap.sailing.domain.common.impl.AbstractSpeedWithBearingImpl; |
|
| 9 | 3 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 4 | +import com.sap.sse.common.AbstractSpeedImpl; |
|
| 10 | 5 | import com.sap.sse.common.Bearing; |
| 6 | +import com.sap.sse.common.CourseChange; |
|
| 7 | +import com.sap.sse.common.Position; |
|
| 11 | 8 | import com.sap.sse.common.Speed; |
| 9 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 12 | 10 | import com.sap.sse.common.TimePoint; |
| 13 | 11 | import com.sap.sse.common.Util; |
| 12 | +import com.sap.sse.common.impl.AbstractSpeedWithAbstractBearingImpl; |
|
| 13 | +import com.sap.sse.common.impl.AbstractSpeedWithBearingImpl; |
|
| 14 | 14 | |
| 15 | 15 | /** |
| 16 | 16 | * A memory-conserving representation of a {@link GPSFixMoving} object that produces the fine-grained |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/AbstractCompactWindImpl.java
| ... | ... | @@ -1,12 +1,12 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.domain.common.Wind; |
| 5 | -import com.sap.sailing.domain.common.impl.AbstractSpeedWithAbstractBearingImpl; |
|
| 6 | 4 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 7 | 5 | import com.sap.sse.common.Bearing; |
| 6 | +import com.sap.sse.common.Position; |
|
| 8 | 7 | import com.sap.sse.common.TimePoint; |
| 9 | 8 | import com.sap.sse.common.Util; |
| 9 | +import com.sap.sse.common.impl.AbstractSpeedWithAbstractBearingImpl; |
|
| 10 | 10 | import com.sap.sse.common.impl.AbstractTimePoint; |
| 11 | 11 | |
| 12 | 12 | public abstract class AbstractCompactWindImpl extends AbstractSpeedWithAbstractBearingImpl implements Wind { |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/AbstractGPSFixImpl.java
| ... | ... | @@ -1,11 +1,11 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 4 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 5 | 3 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 6 | 4 | import com.sap.sse.common.Bearing; |
| 7 | 5 | import com.sap.sse.common.Distance; |
| 8 | 6 | import com.sap.sse.common.Speed; |
| 7 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 8 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 9 | 9 | |
| 10 | 10 | public abstract class AbstractGPSFixImpl implements GPSFix { |
| 11 | 11 | private static final long serialVersionUID = 9037068515469957639L; |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/BravoExtendedFixImpl.java
| ... | ... | @@ -1,7 +1,5 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Mile; |
|
| 4 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 5 | 3 | import com.sap.sailing.domain.common.sensordata.BravoExtendedSensorDataMetadata; |
| 6 | 4 | import com.sap.sailing.domain.common.sensordata.ColumnMetadata; |
| 7 | 5 | import com.sap.sailing.domain.common.tracking.BravoExtendedFix; |
| ... | ... | @@ -9,7 +7,9 @@ import com.sap.sailing.domain.common.tracking.BravoFix; |
| 9 | 7 | import com.sap.sailing.domain.common.tracking.DoubleVectorFix; |
| 10 | 8 | import com.sap.sse.common.Bearing; |
| 11 | 9 | import com.sap.sse.common.Distance; |
| 10 | +import com.sap.sse.common.Mile; |
|
| 12 | 11 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 12 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 13 | 13 | |
| 14 | 14 | /** |
| 15 | 15 | * Implementation of {@link BravoExtendedFix}. {@link BravoExtendedFix} adds more measures compared to {@link BravoFix}. |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/BravoFixImpl.java
| ... | ... | @@ -1,6 +1,5 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 4 | 3 | import com.sap.sailing.domain.common.sensordata.BravoSensorDataMetadata; |
| 5 | 4 | import com.sap.sailing.domain.common.sensordata.ColumnMetadata; |
| 6 | 5 | import com.sap.sailing.domain.common.tracking.BravoFix; |
| ... | ... | @@ -8,6 +7,7 @@ import com.sap.sailing.domain.common.tracking.DoubleVectorFix; |
| 8 | 7 | import com.sap.sse.common.Bearing; |
| 9 | 8 | import com.sap.sse.common.Distance; |
| 10 | 9 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 10 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 11 | 11 | |
| 12 | 12 | /** |
| 13 | 13 | * Implementation of {@link BravoFix} that wraps a {@link DoubleVectorFix} which holds the actual sensor data. The |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/CompactPositionHelper.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sse.common.Bearing; |
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | 5 | import com.sap.sse.common.Speed; |
| 6 | 6 | |
| 7 | 7 | /** |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/GPSFixImpl.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 5 | 3 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 4 | +import com.sap.sse.common.Position; |
|
| 6 | 5 | import com.sap.sse.common.TimePoint; |
| 6 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 7 | 7 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 8 | 8 | |
| 9 | 9 | /** |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/GPSFixMovingImpl.java
| ... | ... | @@ -1,13 +1,13 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 6 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 7 | 3 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 8 | 4 | import com.sap.sse.common.Bearing; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 9 | 7 | import com.sap.sse.common.TimePoint; |
| 10 | 8 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 9 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 10 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 11 | 11 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 12 | 12 | |
| 13 | 13 | public class GPSFixMovingImpl extends GPSFixImpl implements GPSFixMoving { |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/PreciseCompactGPSFixImpl.java
| ... | ... | @@ -1,13 +1,13 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.AbstractPosition; |
|
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 6 | -import com.sap.sailing.domain.common.impl.AbstractSpeedWithAbstractBearingImpl; |
|
| 7 | 3 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 8 | 4 | import com.sap.sse.common.AbstractBearing; |
| 5 | +import com.sap.sse.common.AbstractPosition; |
|
| 9 | 6 | import com.sap.sse.common.Bearing; |
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 10 | 9 | import com.sap.sse.common.TimePoint; |
| 10 | +import com.sap.sse.common.impl.AbstractSpeedWithAbstractBearingImpl; |
|
| 11 | 11 | |
| 12 | 12 | /** |
| 13 | 13 | * A compact representation of a GPS fix which collects all primitive-typed attributes in one object to avoid |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/PreciseCompactGPSFixMovingImpl.java
| ... | ... | @@ -1,13 +1,13 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.AbstractPosition; |
|
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 6 | -import com.sap.sailing.domain.common.impl.AbstractSpeedWithAbstractBearingImpl; |
|
| 7 | 3 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 8 | 4 | import com.sap.sse.common.AbstractBearing; |
| 5 | +import com.sap.sse.common.AbstractPosition; |
|
| 9 | 6 | import com.sap.sse.common.Bearing; |
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 10 | 9 | import com.sap.sse.common.TimePoint; |
| 10 | +import com.sap.sse.common.impl.AbstractSpeedWithAbstractBearingImpl; |
|
| 11 | 11 | |
| 12 | 12 | /** |
| 13 | 13 | * A memory-conserving representation of a {@link GPSFixMoving} object that produces the fine-grained |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/PreciseCompactWindImpl.java
| ... | ... | @@ -1,10 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.AbstractPosition; |
|
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 3 | import com.sap.sailing.domain.common.Wind; |
| 6 | 4 | import com.sap.sse.common.AbstractBearing; |
| 5 | +import com.sap.sse.common.AbstractPosition; |
|
| 7 | 6 | import com.sap.sse.common.Bearing; |
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | 8 | |
| 9 | 9 | /** |
| 10 | 10 | * Keeps the precise values of lat/lng and speed/course. |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/VeryCompactGPSFixImpl.java
| ... | ... | @@ -3,16 +3,16 @@ package com.sap.sailing.domain.common.tracking.impl; |
| 3 | 3 | import java.util.logging.Level; |
| 4 | 4 | import java.util.logging.Logger; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.AbstractPosition; |
|
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 9 | -import com.sap.sailing.domain.common.impl.AbstractSpeedWithAbstractBearingImpl; |
|
| 10 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 11 | 6 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 12 | 7 | import com.sap.sse.common.AbstractBearing; |
| 8 | +import com.sap.sse.common.AbstractPosition; |
|
| 13 | 9 | import com.sap.sse.common.Bearing; |
| 10 | +import com.sap.sse.common.Position; |
|
| 11 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 14 | 12 | import com.sap.sse.common.TimePoint; |
| 13 | +import com.sap.sse.common.impl.AbstractSpeedWithAbstractBearingImpl; |
|
| 15 | 14 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 15 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 16 | 16 | |
| 17 | 17 | /** |
| 18 | 18 | * A compact representation of a GPS fix which collects all primitive-typed attributes in one object to avoid |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/VeryCompactGPSFixMovingImpl.java
| ... | ... | @@ -3,16 +3,16 @@ package com.sap.sailing.domain.common.tracking.impl; |
| 3 | 3 | import java.util.logging.Level; |
| 4 | 4 | import java.util.logging.Logger; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.AbstractPosition; |
|
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 9 | -import com.sap.sailing.domain.common.impl.AbstractSpeedWithAbstractBearingImpl; |
|
| 10 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 11 | 6 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 12 | 7 | import com.sap.sse.common.AbstractBearing; |
| 8 | +import com.sap.sse.common.AbstractPosition; |
|
| 13 | 9 | import com.sap.sse.common.Bearing; |
| 10 | +import com.sap.sse.common.Position; |
|
| 11 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 14 | 12 | import com.sap.sse.common.TimePoint; |
| 13 | +import com.sap.sse.common.impl.AbstractSpeedWithAbstractBearingImpl; |
|
| 15 | 14 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 15 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 16 | 16 | |
| 17 | 17 | /** |
| 18 | 18 | * A memory-conserving representation of a {@link GPSFixMoving} object that produces the fine-grained |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/tracking/impl/VeryCompactWindImpl.java
| ... | ... | @@ -1,10 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.AbstractPosition; |
|
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 3 | import com.sap.sailing.domain.common.Wind; |
| 6 | 4 | import com.sap.sse.common.AbstractBearing; |
| 5 | +import com.sap.sse.common.AbstractPosition; |
|
| 7 | 6 | import com.sap.sse.common.Bearing; |
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | 8 | |
| 9 | 9 | /** |
| 10 | 10 | * Uses scaled, rounded internal representations of the values for lat/lng and speed/course. See |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/windfinder/SpotBase.java
| ... | ... | @@ -2,8 +2,8 @@ package com.sap.sailing.domain.common.windfinder; |
| 2 | 2 | |
| 3 | 3 | import java.net.URL; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Positioned; |
|
| 6 | 5 | import com.sap.sse.common.NamedWithID; |
| 6 | +import com.sap.sse.common.Positioned; |
|
| 7 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | 8 | |
| 9 | 9 | /** |
java/com.sap.sailing.domain.common/src/com/sap/sailing/domain/common/windfinder/SpotDTO.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.domain.common.windfinder; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sse.common.Duration; |
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | 5 | import com.sap.sse.common.TimePoint; |
| 6 | 6 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 7 | 7 | import com.sap.sse.common.impl.NamedImpl; |
java/com.sap.sailing.domain.deckmanadapter.test/src/com/sap/sailing/domain/deckmanadapter/test/TestDeckmanLogfileParsing.java
| ... | ... | @@ -13,13 +13,13 @@ import java.util.Iterator; |
| 13 | 13 | |
| 14 | 14 | import org.junit.jupiter.api.Test; |
| 15 | 15 | |
| 16 | -import com.sap.sailing.domain.common.Position; |
|
| 17 | 16 | import com.sap.sailing.domain.common.Wind; |
| 18 | 17 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 19 | 18 | import com.sap.sailing.domain.deckmanadapter.DeckmanAdapter; |
| 20 | 19 | import com.sap.sailing.domain.deckmanadapter.DeckmanAdapterFactory; |
| 21 | 20 | import com.sap.sailing.domain.deckmanadapter.Record; |
| 22 | 21 | import com.sap.sailing.domain.deckmanadapter.impl.FieldType; |
| 22 | +import com.sap.sse.common.Position; |
|
| 23 | 23 | import com.sap.sse.common.TimePoint; |
| 24 | 24 | |
| 25 | 25 | public class TestDeckmanLogfileParsing { |
java/com.sap.sailing.domain.deckmanadapter/src/com/sap/sailing/domain/deckmanadapter/Record.java
| ... | ... | @@ -10,20 +10,20 @@ import java.util.logging.Level; |
| 10 | 10 | import java.util.logging.Logger; |
| 11 | 11 | |
| 12 | 12 | import com.sap.sailing.declination.DeclinationService; |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | -import com.sap.sailing.domain.common.Positioned; |
|
| 15 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 16 | 13 | import com.sap.sailing.domain.common.Wind; |
| 17 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 18 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 19 | 14 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 20 | 15 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 21 | 16 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 22 | 17 | import com.sap.sailing.domain.deckmanadapter.impl.FieldType; |
| 23 | 18 | import com.sap.sse.common.Bearing; |
| 19 | +import com.sap.sse.common.Position; |
|
| 20 | +import com.sap.sse.common.Positioned; |
|
| 21 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 24 | 22 | import com.sap.sse.common.TimePoint; |
| 25 | 23 | import com.sap.sse.common.Timed; |
| 26 | 24 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 25 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 26 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 27 | 27 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 28 | 28 | |
| 29 | 29 | public class Record implements Timed, Positioned { |
java/com.sap.sailing.domain.expeditionadapter/src/com/sap/sailing/domain/expeditionadapter/impl/ExpeditionGPSFixImporter.java
| ... | ... | @@ -14,8 +14,6 @@ import java.util.logging.Level; |
| 14 | 14 | import java.util.logging.Logger; |
| 15 | 15 | |
| 16 | 16 | import com.sap.sailing.declination.DeclinationService; |
| 17 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 18 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 19 | 17 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 20 | 18 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 21 | 19 | import com.sap.sailing.domain.trackfiles.TrackFileImportDeviceIdentifier; |
| ... | ... | @@ -27,6 +25,8 @@ import com.sap.sailing.server.trackfiles.impl.ExpeditionExtendedDataImporterImpl |
| 27 | 25 | import com.sap.sailing.server.trackfiles.impl.ExpeditionImportFileHandler; |
| 28 | 26 | import com.sap.sse.common.Bearing; |
| 29 | 27 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 28 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 29 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 30 | 30 | |
| 31 | 31 | public class ExpeditionGPSFixImporter implements GPSFixImporter { |
| 32 | 32 | private static final Logger logger = Logger.getLogger(ExpeditionGPSFixImporter.class.getName()); |
java/com.sap.sailing.domain.igtimiadapter.test/src/com/sap/sailing/domain/igtimiadapter/impl/WindReceiverTest.java
| ... | ... | @@ -15,9 +15,7 @@ import org.junit.jupiter.api.Test; |
| 15 | 15 | import org.junit.jupiter.api.Timeout; |
| 16 | 16 | |
| 17 | 17 | import com.sap.sailing.declination.DeclinationService; |
| 18 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 19 | 18 | import com.sap.sailing.domain.common.Wind; |
| 20 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 21 | 19 | import com.sap.sailing.domain.igtimiadapter.IgtimiWindListener; |
| 22 | 20 | import com.sap.sailing.domain.igtimiadapter.datatypes.AWA; |
| 23 | 21 | import com.sap.sailing.domain.igtimiadapter.datatypes.AWS; |
| ... | ... | @@ -27,8 +25,10 @@ import com.sap.sailing.domain.igtimiadapter.datatypes.GpsLatLong; |
| 27 | 25 | import com.sap.sailing.domain.igtimiadapter.datatypes.HDG; |
| 28 | 26 | import com.sap.sailing.domain.igtimiadapter.datatypes.SOG; |
| 29 | 27 | import com.sap.sailing.domain.igtimiadapter.shared.IgtimiWindReceiver; |
| 28 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 30 | 29 | import com.sap.sse.common.TimePoint; |
| 31 | 30 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 31 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 32 | 32 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 33 | 33 | |
| 34 | 34 | @Timeout(value = 2, unit=TimeUnit.MINUTES) // 2 minutes timeout for the test |
java/com.sap.sailing.domain.igtimiadapter.test/src/com/sap/sailing/domain/igtimiadapter/test/IgtimiFixTrackTest.java
| ... | ... | @@ -13,7 +13,6 @@ import java.util.logging.Logger; |
| 13 | 13 | import org.junit.jupiter.api.Test; |
| 14 | 14 | |
| 15 | 15 | import com.sap.sailing.domain.common.Wind; |
| 16 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 17 | 16 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 18 | 17 | import com.sap.sailing.domain.igtimiadapter.IgtimiConnection; |
| 19 | 18 | import com.sap.sailing.domain.igtimiadapter.IgtimiConnectionFactory; |
| ... | ... | @@ -28,6 +27,7 @@ import com.sap.sailing.domain.tracking.DynamicTrack; |
| 28 | 27 | import com.sap.sse.common.TimePoint; |
| 29 | 28 | import com.sap.sse.common.Util; |
| 30 | 29 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 30 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 31 | 31 | |
| 32 | 32 | /** |
| 33 | 33 | * Igtimi fixes come as isolated single fixes from separate sensors, and even if they are attached to the same device, |
java/com.sap.sailing.domain.igtimiadapter/src/com/sap/sailing/domain/igtimiadapter/FixFactory.java
| ... | ... | @@ -21,9 +21,6 @@ import com.igtimi.IgtimiData.Heading; |
| 21 | 21 | import com.igtimi.IgtimiData.HeadingMagnetic; |
| 22 | 22 | import com.igtimi.IgtimiData.SpeedOverGround; |
| 23 | 23 | import com.igtimi.IgtimiStream.Msg; |
| 24 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 25 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 26 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 27 | 24 | import com.sap.sailing.domain.igtimiadapter.datatypes.AWA; |
| 28 | 25 | import com.sap.sailing.domain.igtimiadapter.datatypes.AWS; |
| 29 | 26 | import com.sap.sailing.domain.igtimiadapter.datatypes.BatteryLevel; |
| ... | ... | @@ -40,6 +37,9 @@ import com.sap.sailing.domain.igtimiadapter.datatypes.SOG; |
| 40 | 37 | import com.sap.sse.common.TimePoint; |
| 41 | 38 | import com.sap.sse.common.Util; |
| 42 | 39 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 40 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 41 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 42 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 43 | 43 | import com.sun.jersey.core.util.Base64; |
| 44 | 44 | |
| 45 | 45 | /** |
java/com.sap.sailing.domain.igtimiadapter/src/com/sap/sailing/domain/igtimiadapter/datatypes/AWS.java
| ... | ... | @@ -2,11 +2,11 @@ package com.sap.sailing.domain.igtimiadapter.datatypes; |
| 2 | 2 | |
| 3 | 3 | import java.util.Map; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 6 | 5 | import com.sap.sailing.domain.igtimiadapter.IgtimiFixReceiver; |
| 7 | 6 | import com.sap.sailing.domain.igtimiadapter.Sensor; |
| 8 | 7 | import com.sap.sse.common.Speed; |
| 9 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 10 | 10 | |
| 11 | 11 | /** |
| 12 | 12 | * Apparent wind speed, relative to the inertial system on which the wind speed was measured. |
java/com.sap.sailing.domain.igtimiadapter/src/com/sap/sailing/domain/igtimiadapter/datatypes/GpsAltitude.java
| ... | ... | @@ -2,11 +2,11 @@ package com.sap.sailing.domain.igtimiadapter.datatypes; |
| 2 | 2 | |
| 3 | 3 | import java.util.Map; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 6 | 5 | import com.sap.sailing.domain.igtimiadapter.IgtimiFixReceiver; |
| 7 | 6 | import com.sap.sailing.domain.igtimiadapter.Sensor; |
| 8 | 7 | import com.sap.sse.common.Distance; |
| 9 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 10 | 10 | |
| 11 | 11 | public class GpsAltitude extends Fix { |
| 12 | 12 | private static final long serialVersionUID = -5740764665236002412L; |
java/com.sap.sailing.domain.igtimiadapter/src/com/sap/sailing/domain/igtimiadapter/datatypes/GpsLatLong.java
| ... | ... | @@ -2,11 +2,11 @@ package com.sap.sailing.domain.igtimiadapter.datatypes; |
| 2 | 2 | |
| 3 | 3 | import java.util.Map; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 7 | 5 | import com.sap.sailing.domain.igtimiadapter.IgtimiFixReceiver; |
| 8 | 6 | import com.sap.sailing.domain.igtimiadapter.Sensor; |
| 7 | +import com.sap.sse.common.Position; |
|
| 9 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 10 | 10 | |
| 11 | 11 | public class GpsLatLong extends Fix { |
| 12 | 12 | private static final long serialVersionUID = 5056284867725893553L; |
java/com.sap.sailing.domain.igtimiadapter/src/com/sap/sailing/domain/igtimiadapter/datatypes/GpsQualityHdop.java
| ... | ... | @@ -2,11 +2,11 @@ package com.sap.sailing.domain.igtimiadapter.datatypes; |
| 2 | 2 | |
| 3 | 3 | import java.util.Map; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 6 | 5 | import com.sap.sailing.domain.igtimiadapter.IgtimiFixReceiver; |
| 7 | 6 | import com.sap.sailing.domain.igtimiadapter.Sensor; |
| 8 | 7 | import com.sap.sse.common.Distance; |
| 9 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 10 | 10 | |
| 11 | 11 | public class GpsQualityHdop extends Fix { |
| 12 | 12 | private static final long serialVersionUID = -5319766127405258823L; |
java/com.sap.sailing.domain.igtimiadapter/src/com/sap/sailing/domain/igtimiadapter/datatypes/SOG.java
| ... | ... | @@ -2,11 +2,11 @@ package com.sap.sailing.domain.igtimiadapter.datatypes; |
| 2 | 2 | |
| 3 | 3 | import java.util.Map; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 6 | 5 | import com.sap.sailing.domain.igtimiadapter.IgtimiFixReceiver; |
| 7 | 6 | import com.sap.sailing.domain.igtimiadapter.Sensor; |
| 8 | 7 | import com.sap.sse.common.Speed; |
| 9 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 10 | 10 | |
| 11 | 11 | /** |
| 12 | 12 | * Speed over ground expressed in kilometers per hour |
java/com.sap.sailing.domain.igtimiadapter/src/com/sap/sailing/domain/igtimiadapter/datatypes/STW.java
| ... | ... | @@ -2,11 +2,11 @@ package com.sap.sailing.domain.igtimiadapter.datatypes; |
| 2 | 2 | |
| 3 | 3 | import java.util.Map; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 6 | 5 | import com.sap.sailing.domain.igtimiadapter.IgtimiFixReceiver; |
| 7 | 6 | import com.sap.sailing.domain.igtimiadapter.Sensor; |
| 8 | 7 | import com.sap.sse.common.Speed; |
| 9 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 10 | 10 | |
| 11 | 11 | /** |
| 12 | 12 | * Speed through water expressed in kilometers per hour. |
java/com.sap.sailing.domain.igtimiadapter/src/com/sap/sailing/domain/igtimiadapter/shared/IgtimiWindReceiver.java
| ... | ... | @@ -14,14 +14,8 @@ import java.util.logging.Logger; |
| 14 | 14 | |
| 15 | 15 | import com.sap.sailing.declination.Declination; |
| 16 | 16 | import com.sap.sailing.declination.DeclinationService; |
| 17 | -import com.sap.sailing.domain.common.Position; |
|
| 18 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 19 | 17 | import com.sap.sailing.domain.common.Wind; |
| 20 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 21 | 18 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 22 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 23 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalablePosition; |
|
| 24 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableSpeed; |
|
| 25 | 19 | import com.sap.sailing.domain.igtimiadapter.BulkFixReceiver; |
| 26 | 20 | import com.sap.sailing.domain.igtimiadapter.IgtimiConnection; |
| 27 | 21 | import com.sap.sailing.domain.igtimiadapter.IgtimiFixReceiverAdapter; |
| ... | ... | @@ -41,10 +35,16 @@ import com.sap.sailing.domain.tracking.DynamicTrackWithRemove; |
| 41 | 35 | import com.sap.sailing.domain.tracking.WindListener; |
| 42 | 36 | import com.sap.sailing.domain.tracking.impl.DynamicTrackWithRemoveImpl; |
| 43 | 37 | import com.sap.sse.common.Bearing; |
| 38 | +import com.sap.sse.common.Position; |
|
| 44 | 39 | import com.sap.sse.common.Speed; |
| 40 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 45 | 41 | import com.sap.sse.common.TimePoint; |
| 46 | 42 | import com.sap.sse.common.Util; |
| 47 | 43 | import com.sap.sse.common.Util.Pair; |
| 44 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 45 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 46 | +import com.sap.sse.common.scalablevalue.impl.ScalablePosition; |
|
| 47 | +import com.sap.sse.common.scalablevalue.impl.ScalableSpeed; |
|
| 48 | 48 | |
| 49 | 49 | /** |
| 50 | 50 | * Receives Igtimi {@link Fix}es and tries to generate a {@link Wind} object from each {@link AWS} fix. For this to |
java/com.sap.sailing.domain.oceanraceadapter/src/com/sap/sailing/domain/oceanraceadapter/impl/OceanRaceGPSFixImporter.java
| ... | ... | @@ -14,9 +14,6 @@ import org.json.simple.JSONObject; |
| 14 | 14 | import org.json.simple.parser.JSONParser; |
| 15 | 15 | import org.json.simple.parser.ParseException; |
| 16 | 16 | |
| 17 | -import com.sap.sailing.domain.common.Position; |
|
| 18 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 19 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 20 | 17 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 21 | 18 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 22 | 19 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| ... | ... | @@ -25,9 +22,12 @@ import com.sap.sailing.domain.trackfiles.TrackFileImportDeviceIdentifierImpl; |
| 25 | 22 | import com.sap.sailing.domain.trackimport.FormatNotSupportedException; |
| 26 | 23 | import com.sap.sailing.domain.trackimport.GPSFixImporter; |
| 27 | 24 | import com.sap.sse.common.Bearing; |
| 25 | +import com.sap.sse.common.Position; |
|
| 28 | 26 | import com.sap.sse.common.TimePoint; |
| 29 | 27 | import com.sap.sse.common.Util.Pair; |
| 30 | 28 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 29 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 30 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 31 | 31 | |
| 32 | 32 | public class OceanRaceGPSFixImporter implements GPSFixImporter { |
| 33 | 33 | private final static String BEACONS_OBJECT_NAME = "beacons"; |
java/com.sap.sailing.domain.persistence/src/com/sap/sailing/domain/persistence/impl/DomainObjectFactoryImpl.java
| ... | ... | @@ -194,21 +194,16 @@ import com.sap.sailing.domain.common.DeviceIdentifier; |
| 194 | 194 | import com.sap.sailing.domain.common.MarkType; |
| 195 | 195 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 196 | 196 | import com.sap.sailing.domain.common.PassingInstruction; |
| 197 | -import com.sap.sailing.domain.common.Position; |
|
| 198 | 197 | import com.sap.sailing.domain.common.RaceIdentifier; |
| 199 | 198 | import com.sap.sailing.domain.common.RankingMetrics; |
| 200 | 199 | import com.sap.sailing.domain.common.RegattaName; |
| 201 | 200 | import com.sap.sailing.domain.common.RegattaNameAndRaceName; |
| 202 | 201 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 203 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 204 | 202 | import com.sap.sailing.domain.common.Wind; |
| 205 | 203 | import com.sap.sailing.domain.common.WindSource; |
| 206 | 204 | import com.sap.sailing.domain.common.WindSourceType; |
| 207 | 205 | import com.sap.sailing.domain.common.dto.AnniversaryType; |
| 208 | 206 | import com.sap.sailing.domain.common.dto.EventType; |
| 209 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 210 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 211 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 212 | 207 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 213 | 208 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 214 | 209 | import com.sap.sailing.domain.common.impl.WindSourceWithAdditionalID; |
| ... | ... | @@ -274,6 +269,8 @@ import com.sap.sse.common.Bearing; |
| 274 | 269 | import com.sap.sse.common.Color; |
| 275 | 270 | import com.sap.sse.common.Distance; |
| 276 | 271 | import com.sap.sse.common.Duration; |
| 272 | +import com.sap.sse.common.Position; |
|
| 273 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 277 | 274 | import com.sap.sse.common.TimePoint; |
| 278 | 275 | import com.sap.sse.common.TimeRange; |
| 279 | 276 | import com.sap.sse.common.TypeBasedServiceFinder; |
| ... | ... | @@ -284,8 +281,11 @@ import com.sap.sse.common.Util.Triple; |
| 284 | 281 | import com.sap.sse.common.WithID; |
| 285 | 282 | import com.sap.sse.common.impl.AbstractColor; |
| 286 | 283 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 284 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 285 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 287 | 286 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 288 | 287 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 288 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 289 | 289 | import com.sap.sse.common.impl.RGBColor; |
| 290 | 290 | import com.sap.sse.common.impl.TimeRangeImpl; |
| 291 | 291 | import com.sap.sse.common.media.MimeType; |
java/com.sap.sailing.domain.persistence/src/com/sap/sailing/domain/persistence/impl/MongoObjectFactoryImpl.java
| ... | ... | @@ -110,9 +110,7 @@ import com.sap.sailing.domain.base.configuration.RegattaConfiguration; |
| 110 | 110 | import com.sap.sailing.domain.base.impl.FleetImpl; |
| 111 | 111 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 112 | 112 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 113 | -import com.sap.sailing.domain.common.Positioned; |
|
| 114 | 113 | import com.sap.sailing.domain.common.RaceIdentifier; |
| 115 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 116 | 114 | import com.sap.sailing.domain.common.Wind; |
| 117 | 115 | import com.sap.sailing.domain.common.WindSource; |
| 118 | 116 | import com.sap.sailing.domain.common.dto.AnniversaryType; |
| ... | ... | @@ -152,7 +150,9 @@ import com.sap.sse.common.Bearing; |
| 152 | 150 | import com.sap.sse.common.Distance; |
| 153 | 151 | import com.sap.sse.common.Duration; |
| 154 | 152 | import com.sap.sse.common.NoCorrespondingServiceRegisteredException; |
| 153 | +import com.sap.sse.common.Positioned; |
|
| 155 | 154 | import com.sap.sse.common.Speed; |
| 155 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 156 | 156 | import com.sap.sse.common.TimePoint; |
| 157 | 157 | import com.sap.sse.common.TimeRange; |
| 158 | 158 | import com.sap.sse.common.Timed; |
java/com.sap.sailing.domain.persistence/src/com/sap/sailing/domain/persistence/racelog/tracking/impl/GPSFixMongoHandlerImpl.java
| ... | ... | @@ -2,7 +2,6 @@ package com.sap.sailing.domain.persistence.racelog.tracking.impl; |
| 2 | 2 | |
| 3 | 3 | import org.bson.Document; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | 5 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 7 | 6 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 8 | 7 | import com.sap.sailing.domain.persistence.DomainObjectFactory; |
| ... | ... | @@ -11,6 +10,8 @@ import com.sap.sailing.domain.persistence.impl.DomainObjectFactoryImpl; |
| 11 | 10 | import com.sap.sailing.domain.persistence.impl.MongoObjectFactoryImpl; |
| 12 | 11 | import com.sap.sailing.domain.persistence.racelog.tracking.FixMongoHandler; |
| 13 | 12 | import static com.sap.sailing.shared.persistence.impl.DomainObjectFactoryImpl.loadPosition; |
| 13 | + |
|
| 14 | +import com.sap.sse.common.Position; |
|
| 14 | 15 | import com.sap.sse.common.TimePoint; |
| 15 | 16 | |
| 16 | 17 | public class GPSFixMongoHandlerImpl implements FixMongoHandler<GPSFix> { |
java/com.sap.sailing.domain.persistence/src/com/sap/sailing/domain/persistence/racelog/tracking/impl/GPSFixMovingMongoHandlerImpl.java
| ... | ... | @@ -4,8 +4,6 @@ import static com.sap.sailing.shared.persistence.impl.DomainObjectFactoryImpl.lo |
| 4 | 4 | |
| 5 | 5 | import org.bson.Document; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 9 | 7 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 10 | 8 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 11 | 9 | import com.sap.sailing.domain.persistence.DomainObjectFactory; |
| ... | ... | @@ -14,6 +12,8 @@ import com.sap.sailing.domain.persistence.impl.DomainObjectFactoryImpl; |
| 14 | 12 | import com.sap.sailing.domain.persistence.impl.MongoObjectFactoryImpl; |
| 15 | 13 | import com.sap.sailing.domain.persistence.racelog.tracking.FixMongoHandler; |
| 16 | 14 | import com.sap.sse.common.Bearing; |
| 15 | +import com.sap.sse.common.Position; |
|
| 16 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 17 | 17 | import com.sap.sse.common.TimePoint; |
| 18 | 18 | |
| 19 | 19 | public class GPSFixMovingMongoHandlerImpl implements FixMongoHandler<GPSFixMoving> { |
java/com.sap.sailing.domain.queclinkadapter.test/src/com/sap/sailing/domain/queclinkadapter/impl/TestQueclinkMessageParser.java
| ... | ... | @@ -14,8 +14,6 @@ import java.util.regex.Matcher; |
| 14 | 14 | import org.junit.jupiter.api.BeforeEach; |
| 15 | 15 | import org.junit.jupiter.api.Test; |
| 16 | 16 | |
| 17 | -import com.sap.sailing.domain.common.Position; |
|
| 18 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 19 | 17 | import com.sap.sailing.domain.queclinkadapter.FRIReport; |
| 20 | 18 | import com.sap.sailing.domain.queclinkadapter.HBDAcknowledgement; |
| 21 | 19 | import com.sap.sailing.domain.queclinkadapter.HBDServerAcknowledgement; |
| ... | ... | @@ -23,8 +21,10 @@ import com.sap.sailing.domain.queclinkadapter.Message; |
| 23 | 21 | import com.sap.sailing.domain.queclinkadapter.MessageParser; |
| 24 | 22 | import com.sap.sailing.domain.queclinkadapter.MessageType; |
| 25 | 23 | import com.sap.sailing.domain.queclinkadapter.MessageType.Direction; |
| 24 | +import com.sap.sse.common.Position; |
|
| 26 | 25 | import com.sap.sse.common.TimePoint; |
| 27 | 26 | import com.sap.sse.common.Util; |
| 27 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 28 | 28 | |
| 29 | 29 | public class TestQueclinkMessageParser { |
| 30 | 30 | private static final double EPSILON = 0.00000001; |
java/com.sap.sailing.domain.queclinkadapter/src/com/sap/sailing/domain/queclinkadapter/PositionRelatedReport.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.domain.queclinkadapter; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | 3 | import com.sap.sse.common.Distance; |
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 6 | 6 | import com.sap.sse.common.TimePoint; |
| 7 | 7 | |
| 8 | 8 | public interface PositionRelatedReport { |
java/com.sap.sailing.domain.queclinkadapter/src/com/sap/sailing/domain/queclinkadapter/impl/FRIReportImpl.java
| ... | ... | @@ -5,8 +5,6 @@ import java.util.ArrayList; |
| 5 | 5 | import java.util.List; |
| 6 | 6 | |
| 7 | 7 | import com.sap.sailing.domain.base.impl.KilometersPerHourSpeedWithBearingImpl; |
| 8 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 9 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 10 | 8 | import com.sap.sailing.domain.queclinkadapter.FRIReport; |
| 11 | 9 | import com.sap.sailing.domain.queclinkadapter.IOStatus; |
| 12 | 10 | import com.sap.sailing.domain.queclinkadapter.MessageType; |
| ... | ... | @@ -16,6 +14,8 @@ import com.sap.sailing.domain.queclinkadapter.PositionRelatedReport; |
| 16 | 14 | import com.sap.sse.common.TimePoint; |
| 17 | 15 | import com.sap.sse.common.Util; |
| 18 | 16 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 17 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 18 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 19 | 19 | |
| 20 | 20 | public class FRIReportImpl extends MessageWithDeviceOriginImpl implements FRIReport { |
| 21 | 21 | private final Byte reportId; |
java/com.sap.sailing.domain.queclinkadapter/src/com/sap/sailing/domain/queclinkadapter/impl/PositionRelatedReportImpl.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.domain.queclinkadapter.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | 3 | import com.sap.sailing.domain.queclinkadapter.PositionRelatedReport; |
| 6 | 4 | import com.sap.sse.common.Distance; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 7 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | 8 | |
| 9 | 9 | public class PositionRelatedReportImpl implements PositionRelatedReport { |
java/com.sap.sailing.domain.racelogtrackingadapter.test/src/com/sap/sailing/domain/racelogtracking/test/AbstractGPSFixStoreTest.java
| ... | ... | @@ -29,8 +29,6 @@ import com.sap.sailing.domain.base.Sideline; |
| 29 | 29 | import com.sap.sailing.domain.base.impl.RegattaImpl; |
| 30 | 30 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 31 | 31 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 32 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 33 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 34 | 32 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 35 | 33 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 36 | 34 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| ... | ... | @@ -54,6 +52,8 @@ import com.sap.sailing.server.gateway.deserialization.impl.DeviceAndSessionIdent |
| 54 | 52 | import com.sap.sailing.server.impl.RacingEventServiceImpl; |
| 55 | 53 | import com.sap.sailing.server.interfaces.RacingEventService; |
| 56 | 54 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 55 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 56 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 57 | 57 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 58 | 58 | import com.sap.sse.mongodb.MongoDBService; |
| 59 | 59 |
java/com.sap.sailing.domain.racelogtrackingadapter.test/src/com/sap/sailing/domain/racelogtracking/test/MetadataUpdaterTest.java
| ... | ... | @@ -13,8 +13,6 @@ import com.mongodb.WriteConcern; |
| 13 | 13 | import com.mongodb.client.ClientSession; |
| 14 | 14 | import com.mongodb.client.MongoDatabase; |
| 15 | 15 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 16 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 17 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 18 | 16 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 19 | 17 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 20 | 18 | import com.sap.sailing.domain.persistence.PersistenceFactory; |
| ... | ... | @@ -34,6 +32,8 @@ import com.sap.sse.common.TransformationException; |
| 34 | 32 | import com.sap.sse.common.TypeBasedServiceFinder; |
| 35 | 33 | import com.sap.sse.common.TypeBasedServiceFinderFactory; |
| 36 | 34 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 35 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 36 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 37 | 37 | import com.sap.sse.mongodb.MongoDBService; |
| 38 | 38 | |
| 39 | 39 | public class MetadataUpdaterTest { |
java/com.sap.sailing.domain.racelogtrackingadapter.test/src/com/sap/sailing/domain/racelogtracking/test/impl/CreateAndTrackWithRaceLogTest.java
| ... | ... | @@ -50,8 +50,6 @@ import com.sap.sailing.domain.base.impl.RegattaImpl; |
| 50 | 50 | import com.sap.sailing.domain.base.impl.SeriesImpl; |
| 51 | 51 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 52 | 52 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 53 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 54 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 55 | 53 | import com.sap.sailing.domain.common.racelog.tracking.NotDenotedForRaceLogTrackingException; |
| 56 | 54 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 57 | 55 | import com.sap.sailing.domain.leaderboard.RegattaLeaderboard; |
| ... | ... | @@ -81,6 +79,8 @@ import com.sap.sse.common.NoCorrespondingServiceRegisteredException; |
| 81 | 79 | import com.sap.sse.common.TimePoint; |
| 82 | 80 | import com.sap.sse.common.TransformationException; |
| 83 | 81 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 82 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 83 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 84 | 84 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 85 | 85 | import com.sap.sse.mongodb.MongoDBService; |
| 86 | 86 |
java/com.sap.sailing.domain.racelogtrackingadapter.test/src/com/sap/sailing/domain/racelogtracking/test/impl/SensorFixStoreAndLoadTest.java
| ... | ... | @@ -62,12 +62,7 @@ import com.sap.sailing.domain.base.impl.RegattaImpl; |
| 62 | 62 | import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 63 | 63 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 64 | 64 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 65 | -import com.sap.sailing.domain.common.Position; |
|
| 66 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 67 | 65 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 68 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 69 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 70 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 71 | 66 | import com.sap.sailing.domain.common.sensordata.BravoSensorDataMetadata; |
| 72 | 67 | import com.sap.sailing.domain.common.tracking.DoubleVectorFix; |
| 73 | 68 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -103,11 +98,16 @@ import com.sap.sailing.domain.tracking.impl.EmptyWindStore; |
| 103 | 98 | import com.sap.sailing.domain.tracking.impl.SensorFixTrackImpl; |
| 104 | 99 | import com.sap.sse.common.Distance; |
| 105 | 100 | import com.sap.sse.common.Duration; |
| 101 | +import com.sap.sse.common.Position; |
|
| 102 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 106 | 103 | import com.sap.sse.common.TimePoint; |
| 107 | 104 | import com.sap.sse.common.Timed; |
| 108 | 105 | import com.sap.sse.common.Util.Pair; |
| 109 | 106 | import com.sap.sse.common.WithID; |
| 110 | 107 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 108 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 109 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 110 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 111 | 111 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 112 | 112 | |
| 113 | 113 | public class SensorFixStoreAndLoadTest { |
java/com.sap.sailing.domain.racelogtrackingadapter.test/src/com/sap/sailing/domain/racelogtracking/test/impl/TrackedRaceLoadsFixesTest.java
| ... | ... | @@ -32,7 +32,6 @@ import com.sap.sailing.domain.base.impl.CourseImpl; |
| 32 | 32 | import com.sap.sailing.domain.base.impl.RaceDefinitionImpl; |
| 33 | 33 | import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 34 | 34 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 35 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 36 | 35 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 37 | 36 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 38 | 37 | import com.sap.sailing.domain.racelogtracking.impl.SmartphoneImeiIdentifierImpl; |
| ... | ... | @@ -46,6 +45,7 @@ import com.sap.sse.common.NoCorrespondingServiceRegisteredException; |
| 46 | 45 | import com.sap.sse.common.TimePoint; |
| 47 | 46 | import com.sap.sse.common.Timed; |
| 48 | 47 | import com.sap.sse.common.TransformationException; |
| 48 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 49 | 49 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 50 | 50 | import com.sap.sse.common.impl.TimeRangeImpl; |
| 51 | 51 |
java/com.sap.sailing.domain.racelogtrackingadapter.test/src/com/sap/sailing/domain/racelogtracking/test/manual/PostFixes.java
| ... | ... | @@ -8,10 +8,6 @@ import java.util.List; |
| 8 | 8 | import java.util.Timer; |
| 9 | 9 | import java.util.TimerTask; |
| 10 | 10 | |
| 11 | -import com.sap.sailing.domain.common.Position; |
|
| 12 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 13 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 14 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 15 | 11 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 16 | 12 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 17 | 13 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| ... | ... | @@ -24,8 +20,12 @@ import com.sap.sailing.server.gateway.serialization.impl.DeviceIdentifierJsonSer |
| 24 | 20 | import com.sap.sailing.server.gateway.serialization.impl.GPSFixMovingJsonSerializer; |
| 25 | 21 | import com.sap.sse.common.Bearing; |
| 26 | 22 | import com.sap.sse.common.Distance; |
| 23 | +import com.sap.sse.common.Position; |
|
| 24 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 27 | 25 | import com.sap.sse.common.Util; |
| 28 | 26 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 27 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 28 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 29 | 29 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 30 | 30 | |
| 31 | 31 | public class PostFixes extends AbstractJsonOverHttpTest { |
java/com.sap.sailing.domain.shared.android/src/com/sap/sailing/domain/base/CourseArea.java
| ... | ... | @@ -2,11 +2,11 @@ package com.sap.sailing.domain.base; |
| 2 | 2 | |
| 3 | 3 | import java.util.UUID; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.Positioned; |
|
| 7 | 5 | import com.sap.sse.common.Distance; |
| 8 | 6 | import com.sap.sse.common.IsManagedByCache; |
| 9 | 7 | import com.sap.sse.common.NamedWithID; |
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | +import com.sap.sse.common.Positioned; |
|
| 10 | 10 | |
| 11 | 11 | /** |
| 12 | 12 | * A named area in a sailing {@link Venue} where races take place. Usually, the areas carry names according to the NATO |
java/com.sap.sailing.domain.shared.android/src/com/sap/sailing/domain/base/SharedDomainFactory.java
| ... | ... | @@ -7,9 +7,9 @@ import java.util.UUID; |
| 7 | 7 | import com.sap.sailing.domain.abstractlog.race.analyzing.impl.RaceLogResolver; |
| 8 | 8 | import com.sap.sailing.domain.common.MarkType; |
| 9 | 9 | import com.sap.sailing.domain.common.PassingInstruction; |
| 10 | -import com.sap.sailing.domain.common.Position; |
|
| 11 | 10 | import com.sap.sse.common.Color; |
| 12 | 11 | import com.sap.sse.common.Distance; |
| 12 | +import com.sap.sse.common.Position; |
|
| 13 | 13 | |
| 14 | 14 | public interface SharedDomainFactory<RLR extends RaceLogResolver> extends CompetitorFactory, BoatFactory { |
| 15 | 15 |
java/com.sap.sailing.domain.shared.android/src/com/sap/sailing/domain/base/impl/BoatClassImpl.java
| ... | ... | @@ -4,9 +4,9 @@ import com.sap.sailing.domain.base.BoatClass; |
| 4 | 4 | import com.sap.sailing.domain.base.SharedDomainFactory; |
| 5 | 5 | import com.sap.sailing.domain.common.BoatClassMasterdata; |
| 6 | 6 | import com.sap.sailing.domain.common.BoatHullType; |
| 7 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 8 | 7 | import com.sap.sse.common.Distance; |
| 9 | 8 | import com.sap.sse.common.Duration; |
| 9 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 10 | 10 | import com.sap.sse.common.impl.NamedImpl; |
| 11 | 11 | |
| 12 | 12 | public class BoatClassImpl extends NamedImpl implements BoatClass { |
java/com.sap.sailing.domain.shared.android/src/com/sap/sailing/domain/base/impl/CourseAreaImpl.java
| ... | ... | @@ -4,8 +4,8 @@ import java.util.UUID; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.base.CourseArea; |
| 6 | 6 | import com.sap.sailing.domain.base.SharedDomainFactory; |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | 7 | import com.sap.sse.common.Distance; |
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | 9 | import com.sap.sse.common.impl.NamedImpl; |
| 10 | 10 | |
| 11 | 11 | public class CourseAreaImpl extends NamedImpl implements CourseArea { |
java/com.sap.sailing.domain.shared.android/src/com/sap/sailing/domain/base/impl/SharedDomainFactoryImpl.java
| ... | ... | @@ -31,10 +31,10 @@ import com.sap.sailing.domain.base.Waypoint; |
| 31 | 31 | import com.sap.sailing.domain.common.BoatClassMasterdata; |
| 32 | 32 | import com.sap.sailing.domain.common.MarkType; |
| 33 | 33 | import com.sap.sailing.domain.common.PassingInstruction; |
| 34 | -import com.sap.sailing.domain.common.Position; |
|
| 35 | 34 | import com.sap.sse.common.Color; |
| 36 | 35 | import com.sap.sse.common.Distance; |
| 37 | 36 | import com.sap.sse.common.Duration; |
| 37 | +import com.sap.sse.common.Position; |
|
| 38 | 38 | import com.sap.sse.common.WithID; |
| 39 | 39 | import com.sap.sse.concurrent.LockUtil; |
| 40 | 40 | import com.sap.sse.concurrent.NamedReentrantReadWriteLock; |
java/com.sap.sailing.domain.shared.android/src/com/sap/sailing/domain/coursetemplate/FixedPositioning.java
| ... | ... | @@ -1,6 +1,6 @@ |
| 1 | 1 | package com.sap.sailing.domain.coursetemplate; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 3 | +import com.sap.sse.common.Position; |
|
| 4 | 4 | |
| 5 | 5 | public interface FixedPositioning extends Positioning { |
| 6 | 6 | Position getFixedPosition(); |
java/com.sap.sailing.domain.shared.android/src/com/sap/sailing/domain/coursetemplate/MarkPropertiesBuilder.java
| ... | ... | @@ -5,11 +5,11 @@ import java.util.UUID; |
| 5 | 5 | |
| 6 | 6 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 7 | 7 | import com.sap.sailing.domain.common.MarkType; |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | 8 | import com.sap.sailing.domain.coursetemplate.impl.FixedPositioningImpl; |
| 10 | 9 | import com.sap.sailing.domain.coursetemplate.impl.MarkPropertiesImpl; |
| 11 | 10 | import com.sap.sailing.domain.coursetemplate.impl.TrackingDeviceBasedPositioningImpl; |
| 12 | 11 | import com.sap.sse.common.Color; |
| 12 | +import com.sap.sse.common.Position; |
|
| 13 | 13 | import com.sap.sse.common.TimePoint; |
| 14 | 14 | |
| 15 | 15 | public class MarkPropertiesBuilder { |
java/com.sap.sailing.domain.shared.android/src/com/sap/sailing/domain/coursetemplate/impl/FixedPositioningImpl.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.domain.coursetemplate.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.domain.coursetemplate.FixedPositioning; |
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | 5 | |
| 6 | 6 | public class FixedPositioningImpl implements FixedPositioning { |
| 7 | 7 | private static final long serialVersionUID = 267606077936062645L; |
java/com.sap.sailing.domain.shared.android/src/com/sap/sailing/domain/shared/tracking/LineDetails.java
| ... | ... | @@ -3,9 +3,9 @@ package com.sap.sailing.domain.shared.tracking; |
| 3 | 3 | import com.sap.sailing.domain.base.Mark; |
| 4 | 4 | import com.sap.sailing.domain.base.Waypoint; |
| 5 | 5 | import com.sap.sailing.domain.common.NauticalSide; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sse.common.Bearing; |
| 8 | 7 | import com.sap.sse.common.Distance; |
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | 9 | import com.sap.sse.common.TimePoint; |
| 10 | 10 | |
| 11 | 11 | /** |
java/com.sap.sailing.domain.shared.android/src/com/sap/sailing/domain/shared/tracking/impl/LineDetailsImpl.java
| ... | ... | @@ -3,10 +3,10 @@ package com.sap.sailing.domain.shared.tracking.impl; |
| 3 | 3 | import com.sap.sailing.domain.base.Mark; |
| 4 | 4 | import com.sap.sailing.domain.base.Waypoint; |
| 5 | 5 | import com.sap.sailing.domain.common.NauticalSide; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sailing.domain.shared.tracking.LineDetails; |
| 8 | 7 | import com.sap.sse.common.Bearing; |
| 9 | 8 | import com.sap.sse.common.Distance; |
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | 10 | import com.sap.sse.common.TimePoint; |
| 11 | 11 | |
| 12 | 12 | public class LineDetailsImpl implements LineDetails { |
java/com.sap.sailing.domain.swisstimingadapter.test/src/com/sap/sailing/domain/swisstimingadapter/classes/services/MessageFileServiceImpl.java
| ... | ... | @@ -17,10 +17,6 @@ import java.util.List; |
| 17 | 17 | import java.util.UUID; |
| 18 | 18 | import java.util.stream.Collectors; |
| 19 | 19 | |
| 20 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 21 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 22 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 23 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 24 | 20 | import com.sap.sailing.domain.swisstimingadapter.Competitor; |
| 25 | 21 | import com.sap.sailing.domain.swisstimingadapter.Mark; |
| 26 | 22 | import com.sap.sailing.domain.swisstimingadapter.Mark.MarkType; |
| ... | ... | @@ -42,7 +38,11 @@ import com.sap.sailing.domain.swisstimingadapter.impl.RaceImpl; |
| 42 | 38 | import com.sap.sailing.domain.swisstimingadapter.impl.SailMasterMessageImpl; |
| 43 | 39 | import com.sap.sse.common.Distance; |
| 44 | 40 | import com.sap.sse.common.Speed; |
| 41 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 45 | 42 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 43 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 44 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 45 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 46 | 46 | |
| 47 | 47 | public class MessageFileServiceImpl implements MessageFileService { |
| 48 | 48 |
java/com.sap.sailing.domain.swisstimingadapter/src/com/sap/sailing/domain/swisstimingadapter/Fix.java
| ... | ... | @@ -2,10 +2,10 @@ package com.sap.sailing.domain.swisstimingadapter; |
| 2 | 2 | |
| 3 | 3 | import java.io.Serializable; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 7 | 5 | import com.sap.sse.common.Distance; |
| 6 | +import com.sap.sse.common.Position; |
|
| 8 | 7 | import com.sap.sse.common.Speed; |
| 8 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 9 | 9 | |
| 10 | 10 | /** |
| 11 | 11 | * Data fix transmitted periodically from the SwissTiming Sail Master system, telling boat position and speed |
java/com.sap.sailing.domain.swisstimingadapter/src/com/sap/sailing/domain/swisstimingadapter/SwissTimingMessage.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.domain.swisstimingadapter; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.udpconnector.UDPMessage; |
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | 5 | import com.sap.sse.common.Speed; |
| 6 | 6 | import com.sap.sse.common.TimePoint; |
| 7 | 7 |
java/com.sap.sailing.domain.swisstimingadapter/src/com/sap/sailing/domain/swisstimingadapter/impl/AbstractSailMasterConnector.java
| ... | ... | @@ -28,14 +28,7 @@ import java.util.logging.Logger; |
| 28 | 28 | import java.util.stream.Collectors; |
| 29 | 29 | |
| 30 | 30 | import com.sap.sailing.domain.base.BoatClass; |
| 31 | -import com.sap.sailing.domain.common.Position; |
|
| 32 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 33 | 31 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 34 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 35 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 36 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 37 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 38 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 39 | 32 | import com.sap.sailing.domain.swisstimingadapter.Competitor; |
| 40 | 33 | import com.sap.sailing.domain.swisstimingadapter.Course; |
| 41 | 34 | import com.sap.sailing.domain.swisstimingadapter.Fix; |
| ... | ... | @@ -52,10 +45,17 @@ import com.sap.sailing.domain.swisstimingadapter.StartList; |
| 52 | 45 | import com.sap.sailing.domain.swisstimingadapter.TrackerType; |
| 53 | 46 | import com.sap.sse.common.AbstractBearing; |
| 54 | 47 | import com.sap.sse.common.Distance; |
| 48 | +import com.sap.sse.common.Position; |
|
| 55 | 49 | import com.sap.sse.common.Speed; |
| 50 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 56 | 51 | import com.sap.sse.common.TimePoint; |
| 57 | 52 | import com.sap.sse.common.Util; |
| 58 | 53 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 54 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 55 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 56 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 57 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 58 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 59 | 59 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 60 | 60 | import com.sap.sse.shared.util.impl.UUIDHelper; |
| 61 | 61 |
java/com.sap.sailing.domain.swisstimingadapter/src/com/sap/sailing/domain/swisstimingadapter/impl/FixImpl.java
| ... | ... | @@ -2,12 +2,12 @@ package com.sap.sailing.domain.swisstimingadapter.impl; |
| 2 | 2 | |
| 3 | 3 | import java.io.Serializable; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 7 | 5 | import com.sap.sailing.domain.swisstimingadapter.Fix; |
| 8 | 6 | import com.sap.sailing.domain.swisstimingadapter.TrackerType; |
| 9 | 7 | import com.sap.sse.common.Distance; |
| 8 | +import com.sap.sse.common.Position; |
|
| 10 | 9 | import com.sap.sse.common.Speed; |
| 10 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 11 | 11 | |
| 12 | 12 | public class FixImpl implements Fix { |
| 13 | 13 | private final Serializable trackedObjectId; |
java/com.sap.sailing.domain.swisstimingadapter/src/com/sap/sailing/domain/swisstimingadapter/impl/SwissTimingMessageImpl.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.domain.swisstimingadapter.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.domain.swisstimingadapter.SwissTimingMessage; |
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | 5 | import com.sap.sse.common.Speed; |
| 6 | 6 | import com.sap.sse.common.TimePoint; |
| 7 | 7 |
java/com.sap.sailing.domain.swisstimingadapter/src/com/sap/sailing/domain/swisstimingadapter/impl/SwissTimingMessageParserImpl.java
| ... | ... | @@ -3,11 +3,11 @@ package com.sap.sailing.domain.swisstimingadapter.impl; |
| 3 | 3 | import java.net.DatagramPacket; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.base.impl.KilometersPerHourSpeedWithBearingImpl; |
| 6 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 7 | 6 | import com.sap.sailing.domain.swisstimingadapter.SwissTimingFormatException; |
| 8 | 7 | import com.sap.sailing.domain.swisstimingadapter.SwissTimingMessage; |
| 9 | 8 | import com.sap.sailing.domain.swisstimingadapter.SwissTimingMessageParser; |
| 10 | 9 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 10 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 11 | 11 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 12 | 12 | |
| 13 | 13 | public class SwissTimingMessageParserImpl implements SwissTimingMessageParser { |
java/com.sap.sailing.domain.swisstimingadapter/src/com/sap/sailing/domain/swisstimingadapter/impl/SwissTimingRaceTrackerImpl.java
| ... | ... | @@ -28,12 +28,10 @@ import com.sap.sailing.domain.base.RaceDefinition; |
| 28 | 28 | import com.sap.sailing.domain.base.Regatta; |
| 29 | 29 | import com.sap.sailing.domain.base.Sideline; |
| 30 | 30 | import com.sap.sailing.domain.base.Waypoint; |
| 31 | -import com.sap.sailing.domain.common.Position; |
|
| 32 | 31 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 33 | 32 | import com.sap.sailing.domain.common.Wind; |
| 34 | 33 | import com.sap.sailing.domain.common.WindSource; |
| 35 | 34 | import com.sap.sailing.domain.common.WindSourceType; |
| 36 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 37 | 35 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 38 | 36 | import com.sap.sailing.domain.common.impl.WindSourceWithAdditionalID; |
| 39 | 37 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -73,9 +71,11 @@ import com.sap.sailing.domain.tracking.WindTrack; |
| 73 | 71 | import com.sap.sailing.domain.tracking.impl.TrackedRaceStatusImpl; |
| 74 | 72 | import com.sap.sailing.domain.tracking.impl.UpdateHandler; |
| 75 | 73 | import com.sap.sse.common.Distance; |
| 74 | +import com.sap.sse.common.Position; |
|
| 76 | 75 | import com.sap.sse.common.TimePoint; |
| 77 | 76 | import com.sap.sse.common.Util; |
| 78 | 77 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 78 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 79 | 79 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 80 | 80 | |
| 81 | 81 | import difflib.PatchFailedException; |
java/com.sap.sailing.domain.swisstimingreplayadapter/src/com/sap/sailing/domain/swisstimingreplayadapter/impl/SwissTimingReplayToDomainAdapter.java
| ... | ... | @@ -27,12 +27,8 @@ import com.sap.sailing.domain.base.Regatta; |
| 27 | 27 | import com.sap.sailing.domain.base.Sideline; |
| 28 | 28 | import com.sap.sailing.domain.base.Waypoint; |
| 29 | 29 | import com.sap.sailing.domain.common.PassingInstruction; |
| 30 | -import com.sap.sailing.domain.common.Position; |
|
| 31 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 32 | 30 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 33 | 31 | import com.sap.sailing.domain.common.WindSourceType; |
| 34 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 35 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 36 | 32 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 37 | 33 | import com.sap.sailing.domain.common.impl.WindSourceWithAdditionalID; |
| 38 | 34 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -62,10 +58,14 @@ import com.sap.sailing.domain.tracking.impl.EmptyWindStore; |
| 62 | 58 | import com.sap.sailing.domain.tracking.impl.MarkPassingImpl; |
| 63 | 59 | import com.sap.sailing.domain.tracking.impl.TrackedRaceStatusImpl; |
| 64 | 60 | import com.sap.sse.common.Bearing; |
| 61 | +import com.sap.sse.common.Position; |
|
| 62 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 65 | 63 | import com.sap.sse.common.TimePoint; |
| 66 | 64 | import com.sap.sse.common.Util; |
| 67 | 65 | import com.sap.sse.common.Util.Pair; |
| 68 | 66 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 67 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 68 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 69 | 69 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 70 | 70 | |
| 71 | 71 | import difflib.PatchFailedException; |
java/com.sap.sailing.domain.test/resources/IncrementalLeaderboardDTO.ser
| 72 | 72 | index ceba5ca..c23a023 |
| ... | ... | Binary files a/java/com.sap.sailing.domain.test/resources/IncrementalLeaderboardDTO.ser and b/java/com.sap.sailing.domain.test/resources/IncrementalLeaderboardDTO.ser differ |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/common/test/BearingChangeAnalyzerTest.java
| ... | ... | @@ -4,7 +4,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; |
| 4 | 4 | |
| 5 | 5 | import org.junit.jupiter.api.Test; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.BearingChangeAnalyzer; |
|
| 7 | +import com.sap.sse.common.BearingChangeAnalyzer; |
|
| 8 | 8 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 9 | 9 | |
| 10 | 10 | public class BearingChangeAnalyzerTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/common/test/BeaufortTest.java
| ... | ... | @@ -4,8 +4,8 @@ import static org.junit.jupiter.api.Assertions.assertEquals; |
| 4 | 4 | |
| 5 | 5 | import org.junit.jupiter.api.Test; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.impl.MeterPerSecondSpeedImpl; |
|
| 8 | 7 | import com.sap.sse.common.Speed; |
| 8 | +import com.sap.sse.common.impl.MeterPerSecondSpeedImpl; |
|
| 9 | 9 | |
| 10 | 10 | public class BeaufortTest { |
| 11 | 11 | @Test |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/common/test/CompactTimePointTest.java
| ... | ... | @@ -4,12 +4,12 @@ import static org.junit.jupiter.api.Assertions.assertTrue; |
| 4 | 4 | |
| 5 | 5 | import org.junit.jupiter.api.Test; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 8 | 7 | import com.sap.sailing.domain.common.tracking.impl.CompactionNotPossibleException; |
| 9 | 8 | import com.sap.sailing.domain.common.tracking.impl.VeryCompactGPSFixMovingImpl; |
| 10 | 9 | import com.sap.sse.common.Duration; |
| 11 | 10 | import com.sap.sse.common.TimePoint; |
| 12 | 11 | import com.sap.sse.common.TimeRange; |
| 12 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 13 | 13 | |
| 14 | 14 | public class CompactTimePointTest { |
| 15 | 15 | @Test |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/common/test/ScalableBearingTest.java
| ... | ... | @@ -4,9 +4,9 @@ import static org.junit.jupiter.api.Assertions.assertEquals; |
| 4 | 4 | |
| 5 | 5 | import org.junit.jupiter.api.Test; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 8 | 7 | import com.sap.sse.common.Bearing; |
| 9 | 8 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 9 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 10 | 10 | |
| 11 | 11 | public class ScalableBearingTest { |
| 12 | 12 | @Test |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/maneuverdetection/impl/CurveEnteringAndExitingComputationTest.java
| ... | ... | @@ -11,14 +11,14 @@ import java.util.List; |
| 11 | 11 | import org.junit.jupiter.api.Test; |
| 12 | 12 | |
| 13 | 13 | import com.sap.sailing.domain.common.NauticalSide; |
| 14 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 15 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 16 | 14 | import com.sap.sailing.domain.tracking.SpeedWithBearingStep; |
| 17 | 15 | import com.sap.sailing.domain.tracking.SpeedWithBearingStepsIterable; |
| 18 | 16 | import com.sap.sailing.domain.tracking.impl.SpeedWithBearingStepImpl; |
| 19 | 17 | import com.sap.sse.common.Bearing; |
| 18 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 20 | 19 | import com.sap.sse.common.TimePoint; |
| 21 | 20 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 21 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 22 | 22 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 23 | 23 | |
| 24 | 24 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/maneuverdetection/impl/IncrementalManeuverComputationTest.java
| ... | ... | @@ -19,7 +19,6 @@ import org.junit.jupiter.api.Test; |
| 19 | 19 | import com.sap.sailing.domain.base.Competitor; |
| 20 | 20 | import com.sap.sailing.domain.common.NoWindException; |
| 21 | 21 | import com.sap.sailing.domain.common.WindSourceType; |
| 22 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 23 | 22 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 24 | 23 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 25 | 24 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -34,6 +33,7 @@ import com.sap.sailing.domain.tracking.impl.DynamicTrackedRaceImpl; |
| 34 | 33 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 35 | 34 | import com.sap.sse.common.TimePoint; |
| 36 | 35 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 36 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 37 | 37 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 38 | 38 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 39 | 39 |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/markpassing/impl/WaypointPositionAndDistanceCacheTest.java
| ... | ... | @@ -24,9 +24,6 @@ import com.sap.sailing.domain.base.impl.CourseImpl; |
| 24 | 24 | import com.sap.sailing.domain.base.impl.MarkImpl; |
| 25 | 25 | import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 26 | 26 | import com.sap.sailing.domain.common.PassingInstruction; |
| 27 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 28 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 29 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 30 | 27 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 31 | 28 | import com.sap.sailing.domain.markpassingcalculation.impl.WaypointPositionAndDistanceCache; |
| 32 | 29 | import com.sap.sailing.domain.racelog.RaceLogAndTrackedRaceResolver; |
| ... | ... | @@ -38,7 +35,10 @@ import com.sap.sailing.domain.tracking.impl.EmptyWindStore; |
| 38 | 35 | import com.sap.sse.common.Duration; |
| 39 | 36 | import com.sap.sse.common.TimePoint; |
| 40 | 37 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 38 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 39 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 41 | 40 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 41 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 42 | 42 | |
| 43 | 43 | public class WaypointPositionAndDistanceCacheTest { |
| 44 | 44 | private WaypointPositionAndDistanceCache cache; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/markpassingcalculation/impl/CandidateFinderImplWhiteBoxTest.java
| ... | ... | @@ -23,10 +23,6 @@ import com.sap.sailing.domain.base.Competitor; |
| 23 | 23 | import com.sap.sailing.domain.base.CompetitorWithBoat; |
| 24 | 24 | import com.sap.sailing.domain.base.Waypoint; |
| 25 | 25 | import com.sap.sailing.domain.base.configuration.impl.EmptyRegattaConfiguration; |
| 26 | -import com.sap.sailing.domain.common.Position; |
|
| 27 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 28 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 29 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 30 | 26 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 31 | 27 | import com.sap.sailing.domain.markpassingcalculation.Candidate; |
| 32 | 28 | import com.sap.sailing.domain.markpassingcalculation.CandidateFinder; |
| ... | ... | @@ -36,10 +32,14 @@ import com.sap.sailing.domain.test.TrackBasedTest; |
| 36 | 32 | import com.sap.sailing.domain.tracking.DynamicTrackedRace; |
| 37 | 33 | import com.sap.sailing.domain.tracking.impl.TrackedRaceImpl; |
| 38 | 34 | import com.sap.sse.common.Duration; |
| 35 | +import com.sap.sse.common.Position; |
|
| 36 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 39 | 37 | import com.sap.sse.common.TimePoint; |
| 40 | 38 | import com.sap.sse.common.Util; |
| 41 | 39 | import com.sap.sse.common.Util.Pair; |
| 42 | 40 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 41 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 42 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 43 | 43 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 44 | 44 | |
| 45 | 45 | public class CandidateFinderImplWhiteBoxTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/markpassingcalculation/impl/StationarySequenceBasedFilterTest.java
| ... | ... | @@ -12,10 +12,6 @@ import org.junit.jupiter.api.BeforeEach; |
| 12 | 12 | import org.junit.jupiter.api.Test; |
| 13 | 13 | |
| 14 | 14 | import com.sap.sailing.domain.base.Competitor; |
| 15 | -import com.sap.sailing.domain.common.Position; |
|
| 16 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 17 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 18 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 19 | 15 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 20 | 16 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 21 | 17 | import com.sap.sailing.domain.markpassingcalculation.Candidate; |
| ... | ... | @@ -24,10 +20,14 @@ import com.sap.sailing.domain.tracking.DynamicGPSFixTrack; |
| 24 | 20 | import com.sap.sailing.domain.tracking.impl.DynamicGPSFixMovingTrackImpl; |
| 25 | 21 | import com.sap.sse.common.Bearing; |
| 26 | 22 | import com.sap.sse.common.Duration; |
| 23 | +import com.sap.sse.common.Position; |
|
| 27 | 24 | import com.sap.sse.common.Speed; |
| 25 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 28 | 26 | import com.sap.sse.common.TimePoint; |
| 29 | 27 | import com.sap.sse.common.Util; |
| 30 | 28 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 29 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 30 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 31 | 31 | |
| 32 | 32 | public class StationarySequenceBasedFilterTest extends AbstractCandidateFilterTestSupport { |
| 33 | 33 | private StationarySequence stationarySequence; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/markpassingcalculation/impl/StationarySequenceTest.java
| ... | ... | @@ -18,10 +18,6 @@ import com.sap.sailing.domain.base.Waypoint; |
| 18 | 18 | import com.sap.sailing.domain.base.impl.ControlPointWithTwoMarksImpl; |
| 19 | 19 | import com.sap.sailing.domain.base.impl.MarkImpl; |
| 20 | 20 | import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 21 | -import com.sap.sailing.domain.common.Position; |
|
| 22 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 23 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 24 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 25 | 21 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 26 | 22 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 27 | 23 | import com.sap.sailing.domain.markpassingcalculation.Candidate; |
| ... | ... | @@ -29,9 +25,13 @@ import com.sap.sailing.domain.test.TrackBasedTest; |
| 29 | 25 | import com.sap.sailing.domain.tracking.DynamicGPSFixTrack; |
| 30 | 26 | import com.sap.sailing.domain.tracking.impl.DynamicGPSFixMovingTrackImpl; |
| 31 | 27 | import com.sap.sse.common.Duration; |
| 28 | +import com.sap.sse.common.Position; |
|
| 29 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 32 | 30 | import com.sap.sse.common.TimePoint; |
| 33 | 31 | import com.sap.sse.common.Util; |
| 34 | 32 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 33 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 34 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 35 | 35 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 36 | 36 | |
| 37 | 37 | public class StationarySequenceTest extends AbstractCandidateFilterTestSupport { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/orc/ORCPerformanceCurveRankingTest.java
| ... | ... | @@ -36,9 +36,6 @@ import com.sap.sailing.domain.abstractlog.regatta.RegattaLogEvent; |
| 36 | 36 | import com.sap.sailing.domain.base.Boat; |
| 37 | 37 | import com.sap.sailing.domain.base.Competitor; |
| 38 | 38 | import com.sap.sailing.domain.common.WindSourceType; |
| 39 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 40 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 41 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 42 | 39 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 43 | 40 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 44 | 41 | import com.sap.sailing.domain.common.orc.ORCCertificate; |
| ... | ... | @@ -51,7 +48,10 @@ import com.sap.sse.common.Duration; |
| 51 | 48 | import com.sap.sse.common.TimePoint; |
| 52 | 49 | import com.sap.sse.common.Util; |
| 53 | 50 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 51 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 52 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 54 | 53 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 54 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 55 | 55 | import com.sap.sse.common.impl.SecondsDurationImpl; |
| 56 | 56 | |
| 57 | 57 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/orc/TestORCCertificateImporterRMS.java
| ... | ... | @@ -12,10 +12,10 @@ import java.util.Collection; |
| 12 | 12 | import org.json.simple.parser.ParseException; |
| 13 | 13 | import org.junit.jupiter.api.Test; |
| 14 | 14 | |
| 15 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 16 | 15 | import com.sap.sailing.domain.common.orc.ORCCertificate; |
| 17 | 16 | import com.sap.sailing.domain.orc.impl.ORCCertificatesRmsImporter; |
| 18 | 17 | import com.sap.sse.common.Duration; |
| 18 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 19 | 19 | |
| 20 | 20 | public class TestORCCertificateImporterRMS extends AbstractORCCertificateImporterTest { |
| 21 | 21 | private static final String RESOURCES = "resources/orc/"; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/orc/TestORCPerformanceCurve.java
| ... | ... | @@ -28,8 +28,6 @@ import org.junit.jupiter.api.function.Executable; |
| 28 | 28 | import org.w3c.dom.DOMException; |
| 29 | 29 | import org.xml.sax.SAXException; |
| 30 | 30 | |
| 31 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 32 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 33 | 31 | import com.sap.sailing.domain.common.orc.ORCCertificate; |
| 34 | 32 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveCourse; |
| 35 | 33 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveLeg; |
| ... | ... | @@ -46,6 +44,8 @@ import com.sap.sse.common.Duration; |
| 46 | 44 | import com.sap.sse.common.Speed; |
| 47 | 45 | import com.sap.sse.common.Util; |
| 48 | 46 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 47 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 48 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 49 | 49 | |
| 50 | 50 | /** |
| 51 | 51 | * |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/orc/TestORCPerformanceCurveCourse.java
| ... | ... | @@ -11,12 +11,7 @@ import org.junit.jupiter.api.Test; |
| 11 | 11 | import org.mockito.ArgumentMatchers; |
| 12 | 12 | import org.mockito.Mockito; |
| 13 | 13 | |
| 14 | -import com.sap.sailing.domain.common.Position; |
|
| 15 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 16 | 14 | import com.sap.sailing.domain.common.Wind; |
| 17 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 18 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 19 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 20 | 15 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 21 | 16 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveCourse; |
| 22 | 17 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveLeg; |
| ... | ... | @@ -29,10 +24,15 @@ import com.sap.sailing.domain.tracking.TrackedRace; |
| 29 | 24 | import com.sap.sailing.domain.tracking.WindLegTypeAndLegBearingAndORCPerformanceCurveCache; |
| 30 | 25 | import com.sap.sailing.domain.tracking.impl.WindWithConfidenceImpl; |
| 31 | 26 | import com.sap.sse.common.Bearing; |
| 27 | +import com.sap.sse.common.Position; |
|
| 28 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 32 | 29 | import com.sap.sse.common.TimePoint; |
| 33 | 30 | import com.sap.sse.common.Util; |
| 34 | 31 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 32 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 33 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 35 | 34 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 35 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 36 | 36 | |
| 37 | 37 | public class TestORCPerformanceCurveCourse { |
| 38 | 38 | @Test |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/orc/TestORCRankingMetricCollaborationWithRaceLogAndRegattaLog.java
| ... | ... | @@ -29,7 +29,6 @@ import com.sap.sailing.domain.base.Competitor; |
| 29 | 29 | import com.sap.sailing.domain.base.CompetitorWithBoat; |
| 30 | 30 | import com.sap.sailing.domain.base.DomainFactory; |
| 31 | 31 | import com.sap.sailing.domain.common.abstractlog.NotRevokableException; |
| 32 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 33 | 32 | import com.sap.sailing.domain.common.orc.ORCCertificate; |
| 34 | 33 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveCourse; |
| 35 | 34 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveLeg; |
| ... | ... | @@ -43,6 +42,7 @@ import com.sap.sailing.domain.tracking.impl.DynamicTrackedRaceImpl; |
| 43 | 42 | import com.sap.sse.common.Util; |
| 44 | 43 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 45 | 44 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 45 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 46 | 46 | |
| 47 | 47 | /** |
| 48 | 48 | * An {@link ORCPerformanceCurveRankingMetric} observes its {@link TrackedRace} for the regatta log |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/ranking/TestCrossFleetScoring.java
| ... | ... | @@ -47,8 +47,6 @@ import com.sap.sailing.domain.common.BoatClassMasterdata; |
| 47 | 47 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 48 | 48 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 49 | 49 | import com.sap.sailing.domain.common.WindSourceType; |
| 50 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 51 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 52 | 50 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 53 | 51 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 54 | 52 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| ... | ... | @@ -68,6 +66,8 @@ import com.sap.sse.common.Duration; |
| 68 | 66 | import com.sap.sse.common.TimePoint; |
| 69 | 67 | import com.sap.sse.common.Util.Pair; |
| 70 | 68 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 69 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 70 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 71 | 71 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 72 | 72 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 73 | 73 |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/ranking/TestFarthestAheadWithSkippedMarkPassing.java
| ... | ... | @@ -38,8 +38,6 @@ import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 38 | 38 | import com.sap.sailing.domain.common.RankingMetrics; |
| 39 | 39 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 40 | 40 | import com.sap.sailing.domain.common.WindSourceType; |
| 41 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 42 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 43 | 41 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 44 | 42 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 45 | 43 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| ... | ... | @@ -59,6 +57,8 @@ import com.sap.sailing.domain.tracking.impl.MarkPassingImpl; |
| 59 | 57 | import com.sap.sse.common.Duration; |
| 60 | 58 | import com.sap.sse.common.TimePoint; |
| 61 | 59 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 60 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 61 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 62 | 62 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 63 | 63 | |
| 64 | 64 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/ranking/TestSimpleTimeOnTimeRankingWithOneUpwindLeg.java
| ... | ... | @@ -37,8 +37,6 @@ import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 37 | 37 | import com.sap.sailing.domain.common.RankingMetrics; |
| 38 | 38 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 39 | 39 | import com.sap.sailing.domain.common.WindSourceType; |
| 40 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 41 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 42 | 40 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 43 | 41 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 44 | 42 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| ... | ... | @@ -57,6 +55,8 @@ import com.sap.sailing.domain.tracking.impl.MarkPassingImpl; |
| 57 | 55 | import com.sap.sse.common.Duration; |
| 58 | 56 | import com.sap.sse.common.TimePoint; |
| 59 | 57 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 58 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 59 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 60 | 60 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 61 | 61 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 62 | 62 |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/BearingTest.java
| ... | ... | @@ -10,19 +10,19 @@ import java.util.Collections; |
| 10 | 10 | import org.junit.jupiter.api.Test; |
| 11 | 11 | |
| 12 | 12 | import com.sap.sailing.domain.base.impl.PositionWithConfidenceImpl; |
| 13 | -import com.sap.sailing.domain.common.BearingCluster; |
|
| 14 | -import com.sap.sailing.domain.common.Position; |
|
| 15 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 16 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidenceCluster; |
|
| 17 | -import com.sap.sailing.domain.common.confidence.ConfidenceBasedAverager; |
|
| 18 | -import com.sap.sailing.domain.common.confidence.ConfidenceFactory; |
|
| 19 | -import com.sap.sailing.domain.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 20 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 21 | -import com.sap.sailing.domain.common.impl.RadianBearingImpl; |
|
| 22 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalablePosition; |
|
| 23 | 13 | import com.sap.sse.common.Bearing; |
| 14 | +import com.sap.sse.common.BearingCluster; |
|
| 15 | +import com.sap.sse.common.Position; |
|
| 16 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 17 | +import com.sap.sse.common.confidence.BearingWithConfidenceCluster; |
|
| 18 | +import com.sap.sse.common.confidence.ConfidenceBasedAverager; |
|
| 19 | +import com.sap.sse.common.confidence.ConfidenceFactory; |
|
| 20 | +import com.sap.sse.common.confidence.HasConfidence; |
|
| 21 | +import com.sap.sse.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 24 | 22 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 25 | -import com.sap.sse.common.scalablevalue.HasConfidence; |
|
| 23 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 24 | +import com.sap.sse.common.impl.RadianBearingImpl; |
|
| 25 | +import com.sap.sse.common.scalablevalue.impl.ScalablePosition; |
|
| 26 | 26 | |
| 27 | 27 | public class BearingTest { |
| 28 | 28 | @Test |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/BoundsTest.java
| ... | ... | @@ -6,9 +6,9 @@ import static org.junit.jupiter.api.Assertions.assertTrue; |
| 6 | 6 | |
| 7 | 7 | import org.junit.jupiter.api.Test; |
| 8 | 8 | |
| 9 | -import com.sap.sailing.domain.common.Bounds; |
|
| 10 | -import com.sap.sailing.domain.common.impl.BoundsImpl; |
|
| 11 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 9 | +import com.sap.sse.common.Bounds; |
|
| 10 | +import com.sap.sse.common.impl.BoundsImpl; |
|
| 11 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 12 | 12 | |
| 13 | 13 | public class BoundsTest { |
| 14 | 14 | @Test |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/BravoFixTrackFoiledDistanceCacheTest.java
| ... | ... | @@ -17,9 +17,6 @@ import org.junit.jupiter.api.Test; |
| 17 | 17 | |
| 18 | 18 | import com.sap.sailing.domain.base.CourseArea; |
| 19 | 19 | import com.sap.sailing.domain.base.impl.CourseAreaImpl; |
| 20 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 21 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 22 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 23 | 20 | import com.sap.sailing.domain.common.sensordata.BravoExtendedSensorDataMetadata; |
| 24 | 21 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 25 | 22 | import com.sap.sailing.domain.common.tracking.impl.BravoExtendedFixImpl; |
| ... | ... | @@ -33,7 +30,10 @@ import com.sap.sailing.domain.tracking.impl.DynamicGPSFixMovingTrackImpl; |
| 33 | 30 | import com.sap.sse.common.Distance; |
| 34 | 31 | import com.sap.sse.common.TimePoint; |
| 35 | 32 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 33 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 34 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 36 | 35 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 36 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 37 | 37 | |
| 38 | 38 | /** |
| 39 | 39 | * See bug4629. This test reproduces an order of fix insertion into a {@link BravoFixTrack}, cache invalidation, |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/ConcurrencyTest.java
| ... | ... | @@ -18,8 +18,6 @@ import org.junit.jupiter.api.Test; |
| 18 | 18 | import com.sap.sailing.domain.base.Competitor; |
| 19 | 19 | import com.sap.sailing.domain.base.impl.DouglasPeucker; |
| 20 | 20 | import com.sap.sailing.domain.common.WindSourceType; |
| 21 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 22 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 23 | 21 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 24 | 22 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 25 | 23 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -27,6 +25,8 @@ import com.sap.sailing.domain.tracking.DynamicGPSFixTrack; |
| 27 | 25 | import com.sap.sailing.domain.tracking.MarkPassing; |
| 28 | 26 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 29 | 27 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 28 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 29 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 30 | 30 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 31 | 31 | import com.sap.sse.util.ThreadPoolUtil; |
| 32 | 32 |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/ConfidenceTest.java
| ... | ... | @@ -13,33 +13,33 @@ import org.junit.jupiter.api.Test; |
| 13 | 13 | |
| 14 | 14 | import com.sap.sailing.domain.base.PositionWithConfidence; |
| 15 | 15 | import com.sap.sailing.domain.base.impl.PositionWithConfidenceImpl; |
| 16 | -import com.sap.sailing.domain.common.Position; |
|
| 17 | 16 | import com.sap.sailing.domain.common.Wind; |
| 18 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 19 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidenceCluster; |
|
| 20 | -import com.sap.sailing.domain.common.confidence.ConfidenceBasedAverager; |
|
| 21 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 22 | -import com.sap.sailing.domain.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 23 | 17 | import com.sap.sailing.domain.common.confidence.impl.ScalableWind; |
| 24 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 25 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 26 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 27 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 28 | -import com.sap.sailing.domain.common.impl.RadianBearingImpl; |
|
| 29 | 18 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 30 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalablePosition; |
|
| 31 | 19 | import com.sap.sailing.domain.confidence.ConfidenceBasedWindAverager; |
| 32 | 20 | import com.sap.sailing.domain.confidence.ConfidenceFactory; |
| 33 | 21 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 34 | 22 | import com.sap.sailing.domain.tracking.impl.WindWithConfidenceImpl; |
| 35 | 23 | import com.sap.sse.common.Bearing; |
| 24 | +import com.sap.sse.common.Position; |
|
| 36 | 25 | import com.sap.sse.common.TimePoint; |
| 26 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 27 | +import com.sap.sse.common.confidence.BearingWithConfidenceCluster; |
|
| 28 | +import com.sap.sse.common.confidence.ConfidenceBasedAverager; |
|
| 29 | +import com.sap.sse.common.confidence.HasConfidence; |
|
| 30 | +import com.sap.sse.common.confidence.Weigher; |
|
| 31 | +import com.sap.sse.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 37 | 32 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 33 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 34 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 35 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 38 | 36 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 39 | -import com.sap.sse.common.scalablevalue.HasConfidence; |
|
| 37 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 38 | +import com.sap.sse.common.impl.RadianBearingImpl; |
|
| 40 | 39 | import com.sap.sse.common.scalablevalue.HasConfidenceAndIsScalable; |
| 41 | 40 | import com.sap.sse.common.scalablevalue.ScalableDoubleWithConfidence; |
| 42 | 41 | import com.sap.sse.common.scalablevalue.ScalableValue; |
| 42 | +import com.sap.sse.common.scalablevalue.impl.ScalablePosition; |
|
| 43 | 43 | |
| 44 | 44 | public class ConfidenceTest { |
| 45 | 45 | private static class ScalableBearing implements ScalableValue<ScalableBearing, Bearing> { |
| ... | ... | @@ -534,35 +534,35 @@ public class ConfidenceTest { |
| 534 | 534 | |
| 535 | 535 | @Test |
| 536 | 536 | public void simpleApproximateScalableBearingDistanceTest1() { |
| 537 | - com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(100)); |
|
| 537 | + com.sap.sse.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sse.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(100)); |
|
| 538 | 538 | Bearing b = new DegreeBearingImpl(280); |
| 539 | 539 | assertEquals(360./Math.PI, sb.getApproximateDegreeDistanceTo(b), 0.001); |
| 540 | 540 | } |
| 541 | 541 | |
| 542 | 542 | @Test |
| 543 | 543 | public void simpleApproximateScalableBearingDistanceTest2() { |
| 544 | - com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(0)); |
|
| 544 | + com.sap.sse.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sse.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(0)); |
|
| 545 | 545 | Bearing b = new DegreeBearingImpl(180); |
| 546 | 546 | assertEquals(360./Math.PI, sb.getApproximateDegreeDistanceTo(b), 0.001); |
| 547 | 547 | } |
| 548 | 548 | |
| 549 | 549 | @Test |
| 550 | 550 | public void simpleApproximateScalableBearingDistanceTest3() { |
| 551 | - com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(100)); |
|
| 551 | + com.sap.sse.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sse.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(100)); |
|
| 552 | 552 | Bearing b = new DegreeBearingImpl(101); |
| 553 | 553 | assertEquals(1, sb.getApproximateDegreeDistanceTo(b), 0.01); |
| 554 | 554 | } |
| 555 | 555 | |
| 556 | 556 | @Test |
| 557 | 557 | public void simpleApproximateScalableBearingDistanceTest4() { |
| 558 | - com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(0)); |
|
| 558 | + com.sap.sse.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sse.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(0)); |
|
| 559 | 559 | Bearing b = new DegreeBearingImpl(1); |
| 560 | 560 | assertEquals(1, sb.getApproximateDegreeDistanceTo(b), 0.01); |
| 561 | 561 | } |
| 562 | 562 | |
| 563 | 563 | @Test |
| 564 | 564 | public void scaledApproximateScalableBearingDistanceTest1() { |
| 565 | - com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(100)). |
|
| 565 | + com.sap.sse.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sse.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(100)). |
|
| 566 | 566 | multiply(123); |
| 567 | 567 | Bearing b = new DegreeBearingImpl(280); |
| 568 | 568 | assertEquals(360./Math.PI, sb.getApproximateDegreeDistanceTo(b), 0.001); |
| ... | ... | @@ -570,7 +570,7 @@ public class ConfidenceTest { |
| 570 | 570 | |
| 571 | 571 | @Test |
| 572 | 572 | public void scaledApproximateScalableBearingDistanceTest2() { |
| 573 | - com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(0)). |
|
| 573 | + com.sap.sse.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sse.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(0)). |
|
| 574 | 574 | multiply(123); |
| 575 | 575 | Bearing b = new DegreeBearingImpl(180); |
| 576 | 576 | assertEquals(360./Math.PI, sb.getApproximateDegreeDistanceTo(b), 0.001); |
| ... | ... | @@ -578,7 +578,7 @@ public class ConfidenceTest { |
| 578 | 578 | |
| 579 | 579 | @Test |
| 580 | 580 | public void scaledApproximateScalableBearingDistanceTest3() { |
| 581 | - com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(100)). |
|
| 581 | + com.sap.sse.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sse.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(100)). |
|
| 582 | 582 | multiply(123); |
| 583 | 583 | Bearing b = new DegreeBearingImpl(101); |
| 584 | 584 | assertEquals(1, sb.getApproximateDegreeDistanceTo(b), 0.01); |
| ... | ... | @@ -586,7 +586,7 @@ public class ConfidenceTest { |
| 586 | 586 | |
| 587 | 587 | @Test |
| 588 | 588 | public void scaledApproximateScalableBearingDistanceTest4() { |
| 589 | - com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(0)). |
|
| 589 | + com.sap.sse.common.scalablevalue.impl.ScalableBearing sb = new com.sap.sse.common.scalablevalue.impl.ScalableBearing(new DegreeBearingImpl(0)). |
|
| 590 | 590 | multiply(123); |
| 591 | 591 | Bearing b = new DegreeBearingImpl(1); |
| 592 | 592 | assertEquals(1, sb.getApproximateDegreeDistanceTo(b), 0.01); |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/CourseChangeBasedTrackApproximationTest.java
| ... | ... | @@ -11,9 +11,6 @@ import com.sap.sailing.domain.base.BoatClass; |
| 11 | 11 | import com.sap.sailing.domain.base.Competitor; |
| 12 | 12 | import com.sap.sailing.domain.base.CompetitorWithBoat; |
| 13 | 13 | import com.sap.sailing.domain.base.impl.BoatClassImpl; |
| 14 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 15 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 16 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 17 | 14 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 18 | 15 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 19 | 16 | import com.sap.sailing.domain.tracking.DynamicGPSFixTrack; |
| ... | ... | @@ -24,6 +21,9 @@ import com.sap.sse.common.Speed; |
| 24 | 21 | import com.sap.sse.common.TimePoint; |
| 25 | 22 | import com.sap.sse.common.Util; |
| 26 | 23 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 24 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 25 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 26 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 27 | 27 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 28 | 28 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 29 | 29 |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/DirectGapCalculationVersusOneDesignRankingMetricTest.java
| ... | ... | @@ -16,7 +16,6 @@ import org.junit.jupiter.api.Test; |
| 16 | 16 | import com.sap.sailing.domain.base.Competitor; |
| 17 | 17 | import com.sap.sailing.domain.common.NoWindException; |
| 18 | 18 | import com.sap.sailing.domain.common.WindSourceType; |
| 19 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 20 | 19 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 21 | 20 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 22 | 21 | import com.sap.sailing.domain.leaderboard.caching.LeaderboardDTOCalculationReuseCache; |
| ... | ... | @@ -28,6 +27,7 @@ import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 28 | 27 | import com.sap.sse.common.Duration; |
| 29 | 28 | import com.sap.sse.common.TimePoint; |
| 30 | 29 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 30 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 31 | 31 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 32 | 32 | |
| 33 | 33 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/DistanceCacheInvalidationAfterLoadingFinishedTest.java
| ... | ... | @@ -11,10 +11,7 @@ import org.junit.jupiter.api.Test; |
| 11 | 11 | import com.sap.sailing.domain.base.Boat; |
| 12 | 12 | import com.sap.sailing.domain.base.Competitor; |
| 13 | 13 | import com.sap.sailing.domain.base.CompetitorWithBoat; |
| 14 | -import com.sap.sailing.domain.common.Position; |
|
| 15 | 14 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 16 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 17 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 18 | 15 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 19 | 16 | import com.sap.sailing.domain.tracking.DynamicTrackedRace; |
| 20 | 17 | import com.sap.sailing.domain.tracking.TrackingDataLoader; |
| ... | ... | @@ -22,8 +19,11 @@ import com.sap.sailing.domain.tracking.impl.MarkPassingImpl; |
| 22 | 19 | import com.sap.sailing.domain.tracking.impl.TrackedRaceStatusImpl; |
| 23 | 20 | import com.sap.sse.common.Distance; |
| 24 | 21 | import com.sap.sse.common.Duration; |
| 22 | +import com.sap.sse.common.Position; |
|
| 25 | 23 | import com.sap.sse.common.TimePoint; |
| 26 | 24 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 25 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 26 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 27 | 27 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 28 | 28 | |
| 29 | 29 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/DistanceTest.java
| ... | ... | @@ -6,11 +6,11 @@ import static org.junit.jupiter.api.Assertions.assertTrue; |
| 6 | 6 | import org.junit.jupiter.api.Test; |
| 7 | 7 | |
| 8 | 8 | import com.sap.sailing.domain.common.BoatClassMasterdata; |
| 9 | -import com.sap.sailing.domain.common.Position; |
|
| 10 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 11 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 12 | 9 | import com.sap.sse.common.Distance; |
| 10 | +import com.sap.sse.common.Position; |
|
| 13 | 11 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 12 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 13 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 14 | 14 | |
| 15 | 15 | public class DistanceTest { |
| 16 | 16 | @Test |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/LeaderboardDTOCalculationReuseCacheTest.java
| ... | ... | @@ -10,14 +10,14 @@ import java.util.Collections; |
| 10 | 10 | import org.junit.jupiter.api.Test; |
| 11 | 11 | |
| 12 | 12 | import com.sap.sailing.domain.base.Competitor; |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 15 | 13 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveCourse; |
| 16 | 14 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 17 | 15 | import com.sap.sailing.domain.leaderboard.caching.LeaderboardDTOCalculationReuseCache; |
| 18 | 16 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 19 | 17 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 18 | +import com.sap.sse.common.Position; |
|
| 20 | 19 | import com.sap.sse.common.TimePoint; |
| 20 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 21 | 21 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 22 | 22 | |
| 23 | 23 | public class LeaderboardDTOCalculationReuseCacheTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/LeaderboardForKielWeekTest.java
| ... | ... | @@ -17,7 +17,6 @@ import com.sap.sailing.domain.base.Competitor; |
| 17 | 17 | import com.sap.sailing.domain.base.RaceColumn; |
| 18 | 18 | import com.sap.sailing.domain.common.NoWindException; |
| 19 | 19 | import com.sap.sailing.domain.common.WindSourceType; |
| 20 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 21 | 20 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 22 | 21 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 23 | 22 | import com.sap.sailing.domain.leaderboard.impl.FlexibleLeaderboardImpl; |
| ... | ... | @@ -27,6 +26,7 @@ import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 27 | 26 | import com.sap.sse.common.TimePoint; |
| 28 | 27 | import com.sap.sse.common.Util; |
| 29 | 28 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 29 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 30 | 30 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 31 | 31 | import com.tractrac.model.lib.api.event.CreateModelException; |
| 32 | 32 | import com.tractrac.subscription.lib.api.SubscriberInitializationException; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/LineAnalysisTest.java
| ... | ... | @@ -8,9 +8,6 @@ import org.junit.jupiter.api.Test; |
| 8 | 8 | import com.sap.sailing.domain.base.CompetitorWithBoat; |
| 9 | 9 | import com.sap.sailing.domain.base.Mark; |
| 10 | 10 | import com.sap.sailing.domain.common.NauticalSide; |
| 11 | -import com.sap.sailing.domain.common.Position; |
|
| 12 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 13 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 14 | 11 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 15 | 12 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 16 | 13 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| ... | ... | @@ -19,8 +16,11 @@ import com.sap.sailing.domain.tracking.DynamicGPSFixTrack; |
| 19 | 16 | import com.sap.sailing.domain.tracking.DynamicTrackedRace; |
| 20 | 17 | import com.sap.sse.common.Bearing; |
| 21 | 18 | import com.sap.sse.common.Distance; |
| 19 | +import com.sap.sse.common.Position; |
|
| 22 | 20 | import com.sap.sse.common.TimePoint; |
| 23 | 21 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 22 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 23 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 24 | 24 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 25 | 25 | |
| 26 | 26 | public class LineAnalysisTest extends TrackBasedTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/ManeuverAnalysis505Test.java
| ... | ... | @@ -20,13 +20,13 @@ import com.sap.sailing.domain.base.Competitor; |
| 20 | 20 | import com.sap.sailing.domain.common.ManeuverType; |
| 21 | 21 | import com.sap.sailing.domain.common.NoWindException; |
| 22 | 22 | import com.sap.sailing.domain.common.WindSourceType; |
| 23 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 24 | 23 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 25 | 24 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 26 | 25 | import com.sap.sailing.domain.tracking.Maneuver; |
| 27 | 26 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 28 | 27 | import com.sap.sse.common.Util; |
| 29 | 28 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 29 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 30 | 30 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 31 | 31 | |
| 32 | 32 | public class ManeuverAnalysis505Test extends AbstractManeuverDetectionTestCase { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/ManeuverAnalysisIDMChampionsFinalTest.java
| ... | ... | @@ -23,10 +23,7 @@ import com.sap.sailing.domain.base.Mark; |
| 23 | 23 | import com.sap.sailing.domain.base.Waypoint; |
| 24 | 24 | import com.sap.sailing.domain.common.ManeuverType; |
| 25 | 25 | import com.sap.sailing.domain.common.NoWindException; |
| 26 | -import com.sap.sailing.domain.common.Position; |
|
| 27 | 26 | import com.sap.sailing.domain.common.WindSourceType; |
| 28 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 29 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 30 | 27 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 31 | 28 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 32 | 29 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| ... | ... | @@ -34,9 +31,12 @@ import com.sap.sailing.domain.tracking.DynamicTrackedRace; |
| 34 | 31 | import com.sap.sailing.domain.tracking.Maneuver; |
| 35 | 32 | import com.sap.sailing.domain.tracking.impl.TrackedLegImpl; |
| 36 | 33 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 34 | +import com.sap.sse.common.Position; |
|
| 37 | 35 | import com.sap.sse.common.TimePoint; |
| 38 | 36 | import com.sap.sse.common.Util; |
| 39 | 37 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 38 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 39 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 40 | 40 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 41 | 41 | |
| 42 | 42 | public class ManeuverAnalysisIDMChampionsFinalTest extends AbstractManeuverDetectionTestCase { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/ManeuverAnalysisQingdao2014Test.java
| ... | ... | @@ -19,13 +19,13 @@ import com.sap.sailing.domain.base.Competitor; |
| 19 | 19 | import com.sap.sailing.domain.common.ManeuverType; |
| 20 | 20 | import com.sap.sailing.domain.common.NoWindException; |
| 21 | 21 | import com.sap.sailing.domain.common.WindSourceType; |
| 22 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 23 | 22 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 24 | 23 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 25 | 24 | import com.sap.sailing.domain.tracking.Maneuver; |
| 26 | 25 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 27 | 26 | import com.sap.sse.common.Util; |
| 28 | 27 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 28 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 29 | 29 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 30 | 30 | |
| 31 | 31 | public class ManeuverAnalysisQingdao2014Test extends AbstractManeuverDetectionTestCase { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/ManeuverDetectionOnKielerWoche505Race2DataTest.java
| ... | ... | @@ -26,8 +26,6 @@ import com.sap.sailing.domain.common.ManeuverType; |
| 26 | 26 | import com.sap.sailing.domain.common.NoWindException; |
| 27 | 27 | import com.sap.sailing.domain.common.Tack; |
| 28 | 28 | import com.sap.sailing.domain.common.WindSourceType; |
| 29 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 30 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 31 | 29 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 32 | 30 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 33 | 31 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -38,6 +36,8 @@ import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 38 | 36 | import com.sap.sse.common.TimePoint; |
| 39 | 37 | import com.sap.sse.common.Util; |
| 40 | 38 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 39 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 40 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 41 | 41 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 42 | 42 | |
| 43 | 43 | public class ManeuverDetectionOnKielerWoche505Race2DataTest extends AbstractManeuverDetectionTestCase { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/ManeuverDetectionOnMdM2011SemifinalTest.java
| ... | ... | @@ -19,19 +19,19 @@ import com.sap.sailing.domain.base.Mark; |
| 19 | 19 | import com.sap.sailing.domain.base.Waypoint; |
| 20 | 20 | import com.sap.sailing.domain.common.ManeuverType; |
| 21 | 21 | import com.sap.sailing.domain.common.NoWindException; |
| 22 | -import com.sap.sailing.domain.common.Position; |
|
| 23 | 22 | import com.sap.sailing.domain.common.Tack; |
| 24 | 23 | import com.sap.sailing.domain.common.WindSourceType; |
| 25 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 26 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 27 | 24 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 28 | 25 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 29 | 26 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 30 | 27 | import com.sap.sailing.domain.tracking.Maneuver; |
| 31 | 28 | import com.sap.sailing.domain.tracking.MarkPassing; |
| 32 | 29 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 30 | +import com.sap.sse.common.Position; |
|
| 33 | 31 | import com.sap.sse.common.TimePoint; |
| 34 | 32 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 33 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 34 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 35 | 35 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 36 | 36 | |
| 37 | 37 | public class ManeuverDetectionOnMdM2011SemifinalTest extends OnlineTracTracBasedTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/ManeuverLossOnPenaltyCircleTest.java
| ... | ... | @@ -19,13 +19,13 @@ import com.sap.sailing.domain.base.Competitor; |
| 19 | 19 | import com.sap.sailing.domain.common.ManeuverType; |
| 20 | 20 | import com.sap.sailing.domain.common.NoWindException; |
| 21 | 21 | import com.sap.sailing.domain.common.WindSourceType; |
| 22 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 23 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 24 | 22 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 25 | 23 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 26 | 24 | import com.sap.sailing.domain.tracking.Maneuver; |
| 27 | 25 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 28 | 26 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 27 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 28 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 29 | 29 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 30 | 30 | |
| 31 | 31 | public class ManeuverLossOnPenaltyCircleTest extends OnlineTracTracBasedTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/MarkPassingUpdateFromRaceLogFinishPositioningListTest.java
| ... | ... | @@ -36,7 +36,6 @@ import com.sap.sailing.domain.base.RaceColumn; |
| 36 | 36 | import com.sap.sailing.domain.base.impl.CourseAreaImpl; |
| 37 | 37 | import com.sap.sailing.domain.common.NoWindException; |
| 38 | 38 | import com.sap.sailing.domain.common.WindSourceType; |
| 39 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 40 | 39 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 41 | 40 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 42 | 41 | import com.sap.sailing.domain.leaderboard.FlexibleLeaderboard; |
| ... | ... | @@ -50,6 +49,7 @@ import com.sap.sse.common.TimePoint; |
| 50 | 49 | import com.sap.sse.common.Util; |
| 51 | 50 | import com.sap.sse.common.Util.Pair; |
| 52 | 51 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 52 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 53 | 53 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 54 | 54 | |
| 55 | 55 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/MarkPositionTimeFilterTest.java
| ... | ... | @@ -15,8 +15,6 @@ import org.junit.jupiter.api.Test; |
| 15 | 15 | |
| 16 | 16 | import com.sap.sailing.domain.base.Mark; |
| 17 | 17 | import com.sap.sailing.domain.base.impl.MarkImpl; |
| 18 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 19 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 20 | 18 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 21 | 19 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 22 | 20 | import com.sap.sailing.domain.tracking.DynamicTrackedRace; |
| ... | ... | @@ -24,6 +22,8 @@ import com.sap.sailing.domain.tracking.impl.DynamicGPSFixTrackImpl; |
| 24 | 22 | import com.sap.sailing.domain.tracking.impl.DynamicTrackedRaceImpl; |
| 25 | 23 | import com.sap.sse.common.TimePoint; |
| 26 | 24 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 25 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 26 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 27 | 27 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 28 | 28 | |
| 29 | 29 | public class MarkPositionTimeFilterTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/NonCardinalBoundsTest.java
| ... | ... | @@ -6,11 +6,11 @@ import static org.junit.jupiter.api.Assertions.assertTrue; |
| 6 | 6 | import org.junit.jupiter.api.Test; |
| 7 | 7 | |
| 8 | 8 | import com.sap.sailing.domain.common.NonCardinalBounds; |
| 9 | -import com.sap.sailing.domain.common.Position; |
|
| 10 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 11 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 12 | 9 | import com.sap.sse.common.Bearing; |
| 10 | +import com.sap.sse.common.Position; |
|
| 13 | 11 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 12 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 13 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 14 | 14 | |
| 15 | 15 | public class NonCardinalBoundsTest { |
| 16 | 16 | @Test |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/OnlineTracTracBasedTest.java
| ... | ... | @@ -25,9 +25,7 @@ import com.sap.sailing.domain.base.Mark; |
| 25 | 25 | import com.sap.sailing.domain.base.RaceDefinition; |
| 26 | 26 | import com.sap.sailing.domain.base.Regatta; |
| 27 | 27 | import com.sap.sailing.domain.base.Waypoint; |
| 28 | -import com.sap.sailing.domain.common.Position; |
|
| 29 | 28 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 30 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 31 | 29 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 32 | 30 | import com.sap.sailing.domain.leaderboard.LeaderboardGroupResolver; |
| 33 | 31 | import com.sap.sailing.domain.racelog.RaceLogAndTrackedRaceResolver; |
| ... | ... | @@ -51,7 +49,9 @@ import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 51 | 49 | import com.sap.sailing.domain.tractracadapter.TracTracConnectionConstants; |
| 52 | 50 | import com.sap.sailing.domain.tractracadapter.impl.AbstractLoadingQueueDoneCallBack; |
| 53 | 51 | import com.sap.sailing.domain.tractracadapter.impl.DomainFactoryImpl; |
| 52 | +import com.sap.sse.common.Position; |
|
| 54 | 53 | import com.sap.sse.common.TimePoint; |
| 54 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 55 | 55 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 56 | 56 | import com.tractrac.model.lib.api.event.CreateModelException; |
| 57 | 57 | import com.tractrac.model.lib.api.event.IRace; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/PassingInstructionParserTest.java
| ... | ... | @@ -14,11 +14,11 @@ import org.junit.jupiter.api.Test; |
| 14 | 14 | import com.sap.sailing.domain.base.Waypoint; |
| 15 | 15 | import com.sap.sailing.domain.common.PassingInstruction; |
| 16 | 16 | import com.sap.sailing.domain.common.WindSourceType; |
| 17 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 18 | 17 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 19 | 18 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 20 | 19 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 21 | 20 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 21 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 22 | 22 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 23 | 23 | |
| 24 | 24 | public class PassingInstructionParserTest extends OnlineTracTracBasedTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/PhilippBuhlsDoublePenaltyCircleAtKielerWoche2014Test.java
| ... | ... | @@ -20,13 +20,13 @@ import com.sap.sailing.domain.base.Competitor; |
| 20 | 20 | import com.sap.sailing.domain.common.ManeuverType; |
| 21 | 21 | import com.sap.sailing.domain.common.NoWindException; |
| 22 | 22 | import com.sap.sailing.domain.common.WindSourceType; |
| 23 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 24 | 23 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 25 | 24 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 26 | 25 | import com.sap.sailing.domain.tracking.Maneuver; |
| 27 | 26 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 28 | 27 | import com.sap.sse.common.Util; |
| 29 | 28 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 29 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 30 | 30 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 31 | 31 | |
| 32 | 32 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/PositionAssert.java
| ... | ... | @@ -5,13 +5,13 @@ import static org.junit.jupiter.api.Assertions.fail; |
| 5 | 5 | |
| 6 | 6 | import java.util.Set; |
| 7 | 7 | |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 10 | 8 | import com.sap.sailing.domain.common.Wind; |
| 11 | 9 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 12 | 10 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 13 | 11 | import com.sap.sse.common.Bearing; |
| 12 | +import com.sap.sse.common.Position; |
|
| 14 | 13 | import com.sap.sse.common.Speed; |
| 14 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 15 | 15 | |
| 16 | 16 | /** |
| 17 | 17 | * Contains equality assertions for "compact" fixes, allowing for deltas to be specified, assuming |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/PositionConversionTest.java
| ... | ... | @@ -9,10 +9,10 @@ import java.util.Collections; |
| 9 | 9 | |
| 10 | 10 | import org.junit.jupiter.api.Test; |
| 11 | 11 | |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | 12 | import com.sap.sailing.domain.tractracadapter.DomainFactory; |
| 14 | 13 | import com.sap.sailing.domain.tractracadapter.LoadingQueueDoneCallBack; |
| 15 | 14 | import com.sap.sailing.domain.tractracadapter.Receiver; |
| 15 | +import com.sap.sse.common.Position; |
|
| 16 | 16 | import com.tractrac.model.lib.api.data.IPosition; |
| 17 | 17 | import com.tractrac.model.lib.api.map.IPositionedItem; |
| 18 | 18 | import com.tractrac.subscription.lib.api.map.IPositionedItemPositionListener; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/PositionTest.java
| ... | ... | @@ -6,22 +6,22 @@ import static org.junit.jupiter.api.Assertions.assertTrue; |
| 6 | 6 | |
| 7 | 7 | import org.junit.jupiter.api.Test; |
| 8 | 8 | |
| 9 | -import com.sap.sailing.domain.common.Mile; |
|
| 10 | -import com.sap.sailing.domain.common.Position; |
|
| 11 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 12 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 13 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 14 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 15 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 16 | 9 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 17 | 10 | import com.sap.sailing.domain.common.tracking.impl.CompactionNotPossibleException; |
| 18 | 11 | import com.sap.sailing.domain.common.tracking.impl.VeryCompactGPSFixImpl; |
| 19 | 12 | import com.sap.sailing.domain.common.tracking.impl.VeryCompactGPSFixMovingImpl; |
| 20 | 13 | import com.sap.sse.common.Bearing; |
| 21 | 14 | import com.sap.sse.common.Distance; |
| 15 | +import com.sap.sse.common.Mile; |
|
| 16 | +import com.sap.sse.common.Position; |
|
| 17 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 22 | 18 | import com.sap.sse.common.TimePoint; |
| 23 | 19 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 20 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 21 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 22 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 24 | 23 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 24 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 25 | 25 | |
| 26 | 26 | public class PositionTest { |
| 27 | 27 | @Test |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/QuadTreeTest.java
| ... | ... | @@ -15,13 +15,13 @@ import org.junit.jupiter.api.BeforeAll; |
| 15 | 15 | import org.junit.jupiter.api.BeforeEach; |
| 16 | 16 | import org.junit.jupiter.api.Test; |
| 17 | 17 | |
| 18 | -import com.sap.sailing.domain.common.Bounds; |
|
| 19 | -import com.sap.sailing.domain.common.Position; |
|
| 20 | -import com.sap.sailing.domain.common.impl.BoundsImpl; |
|
| 21 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 22 | 18 | import com.sap.sailing.domain.common.quadtree.QuadTree; |
| 23 | 19 | import com.sap.sailing.domain.common.quadtree.impl.Node; |
| 20 | +import com.sap.sse.common.Bounds; |
|
| 21 | +import com.sap.sse.common.Position; |
|
| 24 | 22 | import com.sap.sse.common.Util; |
| 23 | +import com.sap.sse.common.impl.BoundsImpl; |
|
| 24 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 25 | 25 | import com.sap.sse.testutils.Measurement; |
| 26 | 26 | import com.sap.sse.testutils.MeasurementCase; |
| 27 | 27 | import com.sap.sse.testutils.MeasurementXMLFile; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/RaceExecutionOrderProvdiderAttachDetachTest.java
| ... | ... | @@ -29,8 +29,6 @@ import com.sap.sailing.domain.base.impl.TrackedRaces; |
| 29 | 29 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 30 | 30 | import com.sap.sailing.domain.common.TimingConstants; |
| 31 | 31 | import com.sap.sailing.domain.common.Wind; |
| 32 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 33 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 34 | 32 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 35 | 33 | import com.sap.sailing.domain.leaderboard.FlexibleLeaderboard; |
| 36 | 34 | import com.sap.sailing.domain.leaderboard.ScoringScheme; |
| ... | ... | @@ -46,6 +44,8 @@ import com.sap.sailing.domain.tracking.impl.TrackedRaceImpl; |
| 46 | 44 | import com.sap.sse.common.Duration; |
| 47 | 45 | import com.sap.sse.common.TimePoint; |
| 48 | 46 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 47 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 48 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 49 | 49 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 50 | 50 | |
| 51 | 51 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/ReachingLegTest.java
| ... | ... | @@ -37,11 +37,8 @@ import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 37 | 37 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 38 | 38 | import com.sap.sailing.domain.common.LegType; |
| 39 | 39 | import com.sap.sailing.domain.common.NoWindException; |
| 40 | -import com.sap.sailing.domain.common.Position; |
|
| 41 | 40 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 42 | 41 | import com.sap.sailing.domain.common.WindSourceType; |
| 43 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 44 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 45 | 42 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 46 | 43 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 47 | 44 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| ... | ... | @@ -59,8 +56,11 @@ import com.sap.sailing.domain.tracking.impl.DynamicTrackedRegattaImpl; |
| 59 | 56 | import com.sap.sailing.domain.tracking.impl.EmptyWindStore; |
| 60 | 57 | import com.sap.sse.common.Bearing; |
| 61 | 58 | import com.sap.sse.common.Distance; |
| 59 | +import com.sap.sse.common.Position; |
|
| 62 | 60 | import com.sap.sse.common.TimePoint; |
| 63 | 61 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 62 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 63 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 64 | 64 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 65 | 65 | |
| 66 | 66 | public class ReachingLegTest extends TrackBasedTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/SerializationWithOnlineRaceTest.java
| ... | ... | @@ -20,7 +20,6 @@ import org.junit.jupiter.api.Test; |
| 20 | 20 | import com.sap.sailing.domain.base.Competitor; |
| 21 | 21 | import com.sap.sailing.domain.base.DomainFactory; |
| 22 | 22 | import com.sap.sailing.domain.common.WindSourceType; |
| 23 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 24 | 23 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 25 | 24 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 26 | 25 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -28,6 +27,7 @@ import com.sap.sailing.domain.tracking.DynamicGPSFixTrack; |
| 28 | 27 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 29 | 28 | import com.sap.sse.common.Util; |
| 30 | 29 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 30 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 31 | 31 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 32 | 32 | |
| 33 | 33 | public class SerializationWithOnlineRaceTest extends OnlineTracTracBasedTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/ShortTimeWindCacheTest.java
| ... | ... | @@ -16,18 +16,18 @@ import org.mockito.invocation.InvocationOnMock; |
| 16 | 16 | import org.mockito.stubbing.Answer; |
| 17 | 17 | |
| 18 | 18 | import com.sap.sailing.domain.base.RaceDefinition; |
| 19 | -import com.sap.sailing.domain.common.Position; |
|
| 20 | 19 | import com.sap.sailing.domain.common.WindSource; |
| 21 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 22 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 23 | 20 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 24 | 21 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 25 | 22 | import com.sap.sailing.domain.tracking.impl.ShortTimeWindCache; |
| 26 | 23 | import com.sap.sailing.domain.tracking.impl.TrackedRaceImpl; |
| 27 | 24 | import com.sap.sailing.domain.tracking.impl.WindWithConfidenceImpl; |
| 25 | +import com.sap.sse.common.Position; |
|
| 28 | 26 | import com.sap.sse.common.TimePoint; |
| 29 | 27 | import com.sap.sse.common.Util.Pair; |
| 30 | 28 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 29 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 30 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 31 | 31 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 32 | 32 | |
| 33 | 33 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/SpeedUnitTest.java
| ... | ... | @@ -4,11 +4,11 @@ import static org.junit.jupiter.api.Assertions.assertEquals; |
| 4 | 4 | |
| 5 | 5 | import org.junit.jupiter.api.Test; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 8 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 9 | -import com.sap.sailing.domain.common.impl.MeterPerSecondSpeedImpl; |
|
| 10 | 7 | import com.sap.sse.common.Speed; |
| 8 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 11 | 9 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 10 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 11 | +import com.sap.sse.common.impl.MeterPerSecondSpeedImpl; |
|
| 12 | 12 | |
| 13 | 13 | public class SpeedUnitTest { |
| 14 | 14 | @Test |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/StarbordSideOfStartLineRecognitionTest.java
| ... | ... | @@ -20,8 +20,6 @@ import com.sap.sailing.domain.base.RaceDefinition; |
| 20 | 20 | import com.sap.sailing.domain.base.Sideline; |
| 21 | 21 | import com.sap.sailing.domain.base.Waypoint; |
| 22 | 22 | import com.sap.sailing.domain.base.impl.CourseImpl; |
| 23 | -import com.sap.sailing.domain.common.Position; |
|
| 24 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 25 | 23 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 26 | 24 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 27 | 25 | import com.sap.sailing.domain.racelog.RaceLogAndTrackedRaceResolver; |
| ... | ... | @@ -32,7 +30,9 @@ import com.sap.sailing.domain.tracking.MarkPositionAtTimePointCache; |
| 32 | 30 | import com.sap.sailing.domain.tracking.impl.DynamicGPSFixTrackImpl; |
| 33 | 31 | import com.sap.sailing.domain.tracking.impl.DynamicTrackedRaceImpl; |
| 34 | 32 | import com.sap.sailing.domain.tracking.impl.TrackedLegImpl; |
| 33 | +import com.sap.sse.common.Position; |
|
| 35 | 34 | import com.sap.sse.common.TimePoint; |
| 35 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 36 | 36 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 37 | 37 | |
| 38 | 38 | public class StarbordSideOfStartLineRecognitionTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/SteadyRankingForBiasedFinishLineTest.java
| ... | ... | @@ -13,12 +13,12 @@ import org.junit.jupiter.api.Test; |
| 13 | 13 | |
| 14 | 14 | import com.sap.sailing.domain.base.Competitor; |
| 15 | 15 | import com.sap.sailing.domain.common.WindSourceType; |
| 16 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 17 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 18 | 16 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 19 | 17 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 20 | 18 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 21 | 19 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 20 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 21 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 22 | 22 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 23 | 23 | |
| 24 | 24 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/StoredTrackBasedTest.java
| ... | ... | @@ -28,17 +28,17 @@ import com.sap.sailing.domain.base.impl.DynamicPerson; |
| 28 | 28 | import com.sap.sailing.domain.base.impl.DynamicTeam; |
| 29 | 29 | import com.sap.sailing.domain.base.impl.PersonImpl; |
| 30 | 30 | import com.sap.sailing.domain.base.impl.TeamImpl; |
| 31 | -import com.sap.sailing.domain.common.Position; |
|
| 32 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 33 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 34 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 35 | 31 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 36 | 32 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 37 | 33 | import com.sap.sailing.domain.tracking.DynamicGPSFixTrack; |
| 38 | 34 | import com.sap.sailing.domain.tracking.impl.DynamicGPSFixMovingTrackImpl; |
| 39 | 35 | import com.sap.sse.common.Color; |
| 36 | +import com.sap.sse.common.Position; |
|
| 37 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 40 | 38 | import com.sap.sse.common.TimePoint; |
| 41 | 39 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 40 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 41 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 42 | 42 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 43 | 43 | import com.sap.sse.security.shared.dto.NamedDTO; |
| 44 | 44 |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/TWATest.java
| ... | ... | @@ -14,9 +14,6 @@ import com.sap.sailing.domain.base.Competitor; |
| 14 | 14 | import com.sap.sailing.domain.base.impl.CompetitorImpl; |
| 15 | 15 | import com.sap.sailing.domain.common.LegType; |
| 16 | 16 | import com.sap.sailing.domain.common.NoWindException; |
| 17 | -import com.sap.sailing.domain.common.Position; |
|
| 18 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 19 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 20 | 17 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 21 | 18 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 22 | 19 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| ... | ... | @@ -29,8 +26,11 @@ import com.sap.sailing.domain.tracking.impl.DynamicTrackedRaceImpl; |
| 29 | 26 | import com.sap.sailing.domain.tracking.impl.TrackedLegImpl; |
| 30 | 27 | import com.sap.sailing.domain.tracking.impl.TrackedLegOfCompetitorImpl; |
| 31 | 28 | import com.sap.sse.common.Bearing; |
| 29 | +import com.sap.sse.common.Position; |
|
| 32 | 30 | import com.sap.sse.common.TimePoint; |
| 33 | 31 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 32 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 33 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 34 | 34 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 35 | 35 | |
| 36 | 36 | public class TWATest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/TackTest.java
| ... | ... | @@ -22,14 +22,14 @@ import com.sap.sailing.domain.base.impl.TeamImpl; |
| 22 | 22 | import com.sap.sailing.domain.common.NoWindException; |
| 23 | 23 | import com.sap.sailing.domain.common.Tack; |
| 24 | 24 | import com.sap.sailing.domain.common.Wind; |
| 25 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 26 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 27 | 25 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 28 | 26 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 29 | 27 | import com.sap.sailing.domain.tracking.DynamicGPSFixTrack; |
| 30 | 28 | import com.sap.sse.common.Color; |
| 31 | 29 | import com.sap.sse.common.TimePoint; |
| 32 | 30 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 31 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 32 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 33 | 33 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 34 | 34 | |
| 35 | 35 |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/TackThatLookedABitLikePenaltyCircleAtTravemuenderWoche2014Test.java
| ... | ... | @@ -21,13 +21,13 @@ import com.sap.sailing.domain.base.Competitor; |
| 21 | 21 | import com.sap.sailing.domain.common.ManeuverType; |
| 22 | 22 | import com.sap.sailing.domain.common.NoWindException; |
| 23 | 23 | import com.sap.sailing.domain.common.WindSourceType; |
| 24 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 25 | 24 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 26 | 25 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 27 | 26 | import com.sap.sailing.domain.tracking.Maneuver; |
| 28 | 27 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 29 | 28 | import com.sap.sse.common.Util; |
| 30 | 29 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 30 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 31 | 31 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 32 | 32 | |
| 33 | 33 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/TackTypeTest.java
| ... | ... | @@ -20,7 +20,6 @@ import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 20 | 20 | import com.sap.sailing.domain.common.NoWindException; |
| 21 | 21 | import com.sap.sailing.domain.common.TackType; |
| 22 | 22 | import com.sap.sailing.domain.common.WindSourceType; |
| 23 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 24 | 23 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 25 | 24 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 26 | 25 | import com.sap.sailing.domain.tracking.MarkPassing; |
| ... | ... | @@ -29,6 +28,7 @@ import com.sap.sailing.domain.tracking.impl.MarkPassingImpl; |
| 29 | 28 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 30 | 29 | import com.sap.sse.common.TimePoint; |
| 31 | 30 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 31 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 32 | 32 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 33 | 33 | |
| 34 | 34 | public class TackTypeTest extends OnlineTracTracBasedTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/TargetTimeEstimationTest.java
| ... | ... | @@ -23,16 +23,10 @@ import com.sap.sailing.domain.base.impl.SpeedWithBearingWithConfidenceImpl; |
| 23 | 23 | import com.sap.sailing.domain.base.impl.SpeedWithConfidenceImpl; |
| 24 | 24 | import com.sap.sailing.domain.common.LegType; |
| 25 | 25 | import com.sap.sailing.domain.common.NoWindException; |
| 26 | -import com.sap.sailing.domain.common.Position; |
|
| 27 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 28 | 26 | import com.sap.sailing.domain.common.Tack; |
| 29 | 27 | import com.sap.sailing.domain.common.Wind; |
| 30 | 28 | import com.sap.sailing.domain.common.WindSource; |
| 31 | 29 | import com.sap.sailing.domain.common.WindSourceType; |
| 32 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 33 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 34 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 35 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 36 | 30 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 37 | 31 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 38 | 32 | import com.sap.sailing.domain.polars.PolarDataService; |
| ... | ... | @@ -44,9 +38,15 @@ import com.sap.sailing.domain.tracking.impl.TrackedLegImpl; |
| 44 | 38 | import com.sap.sse.common.Bearing; |
| 45 | 39 | import com.sap.sse.common.Distance; |
| 46 | 40 | import com.sap.sse.common.Duration; |
| 41 | +import com.sap.sse.common.Position; |
|
| 42 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 47 | 43 | import com.sap.sse.common.TimePoint; |
| 48 | 44 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 45 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 46 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 47 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 49 | 48 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 49 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 50 | 50 | |
| 51 | 51 | public class TargetTimeEstimationTest { |
| 52 | 52 | @SuppressWarnings("unchecked") // the problem here is any(Set.class) which cannot infer the type arguments |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/TimeInLegProgressesTest.java
| ... | ... | @@ -15,13 +15,13 @@ import org.junit.jupiter.api.Test; |
| 15 | 15 | |
| 16 | 16 | import com.sap.sailing.domain.base.Competitor; |
| 17 | 17 | import com.sap.sailing.domain.common.WindSourceType; |
| 18 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 19 | 18 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 20 | 19 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 21 | 20 | import com.sap.sailing.domain.tracking.TrackedLegOfCompetitor; |
| 22 | 21 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 23 | 22 | import com.sap.sse.common.TimePoint; |
| 24 | 23 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 24 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 25 | 25 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 26 | 26 | |
| 27 | 27 | public class TimeInLegProgressesTest extends OnlineTracTracBasedTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/TrackBasedTest.java
| ... | ... | @@ -51,8 +51,6 @@ import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 51 | 51 | import com.sap.sailing.domain.common.RaceIdentifier; |
| 52 | 52 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 53 | 53 | import com.sap.sailing.domain.common.WindSourceType; |
| 54 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 55 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 56 | 54 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 57 | 55 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 58 | 56 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| ... | ... | @@ -74,6 +72,8 @@ import com.sap.sailing.domain.tracking.impl.MarkPassingImpl; |
| 74 | 72 | import com.sap.sse.common.Color; |
| 75 | 73 | import com.sap.sse.common.TimePoint; |
| 76 | 74 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 75 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 76 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 77 | 77 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 78 | 78 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 79 | 79 |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/TrackTest.java
| ... | ... | @@ -29,15 +29,6 @@ import org.junit.jupiter.api.Test; |
| 29 | 29 | import com.sap.sailing.domain.base.Boat; |
| 30 | 30 | import com.sap.sailing.domain.base.impl.BoatClassImpl; |
| 31 | 31 | import com.sap.sailing.domain.base.impl.BoatImpl; |
| 32 | -import com.sap.sailing.domain.common.Position; |
|
| 33 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 34 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 35 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 36 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 37 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 38 | -import com.sap.sailing.domain.common.impl.MeterPerSecondSpeedWithDegreeBearingImpl; |
|
| 39 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 40 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableSpeed; |
|
| 41 | 32 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 42 | 33 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 43 | 34 | import com.sap.sailing.domain.common.tracking.impl.CompactionNotPossibleException; |
| ... | ... | @@ -56,14 +47,23 @@ import com.sap.sse.common.AbstractBearing; |
| 56 | 47 | import com.sap.sse.common.Bearing; |
| 57 | 48 | import com.sap.sse.common.Distance; |
| 58 | 49 | import com.sap.sse.common.Duration; |
| 50 | +import com.sap.sse.common.Position; |
|
| 59 | 51 | import com.sap.sse.common.Speed; |
| 52 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 60 | 53 | import com.sap.sse.common.TimePoint; |
| 61 | 54 | import com.sap.sse.common.TimeRange; |
| 62 | 55 | import com.sap.sse.common.Timed; |
| 63 | 56 | import com.sap.sse.common.Util; |
| 64 | 57 | import com.sap.sse.common.Util.Pair; |
| 65 | 58 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 59 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 60 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 61 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 62 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 63 | +import com.sap.sse.common.impl.MeterPerSecondSpeedWithDegreeBearingImpl; |
|
| 66 | 64 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 65 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 66 | +import com.sap.sse.common.scalablevalue.impl.ScalableSpeed; |
|
| 67 | 67 | |
| 68 | 68 | public class TrackTest { |
| 69 | 69 | private static final int MILLIS_BETWEEN_FIXES = 3000000; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/TrackedRaceCenterTest.java
| ... | ... | @@ -19,8 +19,6 @@ import com.sap.sailing.domain.base.Waypoint; |
| 19 | 19 | import com.sap.sailing.domain.base.impl.CourseImpl; |
| 20 | 20 | import com.sap.sailing.domain.base.impl.MarkImpl; |
| 21 | 21 | import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 22 | -import com.sap.sailing.domain.common.Position; |
|
| 23 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 24 | 22 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 25 | 23 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 26 | 24 | import com.sap.sailing.domain.tracking.DynamicGPSFixTrack; |
| ... | ... | @@ -30,7 +28,9 @@ import com.sap.sailing.domain.tracking.TrackedRace; |
| 30 | 28 | import com.sap.sailing.domain.tracking.impl.DynamicGPSFixTrackImpl; |
| 31 | 29 | import com.sap.sailing.domain.tracking.impl.DynamicTrackedRaceImpl; |
| 32 | 30 | import com.sap.sailing.domain.tracking.impl.TrackedLegImpl; |
| 31 | +import com.sap.sse.common.Position; |
|
| 33 | 32 | import com.sap.sse.common.TimePoint; |
| 33 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 34 | 34 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 35 | 35 | |
| 36 | 36 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/VirtualWindFixesTest.java
| ... | ... | @@ -9,18 +9,18 @@ import org.junit.jupiter.api.BeforeEach; |
| 9 | 9 | import org.junit.jupiter.api.Test; |
| 10 | 10 | |
| 11 | 11 | import com.sap.sailing.domain.base.RaceDefinition; |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | 12 | import com.sap.sailing.domain.common.Wind; |
| 14 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 15 | 13 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 16 | 14 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 17 | 15 | import com.sap.sailing.domain.tracking.impl.CombinedWindAsNavigableSet; |
| 18 | 16 | import com.sap.sailing.domain.tracking.impl.CombinedWindTrackImpl; |
| 19 | 17 | import com.sap.sailing.domain.tracking.impl.VirtualWindFixesAsNavigableSet; |
| 20 | 18 | import com.sap.sse.InvalidDateException; |
| 19 | +import com.sap.sse.common.Position; |
|
| 21 | 20 | import com.sap.sse.common.TimePoint; |
| 22 | 21 | import com.sap.sse.common.Util; |
| 23 | 22 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 23 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 24 | 24 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 25 | 25 | import com.sap.sse.util.DateParser; |
| 26 | 26 |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/WindEstimationLockingUnderLoadTest.java
| ... | ... | @@ -30,8 +30,6 @@ import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 30 | 30 | import com.sap.sailing.domain.common.Wind; |
| 31 | 31 | import com.sap.sailing.domain.common.WindSource; |
| 32 | 32 | import com.sap.sailing.domain.common.WindSourceType; |
| 33 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 34 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 35 | 33 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 36 | 34 | import com.sap.sailing.domain.common.impl.WindSourceWithAdditionalID; |
| 37 | 35 | import com.sap.sailing.domain.racelog.impl.EmptyRaceLogStore; |
| ... | ... | @@ -51,6 +49,8 @@ import com.sap.sailing.domain.tracking.impl.WindWithConfidenceImpl; |
| 51 | 49 | import com.sap.sse.common.Duration; |
| 52 | 50 | import com.sap.sse.common.TimePoint; |
| 53 | 51 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 52 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 53 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 54 | 54 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 55 | 55 | |
| 56 | 56 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/WindEstimationOnConstructedTracksTest.java
| ... | ... | @@ -24,12 +24,8 @@ import com.sap.sailing.domain.base.CompetitorWithBoat; |
| 24 | 24 | import com.sap.sailing.domain.base.Waypoint; |
| 25 | 25 | import com.sap.sailing.domain.common.LegType; |
| 26 | 26 | import com.sap.sailing.domain.common.NoWindException; |
| 27 | -import com.sap.sailing.domain.common.Position; |
|
| 28 | 27 | import com.sap.sailing.domain.common.Wind; |
| 29 | 28 | import com.sap.sailing.domain.common.WindSourceType; |
| 30 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 31 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 32 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 33 | 29 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 34 | 30 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 35 | 31 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -43,10 +39,14 @@ import com.sap.sailing.domain.tracking.impl.CombinedWindTrackImpl; |
| 43 | 39 | import com.sap.sailing.domain.tracking.impl.MarkPassingImpl; |
| 44 | 40 | import com.sap.sailing.domain.tracking.impl.TrackBasedEstimationWindTrackImpl; |
| 45 | 41 | import com.sap.sse.common.Distance; |
| 42 | +import com.sap.sse.common.Position; |
|
| 46 | 43 | import com.sap.sse.common.TimePoint; |
| 47 | 44 | import com.sap.sse.common.Util; |
| 48 | 45 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 46 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 47 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 49 | 48 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 49 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 50 | 50 | |
| 51 | 51 | public class WindEstimationOnConstructedTracksTest extends StoredTrackBasedTest { |
| 52 | 52 | private List<CompetitorWithBoat> competitors; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/WindEstimationOnKielerWoche505Race2DataTest.java
| ... | ... | @@ -18,7 +18,6 @@ import com.sap.sailing.domain.base.Competitor; |
| 18 | 18 | import com.sap.sailing.domain.common.NoWindException; |
| 19 | 19 | import com.sap.sailing.domain.common.Wind; |
| 20 | 20 | import com.sap.sailing.domain.common.WindSourceType; |
| 21 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 22 | 21 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 23 | 22 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 24 | 23 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -30,6 +29,7 @@ import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 30 | 29 | import com.sap.sse.common.TimePoint; |
| 31 | 30 | import com.sap.sse.common.Util; |
| 32 | 31 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 32 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 33 | 33 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 34 | 34 | |
| 35 | 35 | public class WindEstimationOnKielerWoche505Race2DataTest extends OnlineTracTracBasedTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/WindEstimationOnStoredTracksTest.java
| ... | ... | @@ -14,20 +14,20 @@ import org.junit.jupiter.api.Test; |
| 14 | 14 | import com.sap.sailing.domain.base.Competitor; |
| 15 | 15 | import com.sap.sailing.domain.base.Mark; |
| 16 | 16 | import com.sap.sailing.domain.common.NoWindException; |
| 17 | -import com.sap.sailing.domain.common.Position; |
|
| 18 | 17 | import com.sap.sailing.domain.common.Wind; |
| 19 | 18 | import com.sap.sailing.domain.common.WindSource; |
| 20 | 19 | import com.sap.sailing.domain.common.WindSourceType; |
| 21 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 22 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 23 | 20 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 24 | 21 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 25 | 22 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 26 | 23 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 27 | 24 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 25 | +import com.sap.sse.common.Position; |
|
| 28 | 26 | import com.sap.sse.common.TimePoint; |
| 29 | 27 | import com.sap.sse.common.Util; |
| 30 | 28 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 29 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 30 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 31 | 31 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 32 | 32 | |
| 33 | 33 | public class WindEstimationOnStoredTracksTest extends StoredTrackBasedTestWithTrackedRace { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/WindTest.java
| ... | ... | @@ -37,16 +37,8 @@ import com.sap.sailing.domain.base.impl.RaceDefinitionImpl; |
| 37 | 37 | import com.sap.sailing.domain.base.impl.RegattaImpl; |
| 38 | 38 | import com.sap.sailing.domain.base.impl.TeamImpl; |
| 39 | 39 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 40 | -import com.sap.sailing.domain.common.Position; |
|
| 41 | 40 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 42 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 43 | 41 | import com.sap.sailing.domain.common.Wind; |
| 44 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 45 | -import com.sap.sailing.domain.common.confidence.impl.PositionAndTimePointWeigher; |
|
| 46 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 47 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 48 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 49 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 50 | 42 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 51 | 43 | import com.sap.sailing.domain.common.tracking.impl.CompactionNotPossibleException; |
| 52 | 44 | import com.sap.sailing.domain.common.tracking.impl.VeryCompactWindImpl; |
| ... | ... | @@ -69,10 +61,18 @@ import com.sap.sailing.domain.tracking.impl.WindWithConfidenceImpl; |
| 69 | 61 | import com.sap.sse.common.Bearing; |
| 70 | 62 | import com.sap.sse.common.Color; |
| 71 | 63 | import com.sap.sse.common.Duration; |
| 64 | +import com.sap.sse.common.Position; |
|
| 65 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 72 | 66 | import com.sap.sse.common.TimePoint; |
| 73 | 67 | import com.sap.sse.common.Util; |
| 74 | 68 | import com.sap.sse.common.Util.Pair; |
| 69 | +import com.sap.sse.common.confidence.Weigher; |
|
| 70 | +import com.sap.sse.common.confidence.impl.PositionAndTimePointWeigher; |
|
| 75 | 71 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 72 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 73 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 74 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 75 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 76 | 76 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 77 | 77 | |
| 78 | 78 | public class WindTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/markpassing/AbstractExportedPositionsBasedTest.java
| ... | ... | @@ -43,8 +43,6 @@ import com.sap.sailing.domain.base.impl.TeamImpl; |
| 43 | 43 | import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 44 | 44 | import com.sap.sailing.domain.common.PassingInstruction; |
| 45 | 45 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 46 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 47 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 48 | 46 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 49 | 47 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 50 | 48 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| ... | ... | @@ -60,6 +58,8 @@ import com.sap.sailing.domain.tracking.impl.TrackedRaceStatusImpl; |
| 60 | 58 | import com.sap.sse.common.Color; |
| 61 | 59 | import com.sap.sse.common.impl.AbstractColor; |
| 62 | 60 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 61 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 62 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 63 | 63 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 64 | 64 | |
| 65 | 65 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/markpassing/AbstractMarkPassingTest.java
| ... | ... | @@ -22,7 +22,6 @@ import org.junit.jupiter.api.AfterAll; |
| 22 | 22 | import com.sap.sailing.domain.base.Competitor; |
| 23 | 23 | import com.sap.sailing.domain.base.Waypoint; |
| 24 | 24 | import com.sap.sailing.domain.common.WindSourceType; |
| 25 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 26 | 25 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 27 | 26 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 28 | 27 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -38,6 +37,7 @@ import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 38 | 37 | import com.sap.sse.common.TimePoint; |
| 39 | 38 | import com.sap.sse.common.Util; |
| 40 | 39 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 40 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 41 | 41 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 42 | 42 | import com.sap.sse.testutils.Measurement; |
| 43 | 43 | import com.sap.sse.testutils.MeasurementCase; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/markpassing/AbstractMockedRaceMarkPassingTest.java
| ... | ... | @@ -32,9 +32,6 @@ import com.sap.sailing.domain.base.impl.SeriesImpl; |
| 32 | 32 | import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 33 | 33 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 34 | 34 | import com.sap.sailing.domain.common.PassingInstruction; |
| 35 | -import com.sap.sailing.domain.common.Position; |
|
| 36 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 37 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 38 | 35 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 39 | 36 | import com.sap.sailing.domain.leaderboard.impl.HighPoint; |
| 40 | 37 | import com.sap.sailing.domain.racelog.RaceLogAndTrackedRaceResolver; |
| ... | ... | @@ -43,8 +40,11 @@ import com.sap.sailing.domain.tracking.DynamicTrackedRace; |
| 43 | 40 | import com.sap.sailing.domain.tracking.impl.DynamicTrackedRaceImpl; |
| 44 | 41 | import com.sap.sailing.domain.tracking.impl.DynamicTrackedRegattaImpl; |
| 45 | 42 | import com.sap.sailing.domain.tracking.impl.EmptyWindStore; |
| 43 | +import com.sap.sse.common.Position; |
|
| 46 | 44 | import com.sap.sse.common.TimePoint; |
| 47 | 45 | import com.sap.sse.common.Util; |
| 46 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 47 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 48 | 48 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 49 | 49 | |
| 50 | 50 | public class AbstractMockedRaceMarkPassingTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/markpassing/MarkPassingCalculatorPerformanceTest.java
| ... | ... | @@ -12,9 +12,6 @@ import org.junit.jupiter.api.AfterAll; |
| 12 | 12 | import org.junit.jupiter.api.Assertions; |
| 13 | 13 | import org.junit.jupiter.api.Test; |
| 14 | 14 | |
| 15 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 16 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 17 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 18 | 15 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 19 | 16 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 20 | 17 | import com.sap.sailing.domain.markpassingcalculation.Candidate; |
| ... | ... | @@ -22,9 +19,12 @@ import com.sap.sailing.domain.markpassingcalculation.CandidateFinder; |
| 22 | 19 | import com.sap.sailing.domain.markpassingcalculation.impl.CandidateChooserImpl; |
| 23 | 20 | import com.sap.sailing.domain.markpassingcalculation.impl.CandidateFinderImpl; |
| 24 | 21 | import com.sap.sailing.domain.markpassingcalculation.impl.CandidateImpl; |
| 22 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 25 | 23 | import com.sap.sse.common.TimePoint; |
| 26 | 24 | import com.sap.sse.common.Util; |
| 27 | 25 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 26 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 27 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 28 | 28 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 29 | 29 | import com.sap.sse.testutils.Measurement; |
| 30 | 30 | import com.sap.sse.testutils.MeasurementCase; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/markpassing/MarkPassingWhiteBoxTest.java
| ... | ... | @@ -15,8 +15,6 @@ import com.sap.sailing.domain.base.Course; |
| 15 | 15 | import com.sap.sailing.domain.base.Waypoint; |
| 16 | 16 | import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 17 | 17 | import com.sap.sailing.domain.common.PassingInstruction; |
| 18 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 19 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 20 | 18 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 21 | 19 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 22 | 20 | import com.sap.sailing.domain.markpassingcalculation.Candidate; |
| ... | ... | @@ -28,6 +26,8 @@ import com.sap.sailing.domain.markpassingcalculation.impl.CandidateImpl; |
| 28 | 26 | import com.sap.sailing.domain.tracking.MarkPassing; |
| 29 | 27 | import com.sap.sse.common.Util; |
| 30 | 28 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 29 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 30 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 31 | 31 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 32 | 32 | |
| 33 | 33 | /** |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/markpassinghash/MarkPassingRaceFingerprintJsonSerializationTest.java
| ... | ... | @@ -30,10 +30,7 @@ import com.sap.sailing.domain.base.impl.ControlPointWithTwoMarksImpl; |
| 30 | 30 | import com.sap.sailing.domain.base.impl.MarkImpl; |
| 31 | 31 | import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 32 | 32 | import com.sap.sailing.domain.common.PassingInstruction; |
| 33 | -import com.sap.sailing.domain.common.Position; |
|
| 34 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 35 | 33 | import com.sap.sailing.domain.common.abstractlog.NotRevokableException; |
| 36 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 37 | 34 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 38 | 35 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 39 | 36 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| ... | ... | @@ -43,7 +40,10 @@ import com.sap.sailing.domain.markpassinghash.MarkPassingRaceFingerprintFactory; |
| 43 | 40 | import com.sap.sailing.domain.test.OnlineTracTracBasedTest; |
| 44 | 41 | import com.sap.sailing.domain.tracking.impl.DynamicTrackedRaceImpl; |
| 45 | 42 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 43 | +import com.sap.sse.common.Position; |
|
| 44 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 46 | 45 | import com.sap.sse.common.TimePoint; |
| 46 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 47 | 47 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 48 | 48 | |
| 49 | 49 | public class MarkPassingRaceFingerprintJsonSerializationTest extends OnlineTracTracBasedTest { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/mock/MockedTrackedRace.java
| ... | ... | @@ -36,10 +36,8 @@ import com.sap.sailing.domain.base.configuration.RegattaConfiguration; |
| 36 | 36 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 37 | 37 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 38 | 38 | import com.sap.sailing.domain.common.NoWindException; |
| 39 | -import com.sap.sailing.domain.common.Position; |
|
| 40 | 39 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 41 | 40 | import com.sap.sailing.domain.common.RegattaIdentifier; |
| 42 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 43 | 41 | import com.sap.sailing.domain.common.Tack; |
| 44 | 42 | import com.sap.sailing.domain.common.TargetTimeInfo; |
| 45 | 43 | import com.sap.sailing.domain.common.Wind; |
| ... | ... | @@ -100,7 +98,9 @@ import com.sap.sse.common.Bearing; |
| 100 | 98 | import com.sap.sse.common.Distance; |
| 101 | 99 | import com.sap.sse.common.Duration; |
| 102 | 100 | import com.sap.sse.common.IsManagedByCache; |
| 101 | +import com.sap.sse.common.Position; |
|
| 103 | 102 | import com.sap.sse.common.Speed; |
| 103 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 104 | 104 | import com.sap.sse.common.TimePoint; |
| 105 | 105 | import com.sap.sse.common.Util; |
| 106 | 106 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/test/mock/MockedTrackedRaceWithStartTimeAndRanks.java
| ... | ... | @@ -35,9 +35,7 @@ import com.sap.sailing.domain.base.impl.CourseImpl; |
| 35 | 35 | import com.sap.sailing.domain.base.impl.RaceDefinitionImpl; |
| 36 | 36 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 37 | 37 | import com.sap.sailing.domain.common.NoWindException; |
| 38 | -import com.sap.sailing.domain.common.Position; |
|
| 39 | 38 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 40 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 41 | 39 | import com.sap.sailing.domain.common.Tack; |
| 42 | 40 | import com.sap.sailing.domain.common.TargetTimeInfo; |
| 43 | 41 | import com.sap.sailing.domain.common.Wind; |
| ... | ... | @@ -82,7 +80,9 @@ import com.sap.sse.common.Bearing; |
| 82 | 80 | import com.sap.sse.common.Distance; |
| 83 | 81 | import com.sap.sse.common.Duration; |
| 84 | 82 | import com.sap.sse.common.IsManagedByCache; |
| 83 | +import com.sap.sse.common.Position; |
|
| 85 | 84 | import com.sap.sse.common.Speed; |
| 85 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 86 | 86 | import com.sap.sse.common.TimePoint; |
| 87 | 87 | import com.sap.sse.common.Util; |
| 88 | 88 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/tracking/TestTracTracRaceAndCompetitorStatusReconciler.java
| ... | ... | @@ -38,8 +38,6 @@ import com.sap.sailing.domain.base.impl.RaceDefinitionImpl; |
| 38 | 38 | import com.sap.sailing.domain.base.impl.TeamImpl; |
| 39 | 39 | import com.sap.sailing.domain.common.LeaderboardNameConstants; |
| 40 | 40 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 41 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 42 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 43 | 41 | import com.sap.sailing.domain.common.racelog.Flags; |
| 44 | 42 | import com.sap.sailing.domain.leaderboard.FlexibleLeaderboard; |
| 45 | 43 | import com.sap.sailing.domain.leaderboard.impl.FlexibleLeaderboardImpl; |
| ... | ... | @@ -55,6 +53,8 @@ import com.sap.sse.common.Color; |
| 55 | 53 | import com.sap.sse.common.Duration; |
| 56 | 54 | import com.sap.sse.common.TimePoint; |
| 57 | 55 | import com.sap.sse.common.Util.Pair; |
| 56 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 57 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 58 | 58 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 59 | 59 | import com.sap.sse.metering.CPUMeter; |
| 60 | 60 | import com.tractrac.model.lib.api.event.ICompetitor; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/tracking/impl/PositionInterpolationAndExtrapolationTest.java
| ... | ... | @@ -1,11 +1,11 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 5 | 3 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 6 | 4 | import com.sap.sailing.domain.test.PositionAssert; |
| 7 | 5 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 6 | +import com.sap.sse.common.Position; |
|
| 8 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 9 | 9 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 10 | 10 | |
| 11 | 11 | public abstract class PositionInterpolationAndExtrapolationTest<FixType extends GPSFix> { |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/tracking/impl/PositionInterpolationAndExtrapolationWithSpeedInfoTest.java
| ... | ... | @@ -5,14 +5,14 @@ import static org.junit.jupiter.api.Assertions.assertNull; |
| 5 | 5 | import org.junit.jupiter.api.BeforeEach; |
| 6 | 6 | import org.junit.jupiter.api.Test; |
| 7 | 7 | |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 10 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 11 | 8 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 12 | 9 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 13 | 10 | import com.sap.sailing.domain.tracking.DynamicGPSFixTrack; |
| 14 | 11 | import com.sap.sse.common.Bearing; |
| 15 | 12 | import com.sap.sse.common.Duration; |
| 13 | +import com.sap.sse.common.Position; |
|
| 14 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 15 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 16 | 16 | |
| 17 | 17 | public class PositionInterpolationAndExtrapolationWithSpeedInfoTest extends PositionInterpolationAndExtrapolationTest<GPSFixMoving> { |
| 18 | 18 | private SpeedWithBearing speed; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/tracking/impl/TestVirtualWindFixTrackTimepointRounding.java
| ... | ... | @@ -5,10 +5,10 @@ import java.util.NavigableSet; |
| 5 | 5 | import org.junit.jupiter.api.BeforeEach; |
| 6 | 6 | import org.junit.jupiter.api.Test; |
| 7 | 7 | |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | 8 | import com.sap.sailing.domain.common.Wind; |
| 10 | 9 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 11 | 10 | import com.sap.sailing.domain.tracking.WindTrack; |
| 11 | +import com.sap.sse.common.Position; |
|
| 12 | 12 | import com.sap.sse.common.TimePoint; |
| 13 | 13 | |
| 14 | 14 | import static org.junit.jupiter.api.Assertions.assertEquals; |
java/com.sap.sailing.domain.test/src/com/sap/sailing/domain/tracking/impl/TrackedLegTest.java
| ... | ... | @@ -14,11 +14,11 @@ import com.sap.sailing.domain.base.DomainFactory; |
| 14 | 14 | import com.sap.sailing.domain.base.Leg; |
| 15 | 15 | import com.sap.sailing.domain.base.Waypoint; |
| 16 | 16 | import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 17 | -import com.sap.sailing.domain.common.Position; |
|
| 18 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 19 | 17 | import com.sap.sse.common.Distance; |
| 18 | +import com.sap.sse.common.Position; |
|
| 20 | 19 | import com.sap.sse.common.TimePoint; |
| 21 | 20 | import com.sap.sse.common.Util; |
| 21 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 22 | 22 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 23 | 23 | |
| 24 | 24 | public class TrackedLegTest { |
java/com.sap.sailing.domain.tractracadapter/src/com/sap/sailing/domain/tractracadapter/DomainFactory.java
| ... | ... | @@ -80,7 +80,7 @@ public interface DomainFactory { |
| 80 | 80 | |
| 81 | 81 | com.sap.sailing.domain.base.DomainFactory getBaseDomainFactory(); |
| 82 | 82 | |
| 83 | - com.sap.sailing.domain.common.Position createPosition(IPosition position); |
|
| 83 | + com.sap.sse.common.Position createPosition(IPosition position); |
|
| 84 | 84 | |
| 85 | 85 | com.sap.sse.common.TimePoint createTimePoint(long timestamp); |
| 86 | 86 |
java/com.sap.sailing.domain.tractracadapter/src/com/sap/sailing/domain/tractracadapter/impl/DomainFactoryImpl.java
| ... | ... | @@ -53,10 +53,8 @@ import com.sap.sailing.domain.base.impl.SidelineImpl; |
| 53 | 53 | import com.sap.sailing.domain.base.impl.TeamImpl; |
| 54 | 54 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 55 | 55 | import com.sap.sailing.domain.common.PassingInstruction; |
| 56 | -import com.sap.sailing.domain.common.Position; |
|
| 57 | 56 | import com.sap.sailing.domain.common.RankingMetrics; |
| 58 | 57 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 59 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 60 | 58 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 61 | 59 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 62 | 60 | import com.sap.sailing.domain.leaderboard.Leaderboard; |
| ... | ... | @@ -96,12 +94,14 @@ import com.sap.sailing.domain.tractracadapter.TracTracConfiguration; |
| 96 | 94 | import com.sap.sailing.domain.tractracadapter.TracTracRaceTracker; |
| 97 | 95 | import com.sap.sse.common.Color; |
| 98 | 96 | import com.sap.sse.common.Duration; |
| 97 | +import com.sap.sse.common.Position; |
|
| 99 | 98 | import com.sap.sse.common.TimePoint; |
| 100 | 99 | import com.sap.sse.common.Util; |
| 101 | 100 | import com.sap.sse.common.Util.Pair; |
| 102 | 101 | import com.sap.sse.common.Util.Triple; |
| 103 | 102 | import com.sap.sse.common.impl.AbstractColor; |
| 104 | 103 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 104 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 105 | 105 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 106 | 106 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 107 | 107 | import com.sap.sse.shared.util.WeakIdentityHashMap; |
java/com.sap.sailing.domain.tractracadapter/src/com/sap/sailing/domain/tractracadapter/impl/Simulator.java
| ... | ... | @@ -14,7 +14,6 @@ import com.sap.sailing.domain.base.Competitor; |
| 14 | 14 | import com.sap.sailing.domain.base.Mark; |
| 15 | 15 | import com.sap.sailing.domain.common.Wind; |
| 16 | 16 | import com.sap.sailing.domain.common.WindSource; |
| 17 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 18 | 17 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 19 | 18 | import com.sap.sailing.domain.common.tracking.BravoFix; |
| 20 | 19 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -32,6 +31,7 @@ import com.sap.sailing.domain.tracking.impl.EmptyWindStore; |
| 32 | 31 | import com.sap.sailing.domain.tracking.impl.MarkPassingImpl; |
| 33 | 32 | import com.sap.sse.common.Duration; |
| 34 | 33 | import com.sap.sse.common.TimePoint; |
| 34 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 35 | 35 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 36 | 36 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 37 | 37 |
java/com.sap.sailing.domain.vakarosadapter/src/com/sap/sailing/domain/vakarosadapter/VakarosGPSFixImporter.java
| ... | ... | @@ -14,8 +14,6 @@ import java.util.concurrent.atomic.AtomicInteger; |
| 14 | 14 | import java.util.logging.Level; |
| 15 | 15 | import java.util.logging.Logger; |
| 16 | 16 | |
| 17 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 18 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 19 | 17 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 20 | 18 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 21 | 19 | import com.sap.sailing.domain.trackfiles.TrackFileImportDeviceIdentifier; |
| ... | ... | @@ -26,6 +24,8 @@ import com.sap.sailing.server.trackfiles.impl.CompressedStreamsUtil; |
| 26 | 24 | import com.sap.sailing.server.trackfiles.impl.ExpeditionImportFileHandler; |
| 27 | 25 | import com.sap.sse.common.Bearing; |
| 28 | 26 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 27 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 28 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 29 | 29 | |
| 30 | 30 | public class VakarosGPSFixImporter implements GPSFixImporter { |
| 31 | 31 |
java/com.sap.sailing.domain.windfinderadapter.test/src/com/sap/sailing/domain/windfinderadapter/impl/WindFinderReportParserTest.java
| ... | ... | @@ -17,11 +17,11 @@ import org.json.simple.parser.JSONParser; |
| 17 | 17 | import org.json.simple.parser.ParseException; |
| 18 | 18 | import org.junit.jupiter.api.Test; |
| 19 | 19 | |
| 20 | -import com.sap.sailing.domain.common.Position; |
|
| 21 | 20 | import com.sap.sailing.domain.common.Wind; |
| 22 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 23 | 21 | import com.sap.sailing.domain.windfinder.Spot; |
| 22 | +import com.sap.sse.common.Position; |
|
| 24 | 23 | import com.sap.sse.common.Util; |
| 24 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 25 | 25 | |
| 26 | 26 | public class WindFinderReportParserTest { |
| 27 | 27 | private final String TEST_MESSAGE = "[{\"wg\":16,\"wd\":331,\"dtl\":\"2017-11-13T15:16:00+01:00\",\"dtl_s\":\"2017-11-13T15:15:30+01:00\",\"ws\":12,\"at\":7.0},{\"wg\":14,\"wd\":333,\"dtl\":\"2017-11-13T15:32:00+01:00\",\"dtl_s\":\"2017-11-13T15:31:30+01:00\",\"ws\":12,\"at\":7.0},{\"wg\":16,\"wd\":332,\"dtl\":\"2017-11-13T15:40:00+01:00\",\"dtl_s\":\"2017-11-13T15:39:30+01:00\",\"ws\":12,\"at\":7.0}]"; |
java/com.sap.sailing.domain.windfinderadapter/src/com/sap/sailing/domain/windfinderadapter/impl/SpotImpl.java
| ... | ... | @@ -20,13 +20,13 @@ import java.util.logging.Logger; |
| 20 | 20 | import org.json.simple.JSONArray; |
| 21 | 21 | import org.json.simple.parser.JSONParser; |
| 22 | 22 | |
| 23 | -import com.sap.sailing.domain.common.Position; |
|
| 24 | 23 | import com.sap.sailing.domain.common.Wind; |
| 25 | 24 | import com.sap.sailing.domain.common.windfinder.SpotDTO; |
| 26 | 25 | import com.sap.sailing.domain.windfinder.ReviewedSpotsCollection; |
| 27 | 26 | import com.sap.sailing.domain.windfinder.Spot; |
| 28 | 27 | import com.sap.sailing.domain.windfinder.WindFinderSpotListener; |
| 29 | 28 | import com.sap.sse.common.Duration; |
| 29 | +import com.sap.sse.common.Position; |
|
| 30 | 30 | import com.sap.sse.common.TimePoint; |
| 31 | 31 | import com.sap.sse.common.Util; |
| 32 | 32 | import com.sap.sse.util.HttpUrlConnectionHelper; |
java/com.sap.sailing.domain.windfinderadapter/src/com/sap/sailing/domain/windfinderadapter/impl/WindFinderReportParser.java
| ... | ... | @@ -10,15 +10,15 @@ import java.util.List; |
| 10 | 10 | import org.json.simple.JSONArray; |
| 11 | 11 | import org.json.simple.JSONObject; |
| 12 | 12 | |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | 13 | import com.sap.sailing.domain.common.Wind; |
| 15 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 16 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 17 | 14 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 18 | 15 | import com.sap.sailing.domain.windfinder.ReviewedSpotsCollection; |
| 19 | 16 | import com.sap.sailing.domain.windfinder.Spot; |
| 17 | +import com.sap.sse.common.Position; |
|
| 20 | 18 | import com.sap.sse.common.Util; |
| 21 | 19 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 20 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 21 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 22 | 22 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 23 | 23 | |
| 24 | 24 | public class WindFinderReportParser { |
java/com.sap.sailing.domain.yellowbrickadapter/src/com/sap/sailing/domain/yellowbrickadapter/impl/GetPositionsParser.java
| ... | ... | @@ -10,12 +10,12 @@ import org.json.simple.JSONObject; |
| 10 | 10 | import org.json.simple.parser.JSONParser; |
| 11 | 11 | import org.json.simple.parser.ParseException; |
| 12 | 12 | |
| 13 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 14 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 15 | 13 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 16 | 14 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 17 | 15 | import com.sap.sse.common.Bearing; |
| 18 | 16 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 17 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 18 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 19 | 19 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 20 | 20 | |
| 21 | 21 | /** |
java/com.sap.sailing.domain.yellowbrickadapter/src/com/sap/sailing/domain/yellowbrickadapter/impl/TeamPosition.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.domain.yellowbrickadapter.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | 3 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 6 | 4 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 7 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | 8 | import com.sap.sse.common.Timed; |
| 9 | 9 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/base/Event.java
| ... | ... | @@ -4,12 +4,12 @@ import java.util.HashSet; |
| 4 | 4 | import java.util.Set; |
| 5 | 5 | import java.util.UUID; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | 7 | import com.sap.sailing.domain.common.WindSource; |
| 9 | 8 | import com.sap.sailing.domain.common.WindSourceType; |
| 10 | 9 | import com.sap.sailing.domain.leaderboard.Leaderboard; |
| 11 | 10 | import com.sap.sailing.domain.leaderboard.LeaderboardGroup; |
| 12 | 11 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 12 | +import com.sap.sse.common.Position; |
|
| 13 | 13 | |
| 14 | 14 | /** |
| 15 | 15 | * An event is a group of {@link Regatta regattas} carried out at a common venue within a common time frame. For |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/base/PositionWithConfidence.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.domain.base; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalablePosition; |
|
| 3 | +import com.sap.sse.common.Position; |
|
| 5 | 4 | import com.sap.sse.common.scalablevalue.HasConfidenceAndIsScalable; |
| 5 | +import com.sap.sse.common.scalablevalue.impl.ScalablePosition; |
|
| 6 | 6 | |
| 7 | 7 | /** |
| 8 | 8 | * A position with a confidence attached. The scalable intermediate type represents the x/y/z coordinate of the |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/base/SpeedWithBearingWithConfidence.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.domain.base; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.DoubleTriple; |
|
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | -import com.sap.sse.common.scalablevalue.HasConfidence; |
|
| 3 | +import com.sap.sse.common.DoubleTriple; |
|
| 4 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 5 | +import com.sap.sse.common.confidence.HasConfidence; |
|
| 6 | 6 | |
| 7 | 7 | public interface SpeedWithBearingWithConfidence<RelativeTo> extends |
| 8 | 8 | HasConfidence<DoubleTriple, SpeedWithBearing, RelativeTo> { |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/base/impl/DomainFactoryImpl.java
| ... | ... | @@ -20,7 +20,6 @@ import com.sap.sailing.domain.base.RaceDefinition; |
| 20 | 20 | import com.sap.sailing.domain.base.Waypoint; |
| 21 | 21 | import com.sap.sailing.domain.common.NoWindException; |
| 22 | 22 | import com.sap.sailing.domain.common.Placemark; |
| 23 | -import com.sap.sailing.domain.common.Position; |
|
| 24 | 23 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 25 | 24 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 26 | 25 | import com.sap.sailing.domain.common.WindSourceType; |
| ... | ... | @@ -35,7 +34,6 @@ import com.sap.sailing.domain.common.dto.RaceDTO; |
| 35 | 34 | import com.sap.sailing.domain.common.dto.RaceStatusDTO; |
| 36 | 35 | import com.sap.sailing.domain.common.dto.TrackedRaceDTO; |
| 37 | 36 | import com.sap.sailing.domain.common.dto.TrackedRaceStatisticsDTO; |
| 38 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 39 | 37 | import com.sap.sailing.domain.common.media.MediaTrack; |
| 40 | 38 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 41 | 39 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -83,8 +81,10 @@ import com.sap.sailing.domain.tracking.impl.StartTimeUpdateHandler; |
| 83 | 81 | import com.sap.sailing.domain.tracking.impl.TrackedRaceImpl; |
| 84 | 82 | import com.sap.sailing.geocoding.ReverseGeocoder; |
| 85 | 83 | import com.sap.sse.common.Distance; |
| 84 | +import com.sap.sse.common.Position; |
|
| 86 | 85 | import com.sap.sse.common.TimePoint; |
| 87 | 86 | import com.sap.sse.common.Util; |
| 87 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 88 | 88 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 89 | 89 | import com.sap.sse.util.ObjectInputStreamResolvingAgainstCache; |
| 90 | 90 | import com.sap.sse.util.ObjectInputStreamResolvingAgainstCache.ResolveListener; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/base/impl/DouglasPeucker.java
| ... | ... | @@ -10,11 +10,11 @@ import java.util.concurrent.ExecutionException; |
| 10 | 10 | import java.util.concurrent.Future; |
| 11 | 11 | import java.util.concurrent.ScheduledExecutorService; |
| 12 | 12 | |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | 13 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 15 | 14 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 16 | 15 | import com.sap.sse.common.Bearing; |
| 17 | 16 | import com.sap.sse.common.Distance; |
| 17 | +import com.sap.sse.common.Position; |
|
| 18 | 18 | import com.sap.sse.common.TimePoint; |
| 19 | 19 | import com.sap.sse.common.Util; |
| 20 | 20 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/base/impl/EventImpl.java
| ... | ... | @@ -18,17 +18,17 @@ import com.sap.sailing.domain.base.Event; |
| 18 | 18 | import com.sap.sailing.domain.base.EventListener; |
| 19 | 19 | import com.sap.sailing.domain.base.Venue; |
| 20 | 20 | import com.sap.sailing.domain.common.Placemark; |
| 21 | -import com.sap.sailing.domain.common.Position; |
|
| 22 | 21 | import com.sap.sailing.domain.common.WindSource; |
| 23 | 22 | import com.sap.sailing.domain.common.WindSourceType; |
| 24 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalablePosition; |
|
| 25 | 23 | import com.sap.sailing.domain.leaderboard.Leaderboard; |
| 26 | 24 | import com.sap.sailing.domain.leaderboard.LeaderboardGroup; |
| 27 | 25 | import com.sap.sailing.domain.shared.tracking.TrackingConnectorInfo; |
| 28 | 26 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 29 | 27 | import com.sap.sailing.geocoding.ReverseGeocoder; |
| 28 | +import com.sap.sse.common.Position; |
|
| 30 | 29 | import com.sap.sse.common.TimePoint; |
| 31 | 30 | import com.sap.sse.common.Util; |
| 31 | +import com.sap.sse.common.scalablevalue.impl.ScalablePosition; |
|
| 32 | 32 | |
| 33 | 33 | public class EventImpl extends EventBaseImpl implements Event { |
| 34 | 34 | private static final long serialVersionUID = 855135446595485715L; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/base/impl/KilometersPerHourSpeedWithBearingImpl.java
| ... | ... | @@ -1,14 +1,14 @@ |
| 1 | 1 | package com.sap.sailing.domain.base.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.CourseChange; |
|
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 6 | -import com.sap.sailing.domain.common.impl.AbstractSpeedWithAbstractBearingImpl; |
|
| 7 | -import com.sap.sailing.domain.common.impl.AbstractSpeedWithBearingImpl; |
|
| 8 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 9 | 3 | import com.sap.sse.common.Bearing; |
| 4 | +import com.sap.sse.common.CourseChange; |
|
| 5 | +import com.sap.sse.common.Position; |
|
| 10 | 6 | import com.sap.sse.common.Speed; |
| 7 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 11 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | +import com.sap.sse.common.impl.AbstractSpeedWithAbstractBearingImpl; |
|
| 10 | +import com.sap.sse.common.impl.AbstractSpeedWithBearingImpl; |
|
| 11 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 12 | 12 | |
| 13 | 13 | public class KilometersPerHourSpeedWithBearingImpl extends KilometersPerHourSpeedImpl implements SpeedWithBearing { |
| 14 | 14 | private static final long serialVersionUID = 5749611820871048625L; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/base/impl/PositionWithConfidenceImpl.java
| ... | ... | @@ -1,10 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.domain.base.impl; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.base.PositionWithConfidence; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | -import com.sap.sailing.domain.common.confidence.impl.HasConfidenceImpl; |
|
| 6 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalablePosition; |
|
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | +import com.sap.sse.common.confidence.impl.HasConfidenceImpl; |
|
| 7 | 6 | import com.sap.sse.common.scalablevalue.IsScalable; |
| 7 | +import com.sap.sse.common.scalablevalue.impl.ScalablePosition; |
|
| 8 | 8 | |
| 9 | 9 | public class PositionWithConfidenceImpl<RelativeTo> extends HasConfidenceImpl<ScalablePosition, Position, RelativeTo> implements |
| 10 | 10 | PositionWithConfidence<RelativeTo>, IsScalable<ScalablePosition, Position> { |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/base/impl/SpeedWithBearingWithConfidenceImpl.java
| ... | ... | @@ -1,12 +1,12 @@ |
| 1 | 1 | package com.sap.sailing.domain.base.impl; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 4 | -import com.sap.sailing.domain.common.DoubleTriple; |
|
| 5 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 6 | -import com.sap.sailing.domain.common.confidence.impl.HasConfidenceImpl; |
|
| 7 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableSpeedWithBearing; |
|
| 4 | +import com.sap.sse.common.DoubleTriple; |
|
| 5 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 6 | +import com.sap.sse.common.confidence.impl.HasConfidenceImpl; |
|
| 8 | 7 | import com.sap.sse.common.scalablevalue.IsScalable; |
| 9 | 8 | import com.sap.sse.common.scalablevalue.ScalableValue; |
| 9 | +import com.sap.sse.common.scalablevalue.impl.ScalableSpeedWithBearing; |
|
| 10 | 10 | |
| 11 | 11 | public class SpeedWithBearingWithConfidenceImpl<RelativeTo> extends |
| 12 | 12 | HasConfidenceImpl<DoubleTriple, SpeedWithBearing, RelativeTo> implements |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/base/impl/SpeedWithConfidenceImpl.java
| ... | ... | @@ -1,10 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.domain.base.impl; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.base.SpeedWithConfidence; |
| 4 | -import com.sap.sailing.domain.common.confidence.impl.HasConfidenceImpl; |
|
| 5 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableSpeed; |
|
| 6 | 4 | import com.sap.sse.common.Speed; |
| 5 | +import com.sap.sse.common.confidence.impl.HasConfidenceImpl; |
|
| 7 | 6 | import com.sap.sse.common.scalablevalue.ScalableValue; |
| 7 | +import com.sap.sse.common.scalablevalue.impl.ScalableSpeed; |
|
| 8 | 8 | |
| 9 | 9 | public class SpeedWithConfidenceImpl<RelativeTo> extends HasConfidenceImpl<Double, Speed, RelativeTo> implements SpeedWithConfidence<RelativeTo> { |
| 10 | 10 | private static final long serialVersionUID = -3122580369653833748L; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/confidence/ConfidenceBasedWindAverager.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.domain.confidence; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.common.Wind; |
| 4 | -import com.sap.sailing.domain.common.confidence.ConfidenceBasedAverager; |
|
| 5 | 4 | import com.sap.sailing.domain.common.confidence.impl.ScalableWind; |
| 6 | 5 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 6 | +import com.sap.sse.common.confidence.ConfidenceBasedAverager; |
|
| 7 | 7 | import com.sap.sse.common.scalablevalue.HasConfidenceAndIsScalable; |
| 8 | 8 | |
| 9 | 9 | public interface ConfidenceBasedWindAverager<RelativeTo> extends ConfidenceBasedAverager<ScalableWind, Wind, RelativeTo>{ |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/confidence/ConfidenceFactory.java
| ... | ... | @@ -1,10 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.domain.confidence; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 4 | 3 | import com.sap.sailing.domain.confidence.impl.ConfidenceFactoryImpl; |
| 5 | 4 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 5 | +import com.sap.sse.common.confidence.Weigher; |
|
| 6 | 6 | |
| 7 | -public interface ConfidenceFactory extends com.sap.sailing.domain.common.confidence.ConfidenceFactory { |
|
| 7 | +public interface ConfidenceFactory extends com.sap.sse.common.confidence.ConfidenceFactory { |
|
| 8 | 8 | ConfidenceFactory INSTANCE = new ConfidenceFactoryImpl(); |
| 9 | 9 | |
| 10 | 10 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/confidence/impl/ConfidenceBasedWindAveragerImpl.java
| ... | ... | @@ -5,15 +5,15 @@ import java.util.Iterator; |
| 5 | 5 | import com.sap.sailing.domain.common.Wind; |
| 6 | 6 | import com.sap.sailing.domain.common.WindSource; |
| 7 | 7 | import com.sap.sailing.domain.common.WindSourceType; |
| 8 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 9 | -import com.sap.sailing.domain.common.confidence.impl.ConfidenceBasedAveragerImpl; |
|
| 10 | 8 | import com.sap.sailing.domain.common.confidence.impl.ScalableWind; |
| 11 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 12 | 9 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 13 | 10 | import com.sap.sailing.domain.confidence.ConfidenceBasedWindAverager; |
| 14 | 11 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 15 | 12 | import com.sap.sailing.domain.tracking.impl.WindWithConfidenceImpl; |
| 16 | 13 | import com.sap.sse.common.Speed; |
| 14 | +import com.sap.sse.common.confidence.Weigher; |
|
| 15 | +import com.sap.sse.common.confidence.impl.ConfidenceBasedAveragerImpl; |
|
| 16 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 17 | 17 | import com.sap.sse.common.scalablevalue.HasConfidenceAndIsScalable; |
| 18 | 18 | |
| 19 | 19 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/confidence/impl/ConfidenceFactoryImpl.java
| ... | ... | @@ -1,11 +1,11 @@ |
| 1 | 1 | package com.sap.sailing.domain.confidence.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 4 | 3 | import com.sap.sailing.domain.confidence.ConfidenceBasedWindAverager; |
| 5 | 4 | import com.sap.sailing.domain.confidence.ConfidenceFactory; |
| 5 | +import com.sap.sse.common.confidence.Weigher; |
|
| 6 | 6 | |
| 7 | 7 | public class ConfidenceFactoryImpl extends |
| 8 | - com.sap.sailing.domain.common.confidence.impl.ConfidenceBasedAveragerFactoryImpl implements ConfidenceFactory { |
|
| 8 | + com.sap.sse.common.confidence.impl.ConfidenceBasedAveragerFactoryImpl implements ConfidenceFactory { |
|
| 9 | 9 | @Override |
| 10 | 10 | public <RelativeTo> ConfidenceBasedWindAverager<RelativeTo> createWindAverager(Weigher<RelativeTo> weigher) { |
| 11 | 11 | return new ConfidenceBasedWindAveragerImpl<RelativeTo>(weigher); |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/leaderboard/caching/LeaderboardDTOCalculationReuseCache.java
| ... | ... | @@ -18,11 +18,7 @@ import com.sap.sailing.domain.base.Mark; |
| 18 | 18 | import com.sap.sailing.domain.base.Waypoint; |
| 19 | 19 | import com.sap.sailing.domain.common.LegType; |
| 20 | 20 | import com.sap.sailing.domain.common.NoWindException; |
| 21 | -import com.sap.sailing.domain.common.Position; |
|
| 22 | 21 | import com.sap.sailing.domain.common.Wind; |
| 23 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 24 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 25 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 26 | 22 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 27 | 23 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveCourse; |
| 28 | 24 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveLeg; |
| ... | ... | @@ -41,12 +37,16 @@ import com.sap.sailing.domain.tracking.TrackedRace; |
| 41 | 37 | import com.sap.sailing.domain.tracking.WindLegTypeAndLegBearingAndORCPerformanceCurveCache; |
| 42 | 38 | import com.sap.sse.common.Bearing; |
| 43 | 39 | import com.sap.sse.common.Duration; |
| 40 | +import com.sap.sse.common.Position; |
|
| 44 | 41 | import com.sap.sse.common.Speed; |
| 45 | 42 | import com.sap.sse.common.TimePoint; |
| 46 | 43 | import com.sap.sse.common.Util; |
| 47 | 44 | import com.sap.sse.common.Util.Pair; |
| 48 | 45 | import com.sap.sse.common.Util.Triple; |
| 49 | 46 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 47 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 48 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 49 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 50 | 50 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 51 | 51 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 52 | 52 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/leaderboard/impl/AbstractLeaderboardWithCache.java
| ... | ... | @@ -57,7 +57,6 @@ import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 57 | 57 | import com.sap.sailing.domain.common.RegattaNameAndRaceName; |
| 58 | 58 | import com.sap.sailing.domain.common.RegattaScoreCorrections; |
| 59 | 59 | import com.sap.sailing.domain.common.RegattaScoreCorrections.ScoreCorrectionsForRace; |
| 60 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 61 | 60 | import com.sap.sailing.domain.common.dto.BasicRaceDTO; |
| 62 | 61 | import com.sap.sailing.domain.common.dto.BoatClassDTO; |
| 63 | 62 | import com.sap.sailing.domain.common.dto.CompetitorDTO; |
| ... | ... | @@ -103,6 +102,7 @@ import com.sap.sse.common.Bearing; |
| 103 | 102 | import com.sap.sse.common.Distance; |
| 104 | 103 | import com.sap.sse.common.Duration; |
| 105 | 104 | import com.sap.sse.common.Speed; |
| 105 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 106 | 106 | import com.sap.sse.common.TimePoint; |
| 107 | 107 | import com.sap.sse.common.TimingStats; |
| 108 | 108 | import com.sap.sse.common.Util; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/maneuverdetection/CompleteManeuverCurveWithEstimationData.java
| ... | ... | @@ -1,11 +1,11 @@ |
| 1 | 1 | package com.sap.sailing.domain.maneuverdetection; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.common.ManeuverType; |
| 4 | -import com.sap.sailing.domain.common.Positioned; |
|
| 5 | 4 | import com.sap.sailing.domain.common.Wind; |
| 6 | 5 | import com.sap.sailing.domain.tracking.CompleteManeuverCurve; |
| 7 | 6 | import com.sap.sse.common.Bearing; |
| 8 | 7 | import com.sap.sse.common.Distance; |
| 8 | +import com.sap.sse.common.Positioned; |
|
| 9 | 9 | import com.sap.sse.common.TimePoint; |
| 10 | 10 | import com.sap.sse.common.Timed; |
| 11 | 11 | import com.sap.sse.datamining.annotations.Connector; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/maneuverdetection/ManeuverCurveWithUnstableCourseAndSpeedWithEstimationData.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.domain.maneuverdetection; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 4 | 3 | import com.sap.sailing.domain.tracking.ManeuverCurveBoundaries; |
| 5 | 4 | import com.sap.sse.common.Duration; |
| 5 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 6 | 6 | |
| 7 | 7 | /** |
| 8 | 8 | * Contains the information about the maneuver curve with unstable course and speed, which is regarded as relevant for |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/maneuverdetection/ManeuverMainCurveWithEstimationData.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.domain.maneuverdetection; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 4 | 3 | import com.sap.sailing.domain.tracking.ManeuverCurveBoundaries; |
| 5 | 4 | import com.sap.sse.common.Bearing; |
| 6 | 5 | import com.sap.sse.common.Duration; |
| 6 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 7 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | 8 | import com.sap.sse.datamining.annotations.Statistic; |
| 9 | 9 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/maneuverdetection/impl/AbstractManeuverDetectorImpl.java
| ... | ... | @@ -4,7 +4,6 @@ import java.util.NavigableSet; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.base.Competitor; |
| 6 | 6 | import com.sap.sailing.domain.base.Waypoint; |
| 7 | -import com.sap.sailing.domain.common.BearingChangeAnalyzer; |
|
| 8 | 7 | import com.sap.sailing.domain.common.NauticalSide; |
| 9 | 8 | import com.sap.sailing.domain.common.Wind; |
| 10 | 9 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -15,6 +14,7 @@ import com.sap.sailing.domain.tracking.ManeuverCurveBoundaries; |
| 15 | 14 | import com.sap.sailing.domain.tracking.MarkPassing; |
| 16 | 15 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 17 | 16 | import com.sap.sse.common.Bearing; |
| 17 | +import com.sap.sse.common.BearingChangeAnalyzer; |
|
| 18 | 18 | import com.sap.sse.common.Duration; |
| 19 | 19 | import com.sap.sse.common.TimePoint; |
| 20 | 20 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/maneuverdetection/impl/CompleteManeuverCurveWithEstimationDataImpl.java
| ... | ... | @@ -1,12 +1,12 @@ |
| 1 | 1 | package com.sap.sailing.domain.maneuverdetection.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.domain.common.Wind; |
| 5 | 4 | import com.sap.sailing.domain.maneuverdetection.CompleteManeuverCurveWithEstimationData; |
| 6 | 5 | import com.sap.sailing.domain.maneuverdetection.ManeuverCurveWithUnstableCourseAndSpeedWithEstimationData; |
| 7 | 6 | import com.sap.sailing.domain.maneuverdetection.ManeuverMainCurveWithEstimationData; |
| 8 | 7 | import com.sap.sse.common.Bearing; |
| 9 | 8 | import com.sap.sse.common.Distance; |
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | 10 | |
| 11 | 11 | /** |
| 12 | 12 | * |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/maneuverdetection/impl/LowGPSSamplingRateManeuverDetectorImpl.java
| ... | ... | @@ -5,11 +5,8 @@ import java.util.Iterator; |
| 5 | 5 | import java.util.List; |
| 6 | 6 | |
| 7 | 7 | import com.sap.sailing.domain.base.Competitor; |
| 8 | -import com.sap.sailing.domain.common.CourseChange; |
|
| 9 | 8 | import com.sap.sailing.domain.common.ManeuverType; |
| 10 | 9 | import com.sap.sailing.domain.common.NoWindException; |
| 11 | -import com.sap.sailing.domain.common.Position; |
|
| 12 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 13 | 10 | import com.sap.sailing.domain.common.Tack; |
| 14 | 11 | import com.sap.sailing.domain.common.Wind; |
| 15 | 12 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -22,6 +19,9 @@ import com.sap.sailing.domain.tracking.TrackedRace; |
| 22 | 19 | import com.sap.sailing.domain.tracking.impl.ManeuverCurveBoundariesImpl; |
| 23 | 20 | import com.sap.sailing.domain.tracking.impl.ManeuverWithCoarseGrainedBoundariesImpl; |
| 24 | 21 | import com.sap.sse.common.Bearing; |
| 22 | +import com.sap.sse.common.CourseChange; |
|
| 23 | +import com.sap.sse.common.Position; |
|
| 24 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 25 | 25 | import com.sap.sse.common.TimePoint; |
| 26 | 26 | import com.sap.sse.common.Util; |
| 27 | 27 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/maneuverdetection/impl/ManeuverCurveBoundaryExtension.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.domain.maneuverdetection.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 4 | 3 | import com.sap.sse.common.Speed; |
| 4 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 5 | 5 | import com.sap.sse.common.TimePoint; |
| 6 | 6 | |
| 7 | 7 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/maneuverdetection/impl/ManeuverCurveWithUnstableCourseAndSpeedWithEstimationDataImpl.java
| ... | ... | @@ -1,10 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.domain.maneuverdetection.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 4 | 3 | import com.sap.sailing.domain.maneuverdetection.ManeuverCurveWithUnstableCourseAndSpeedWithEstimationData; |
| 5 | 4 | import com.sap.sailing.domain.tracking.impl.ManeuverCurveBoundariesImpl; |
| 6 | 5 | import com.sap.sse.common.Duration; |
| 7 | 6 | import com.sap.sse.common.Speed; |
| 7 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 8 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | 9 | |
| 10 | 10 | public class ManeuverCurveWithUnstableCourseAndSpeedWithEstimationDataImpl extends ManeuverCurveBoundariesImpl |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/maneuverdetection/impl/ManeuverDetectorImpl.java
| ... | ... | @@ -11,12 +11,9 @@ import java.util.logging.Logger; |
| 11 | 11 | import com.sap.sailing.domain.base.BoatClass; |
| 12 | 12 | import com.sap.sailing.domain.base.Competitor; |
| 13 | 13 | import com.sap.sailing.domain.base.Waypoint; |
| 14 | -import com.sap.sailing.domain.common.BearingChangeAnalyzer; |
|
| 15 | 14 | import com.sap.sailing.domain.common.ManeuverType; |
| 16 | 15 | import com.sap.sailing.domain.common.NauticalSide; |
| 17 | 16 | import com.sap.sailing.domain.common.NoWindException; |
| 18 | -import com.sap.sailing.domain.common.Position; |
|
| 19 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 20 | 17 | import com.sap.sailing.domain.common.Tack; |
| 21 | 18 | import com.sap.sailing.domain.common.Wind; |
| 22 | 19 | import com.sap.sailing.domain.common.WindSourceType; |
| ... | ... | @@ -40,9 +37,12 @@ import com.sap.sailing.domain.tracking.impl.ManeuverWithMainCurveBoundariesImpl; |
| 40 | 37 | import com.sap.sailing.domain.tracking.impl.ManeuverWithStableSpeedAndCourseBoundariesImpl; |
| 41 | 38 | import com.sap.sailing.domain.tracking.impl.SpeedWithBearingStepImpl; |
| 42 | 39 | import com.sap.sse.common.Bearing; |
| 40 | +import com.sap.sse.common.BearingChangeAnalyzer; |
|
| 43 | 41 | import com.sap.sse.common.Distance; |
| 44 | 42 | import com.sap.sse.common.Duration; |
| 43 | +import com.sap.sse.common.Position; |
|
| 45 | 44 | import com.sap.sse.common.Speed; |
| 45 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 46 | 46 | import com.sap.sse.common.TimePoint; |
| 47 | 47 | import com.sap.sse.common.Util; |
| 48 | 48 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/maneuverdetection/impl/ManeuverDetectorWithEstimationDataSupportDecoratorImpl.java
| ... | ... | @@ -9,11 +9,8 @@ import com.sap.sailing.domain.base.Mark; |
| 9 | 9 | import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 10 | 10 | import com.sap.sailing.domain.base.Waypoint; |
| 11 | 11 | import com.sap.sailing.domain.common.ManeuverType; |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 14 | 12 | import com.sap.sailing.domain.common.Wind; |
| 15 | 13 | import com.sap.sailing.domain.common.WindSourceType; |
| 16 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 17 | 14 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 18 | 15 | import com.sap.sailing.domain.maneuverdetection.CompleteManeuverCurveWithEstimationData; |
| 19 | 16 | import com.sap.sailing.domain.maneuverdetection.ManeuverCurveWithUnstableCourseAndSpeedWithEstimationData; |
| ... | ... | @@ -33,10 +30,13 @@ import com.sap.sailing.domain.tracking.impl.NonCachingMarkPositionAtTimePointCac |
| 33 | 30 | import com.sap.sse.common.Bearing; |
| 34 | 31 | import com.sap.sse.common.Distance; |
| 35 | 32 | import com.sap.sse.common.Duration; |
| 33 | +import com.sap.sse.common.Position; |
|
| 36 | 34 | import com.sap.sse.common.Speed; |
| 35 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 37 | 36 | import com.sap.sse.common.TimePoint; |
| 38 | 37 | import com.sap.sse.common.Util.Pair; |
| 39 | 38 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 39 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 40 | 40 | |
| 41 | 41 | /** |
| 42 | 42 | * A decorator which adds support for management of estimation data for wind estimation to an existing maneuver detector |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/maneuverdetection/impl/ManeuverMainCurveDetailsWithBearingSteps.java
| ... | ... | @@ -1,10 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.domain.maneuverdetection.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 4 | 3 | import com.sap.sailing.domain.tracking.ManeuverCurveBoundaries; |
| 5 | 4 | import com.sap.sailing.domain.tracking.SpeedWithBearingStepsIterable; |
| 6 | 5 | import com.sap.sailing.domain.tracking.impl.ManeuverCurveBoundariesImpl; |
| 7 | 6 | import com.sap.sse.common.Speed; |
| 7 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 8 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | 9 | |
| 10 | 10 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/maneuverdetection/impl/ManeuverMainCurveWithEstimationDataImpl.java
| ... | ... | @@ -1,10 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.domain.maneuverdetection.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 4 | 3 | import com.sap.sailing.domain.maneuverdetection.ManeuverMainCurveWithEstimationData; |
| 5 | 4 | import com.sap.sailing.domain.tracking.impl.ManeuverCurveBoundariesImpl; |
| 6 | 5 | import com.sap.sse.common.Bearing; |
| 7 | 6 | import com.sap.sse.common.Duration; |
| 7 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 8 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | 9 | |
| 10 | 10 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/maneuverdetection/impl/WindMeasurement.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.domain.maneuverdetection.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sse.common.Bearing; |
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | 5 | import com.sap.sse.common.TimePoint; |
| 6 | 6 | |
| 7 | 7 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/markpassingcalculation/impl/CandidateChooserImpl.java
| ... | ... | @@ -22,8 +22,6 @@ import java.util.logging.Logger; |
| 22 | 22 | import com.sap.sailing.domain.base.Competitor; |
| 23 | 23 | import com.sap.sailing.domain.base.Course; |
| 24 | 24 | import com.sap.sailing.domain.base.Waypoint; |
| 25 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 26 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 27 | 25 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 28 | 26 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 29 | 27 | import com.sap.sailing.domain.markpassingcalculation.Candidate; |
| ... | ... | @@ -43,6 +41,8 @@ import com.sap.sse.common.TimePoint; |
| 43 | 41 | import com.sap.sse.common.Timed; |
| 44 | 42 | import com.sap.sse.common.Util; |
| 45 | 43 | import com.sap.sse.common.Util.Pair; |
| 44 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 45 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 46 | 46 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 47 | 47 | import com.sap.sse.concurrent.LockUtil; |
| 48 | 48 | import com.sap.sse.concurrent.NamedReentrantReadWriteLock; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/markpassingcalculation/impl/CandidateFinderImpl.java
| ... | ... | @@ -29,8 +29,6 @@ import com.sap.sailing.domain.base.Mark; |
| 29 | 29 | import com.sap.sailing.domain.base.RaceDefinition; |
| 30 | 30 | import com.sap.sailing.domain.base.Waypoint; |
| 31 | 31 | import com.sap.sailing.domain.common.PassingInstruction; |
| 32 | -import com.sap.sailing.domain.common.Position; |
|
| 33 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 34 | 32 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 35 | 33 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 36 | 34 | import com.sap.sailing.domain.markpassingcalculation.Candidate; |
| ... | ... | @@ -45,12 +43,14 @@ import com.sap.sailing.domain.tracking.impl.MarkPositionAtTimePointCacheImpl; |
| 45 | 43 | import com.sap.sse.common.Bearing; |
| 46 | 44 | import com.sap.sse.common.Distance; |
| 47 | 45 | import com.sap.sse.common.Duration; |
| 46 | +import com.sap.sse.common.Position; |
|
| 48 | 47 | import com.sap.sse.common.TimePoint; |
| 49 | 48 | import com.sap.sse.common.TimeRange; |
| 50 | 49 | import com.sap.sse.common.Timed; |
| 51 | 50 | import com.sap.sse.common.Util; |
| 52 | 51 | import com.sap.sse.common.Util.Pair; |
| 53 | 52 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 53 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 54 | 54 | import com.sap.sse.common.impl.TimeRangeImpl; |
| 55 | 55 | import com.sap.sse.concurrent.LockUtil; |
| 56 | 56 | import com.sap.sse.util.ThreadPoolUtil; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/markpassingcalculation/impl/StationarySequence.java
| ... | ... | @@ -13,18 +13,18 @@ import java.util.TreeSet; |
| 13 | 13 | |
| 14 | 14 | import com.sap.sailing.domain.base.Competitor; |
| 15 | 15 | import com.sap.sailing.domain.base.Waypoint; |
| 16 | -import com.sap.sailing.domain.common.Bounds; |
|
| 17 | -import com.sap.sailing.domain.common.Position; |
|
| 18 | -import com.sap.sailing.domain.common.impl.BoundsImpl; |
|
| 19 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 20 | 16 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 21 | 17 | import com.sap.sailing.domain.markpassingcalculation.Candidate; |
| 22 | 18 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 19 | +import com.sap.sse.common.Bounds; |
|
| 23 | 20 | import com.sap.sse.common.Distance; |
| 24 | 21 | import com.sap.sse.common.Duration; |
| 22 | +import com.sap.sse.common.Position; |
|
| 25 | 23 | import com.sap.sse.common.TimePoint; |
| 26 | 24 | import com.sap.sse.common.Util; |
| 27 | 25 | import com.sap.sse.common.Util.ValueCollectionConstructor; |
| 26 | +import com.sap.sse.common.impl.BoundsImpl; |
|
| 27 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 28 | 28 | |
| 29 | 29 | /** |
| 30 | 30 | * A sequence of {@link Candidate}s such that the track of smoothed GPS fixes between them fits into a bounding box that |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/markpassingcalculation/impl/StationarySequenceBasedFilter.java
| ... | ... | @@ -8,12 +8,12 @@ import java.util.TreeSet; |
| 8 | 8 | import java.util.logging.Logger; |
| 9 | 9 | |
| 10 | 10 | import com.sap.sailing.domain.base.Competitor; |
| 11 | -import com.sap.sailing.domain.common.Bounds; |
|
| 12 | 11 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 13 | 12 | import com.sap.sailing.domain.markpassingcalculation.Candidate; |
| 14 | 13 | import com.sap.sailing.domain.markpassingcalculation.CandidateChooser; |
| 15 | 14 | import com.sap.sailing.domain.markpassingcalculation.CandidateFinder; |
| 16 | 15 | import com.sap.sailing.domain.tracking.DynamicGPSFixTrack; |
| 16 | +import com.sap.sse.common.Bounds; |
|
| 17 | 17 | import com.sap.sse.common.Util; |
| 18 | 18 | import com.sap.sse.common.Util.Pair; |
| 19 | 19 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/markpassingcalculation/impl/WaypointPositionAndDistanceCache.java
| ... | ... | @@ -19,7 +19,6 @@ import com.sap.sailing.domain.base.ControlPoint; |
| 19 | 19 | import com.sap.sailing.domain.base.Course; |
| 20 | 20 | import com.sap.sailing.domain.base.Mark; |
| 21 | 21 | import com.sap.sailing.domain.base.Waypoint; |
| 22 | -import com.sap.sailing.domain.common.Position; |
|
| 23 | 22 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 24 | 23 | import com.sap.sailing.domain.shared.tracking.AddResult; |
| 25 | 24 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| ... | ... | @@ -27,6 +26,7 @@ import com.sap.sailing.domain.tracking.TrackedRace; |
| 27 | 26 | import com.sap.sailing.domain.tracking.impl.AbstractRaceChangeListener; |
| 28 | 27 | import com.sap.sse.common.Distance; |
| 29 | 28 | import com.sap.sse.common.Duration; |
| 29 | +import com.sap.sse.common.Position; |
|
| 30 | 30 | import com.sap.sse.common.TimePoint; |
| 31 | 31 | import com.sap.sse.common.TimeRange; |
| 32 | 32 | import com.sap.sse.common.Util; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/markpassingcalculation/splining/Vector2D.java
| ... | ... | @@ -3,8 +3,8 @@ package com.sap.sailing.domain.markpassingcalculation.splining; |
| 3 | 3 | import java.util.ArrayList; |
| 4 | 4 | import java.util.List; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sse.common.Bearing; |
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | 8 | |
| 9 | 9 | /** |
| 10 | 10 | * A vector in the 2 dimensional plane that supports numerous vector operations. |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/orc/impl/AbstractORCPerformanceCurveTwaLegAdapter.java
| ... | ... | @@ -1,6 +1,5 @@ |
| 1 | 1 | package com.sap.sailing.domain.orc.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.domain.common.Wind; |
| 5 | 4 | import com.sap.sailing.domain.common.orc.AverageWindOnLegCache; |
| 6 | 5 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveLeg; |
| ... | ... | @@ -12,6 +11,7 @@ import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 12 | 11 | import com.sap.sailing.domain.tracking.impl.NoCachingWindLegTypeAndLegBearingCache; |
| 13 | 12 | import com.sap.sse.common.Bearing; |
| 14 | 13 | import com.sap.sse.common.Distance; |
| 14 | +import com.sap.sse.common.Position; |
|
| 15 | 15 | import com.sap.sse.common.TimePoint; |
| 16 | 16 | import com.sap.sse.common.Util.Pair; |
| 17 | 17 | |
| ... | ... | @@ -19,7 +19,7 @@ import com.sap.sse.common.Util.Pair; |
| 19 | 19 | * Abstract base class for adapting a {@link TrackedLeg} to the {@link ORCPerformanceCurveLeg} interface. If wind |
| 20 | 20 | * information is known, the leg will be of type {@link ORCPerformanceCurveLegTypes#TWA} using as the {@link #getTwa() |
| 21 | 21 | * TWA} the angular difference between this leg's bearing and the TWA as obtained from the |
| 22 | - * {@link TrackedRace#getWind(com.sap.sailing.domain.common.Position, TimePoint) TrackedRace} of which the |
|
| 22 | + * {@link TrackedRace#getWind(com.sap.sse.common.Position, TimePoint) TrackedRace} of which the |
|
| 23 | 23 | * {@link TrackedLeg} passed to the constructor is a part. If no wind information is known, the leg is emulated to be of |
| 24 | 24 | * type {@link ORCPerformanceCurveLegTypes#LONG_DISTANCE}, and {@link #getTwa()} will return {@code null}. |
| 25 | 25 | * <p> |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/orc/impl/ORCCertificatesCollectionJSON.java
| ... | ... | @@ -16,8 +16,6 @@ import javax.xml.bind.DatatypeConverter; |
| 16 | 16 | import org.json.simple.JSONArray; |
| 17 | 17 | import org.json.simple.JSONObject; |
| 18 | 18 | |
| 19 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 20 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 21 | 19 | import com.sap.sailing.domain.common.orc.ORCCertificate; |
| 22 | 20 | import com.sap.sailing.domain.common.orc.impl.ORCCertificateImpl; |
| 23 | 21 | import com.sap.sse.common.Bearing; |
| ... | ... | @@ -27,6 +25,8 @@ import com.sap.sse.common.Duration; |
| 27 | 25 | import com.sap.sse.common.Speed; |
| 28 | 26 | import com.sap.sse.common.TimePoint; |
| 29 | 27 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 28 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 29 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 30 | 30 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 31 | 31 | import com.sap.sse.common.impl.SecondsDurationImpl; |
| 32 | 32 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/orc/impl/ORCCertificatesCollectionRMS.java
| ... | ... | @@ -10,7 +10,6 @@ import java.util.Map; |
| 10 | 10 | import java.util.Map.Entry; |
| 11 | 11 | import java.util.Set; |
| 12 | 12 | |
| 13 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 14 | 13 | import com.sap.sailing.domain.common.orc.ORCCertificate; |
| 15 | 14 | import com.sap.sailing.domain.common.orc.impl.ORCCertificateImpl; |
| 16 | 15 | import com.sap.sse.common.Bearing; |
| ... | ... | @@ -22,6 +21,7 @@ import com.sap.sse.common.Speed; |
| 22 | 21 | import com.sap.sse.common.TimePoint; |
| 23 | 22 | import com.sap.sse.common.Util.Triple; |
| 24 | 23 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 24 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 25 | 25 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 26 | 26 | import com.sap.sse.common.impl.SecondsDurationImpl; |
| 27 | 27 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/orc/impl/ORCPerformanceCurveImpl.java
| ... | ... | @@ -21,7 +21,6 @@ import org.apache.commons.math3.analysis.solvers.NewtonRaphsonSolver; |
| 21 | 21 | import org.apache.commons.math3.exception.DimensionMismatchException; |
| 22 | 22 | |
| 23 | 23 | import com.sap.sailing.domain.base.Competitor; |
| 24 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 25 | 24 | import com.sap.sailing.domain.common.orc.ORCCertificate; |
| 26 | 25 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveCourse; |
| 27 | 26 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveLeg; |
| ... | ... | @@ -34,6 +33,7 @@ import com.sap.sse.common.Bearing; |
| 34 | 33 | import com.sap.sse.common.Duration; |
| 35 | 34 | import com.sap.sse.common.Speed; |
| 36 | 35 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 36 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 37 | 37 | import com.sap.sse.common.impl.SecondsDurationImpl; |
| 38 | 38 | import com.sap.sse.common.util.CubicSpline; |
| 39 | 39 | import com.sap.sse.common.util.CubicSpline.SplineBoundaryCondition; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/polars/PolarDataService.java
| ... | ... | @@ -15,13 +15,13 @@ import com.sap.sailing.domain.base.SpeedWithConfidence; |
| 15 | 15 | import com.sap.sailing.domain.common.LegType; |
| 16 | 16 | import com.sap.sailing.domain.common.ManeuverType; |
| 17 | 17 | import com.sap.sailing.domain.common.Tack; |
| 18 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 19 | 18 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 20 | 19 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 21 | 20 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 22 | 21 | import com.sap.sse.common.Bearing; |
| 23 | 22 | import com.sap.sse.common.Speed; |
| 24 | 23 | import com.sap.sse.common.Util.Pair; |
| 24 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 25 | 25 | |
| 26 | 26 | /** |
| 27 | 27 | * Public Facade interface granting clients access to the polar sheets of {@link BoatClass}es. A boat's "polar sheet" |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/ranking/AbstractRankingMetric.java
| ... | ... | @@ -18,8 +18,6 @@ import com.sap.sailing.domain.base.Leg; |
| 18 | 18 | import com.sap.sailing.domain.base.Waypoint; |
| 19 | 19 | import com.sap.sailing.domain.base.impl.CompetitorImpl; |
| 20 | 20 | import com.sap.sailing.domain.common.LegType; |
| 21 | -import com.sap.sailing.domain.common.Position; |
|
| 22 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 23 | 21 | import com.sap.sailing.domain.tracking.MarkPassing; |
| 24 | 22 | import com.sap.sailing.domain.tracking.TrackedLeg; |
| 25 | 23 | import com.sap.sailing.domain.tracking.TrackedLegOfCompetitor; |
| ... | ... | @@ -29,9 +27,11 @@ import com.sap.sailing.domain.tracking.WindPositionMode; |
| 29 | 27 | import com.sap.sailing.domain.tracking.impl.AbstractRaceRankComparator; |
| 30 | 28 | import com.sap.sse.common.Distance; |
| 31 | 29 | import com.sap.sse.common.Duration; |
| 30 | +import com.sap.sse.common.Position; |
|
| 32 | 31 | import com.sap.sse.common.Speed; |
| 33 | 32 | import com.sap.sse.common.TimePoint; |
| 34 | 33 | import com.sap.sse.common.Util; |
| 34 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 35 | 35 | |
| 36 | 36 | public abstract class AbstractRankingMetric implements RankingMetric { |
| 37 | 37 | private static final long serialVersionUID = -3671039530564696392L; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/ranking/NonPerformanceCurveRankingMetric.java
| ... | ... | @@ -10,13 +10,13 @@ import com.sap.sailing.domain.base.Competitor; |
| 10 | 10 | import com.sap.sailing.domain.base.Leg; |
| 11 | 11 | import com.sap.sailing.domain.base.SpeedWithConfidence; |
| 12 | 12 | import com.sap.sailing.domain.base.Waypoint; |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | 13 | import com.sap.sailing.domain.tracking.MarkPassing; |
| 15 | 14 | import com.sap.sailing.domain.tracking.TrackedLegOfCompetitor; |
| 16 | 15 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 17 | 16 | import com.sap.sailing.domain.tracking.WindLegTypeAndLegBearingAndORCPerformanceCurveCache; |
| 18 | 17 | import com.sap.sse.common.Distance; |
| 19 | 18 | import com.sap.sse.common.Duration; |
| 19 | +import com.sap.sse.common.Position; |
|
| 20 | 20 | import com.sap.sse.common.Speed; |
| 21 | 21 | import com.sap.sse.common.TimePoint; |
| 22 | 22 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/ranking/OneDesignRankingMetric.java
| ... | ... | @@ -7,7 +7,6 @@ import java.util.function.Supplier; |
| 7 | 7 | import com.sap.sailing.domain.base.Competitor; |
| 8 | 8 | import com.sap.sailing.domain.base.Leg; |
| 9 | 9 | import com.sap.sailing.domain.base.Waypoint; |
| 10 | -import com.sap.sailing.domain.common.Position; |
|
| 11 | 10 | import com.sap.sailing.domain.common.RankingMetrics; |
| 12 | 11 | import com.sap.sailing.domain.tracking.MarkPassing; |
| 13 | 12 | import com.sap.sailing.domain.tracking.TrackedLeg; |
| ... | ... | @@ -19,6 +18,7 @@ import com.sap.sailing.domain.tracking.impl.RaceRankComparator; |
| 19 | 18 | import com.sap.sailing.domain.tracking.impl.WindwardToGoComparator; |
| 20 | 19 | import com.sap.sse.common.Distance; |
| 21 | 20 | import com.sap.sse.common.Duration; |
| 21 | +import com.sap.sse.common.Position; |
|
| 22 | 22 | import com.sap.sse.common.TimePoint; |
| 23 | 23 | |
| 24 | 24 | public class OneDesignRankingMetric extends NonPerformanceCurveRankingMetric { |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/ranking/TimeOnTimeAndDistanceRankingMetric.java
| ... | ... | @@ -14,8 +14,6 @@ import com.sap.sailing.domain.base.Competitor; |
| 14 | 14 | import com.sap.sailing.domain.base.Course; |
| 15 | 15 | import com.sap.sailing.domain.base.Leg; |
| 16 | 16 | import com.sap.sailing.domain.base.Waypoint; |
| 17 | -import com.sap.sailing.domain.common.Mile; |
|
| 18 | -import com.sap.sailing.domain.common.Position; |
|
| 19 | 17 | import com.sap.sailing.domain.common.RankingMetrics; |
| 20 | 18 | import com.sap.sailing.domain.tracking.MarkPassing; |
| 21 | 19 | import com.sap.sailing.domain.tracking.TrackedLeg; |
| ... | ... | @@ -24,6 +22,8 @@ import com.sap.sailing.domain.tracking.TrackedRace; |
| 24 | 22 | import com.sap.sailing.domain.tracking.WindLegTypeAndLegBearingAndORCPerformanceCurveCache; |
| 25 | 23 | import com.sap.sse.common.Distance; |
| 26 | 24 | import com.sap.sse.common.Duration; |
| 25 | +import com.sap.sse.common.Mile; |
|
| 26 | +import com.sap.sse.common.Position; |
|
| 27 | 27 | import com.sap.sse.common.TimePoint; |
| 28 | 28 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 29 | 29 | import com.sap.sse.shared.util.WeakReferenceWithCleanerCallback; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/DummyTrackedRace.java
| ... | ... | @@ -27,9 +27,7 @@ import com.sap.sailing.domain.base.impl.CourseImpl; |
| 27 | 27 | import com.sap.sailing.domain.base.impl.RaceDefinitionImpl; |
| 28 | 28 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 29 | 29 | import com.sap.sailing.domain.common.NoWindException; |
| 30 | -import com.sap.sailing.domain.common.Position; |
|
| 31 | 30 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 32 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 33 | 31 | import com.sap.sailing.domain.common.Tack; |
| 34 | 32 | import com.sap.sailing.domain.common.TargetTimeInfo; |
| 35 | 33 | import com.sap.sailing.domain.common.Wind; |
| ... | ... | @@ -52,7 +50,9 @@ import com.sap.sse.common.Bearing; |
| 52 | 50 | import com.sap.sse.common.Distance; |
| 53 | 51 | import com.sap.sse.common.Duration; |
| 54 | 52 | import com.sap.sse.common.IsManagedByCache; |
| 53 | +import com.sap.sse.common.Position; |
|
| 55 | 54 | import com.sap.sse.common.Speed; |
| 55 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 56 | 56 | import com.sap.sse.common.TimePoint; |
| 57 | 57 | import com.sap.sse.common.Util; |
| 58 | 58 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/GPSFixTrack.java
| ... | ... | @@ -3,21 +3,21 @@ package com.sap.sailing.domain.tracking; |
| 3 | 3 | import java.util.Iterator; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 8 | 6 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 9 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 10 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 11 | 7 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 12 | 8 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 13 | 9 | import com.sap.sailing.domain.shared.tracking.MappedTrack; |
| 14 | 10 | import com.sap.sse.common.Distance; |
| 15 | 11 | import com.sap.sse.common.Duration; |
| 12 | +import com.sap.sse.common.Position; |
|
| 16 | 13 | import com.sap.sse.common.Speed; |
| 14 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 17 | 15 | import com.sap.sse.common.TimePoint; |
| 18 | 16 | import com.sap.sse.common.TimeRange; |
| 19 | 17 | import com.sap.sse.common.Timed; |
| 20 | 18 | import com.sap.sse.common.Util; |
| 19 | +import com.sap.sse.common.confidence.Weigher; |
|
| 20 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 21 | 21 | |
| 22 | 22 | /** |
| 23 | 23 | * A track records the {@link GPSFix}es received for an object of type |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/LegBearingCache.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.base.Waypoint; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 4 | import com.sap.sse.common.Bearing; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | 6 | import com.sap.sse.common.TimePoint; |
| 7 | 7 | |
| 8 | 8 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/Maneuver.java
| ... | ... | @@ -2,12 +2,12 @@ package com.sap.sailing.domain.tracking; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.common.ManeuverType; |
| 4 | 4 | import com.sap.sailing.domain.common.NauticalSide; |
| 5 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 6 | 5 | import com.sap.sailing.domain.common.Tack; |
| 7 | 6 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 8 | 7 | import com.sap.sailing.domain.maneuverdetection.impl.ManeuverDetectorImpl; |
| 9 | 8 | import com.sap.sse.common.Duration; |
| 10 | 9 | import com.sap.sse.common.Speed; |
| 10 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 11 | 11 | import com.sap.sse.common.TimePoint; |
| 12 | 12 | import com.sap.sse.datamining.annotations.Dimension; |
| 13 | 13 | import com.sap.sse.datamining.annotations.Statistic; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/ManeuverCurveBoundaries.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 4 | 3 | import com.sap.sse.common.Bearing; |
| 5 | 4 | import com.sap.sse.common.Duration; |
| 6 | 5 | import com.sap.sse.common.Speed; |
| 6 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 7 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | 8 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 9 | 9 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/ManeuverLoss.java
| ... | ... | @@ -1,11 +1,11 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | 3 | import com.sap.sailing.domain.maneuverdetection.impl.ManeuverDetectorImpl; |
| 6 | 4 | import com.sap.sse.common.Bearing; |
| 7 | 5 | import com.sap.sse.common.Distance; |
| 8 | 6 | import com.sap.sse.common.Duration; |
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 9 | 9 | |
| 10 | 10 | /** |
| 11 | 11 | * Updated ManeuverLoss class to use it to visualize the correct maneuver loss on the race map. To draw the ManeuverLoss |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/MarkPositionAtTimePointCache.java
| ... | ... | @@ -2,8 +2,8 @@ package com.sap.sailing.domain.tracking; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.base.Mark; |
| 4 | 4 | import com.sap.sailing.domain.base.Waypoint; |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | 5 | import com.sap.sse.common.Bearing; |
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | 8 | |
| 9 | 9 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/RaceLogWindFixDeclinationHelper.java
| ... | ... | @@ -9,9 +9,9 @@ import com.sap.sailing.declination.Declination; |
| 9 | 9 | import com.sap.sailing.declination.DeclinationService; |
| 10 | 10 | import com.sap.sailing.domain.abstractlog.race.RaceLogWindFixEvent; |
| 11 | 11 | import com.sap.sailing.domain.common.Wind; |
| 12 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 13 | 12 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 14 | 13 | import com.sap.sse.common.Duration; |
| 14 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 15 | 15 | |
| 16 | 16 | public class RaceLogWindFixDeclinationHelper { |
| 17 | 17 | private static final Logger logger = Logger.getLogger(RaceLogWindFixDeclinationHelper.class.getName()); |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/RaceWindCalculator.java
| ... | ... | @@ -7,17 +7,17 @@ import java.util.List; |
| 7 | 7 | import com.sap.sailing.domain.abstractlog.race.RaceLog; |
| 8 | 8 | import com.sap.sailing.domain.abstractlog.race.RaceLogWindFixEvent; |
| 9 | 9 | import com.sap.sailing.domain.abstractlog.race.analyzing.impl.WindFixesFinder; |
| 10 | -import com.sap.sailing.domain.common.Position; |
|
| 11 | 10 | import com.sap.sailing.domain.common.Wind; |
| 12 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 13 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidenceCluster; |
|
| 14 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 15 | -import com.sap.sailing.domain.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 16 | 11 | import com.sap.sailing.domain.tracking.impl.WindSummaryImpl; |
| 17 | 12 | import com.sap.sailing.domain.tracking.impl.WindWithConfidenceImpl; |
| 13 | +import com.sap.sse.common.Position; |
|
| 18 | 14 | import com.sap.sse.common.Speed; |
| 19 | 15 | import com.sap.sse.common.TimePoint; |
| 20 | 16 | import com.sap.sse.common.Util.Pair; |
| 17 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 18 | +import com.sap.sse.common.confidence.BearingWithConfidenceCluster; |
|
| 19 | +import com.sap.sse.common.confidence.Weigher; |
|
| 20 | +import com.sap.sse.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 21 | 21 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 22 | 22 | |
| 23 | 23 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/SpeedWithBearingStep.java
| ... | ... | @@ -1,6 +1,6 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 3 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 4 | 4 | import com.sap.sse.common.Timed; |
| 5 | 5 | |
| 6 | 6 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/TrackedLeg.java
| ... | ... | @@ -7,13 +7,13 @@ import com.sap.sailing.domain.base.Competitor; |
| 7 | 7 | import com.sap.sailing.domain.base.Leg; |
| 8 | 8 | import com.sap.sailing.domain.common.LegType; |
| 9 | 9 | import com.sap.sailing.domain.common.NoWindException; |
| 10 | -import com.sap.sailing.domain.common.Position; |
|
| 11 | 10 | import com.sap.sailing.domain.common.TargetTimeInfo.LegTargetTimeInfo; |
| 12 | 11 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 13 | 12 | import com.sap.sailing.domain.common.Wind; |
| 14 | 13 | import com.sap.sailing.domain.polars.PolarDataService; |
| 15 | 14 | import com.sap.sse.common.Bearing; |
| 16 | 15 | import com.sap.sse.common.Distance; |
| 16 | +import com.sap.sse.common.Position; |
|
| 17 | 17 | import com.sap.sse.common.TimePoint; |
| 18 | 18 | import com.sap.sse.common.Util; |
| 19 | 19 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/TrackedLegOfCompetitor.java
| ... | ... | @@ -7,7 +7,6 @@ import com.sap.sailing.domain.base.Competitor; |
| 7 | 7 | import com.sap.sailing.domain.base.Leg; |
| 8 | 8 | import com.sap.sailing.domain.common.LegType; |
| 9 | 9 | import com.sap.sailing.domain.common.NoWindException; |
| 10 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 11 | 10 | import com.sap.sailing.domain.common.TackType; |
| 12 | 11 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 13 | 12 | import com.sap.sailing.domain.leaderboard.caching.LeaderboardDTOCalculationReuseCache; |
| ... | ... | @@ -16,6 +15,7 @@ import com.sap.sse.common.Bearing; |
| 16 | 15 | import com.sap.sse.common.Distance; |
| 17 | 16 | import com.sap.sse.common.Duration; |
| 18 | 17 | import com.sap.sse.common.Speed; |
| 18 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 19 | 19 | import com.sap.sse.common.TimePoint; |
| 20 | 20 | import com.sap.sse.common.Util; |
| 21 | 21 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/TrackedRace.java
| ... | ... | @@ -39,9 +39,7 @@ import com.sap.sailing.domain.base.Waypoint; |
| 39 | 39 | import com.sap.sailing.domain.common.LegType; |
| 40 | 40 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 41 | 41 | import com.sap.sailing.domain.common.NoWindException; |
| 42 | -import com.sap.sailing.domain.common.Position; |
|
| 43 | 42 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 44 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 45 | 43 | import com.sap.sailing.domain.common.Tack; |
| 46 | 44 | import com.sap.sailing.domain.common.TargetTimeInfo; |
| 47 | 45 | import com.sap.sailing.domain.common.TimingConstants; |
| ... | ... | @@ -78,7 +76,9 @@ import com.sap.sse.common.Bearing; |
| 78 | 76 | import com.sap.sse.common.Distance; |
| 79 | 77 | import com.sap.sse.common.Duration; |
| 80 | 78 | import com.sap.sse.common.IsManagedByCache; |
| 79 | +import com.sap.sse.common.Position; |
|
| 81 | 80 | import com.sap.sse.common.Speed; |
| 81 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 82 | 82 | import com.sap.sse.common.TimePoint; |
| 83 | 83 | import com.sap.sse.common.Util; |
| 84 | 84 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/WindTrack.java
| ... | ... | @@ -1,12 +1,12 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.domain.common.Wind; |
| 5 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 6 | 4 | import com.sap.sse.common.Distance; |
| 7 | 5 | import com.sap.sse.common.Duration; |
| 6 | +import com.sap.sse.common.Position; |
|
| 8 | 7 | import com.sap.sse.common.TimePoint; |
| 9 | 8 | import com.sap.sse.common.Util; |
| 9 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 10 | 10 | |
| 11 | 11 | public interface WindTrack extends DynamicTrack<Wind> { |
| 12 | 12 | static final long DEFAULT_MILLISECONDS_OVER_WHICH_TO_AVERAGE_WIND = 30000; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/WindWithConfidence.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.domain.common.Wind; |
| 5 | 4 | import com.sap.sailing.domain.common.confidence.impl.ScalableWind; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | 6 | import com.sap.sse.common.TimePoint; |
| 7 | 7 | import com.sap.sse.common.scalablevalue.HasConfidenceAndIsScalable; |
| 8 | 8 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/BravoFixTrackImpl.java
| ... | ... | @@ -5,7 +5,6 @@ import java.io.ObjectInputStream; |
| 5 | 5 | import java.io.Serializable; |
| 6 | 6 | import java.util.function.Function; |
| 7 | 7 | |
| 8 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableDistance; |
|
| 9 | 8 | import com.sap.sailing.domain.common.tracking.BravoExtendedFix; |
| 10 | 9 | import com.sap.sailing.domain.common.tracking.BravoFix; |
| 11 | 10 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -26,6 +25,7 @@ import com.sap.sse.common.impl.DegreeBearingImpl; |
| 26 | 25 | import com.sap.sse.common.WithID; |
| 27 | 26 | import com.sap.sse.common.scalablevalue.ScalableDouble; |
| 28 | 27 | import com.sap.sse.common.scalablevalue.ScalableValue; |
| 28 | +import com.sap.sse.common.scalablevalue.impl.ScalableDistance; |
|
| 29 | 29 | |
| 30 | 30 | /** |
| 31 | 31 | * Specific {@link SensorFixTrackImpl} used for {@link BravoFix}es. |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/CombinedWindAsNavigableSet.java
| ... | ... | @@ -2,11 +2,11 @@ package com.sap.sailing.domain.tracking.impl; |
| 2 | 2 | |
| 3 | 3 | import java.util.NavigableSet; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | 5 | import com.sap.sailing.domain.common.Wind; |
| 7 | 6 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 8 | 7 | import com.sap.sailing.domain.tracking.WindTrack; |
| 9 | 8 | import com.sap.sailing.domain.tracking.impl.WindTrackImpl.DummyWind; |
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | 10 | import com.sap.sse.common.TimePoint; |
| 11 | 11 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 12 | 12 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/CombinedWindTrackImpl.java
| ... | ... | @@ -1,19 +1,19 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.domain.common.Wind; |
| 5 | 4 | import com.sap.sailing.domain.common.WindSourceType; |
| 6 | 5 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 7 | 6 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 8 | 7 | import com.sap.sailing.domain.tracking.impl.TrackBasedEstimationWindTrackImpl.EstimatedWindFixesAsNavigableSet; |
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | 9 | import com.sap.sse.common.TimePoint; |
| 10 | 10 | import com.sap.sse.common.Util; |
| 11 | 11 | |
| 12 | 12 | /** |
| 13 | 13 | * A wind track that delivers the result of |
| 14 | - * {@link TrackedRace#getWind(com.sap.sailing.domain.common.Position, com.sap.sse.common.TimePoint)}, |
|
| 14 | + * {@link TrackedRace#getWind(com.sap.sse.common.Position, com.sap.sse.common.TimePoint)}, |
|
| 15 | 15 | * using a {@link CombinedWindAsNavigableSet} as its internal raw fixes collection. Resolution of raw fixes is set to 10s. |
| 16 | - * As the result of {@link TrackedRace#getWind(com.sap.sailing.domain.common.Position, com.sap.sse.common.TimePoint)} |
|
| 16 | + * As the result of {@link TrackedRace#getWind(com.sap.sse.common.Position, com.sap.sse.common.TimePoint)} |
|
| 17 | 17 | * is already a smoothened, outlier-removed and averaged value, the averaging methods {@link #getAveragedWind(Position, TimePoint)} |
| 18 | 18 | * and {@link #getAveragedWindWithConfidence(Position, TimePoint)} are redefined such that they immediately delegate |
| 19 | 19 | * to {@link TrackedRace#getWindWithConfidence(Position, TimePoint)}. |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/CourseChangeBasedTrackApproximation.java
| ... | ... | @@ -16,7 +16,6 @@ import java.util.logging.Logger; |
| 16 | 16 | import com.sap.sailing.domain.base.BoatClass; |
| 17 | 17 | import com.sap.sailing.domain.base.Competitor; |
| 18 | 18 | import com.sap.sailing.domain.common.NauticalSide; |
| 19 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 20 | 19 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 21 | 20 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 22 | 21 | import com.sap.sailing.domain.shared.tracking.AddResult; |
| ... | ... | @@ -24,6 +23,7 @@ import com.sap.sailing.domain.shared.tracking.impl.TimedComparator; |
| 24 | 23 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 25 | 24 | import com.sap.sailing.domain.tracking.GPSTrackListener; |
| 26 | 25 | import com.sap.sse.common.Duration; |
| 26 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 27 | 27 | import com.sap.sse.common.TimePoint; |
| 28 | 28 | import com.sap.sse.common.TimeRange; |
| 29 | 29 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/CrossTrackErrorCache.java
| ... | ... | @@ -16,7 +16,6 @@ import com.sap.sailing.domain.base.Mark; |
| 16 | 16 | import com.sap.sailing.domain.base.Waypoint; |
| 17 | 17 | import com.sap.sailing.domain.common.LegType; |
| 18 | 18 | import com.sap.sailing.domain.common.NoWindException; |
| 19 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 20 | 19 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 21 | 20 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 22 | 21 | import com.sap.sailing.domain.shared.tracking.AddResult; |
| ... | ... | @@ -30,6 +29,7 @@ import com.sap.sailing.domain.tracking.TrackedRace; |
| 30 | 29 | import com.sap.sse.common.Distance; |
| 31 | 30 | import com.sap.sse.common.TimePoint; |
| 32 | 31 | import com.sap.sse.common.Timed; |
| 32 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 33 | 33 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 34 | 34 | import com.sap.sse.util.SmartFutureCache; |
| 35 | 35 | import com.sap.sse.util.SmartFutureCache.CacheUpdater; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/DynamicGPSFixMovingTrackImpl.java
| ... | ... | @@ -10,16 +10,7 @@ import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 10 | 10 | import com.sap.sailing.domain.base.SpeedWithConfidence; |
| 11 | 11 | import com.sap.sailing.domain.base.impl.SpeedWithBearingWithConfidenceImpl; |
| 12 | 12 | import com.sap.sailing.domain.base.impl.SpeedWithConfidenceImpl; |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 15 | 13 | import com.sap.sailing.domain.common.Wind; |
| 16 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 17 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidenceCluster; |
|
| 18 | -import com.sap.sailing.domain.common.confidence.ConfidenceBasedAverager; |
|
| 19 | -import com.sap.sailing.domain.common.confidence.ConfidenceFactory; |
|
| 20 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 21 | -import com.sap.sailing.domain.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 22 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 23 | 14 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 24 | 15 | import com.sap.sailing.domain.common.tracking.impl.CompactPositionHelper; |
| 25 | 16 | import com.sap.sailing.domain.common.tracking.impl.CompactionNotPossibleException; |
| ... | ... | @@ -28,10 +19,19 @@ import com.sap.sailing.domain.common.tracking.impl.VeryCompactGPSFixMovingImpl; |
| 28 | 19 | import com.sap.sailing.domain.tracking.DynamicGPSFixTrack; |
| 29 | 20 | import com.sap.sse.common.Bearing; |
| 30 | 21 | import com.sap.sse.common.Distance; |
| 22 | +import com.sap.sse.common.Position; |
|
| 31 | 23 | import com.sap.sse.common.Speed; |
| 24 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 32 | 25 | import com.sap.sse.common.TimePoint; |
| 26 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 27 | +import com.sap.sse.common.confidence.BearingWithConfidenceCluster; |
|
| 28 | +import com.sap.sse.common.confidence.ConfidenceBasedAverager; |
|
| 29 | +import com.sap.sse.common.confidence.ConfidenceFactory; |
|
| 30 | +import com.sap.sse.common.confidence.HasConfidence; |
|
| 31 | +import com.sap.sse.common.confidence.Weigher; |
|
| 32 | +import com.sap.sse.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 33 | 33 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 34 | -import com.sap.sse.common.scalablevalue.HasConfidence; |
|
| 34 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 35 | 35 | |
| 36 | 36 | public class DynamicGPSFixMovingTrackImpl<ItemType> extends GPSFixTrackImpl<ItemType, GPSFixMoving> implements DynamicGPSFixTrack<ItemType, GPSFixMoving> { |
| 37 | 37 | private static final Logger logger = Logger.getLogger(DynamicGPSFixMovingTrackImpl.class.getName()); |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/GPSFixTrackImpl.java
| ... | ... | @@ -16,18 +16,8 @@ import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 16 | 16 | import com.sap.sailing.domain.base.SpeedWithConfidence; |
| 17 | 17 | import com.sap.sailing.domain.base.impl.SpeedWithBearingWithConfidenceImpl; |
| 18 | 18 | import com.sap.sailing.domain.base.impl.SpeedWithConfidenceImpl; |
| 19 | -import com.sap.sailing.domain.common.Position; |
|
| 20 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 21 | 19 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 22 | 20 | import com.sap.sailing.domain.common.Wind; |
| 23 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 24 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidenceCluster; |
|
| 25 | -import com.sap.sailing.domain.common.confidence.ConfidenceBasedAverager; |
|
| 26 | -import com.sap.sailing.domain.common.confidence.ConfidenceFactory; |
|
| 27 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 28 | -import com.sap.sailing.domain.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 29 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 30 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 31 | 21 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 32 | 22 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 33 | 23 | import com.sap.sailing.domain.common.tracking.WithValidityCache; |
| ... | ... | @@ -45,16 +35,26 @@ import com.sap.sailing.domain.tracking.TrackedRace; |
| 45 | 35 | import com.sap.sse.common.Bearing; |
| 46 | 36 | import com.sap.sse.common.Distance; |
| 47 | 37 | import com.sap.sse.common.Duration; |
| 38 | +import com.sap.sse.common.Position; |
|
| 48 | 39 | import com.sap.sse.common.Speed; |
| 40 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 49 | 41 | import com.sap.sse.common.TimePoint; |
| 50 | 42 | import com.sap.sse.common.TimeRange; |
| 51 | 43 | import com.sap.sse.common.Timed; |
| 52 | 44 | import com.sap.sse.common.Util; |
| 45 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 46 | +import com.sap.sse.common.confidence.BearingWithConfidenceCluster; |
|
| 47 | +import com.sap.sse.common.confidence.ConfidenceBasedAverager; |
|
| 48 | +import com.sap.sse.common.confidence.ConfidenceFactory; |
|
| 49 | +import com.sap.sse.common.confidence.HasConfidence; |
|
| 50 | +import com.sap.sse.common.confidence.Weigher; |
|
| 51 | +import com.sap.sse.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 53 | 52 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 53 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 54 | 54 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 55 | 55 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 56 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 56 | 57 | import com.sap.sse.common.impl.TimeRangeImpl; |
| 57 | -import com.sap.sse.common.scalablevalue.HasConfidence; |
|
| 58 | 58 | import com.sap.sse.shared.util.impl.ArrayListNavigableSet; |
| 59 | 59 | |
| 60 | 60 | public abstract class GPSFixTrackImpl<ItemType, FixType extends GPSFix> extends MappedTrackImpl<ItemType, FixType> |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/LegMiddleWindTrackImpl.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.domain.tracking.TrackedLeg; |
| 5 | 4 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | 6 | import com.sap.sse.common.TimePoint; |
| 7 | 7 | |
| 8 | 8 | public class LegMiddleWindTrackImpl extends CombinedWindTrackImpl { |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/ManeuverCurveBoundariesImpl.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 4 | 3 | import com.sap.sailing.domain.tracking.ManeuverCurveBoundaries; |
| 5 | 4 | import com.sap.sse.common.Speed; |
| 5 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 6 | 6 | import com.sap.sse.common.TimePoint; |
| 7 | 7 | |
| 8 | 8 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/ManeuverImpl.java
| ... | ... | @@ -2,8 +2,6 @@ package com.sap.sailing.domain.tracking.impl; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.common.ManeuverType; |
| 4 | 4 | import com.sap.sailing.domain.common.NauticalSide; |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 7 | 5 | import com.sap.sailing.domain.common.Tack; |
| 8 | 6 | import com.sap.sailing.domain.common.tracking.impl.AbstractGPSFixImpl; |
| 9 | 7 | import com.sap.sailing.domain.tracking.Maneuver; |
| ... | ... | @@ -11,7 +9,9 @@ import com.sap.sailing.domain.tracking.ManeuverCurveBoundaries; |
| 11 | 9 | import com.sap.sailing.domain.tracking.ManeuverLoss; |
| 12 | 10 | import com.sap.sailing.domain.tracking.MarkPassing; |
| 13 | 11 | import com.sap.sse.common.Duration; |
| 12 | +import com.sap.sse.common.Position; |
|
| 14 | 13 | import com.sap.sse.common.Speed; |
| 14 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 15 | 15 | import com.sap.sse.common.TimePoint; |
| 16 | 16 | |
| 17 | 17 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/ManeuverWithCoarseGrainedBoundariesImpl.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking.impl; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.common.ManeuverType; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 4 | import com.sap.sailing.domain.common.Tack; |
| 6 | 5 | import com.sap.sailing.domain.tracking.ManeuverCurveBoundaries; |
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | 8 | |
| 9 | 9 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/ManeuverWithMainCurveBoundariesImpl.java
| ... | ... | @@ -1,12 +1,12 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking.impl; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.common.ManeuverType; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 4 | import com.sap.sailing.domain.common.Tack; |
| 6 | 5 | import com.sap.sailing.domain.tracking.Maneuver; |
| 7 | 6 | import com.sap.sailing.domain.tracking.ManeuverCurveBoundaries; |
| 8 | 7 | import com.sap.sailing.domain.tracking.ManeuverLoss; |
| 9 | 8 | import com.sap.sailing.domain.tracking.MarkPassing; |
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | 10 | import com.sap.sse.common.TimePoint; |
| 11 | 11 | |
| 12 | 12 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/ManeuverWithStableSpeedAndCourseBoundariesImpl.java
| ... | ... | @@ -1,12 +1,12 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking.impl; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.common.ManeuverType; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 4 | import com.sap.sailing.domain.common.Tack; |
| 6 | 5 | import com.sap.sailing.domain.tracking.Maneuver; |
| 7 | 6 | import com.sap.sailing.domain.tracking.ManeuverCurveBoundaries; |
| 8 | 7 | import com.sap.sailing.domain.tracking.ManeuverLoss; |
| 9 | 8 | import com.sap.sailing.domain.tracking.MarkPassing; |
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | 10 | import com.sap.sse.common.TimePoint; |
| 11 | 11 | |
| 12 | 12 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/MarkPositionAtTimePointCacheImpl.java
| ... | ... | @@ -5,10 +5,10 @@ import java.util.Map; |
| 5 | 5 | |
| 6 | 6 | import com.sap.sailing.domain.base.Mark; |
| 7 | 7 | import com.sap.sailing.domain.base.Waypoint; |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | 8 | import com.sap.sailing.domain.tracking.TrackedLeg; |
| 10 | 9 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 11 | 10 | import com.sap.sse.common.Bearing; |
| 11 | +import com.sap.sse.common.Position; |
|
| 12 | 12 | import com.sap.sse.common.TimePoint; |
| 13 | 13 | |
| 14 | 14 | public class MarkPositionAtTimePointCacheImpl extends NonCachingMarkPositionAtTimePointCache { |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/NoCachingWindLegTypeAndLegBearingCache.java
| ... | ... | @@ -8,7 +8,6 @@ import com.sap.sailing.domain.base.Competitor; |
| 8 | 8 | import com.sap.sailing.domain.base.Waypoint; |
| 9 | 9 | import com.sap.sailing.domain.common.LegType; |
| 10 | 10 | import com.sap.sailing.domain.common.NoWindException; |
| 11 | -import com.sap.sailing.domain.common.Position; |
|
| 12 | 11 | import com.sap.sailing.domain.common.Wind; |
| 13 | 12 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveCourse; |
| 14 | 13 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveLeg; |
| ... | ... | @@ -19,6 +18,7 @@ import com.sap.sailing.domain.tracking.TrackedRace; |
| 19 | 18 | import com.sap.sailing.domain.tracking.WindLegTypeAndLegBearingAndORCPerformanceCurveCache; |
| 20 | 19 | import com.sap.sse.common.Bearing; |
| 21 | 20 | import com.sap.sse.common.Duration; |
| 21 | +import com.sap.sse.common.Position; |
|
| 22 | 22 | import com.sap.sse.common.Speed; |
| 23 | 23 | import com.sap.sse.common.TimePoint; |
| 24 | 24 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/NonCachingMarkPositionAtTimePointCache.java
| ... | ... | @@ -2,11 +2,11 @@ package com.sap.sailing.domain.tracking.impl; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.base.Mark; |
| 4 | 4 | import com.sap.sailing.domain.base.Waypoint; |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | 5 | import com.sap.sailing.domain.tracking.MarkPositionAtTimePointCache; |
| 7 | 6 | import com.sap.sailing.domain.tracking.TrackedLeg; |
| 8 | 7 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 9 | 8 | import com.sap.sse.common.Bearing; |
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | 10 | import com.sap.sse.common.TimePoint; |
| 11 | 11 | |
| 12 | 12 | public class NonCachingMarkPositionAtTimePointCache implements MarkPositionAtTimePointCache { |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/OutlierFilter.java
| ... | ... | @@ -3,17 +3,17 @@ package com.sap.sailing.domain.tracking.impl; |
| 3 | 3 | import java.util.Iterator; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.base.Competitor; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 8 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 9 | 6 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 10 | 7 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 11 | 8 | import com.sap.sailing.domain.tracking.DynamicGPSFixTrack; |
| 12 | 9 | import com.sap.sse.common.Bearing; |
| 13 | 10 | import com.sap.sse.common.Distance; |
| 14 | 11 | import com.sap.sse.common.Duration; |
| 12 | +import com.sap.sse.common.Position; |
|
| 13 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 15 | 14 | import com.sap.sse.common.TimePoint; |
| 16 | 15 | import com.sap.sse.common.Util.Pair; |
| 16 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 17 | 17 | |
| 18 | 18 | /** |
| 19 | 19 | * Can filter {@link DynamicGPSFixTrack} contents for fixes that seem inconsistent in their timing. The underlying |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/ShortTimeWindCache.java
| ... | ... | @@ -10,9 +10,9 @@ import java.util.concurrent.TimeUnit; |
| 10 | 10 | import java.util.logging.Level; |
| 11 | 11 | import java.util.logging.Logger; |
| 12 | 12 | |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | 13 | import com.sap.sailing.domain.common.WindSource; |
| 15 | 14 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 15 | +import com.sap.sse.common.Position; |
|
| 16 | 16 | import com.sap.sse.common.TimePoint; |
| 17 | 17 | import com.sap.sse.common.Util.Pair; |
| 18 | 18 | import com.sap.sse.common.Util.Triple; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/SpeedWithBearingStepImpl.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 4 | 3 | import com.sap.sailing.domain.tracking.SpeedWithBearingStep; |
| 4 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 5 | 5 | import com.sap.sse.common.TimePoint; |
| 6 | 6 | |
| 7 | 7 | /** |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/TrackBasedEstimationWindTrackImpl.java
| ... | ... | @@ -16,13 +16,10 @@ import java.util.concurrent.TimeUnit; |
| 16 | 16 | import com.sap.sailing.domain.base.Competitor; |
| 17 | 17 | import com.sap.sailing.domain.base.Mark; |
| 18 | 18 | import com.sap.sailing.domain.base.Waypoint; |
| 19 | -import com.sap.sailing.domain.common.Position; |
|
| 20 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 21 | 19 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 22 | 20 | import com.sap.sailing.domain.common.Wind; |
| 23 | 21 | import com.sap.sailing.domain.common.WindSource; |
| 24 | 22 | import com.sap.sailing.domain.common.WindSourceType; |
| 25 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 26 | 23 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 27 | 24 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 28 | 25 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -36,11 +33,14 @@ import com.sap.sailing.domain.tracking.TrackedRaceStatus; |
| 36 | 33 | import com.sap.sailing.domain.tracking.WindTrack; |
| 37 | 34 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 38 | 35 | import com.sap.sse.common.Duration; |
| 36 | +import com.sap.sse.common.Position; |
|
| 37 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 39 | 38 | import com.sap.sse.common.TimePoint; |
| 40 | 39 | import com.sap.sse.common.TimeRange; |
| 41 | 40 | import com.sap.sse.common.Util.Pair; |
| 42 | 41 | import com.sap.sse.common.impl.AbstractTimePoint; |
| 43 | 42 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 43 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 44 | 44 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 45 | 45 | import com.sap.sse.common.impl.SerializableComparator; |
| 46 | 46 | import com.sap.sse.concurrent.LockUtil; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/TrackedLegImpl.java
| ... | ... | @@ -29,13 +29,11 @@ import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 29 | 29 | import com.sap.sailing.domain.base.SpeedWithConfidence; |
| 30 | 30 | import com.sap.sailing.domain.common.LegType; |
| 31 | 31 | import com.sap.sailing.domain.common.NoWindException; |
| 32 | -import com.sap.sailing.domain.common.Position; |
|
| 33 | 32 | import com.sap.sailing.domain.common.Tack; |
| 34 | 33 | import com.sap.sailing.domain.common.TargetTimeInfo; |
| 35 | 34 | import com.sap.sailing.domain.common.Wind; |
| 36 | 35 | import com.sap.sailing.domain.common.WindSource; |
| 37 | 36 | import com.sap.sailing.domain.common.WindSourceType; |
| 38 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 39 | 37 | import com.sap.sailing.domain.common.impl.TargetTimeInfoImpl; |
| 40 | 38 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 41 | 39 | import com.sap.sailing.domain.confidence.ConfidenceBasedWindAverager; |
| ... | ... | @@ -53,11 +51,13 @@ import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 53 | 51 | import com.sap.sse.common.Bearing; |
| 54 | 52 | import com.sap.sse.common.Distance; |
| 55 | 53 | import com.sap.sse.common.Duration; |
| 54 | +import com.sap.sse.common.Position; |
|
| 56 | 55 | import com.sap.sse.common.Speed; |
| 57 | 56 | import com.sap.sse.common.TimePoint; |
| 58 | 57 | import com.sap.sse.common.Util; |
| 59 | 58 | import com.sap.sse.common.Util.Pair; |
| 60 | 59 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 60 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 61 | 61 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 62 | 62 | |
| 63 | 63 | public class TrackedLegImpl implements TrackedLeg { |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/TrackedLegOfCompetitorImpl.java
| ... | ... | @@ -13,11 +13,8 @@ import com.sap.sailing.domain.base.Waypoint; |
| 13 | 13 | import com.sap.sailing.domain.common.LegType; |
| 14 | 14 | import com.sap.sailing.domain.common.ManeuverType; |
| 15 | 15 | import com.sap.sailing.domain.common.NoWindException; |
| 16 | -import com.sap.sailing.domain.common.Position; |
|
| 17 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 18 | 16 | import com.sap.sailing.domain.common.Wind; |
| 19 | 17 | import com.sap.sailing.domain.common.TackType; |
| 20 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 21 | 18 | import com.sap.sailing.domain.common.tracking.BravoFix; |
| 22 | 19 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 23 | 20 | import com.sap.sailing.domain.leaderboard.caching.LeaderboardDTOCalculationReuseCache; |
| ... | ... | @@ -33,10 +30,13 @@ import com.sap.sailing.domain.tracking.WindPositionMode; |
| 33 | 30 | import com.sap.sse.common.Bearing; |
| 34 | 31 | import com.sap.sse.common.Distance; |
| 35 | 32 | import com.sap.sse.common.Duration; |
| 33 | +import com.sap.sse.common.Position; |
|
| 36 | 34 | import com.sap.sse.common.Speed; |
| 35 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 37 | 36 | import com.sap.sse.common.TimePoint; |
| 38 | 37 | import com.sap.sse.common.Util; |
| 39 | 38 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 39 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 40 | 40 | |
| 41 | 41 | /** |
| 42 | 42 | * Provides a convenient view on the tracked leg, projecting to a single competitor's performance. |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/TrackedRaceImpl.java
| ... | ... | @@ -87,12 +87,10 @@ import com.sap.sailing.domain.common.ManeuverType; |
| 87 | 87 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 88 | 88 | import com.sap.sailing.domain.common.NauticalSide; |
| 89 | 89 | import com.sap.sailing.domain.common.NoWindException; |
| 90 | -import com.sap.sailing.domain.common.Position; |
|
| 91 | 90 | import com.sap.sailing.domain.common.RaceTimesCalculationUtil; |
| 92 | 91 | import com.sap.sailing.domain.common.RankingMetrics; |
| 93 | 92 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 94 | 93 | import com.sap.sailing.domain.common.RegattaNameAndRaceName; |
| 95 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 96 | 94 | import com.sap.sailing.domain.common.Tack; |
| 97 | 95 | import com.sap.sailing.domain.common.TargetTimeInfo; |
| 98 | 96 | import com.sap.sailing.domain.common.TargetTimeInfo.LegTargetTimeInfo; |
| ... | ... | @@ -102,23 +100,13 @@ import com.sap.sailing.domain.common.Wind; |
| 102 | 100 | import com.sap.sailing.domain.common.WindSource; |
| 103 | 101 | import com.sap.sailing.domain.common.WindSourceType; |
| 104 | 102 | import com.sap.sailing.domain.common.abstractlog.TimePointSpecificationFoundInLog; |
| 105 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 106 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidenceCluster; |
|
| 107 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 108 | -import com.sap.sailing.domain.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 109 | -import com.sap.sailing.domain.common.confidence.impl.HyperbolicTimeDifferenceWeigher; |
|
| 110 | -import com.sap.sailing.domain.common.confidence.impl.PositionAndTimePointWeigher; |
|
| 111 | 103 | import com.sap.sailing.domain.common.confidence.impl.ScalableWind; |
| 112 | -import com.sap.sailing.domain.common.impl.CentralAngleDistance; |
|
| 113 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 114 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 115 | 104 | import com.sap.sailing.domain.common.impl.TargetTimeInfoImpl; |
| 116 | 105 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 117 | 106 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 118 | 107 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 119 | 108 | import com.sap.sailing.domain.common.racelog.RaceLogRaceStatus; |
| 120 | 109 | import com.sap.sailing.domain.common.racelog.RacingProcedureType; |
| 121 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalablePosition; |
|
| 122 | 110 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 123 | 111 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 124 | 112 | import com.sap.sailing.domain.common.tracking.SensorFix; |
| ... | ... | @@ -176,15 +164,27 @@ import com.sap.sse.common.Bearing; |
| 176 | 164 | import com.sap.sse.common.Distance; |
| 177 | 165 | import com.sap.sse.common.Duration; |
| 178 | 166 | import com.sap.sse.common.IsManagedByCache; |
| 167 | +import com.sap.sse.common.Position; |
|
| 179 | 168 | import com.sap.sse.common.Speed; |
| 169 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 180 | 170 | import com.sap.sse.common.TimePoint; |
| 181 | 171 | import com.sap.sse.common.TimeRange; |
| 182 | 172 | import com.sap.sse.common.Timed; |
| 183 | 173 | import com.sap.sse.common.Util; |
| 184 | 174 | import com.sap.sse.common.Util.Pair; |
| 175 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 176 | +import com.sap.sse.common.confidence.BearingWithConfidenceCluster; |
|
| 177 | +import com.sap.sse.common.confidence.HasConfidence; |
|
| 178 | +import com.sap.sse.common.confidence.Weigher; |
|
| 179 | +import com.sap.sse.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 180 | +import com.sap.sse.common.confidence.impl.HyperbolicTimeDifferenceWeigher; |
|
| 181 | +import com.sap.sse.common.confidence.impl.PositionAndTimePointWeigher; |
|
| 182 | +import com.sap.sse.common.impl.CentralAngleDistance; |
|
| 185 | 183 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 184 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 185 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 186 | 186 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 187 | -import com.sap.sse.common.scalablevalue.HasConfidence; |
|
| 187 | +import com.sap.sse.common.scalablevalue.impl.ScalablePosition; |
|
| 188 | 188 | import com.sap.sse.concurrent.LockUtil; |
| 189 | 189 | import com.sap.sse.concurrent.NamedReentrantReadWriteLock; |
| 190 | 190 | import com.sap.sse.shared.util.impl.ApproximateTime; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/VirtualWindFixesAsNavigableSet.java
| ... | ... | @@ -5,11 +5,11 @@ import java.util.Iterator; |
| 5 | 5 | import java.util.NavigableSet; |
| 6 | 6 | import java.util.SortedSet; |
| 7 | 7 | |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | 8 | import com.sap.sailing.domain.common.Wind; |
| 10 | 9 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 11 | 10 | import com.sap.sailing.domain.tracking.WindTrack; |
| 12 | 11 | import com.sap.sailing.domain.tracking.impl.WindTrackImpl.DummyWind; |
| 12 | +import com.sap.sse.common.Position; |
|
| 13 | 13 | import com.sap.sse.common.TimePoint; |
| 14 | 14 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 15 | 15 | import com.sap.sse.shared.util.impl.AbstractUnmodifiableNavigableSet; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/VirtualWindTrackImpl.java
| ... | ... | @@ -2,11 +2,11 @@ package com.sap.sailing.domain.tracking.impl; |
| 2 | 2 | |
| 3 | 3 | import java.util.NavigableSet; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | 5 | import com.sap.sailing.domain.common.Wind; |
| 7 | 6 | import com.sap.sailing.domain.shared.tracking.impl.PartialNavigableSetView; |
| 8 | 7 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 9 | 8 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | 10 | import com.sap.sse.common.TimePoint; |
| 11 | 11 | import com.sap.sse.common.Util; |
| 12 | 12 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/WindTrackImpl.java
| ... | ... | @@ -11,12 +11,7 @@ import java.util.Set; |
| 11 | 11 | import java.util.logging.Level; |
| 12 | 12 | import java.util.logging.Logger; |
| 13 | 13 | |
| 14 | -import com.sap.sailing.domain.common.CourseChange; |
|
| 15 | -import com.sap.sailing.domain.common.Position; |
|
| 16 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 17 | 14 | import com.sap.sailing.domain.common.Wind; |
| 18 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 19 | -import com.sap.sailing.domain.common.confidence.impl.PositionAndTimePointWeigher; |
|
| 20 | 15 | import com.sap.sailing.domain.common.tracking.impl.CompactPositionHelper; |
| 21 | 16 | import com.sap.sailing.domain.common.tracking.impl.CompactionNotPossibleException; |
| 22 | 17 | import com.sap.sailing.domain.common.tracking.impl.PreciseCompactWindImpl; |
| ... | ... | @@ -28,13 +23,18 @@ import com.sap.sailing.domain.tracking.WindListener; |
| 28 | 23 | import com.sap.sailing.domain.tracking.WindTrack; |
| 29 | 24 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 30 | 25 | import com.sap.sse.common.Bearing; |
| 26 | +import com.sap.sse.common.CourseChange; |
|
| 31 | 27 | import com.sap.sse.common.Distance; |
| 32 | 28 | import com.sap.sse.common.Duration; |
| 29 | +import com.sap.sse.common.Position; |
|
| 33 | 30 | import com.sap.sse.common.Speed; |
| 31 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 34 | 32 | import com.sap.sse.common.TimePoint; |
| 35 | 33 | import com.sap.sse.common.Timed; |
| 36 | 34 | import com.sap.sse.common.Util; |
| 37 | 35 | import com.sap.sse.common.Util.Pair; |
| 36 | +import com.sap.sse.common.confidence.Weigher; |
|
| 37 | +import com.sap.sse.common.confidence.impl.PositionAndTimePointWeigher; |
|
| 38 | 38 | import com.sap.sse.common.util.MappingIterator; |
| 39 | 39 | import com.sap.sse.shared.util.impl.ArrayListNavigableSet; |
| 40 | 40 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/impl/WindWithConfidenceImpl.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.domain.tracking.impl; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.common.Wind; |
| 4 | -import com.sap.sailing.domain.common.confidence.impl.HasConfidenceImpl; |
|
| 5 | 4 | import com.sap.sailing.domain.common.confidence.impl.ScalableWind; |
| 6 | 5 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 6 | +import com.sap.sse.common.confidence.impl.HasConfidenceImpl; |
|
| 7 | 7 | |
| 8 | 8 | public class WindWithConfidenceImpl<RelativeTo> extends HasConfidenceImpl<ScalableWind, Wind, RelativeTo> implements WindWithConfidence<RelativeTo> { |
| 9 | 9 | private static final long serialVersionUID = -644015582690775666L; |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/windestimation/TimePointAndPositionWithToleranceComparator.java
| ... | ... | @@ -3,7 +3,7 @@ package com.sap.sailing.domain.windestimation; |
| 3 | 3 | import java.io.Serializable; |
| 4 | 4 | import java.util.Comparator; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | 8 | import com.sap.sse.common.Util.Pair; |
| 9 | 9 |
java/com.sap.sailing.domain/src/com/sap/sailing/domain/windestimation/WindTrackWithConfidenceForEachWindFixImpl.java
| ... | ... | @@ -2,10 +2,10 @@ package com.sap.sailing.domain.windestimation; |
| 2 | 2 | |
| 3 | 3 | import java.util.Map; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | 5 | import com.sap.sailing.domain.common.Wind; |
| 7 | 6 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 8 | 7 | import com.sap.sailing.domain.tracking.impl.WindTrackImpl; |
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | 9 | import com.sap.sse.common.TimePoint; |
| 10 | 10 | import com.sap.sse.common.Util.Pair; |
| 11 | 11 |
java/com.sap.sailing.domain/src/com/sap/sailing/util/RegattaUtil.java
| ... | ... | @@ -2,8 +2,8 @@ package com.sap.sailing.util; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.base.BoatClass; |
| 4 | 4 | import com.sap.sailing.domain.base.Regatta; |
| 5 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 6 | 5 | import com.sap.sse.common.Distance; |
| 6 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 7 | 7 | |
| 8 | 8 | public class RegattaUtil { |
| 9 | 9 |
java/com.sap.sailing.expeditionconnector.test/src/com/sap/sailing/expeditionconnector/test/UDPExpeditionReceiverTest.java
| ... | ... | @@ -40,11 +40,9 @@ import org.junit.jupiter.api.Timeout; |
| 40 | 40 | import com.sap.sailing.declination.Declination; |
| 41 | 41 | import com.sap.sailing.declination.DeclinationService; |
| 42 | 42 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 43 | -import com.sap.sailing.domain.common.Position; |
|
| 44 | 43 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 45 | 44 | import com.sap.sailing.domain.common.Wind; |
| 46 | 45 | import com.sap.sailing.domain.common.WindSource; |
| 47 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 48 | 46 | import com.sap.sailing.domain.common.tracking.BravoExtendedFix; |
| 49 | 47 | import com.sap.sailing.domain.common.tracking.DoubleVectorFix; |
| 50 | 48 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| ... | ... | @@ -65,12 +63,14 @@ import com.sap.sailing.expeditionconnector.persistence.ExpeditionGpsDeviceIdenti |
| 65 | 63 | import com.sap.sailing.expeditionconnector.persistence.ExpeditionSensorDeviceIdentifierImpl; |
| 66 | 64 | import com.sap.sse.common.Duration; |
| 67 | 65 | import com.sap.sse.common.NoCorrespondingServiceRegisteredException; |
| 66 | +import com.sap.sse.common.Position; |
|
| 68 | 67 | import com.sap.sse.common.TimePoint; |
| 69 | 68 | import com.sap.sse.common.TimeRange; |
| 70 | 69 | import com.sap.sse.common.Timed; |
| 71 | 70 | import com.sap.sse.common.TransformationException; |
| 72 | 71 | import com.sap.sse.common.Util; |
| 73 | 72 | import com.sap.sse.common.Util.Triple; |
| 73 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 74 | 74 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 75 | 75 | |
| 76 | 76 | @Timeout(value=60, unit=TimeUnit.SECONDS) |
java/com.sap.sailing.expeditionconnector/src/com/sap/sailing/expeditionconnector/ExpeditionMessage.java
| ... | ... | @@ -2,11 +2,11 @@ package com.sap.sailing.expeditionconnector; |
| 2 | 2 | |
| 3 | 3 | import java.util.Set; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 6 | 5 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 7 | 6 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 8 | 7 | import com.sap.sailing.udpconnector.UDPMessage; |
| 9 | 8 | import com.sap.sse.common.Bearing; |
| 9 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 10 | 10 | import com.sap.sse.common.TimePoint; |
| 11 | 11 | |
| 12 | 12 | public interface ExpeditionMessage extends UDPMessage { |
java/com.sap.sailing.expeditionconnector/src/com/sap/sailing/expeditionconnector/ExpeditionWindTracker.java
| ... | ... | @@ -7,17 +7,17 @@ import java.util.logging.Logger; |
| 7 | 7 | |
| 8 | 8 | import com.sap.sailing.declination.Declination; |
| 9 | 9 | import com.sap.sailing.declination.DeclinationService; |
| 10 | -import com.sap.sailing.domain.common.Position; |
|
| 11 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 12 | 10 | import com.sap.sailing.domain.common.Wind; |
| 13 | 11 | import com.sap.sailing.domain.common.WindSourceType; |
| 14 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 15 | 12 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 16 | 13 | import com.sap.sailing.domain.common.impl.WindSourceWithAdditionalID; |
| 17 | 14 | import com.sap.sailing.domain.tracking.AbstractWindTracker; |
| 18 | 15 | import com.sap.sailing.domain.tracking.DynamicTrackedRace; |
| 19 | 16 | import com.sap.sailing.domain.tracking.WindTracker; |
| 17 | +import com.sap.sse.common.Position; |
|
| 18 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 20 | 19 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 20 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 21 | 21 | |
| 22 | 22 | /** |
| 23 | 23 | * Can be subscribed to a {@link UDPExpeditionReceiver} and forwards wind information |
java/com.sap.sailing.expeditionconnector/src/com/sap/sailing/expeditionconnector/impl/ExpeditionMessageImpl.java
| ... | ... | @@ -14,17 +14,17 @@ import java.util.logging.Level; |
| 14 | 14 | import java.util.logging.Logger; |
| 15 | 15 | |
| 16 | 16 | import com.sap.sailing.declination.DeclinationService; |
| 17 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 18 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 19 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 20 | 17 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 21 | 18 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 22 | 19 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 23 | 20 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 24 | 21 | import com.sap.sailing.expeditionconnector.ExpeditionMessage; |
| 25 | 22 | import com.sap.sse.common.Bearing; |
| 23 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 26 | 24 | import com.sap.sse.common.TimePoint; |
| 27 | 25 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 26 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 27 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 28 | 28 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 29 | 29 | |
| 30 | 30 | public class ExpeditionMessageImpl implements ExpeditionMessage { |
java/com.sap.sailing.geocoding.test/src/com/sap/sailing/geocoding/test/PlacemarkTest.java
| ... | ... | @@ -4,8 +4,8 @@ import org.junit.jupiter.api.Assertions; |
| 4 | 4 | import org.junit.jupiter.api.Test; |
| 5 | 5 | |
| 6 | 6 | import com.sap.sailing.domain.common.Placemark; |
| 7 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 8 | 7 | import com.sap.sailing.domain.common.impl.PlacemarkImpl; |
| 8 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 9 | 9 | |
| 10 | 10 | public class PlacemarkTest { |
| 11 | 11 | @Test |
java/com.sap.sailing.geocoding.test/src/com/sap/sailing/geocoding/test/ReverseGeocoderTest.java
| ... | ... | @@ -13,11 +13,11 @@ import org.junit.jupiter.api.BeforeEach; |
| 13 | 13 | import org.junit.jupiter.api.Test; |
| 14 | 14 | |
| 15 | 15 | import com.sap.sailing.domain.common.Placemark; |
| 16 | -import com.sap.sailing.domain.common.Position; |
|
| 17 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 18 | 16 | import com.sap.sailing.domain.common.impl.PlacemarkImpl; |
| 19 | 17 | import com.sap.sailing.geocoding.ReverseGeocoder; |
| 20 | 18 | import com.sap.sailing.geocoding.impl.ReverseGeocoderImpl; |
| 19 | +import com.sap.sse.common.Position; |
|
| 20 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 21 | 21 | |
| 22 | 22 | public class ReverseGeocoderTest { |
| 23 | 23 | private ReverseGeocoder geocoder; |
java/com.sap.sailing.geocoding.test/src/com/sap/sailing/geocoding/test/TimeZoneByPositionTest.java
| ... | ... | @@ -12,9 +12,9 @@ import java.util.TimeZone; |
| 12 | 12 | import org.json.simple.parser.ParseException; |
| 13 | 13 | import org.junit.jupiter.api.Test; |
| 14 | 14 | |
| 15 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 16 | 15 | import com.sap.sailing.geocoding.impl.ReverseGeocoderImpl; |
| 17 | 16 | import com.sap.sse.common.TimePoint; |
| 17 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 18 | 18 | |
| 19 | 19 | public class TimeZoneByPositionTest { |
| 20 | 20 | @Test |
java/com.sap.sailing.geocoding/src/com/sap/sailing/geocoding/ReverseGeocoder.java
| ... | ... | @@ -9,8 +9,8 @@ import java.util.TimeZone; |
| 9 | 9 | import org.json.simple.parser.ParseException; |
| 10 | 10 | |
| 11 | 11 | import com.sap.sailing.domain.common.Placemark; |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | 12 | import com.sap.sailing.geocoding.impl.ReverseGeocoderImpl; |
| 13 | +import com.sap.sse.common.Position; |
|
| 14 | 14 | import com.sap.sse.common.TimePoint; |
| 15 | 15 | |
| 16 | 16 | public interface ReverseGeocoder { |
java/com.sap.sailing.geocoding/src/com/sap/sailing/geocoding/impl/ReverseGeocoderImpl.java
| ... | ... | @@ -26,14 +26,14 @@ import org.json.simple.parser.JSONParser; |
| 26 | 26 | import org.json.simple.parser.ParseException; |
| 27 | 27 | |
| 28 | 28 | import com.sap.sailing.domain.common.Placemark; |
| 29 | -import com.sap.sailing.domain.common.Position; |
|
| 30 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 31 | 29 | import com.sap.sailing.domain.common.impl.PlacemarkImpl; |
| 32 | 30 | import com.sap.sailing.domain.common.quadtree.QuadTree; |
| 33 | 31 | import com.sap.sailing.geocoding.ReverseGeocoder; |
| 34 | 32 | import com.sap.sse.common.Duration; |
| 33 | +import com.sap.sse.common.Position; |
|
| 35 | 34 | import com.sap.sse.common.TimePoint; |
| 36 | 35 | import com.sap.sse.common.Util; |
| 36 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 37 | 37 | import com.sap.sse.util.HttpUrlConnectionHelper; |
| 38 | 38 | |
| 39 | 39 | public class ReverseGeocoderImpl implements ReverseGeocoder { |
java/com.sap.sailing.grib.test/src/com/sap/sailing/grib/test/Bzip2GridFileReadingTest.java
| ... | ... | @@ -9,8 +9,8 @@ import org.junit.jupiter.api.AfterEach; |
| 9 | 9 | import org.junit.jupiter.api.BeforeEach; |
| 10 | 10 | import org.junit.jupiter.api.Test; |
| 11 | 11 | |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 12 | +import com.sap.sse.common.Position; |
|
| 13 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 14 | 14 | |
| 15 | 15 | import ucar.ma2.ArrayFloat.D3; |
| 16 | 16 | import ucar.nc2.VariableSimpleIF; |
java/com.sap.sailing.grib.test/src/com/sap/sailing/grib/test/SimpleGridFileReadingTest.java
| ... | ... | @@ -17,13 +17,13 @@ import java.util.TimeZone; |
| 17 | 17 | |
| 18 | 18 | import org.junit.jupiter.api.Test; |
| 19 | 19 | |
| 20 | -import com.sap.sailing.domain.common.Bounds; |
|
| 21 | -import com.sap.sailing.domain.common.Position; |
|
| 22 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 23 | 20 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 24 | 21 | import com.sap.sailing.grib.GribWindField; |
| 25 | 22 | import com.sap.sailing.grib.GribWindFieldFactory; |
| 23 | +import com.sap.sse.common.Bounds; |
|
| 24 | +import com.sap.sse.common.Position; |
|
| 26 | 25 | import com.sap.sse.common.TimePoint; |
| 26 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 27 | 27 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 28 | 28 | |
| 29 | 29 | import ucar.ma2.ArrayFloat.D2; |
java/com.sap.sailing.grib/src/com/sap/sailing/grib/GribWindField.java
| ... | ... | @@ -2,10 +2,10 @@ package com.sap.sailing.grib; |
| 2 | 2 | |
| 3 | 3 | import java.io.IOException; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Bounds; |
|
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 5 | import com.sap.sailing.domain.common.Wind; |
| 8 | 6 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 7 | +import com.sap.sse.common.Bounds; |
|
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | 9 | import com.sap.sse.common.TimePoint; |
| 10 | 10 | import com.sap.sse.common.TimeRange; |
| 11 | 11 |
java/com.sap.sailing.grib/src/com/sap/sailing/grib/impl/AbstractGribWindFieldImpl.java
| ... | ... | @@ -8,18 +8,18 @@ import java.util.List; |
| 8 | 8 | import java.util.Optional; |
| 9 | 9 | import java.util.stream.StreamSupport; |
| 10 | 10 | |
| 11 | -import com.sap.sailing.domain.common.Bounds; |
|
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 14 | -import com.sap.sailing.domain.common.impl.BoundsImpl; |
|
| 15 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 16 | 11 | import com.sap.sailing.domain.confidence.ConfidenceFactory; |
| 17 | 12 | import com.sap.sailing.grib.GribWindField; |
| 13 | +import com.sap.sse.common.Bounds; |
|
| 18 | 14 | import com.sap.sse.common.Duration; |
| 15 | +import com.sap.sse.common.Position; |
|
| 19 | 16 | import com.sap.sse.common.TimePoint; |
| 20 | 17 | import com.sap.sse.common.TimeRange; |
| 21 | 18 | import com.sap.sse.common.Util.Pair; |
| 22 | 19 | import com.sap.sse.common.Util.Triple; |
| 20 | +import com.sap.sse.common.confidence.Weigher; |
|
| 21 | +import com.sap.sse.common.impl.BoundsImpl; |
|
| 22 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 23 | 23 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 24 | 24 | import com.sap.sse.common.impl.TimeRangeImpl; |
| 25 | 25 |
java/com.sap.sailing.grib/src/com/sap/sailing/grib/impl/SpeedAndDirectionWindField.java
| ... | ... | @@ -9,15 +9,15 @@ import java.util.Map; |
| 9 | 9 | import java.util.logging.Level; |
| 10 | 10 | import java.util.logging.Logger; |
| 11 | 11 | |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | 12 | import com.sap.sailing.domain.common.Wind; |
| 14 | -import com.sap.sailing.domain.common.impl.MeterPerSecondSpeedWithDegreeBearingImpl; |
|
| 15 | 13 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 16 | 14 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 17 | 15 | import com.sap.sailing.domain.tracking.impl.WindWithConfidenceImpl; |
| 16 | +import com.sap.sse.common.Position; |
|
| 18 | 17 | import com.sap.sse.common.TimePoint; |
| 19 | 18 | import com.sap.sse.common.Util.Triple; |
| 20 | 19 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 20 | +import com.sap.sse.common.impl.MeterPerSecondSpeedWithDegreeBearingImpl; |
|
| 21 | 21 | |
| 22 | 22 | import ucar.ma2.Array; |
| 23 | 23 | import ucar.ma2.Index; |
java/com.sap.sailing.grib/src/com/sap/sailing/grib/impl/UVWindField.java
| ... | ... | @@ -10,15 +10,15 @@ import java.util.Map; |
| 10 | 10 | import java.util.logging.Level; |
| 11 | 11 | import java.util.logging.Logger; |
| 12 | 12 | |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | 13 | import com.sap.sailing.domain.common.Wind; |
| 15 | -import com.sap.sailing.domain.common.impl.MeterPerSecondSpeedWithDegreeBearingImpl; |
|
| 16 | -import com.sap.sailing.domain.common.impl.RadianBearingImpl; |
|
| 17 | 14 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 18 | 15 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 19 | 16 | import com.sap.sailing.domain.tracking.impl.WindWithConfidenceImpl; |
| 17 | +import com.sap.sse.common.Position; |
|
| 20 | 18 | import com.sap.sse.common.TimePoint; |
| 21 | 19 | import com.sap.sse.common.Util.Triple; |
| 20 | +import com.sap.sse.common.impl.MeterPerSecondSpeedWithDegreeBearingImpl; |
|
| 21 | +import com.sap.sse.common.impl.RadianBearingImpl; |
|
| 22 | 22 | |
| 23 | 23 | import ucar.ma2.Array; |
| 24 | 24 | import ucar.ma2.Index; |
java/com.sap.sailing.gwt.ui/META-INF/MANIFEST.MF
| ... | ... | @@ -98,13 +98,13 @@ Bundle-ClassPath: WEB-INF/classes/ |
| 98 | 98 | TrackLifecycle: true |
| 99 | 99 | Export-Package: com.google.gwt.user.client.rpc.core.com.sap.sailing.datamining.shared, |
| 100 | 100 | com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common, |
| 101 | - com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.confidence.impl, |
|
| 102 | 101 | com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.dto, |
| 103 | 102 | com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.impl, |
| 104 | 103 | com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.tracking.impl, |
| 105 | 104 | com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.windfinder, |
| 106 | 105 | com.google.gwt.user.client.rpc.core.com.sap.sailing.expeditionconnector, |
| 107 | 106 | com.google.gwt.user.client.rpc.core.com.sap.sse.common.impl, |
| 107 | + com.google.gwt.user.client.rpc.core.com.sap.sse.common.confidence.impl, |
|
| 108 | 108 | com.google.gwt.user.client.rpc.core.com.sap.sse.datamining.shared.impl, |
| 109 | 109 | com.google.gwt.user.client.rpc.core.com.sap.sse.datamining.shared.impl.dto, |
| 110 | 110 | com.google.gwt.user.client.rpc.core.com.sap.sse.security.shared, |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/confidence/impl/LazyDividedScaledPosition_CustomFieldSerializer.java
| ... | ... | @@ -1,54 +0,0 @@ |
| 1 | -package com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.confidence.impl; |
|
| 2 | - |
|
| 3 | -import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | -import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | -import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | -import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | -import com.sap.sailing.domain.common.confidence.impl.LazyDividedScaledPosition; |
|
| 9 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 10 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalablePosition; |
|
| 11 | - |
|
| 12 | -public final class LazyDividedScaledPosition_CustomFieldSerializer extends |
|
| 13 | - CustomFieldSerializer<com.sap.sailing.domain.common.confidence.impl.LazyDividedScaledPosition> { |
|
| 14 | - public static void deserialize(SerializationStreamReader streamReader, LazyDividedScaledPosition instance) |
|
| 15 | - throws SerializationException { |
|
| 16 | - } |
|
| 17 | - |
|
| 18 | - @Override |
|
| 19 | - public void deserializeInstance(SerializationStreamReader streamReader, LazyDividedScaledPosition instance) |
|
| 20 | - throws SerializationException { |
|
| 21 | - deserialize(streamReader, instance); |
|
| 22 | - } |
|
| 23 | - |
|
| 24 | - @Override |
|
| 25 | - public void serializeInstance(SerializationStreamWriter streamWriter, LazyDividedScaledPosition instance) |
|
| 26 | - throws SerializationException { |
|
| 27 | - serialize(streamWriter, instance); |
|
| 28 | - } |
|
| 29 | - |
|
| 30 | - public static void serialize(SerializationStreamWriter streamWriter, LazyDividedScaledPosition instance) |
|
| 31 | - throws SerializationException { |
|
| 32 | - streamWriter.writeDouble(instance.getLatDeg()); |
|
| 33 | - streamWriter.writeDouble(instance.getLngDeg()); |
|
| 34 | - } |
|
| 35 | - |
|
| 36 | - @Override |
|
| 37 | - public boolean hasCustomInstantiateInstance() { |
|
| 38 | - return true; |
|
| 39 | - } |
|
| 40 | - |
|
| 41 | - @Override |
|
| 42 | - public LazyDividedScaledPosition instantiateInstance(SerializationStreamReader streamReader) |
|
| 43 | - throws SerializationException { |
|
| 44 | - return instantiate(streamReader); |
|
| 45 | - } |
|
| 46 | - |
|
| 47 | - public static LazyDividedScaledPosition instantiate(SerializationStreamReader streamReader) throws SerializationException { |
|
| 48 | - final double latDeg = streamReader.readDouble(); |
|
| 49 | - final double lngDeg = streamReader.readDouble(); |
|
| 50 | - Position position = new DegreePosition(latDeg, lngDeg); |
|
| 51 | - ScalablePosition scalablePosition = new ScalablePosition(position); |
|
| 52 | - return new LazyDividedScaledPosition(scalablePosition, 1); |
|
| 53 | - } |
|
| 54 | -} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/impl/CentralAngleDistance_CustomFieldSerializer.java
| ... | ... | @@ -1,48 +0,0 @@ |
| 1 | -package com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | -import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | -import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | -import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | -import com.sap.sailing.domain.common.impl.CentralAngleDistance; |
|
| 8 | - |
|
| 9 | -public class CentralAngleDistance_CustomFieldSerializer extends CustomFieldSerializer<CentralAngleDistance> { |
|
| 10 | - |
|
| 11 | - @Override |
|
| 12 | - public void serializeInstance(SerializationStreamWriter streamWriter, CentralAngleDistance instance) |
|
| 13 | - throws SerializationException { |
|
| 14 | - serialize(streamWriter, instance); |
|
| 15 | - } |
|
| 16 | - |
|
| 17 | - public static void serialize(SerializationStreamWriter streamWriter, CentralAngleDistance instance) |
|
| 18 | - throws SerializationException { |
|
| 19 | - streamWriter.writeDouble(instance.getCentralAngleRad()); |
|
| 20 | - } |
|
| 21 | - |
|
| 22 | - @Override |
|
| 23 | - public boolean hasCustomInstantiateInstance() { |
|
| 24 | - return true; |
|
| 25 | - } |
|
| 26 | - |
|
| 27 | - @Override |
|
| 28 | - public CentralAngleDistance instantiateInstance(SerializationStreamReader streamReader) |
|
| 29 | - throws SerializationException { |
|
| 30 | - return instantiate(streamReader); |
|
| 31 | - } |
|
| 32 | - |
|
| 33 | - public static CentralAngleDistance instantiate(SerializationStreamReader streamReader) |
|
| 34 | - throws SerializationException { |
|
| 35 | - return new CentralAngleDistance(streamReader.readDouble()); |
|
| 36 | - } |
|
| 37 | - |
|
| 38 | - @Override |
|
| 39 | - public void deserializeInstance(SerializationStreamReader streamReader, CentralAngleDistance instance) |
|
| 40 | - throws SerializationException { |
|
| 41 | - deserialize(streamReader, instance); |
|
| 42 | - } |
|
| 43 | - |
|
| 44 | - public static void deserialize(SerializationStreamReader streamReader, CentralAngleDistance instance) { |
|
| 45 | - // Done by instantiateInstance |
|
| 46 | - } |
|
| 47 | - |
|
| 48 | -} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/impl/DegreePosition_CustomFieldSerializer.java
| ... | ... | @@ -1,47 +0,0 @@ |
| 1 | -package com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | -import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | -import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | -import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 8 | - |
|
| 9 | -public class DegreePosition_CustomFieldSerializer extends CustomFieldSerializer<DegreePosition> { |
|
| 10 | - @Override |
|
| 11 | - public boolean hasCustomInstantiateInstance() { |
|
| 12 | - return true; |
|
| 13 | - } |
|
| 14 | - |
|
| 15 | - @Override |
|
| 16 | - public DegreePosition instantiateInstance(SerializationStreamReader streamReader) throws SerializationException { |
|
| 17 | - return instantiate(streamReader); |
|
| 18 | - } |
|
| 19 | - |
|
| 20 | - public static DegreePosition instantiate(SerializationStreamReader streamReader) throws SerializationException { |
|
| 21 | - return new DegreePosition(streamReader.readDouble(), streamReader.readDouble()); |
|
| 22 | - } |
|
| 23 | - |
|
| 24 | - public static void deserialize(SerializationStreamReader streamReader, DegreePosition instance) |
|
| 25 | - throws SerializationException { |
|
| 26 | - // handled by instantiateInstance |
|
| 27 | - } |
|
| 28 | - |
|
| 29 | - @Override |
|
| 30 | - public void deserializeInstance(SerializationStreamReader streamReader, DegreePosition instance) |
|
| 31 | - throws SerializationException { |
|
| 32 | - deserialize(streamReader, instance); |
|
| 33 | - } |
|
| 34 | - |
|
| 35 | - @Override |
|
| 36 | - public void serializeInstance(SerializationStreamWriter streamWriter, DegreePosition instance) |
|
| 37 | - throws SerializationException { |
|
| 38 | - serialize(streamWriter, instance); |
|
| 39 | - } |
|
| 40 | - |
|
| 41 | - public static void serialize(SerializationStreamWriter streamWriter, DegreePosition instance) |
|
| 42 | - throws SerializationException { |
|
| 43 | - streamWriter.writeDouble(instance.getLatDeg()); |
|
| 44 | - streamWriter.writeDouble(instance.getLngDeg()); |
|
| 45 | - } |
|
| 46 | - |
|
| 47 | -} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/impl/KilometersPerHourSpeedImpl_CustomFieldSerializer.java
| ... | ... | @@ -1,48 +0,0 @@ |
| 1 | -package com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | -import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | -import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | -import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 8 | - |
|
| 9 | -public class KilometersPerHourSpeedImpl_CustomFieldSerializer extends CustomFieldSerializer<KilometersPerHourSpeedImpl> { |
|
| 10 | - |
|
| 11 | - @Override |
|
| 12 | - public void serializeInstance(SerializationStreamWriter streamWriter, KilometersPerHourSpeedImpl instance) |
|
| 13 | - throws SerializationException { |
|
| 14 | - serialize(streamWriter, instance); |
|
| 15 | - } |
|
| 16 | - |
|
| 17 | - public static void serialize(SerializationStreamWriter streamWriter, KilometersPerHourSpeedImpl instance) |
|
| 18 | - throws SerializationException { |
|
| 19 | - streamWriter.writeDouble(instance.getKilometersPerHour()); |
|
| 20 | - } |
|
| 21 | - |
|
| 22 | - @Override |
|
| 23 | - public boolean hasCustomInstantiateInstance() { |
|
| 24 | - return true; |
|
| 25 | - } |
|
| 26 | - |
|
| 27 | - @Override |
|
| 28 | - public KilometersPerHourSpeedImpl instantiateInstance(SerializationStreamReader streamReader) |
|
| 29 | - throws SerializationException { |
|
| 30 | - return instantiate(streamReader); |
|
| 31 | - } |
|
| 32 | - |
|
| 33 | - public static KilometersPerHourSpeedImpl instantiate(SerializationStreamReader streamReader) |
|
| 34 | - throws SerializationException { |
|
| 35 | - return new KilometersPerHourSpeedImpl(streamReader.readDouble()); |
|
| 36 | - } |
|
| 37 | - |
|
| 38 | - @Override |
|
| 39 | - public void deserializeInstance(SerializationStreamReader streamReader, KilometersPerHourSpeedImpl instance) |
|
| 40 | - throws SerializationException { |
|
| 41 | - deserialize(streamReader, instance); |
|
| 42 | - } |
|
| 43 | - |
|
| 44 | - public static void deserialize(SerializationStreamReader streamReader, KilometersPerHourSpeedImpl instance) { |
|
| 45 | - // Done by instantiateInstance |
|
| 46 | - } |
|
| 47 | - |
|
| 48 | -} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/impl/KnotSpeedImpl_CustomFieldSerializer.java
| ... | ... | @@ -1,48 +0,0 @@ |
| 1 | -package com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | -import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | -import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | -import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 8 | - |
|
| 9 | -public class KnotSpeedImpl_CustomFieldSerializer extends CustomFieldSerializer<KnotSpeedImpl> { |
|
| 10 | - |
|
| 11 | - @Override |
|
| 12 | - public void serializeInstance(SerializationStreamWriter streamWriter, KnotSpeedImpl instance) |
|
| 13 | - throws SerializationException { |
|
| 14 | - serialize(streamWriter, instance); |
|
| 15 | - } |
|
| 16 | - |
|
| 17 | - public static void serialize(SerializationStreamWriter streamWriter, KnotSpeedImpl instance) |
|
| 18 | - throws SerializationException { |
|
| 19 | - streamWriter.writeDouble(instance.getKnots()); |
|
| 20 | - } |
|
| 21 | - |
|
| 22 | - @Override |
|
| 23 | - public boolean hasCustomInstantiateInstance() { |
|
| 24 | - return true; |
|
| 25 | - } |
|
| 26 | - |
|
| 27 | - @Override |
|
| 28 | - public KnotSpeedImpl instantiateInstance(SerializationStreamReader streamReader) |
|
| 29 | - throws SerializationException { |
|
| 30 | - return instantiate(streamReader); |
|
| 31 | - } |
|
| 32 | - |
|
| 33 | - public static KnotSpeedImpl instantiate(SerializationStreamReader streamReader) |
|
| 34 | - throws SerializationException { |
|
| 35 | - return new KnotSpeedImpl(streamReader.readDouble()); |
|
| 36 | - } |
|
| 37 | - |
|
| 38 | - @Override |
|
| 39 | - public void deserializeInstance(SerializationStreamReader streamReader, KnotSpeedImpl instance) |
|
| 40 | - throws SerializationException { |
|
| 41 | - deserialize(streamReader, instance); |
|
| 42 | - } |
|
| 43 | - |
|
| 44 | - public static void deserialize(SerializationStreamReader streamReader, KnotSpeedImpl instance) { |
|
| 45 | - // Done by instantiateInstance |
|
| 46 | - } |
|
| 47 | - |
|
| 48 | -} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/impl/KnotSpeedWithBearingImpl_CustomFieldSerializer.java
| ... | ... | @@ -1,50 +0,0 @@ |
| 1 | -package com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | -import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | -import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | -import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 8 | -import com.sap.sse.common.impl.DegreeBearingImpl; |
|
| 9 | - |
|
| 10 | -public class KnotSpeedWithBearingImpl_CustomFieldSerializer extends CustomFieldSerializer<KnotSpeedWithBearingImpl> { |
|
| 11 | - |
|
| 12 | - @Override |
|
| 13 | - public void serializeInstance(SerializationStreamWriter streamWriter, KnotSpeedWithBearingImpl instance) |
|
| 14 | - throws SerializationException { |
|
| 15 | - serialize(streamWriter, instance); |
|
| 16 | - } |
|
| 17 | - |
|
| 18 | - public static void serialize(SerializationStreamWriter streamWriter, KnotSpeedWithBearingImpl instance) |
|
| 19 | - throws SerializationException { |
|
| 20 | - streamWriter.writeDouble(instance.getKnots()); |
|
| 21 | - streamWriter.writeDouble(instance.getBearing().getDegrees()); |
|
| 22 | - } |
|
| 23 | - |
|
| 24 | - @Override |
|
| 25 | - public boolean hasCustomInstantiateInstance() { |
|
| 26 | - return true; |
|
| 27 | - } |
|
| 28 | - |
|
| 29 | - @Override |
|
| 30 | - public KnotSpeedWithBearingImpl instantiateInstance(SerializationStreamReader streamReader) |
|
| 31 | - throws SerializationException { |
|
| 32 | - return instantiate(streamReader); |
|
| 33 | - } |
|
| 34 | - |
|
| 35 | - public static KnotSpeedWithBearingImpl instantiate(SerializationStreamReader streamReader) |
|
| 36 | - throws SerializationException { |
|
| 37 | - return new KnotSpeedWithBearingImpl(streamReader.readDouble(), new DegreeBearingImpl(streamReader.readDouble())); |
|
| 38 | - } |
|
| 39 | - |
|
| 40 | - @Override |
|
| 41 | - public void deserializeInstance(SerializationStreamReader streamReader, KnotSpeedWithBearingImpl instance) |
|
| 42 | - throws SerializationException { |
|
| 43 | - deserialize(streamReader, instance); |
|
| 44 | - } |
|
| 45 | - |
|
| 46 | - public static void deserialize(SerializationStreamReader streamReader, KnotSpeedWithBearingImpl instance) { |
|
| 47 | - // Done by instantiateInstance |
|
| 48 | - } |
|
| 49 | - |
|
| 50 | -} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/impl/MeterDistance_CustomFieldSerializer.java
| ... | ... | @@ -1,48 +0,0 @@ |
| 1 | -package com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | -import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | -import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | -import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 8 | - |
|
| 9 | -public class MeterDistance_CustomFieldSerializer extends CustomFieldSerializer<MeterDistance> { |
|
| 10 | - |
|
| 11 | - @Override |
|
| 12 | - public void serializeInstance(SerializationStreamWriter streamWriter, MeterDistance instance) |
|
| 13 | - throws SerializationException { |
|
| 14 | - serialize(streamWriter, instance); |
|
| 15 | - } |
|
| 16 | - |
|
| 17 | - public static void serialize(SerializationStreamWriter streamWriter, MeterDistance instance) |
|
| 18 | - throws SerializationException { |
|
| 19 | - streamWriter.writeDouble(instance.getMeters()); |
|
| 20 | - } |
|
| 21 | - |
|
| 22 | - @Override |
|
| 23 | - public boolean hasCustomInstantiateInstance() { |
|
| 24 | - return true; |
|
| 25 | - } |
|
| 26 | - |
|
| 27 | - @Override |
|
| 28 | - public MeterDistance instantiateInstance(SerializationStreamReader streamReader) |
|
| 29 | - throws SerializationException { |
|
| 30 | - return instantiate(streamReader); |
|
| 31 | - } |
|
| 32 | - |
|
| 33 | - public static MeterDistance instantiate(SerializationStreamReader streamReader) |
|
| 34 | - throws SerializationException { |
|
| 35 | - return new MeterDistance(streamReader.readDouble()); |
|
| 36 | - } |
|
| 37 | - |
|
| 38 | - @Override |
|
| 39 | - public void deserializeInstance(SerializationStreamReader streamReader, MeterDistance instance) |
|
| 40 | - throws SerializationException { |
|
| 41 | - deserialize(streamReader, instance); |
|
| 42 | - } |
|
| 43 | - |
|
| 44 | - public static void deserialize(SerializationStreamReader streamReader, MeterDistance instance) { |
|
| 45 | - // Done by instantiateInstance |
|
| 46 | - } |
|
| 47 | - |
|
| 48 | -} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/impl/NauticalMileDistance_CustomFieldSerializer.java
| ... | ... | @@ -1,48 +0,0 @@ |
| 1 | -package com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | -import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | -import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | -import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 8 | - |
|
| 9 | -public class NauticalMileDistance_CustomFieldSerializer extends CustomFieldSerializer<NauticalMileDistance> { |
|
| 10 | - |
|
| 11 | - @Override |
|
| 12 | - public void serializeInstance(SerializationStreamWriter streamWriter, NauticalMileDistance instance) |
|
| 13 | - throws SerializationException { |
|
| 14 | - serialize(streamWriter, instance); |
|
| 15 | - } |
|
| 16 | - |
|
| 17 | - public static void serialize(SerializationStreamWriter streamWriter, NauticalMileDistance instance) |
|
| 18 | - throws SerializationException { |
|
| 19 | - streamWriter.writeDouble(instance.getNauticalMiles()); |
|
| 20 | - } |
|
| 21 | - |
|
| 22 | - @Override |
|
| 23 | - public boolean hasCustomInstantiateInstance() { |
|
| 24 | - return true; |
|
| 25 | - } |
|
| 26 | - |
|
| 27 | - @Override |
|
| 28 | - public NauticalMileDistance instantiateInstance(SerializationStreamReader streamReader) |
|
| 29 | - throws SerializationException { |
|
| 30 | - return instantiate(streamReader); |
|
| 31 | - } |
|
| 32 | - |
|
| 33 | - public static NauticalMileDistance instantiate(SerializationStreamReader streamReader) |
|
| 34 | - throws SerializationException { |
|
| 35 | - return new NauticalMileDistance(streamReader.readDouble()); |
|
| 36 | - } |
|
| 37 | - |
|
| 38 | - @Override |
|
| 39 | - public void deserializeInstance(SerializationStreamReader streamReader, NauticalMileDistance instance) |
|
| 40 | - throws SerializationException { |
|
| 41 | - deserialize(streamReader, instance); |
|
| 42 | - } |
|
| 43 | - |
|
| 44 | - public static void deserialize(SerializationStreamReader streamReader, NauticalMileDistance instance) { |
|
| 45 | - // Done by instantiateInstance |
|
| 46 | - } |
|
| 47 | - |
|
| 48 | -} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/impl/RadianBearingImpl_CustomFieldSerializer.java
| ... | ... | @@ -1,48 +0,0 @@ |
| 1 | -package com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | -import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | -import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | -import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | -import com.sap.sailing.domain.common.impl.RadianBearingImpl; |
|
| 8 | - |
|
| 9 | -public class RadianBearingImpl_CustomFieldSerializer extends CustomFieldSerializer<RadianBearingImpl> { |
|
| 10 | - |
|
| 11 | - @Override |
|
| 12 | - public void serializeInstance(SerializationStreamWriter streamWriter, RadianBearingImpl instance) |
|
| 13 | - throws SerializationException { |
|
| 14 | - serialize(streamWriter, instance); |
|
| 15 | - } |
|
| 16 | - |
|
| 17 | - public static void serialize(SerializationStreamWriter streamWriter, RadianBearingImpl instance) |
|
| 18 | - throws SerializationException { |
|
| 19 | - streamWriter.writeDouble(instance.getRadians()); |
|
| 20 | - } |
|
| 21 | - |
|
| 22 | - @Override |
|
| 23 | - public boolean hasCustomInstantiateInstance() { |
|
| 24 | - return true; |
|
| 25 | - } |
|
| 26 | - |
|
| 27 | - @Override |
|
| 28 | - public RadianBearingImpl instantiateInstance(SerializationStreamReader streamReader) |
|
| 29 | - throws SerializationException { |
|
| 30 | - return instantiate(streamReader); |
|
| 31 | - } |
|
| 32 | - |
|
| 33 | - public static RadianBearingImpl instantiate(SerializationStreamReader streamReader) |
|
| 34 | - throws SerializationException { |
|
| 35 | - return new RadianBearingImpl(streamReader.readDouble()); |
|
| 36 | - } |
|
| 37 | - |
|
| 38 | - @Override |
|
| 39 | - public void deserializeInstance(SerializationStreamReader streamReader, RadianBearingImpl instance) |
|
| 40 | - throws SerializationException { |
|
| 41 | - deserialize(streamReader, instance); |
|
| 42 | - } |
|
| 43 | - |
|
| 44 | - public static void deserialize(SerializationStreamReader streamReader, RadianBearingImpl instance) { |
|
| 45 | - // Done by instantiateInstance |
|
| 46 | - } |
|
| 47 | - |
|
| 48 | -} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/impl/RadianPosition_CustomFieldSerializer.java
| ... | ... | @@ -1,47 +0,0 @@ |
| 1 | -package com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.impl; |
|
| 2 | - |
|
| 3 | -import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | -import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | -import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | -import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | -import com.sap.sailing.domain.common.impl.RadianPosition; |
|
| 8 | - |
|
| 9 | -public final class RadianPosition_CustomFieldSerializer extends CustomFieldSerializer<RadianPosition> { |
|
| 10 | - @Override |
|
| 11 | - public boolean hasCustomInstantiateInstance() { |
|
| 12 | - return true; |
|
| 13 | - } |
|
| 14 | - |
|
| 15 | - @Override |
|
| 16 | - public RadianPosition instantiateInstance(SerializationStreamReader streamReader) throws SerializationException { |
|
| 17 | - return instantiate(streamReader); |
|
| 18 | - } |
|
| 19 | - |
|
| 20 | - public static RadianPosition instantiate(SerializationStreamReader streamReader) throws SerializationException { |
|
| 21 | - final double latRad = streamReader.readDouble(); |
|
| 22 | - final double lngRad = streamReader.readDouble(); |
|
| 23 | - return new RadianPosition(latRad, lngRad); |
|
| 24 | - } |
|
| 25 | - |
|
| 26 | - @Override |
|
| 27 | - public void deserializeInstance(SerializationStreamReader streamReader, RadianPosition instance) |
|
| 28 | - throws SerializationException { |
|
| 29 | - deserialize(streamReader, instance); |
|
| 30 | - } |
|
| 31 | - |
|
| 32 | - public static void deserialize(SerializationStreamReader streamReader, RadianPosition instance) { |
|
| 33 | - // handled by instantiate |
|
| 34 | - } |
|
| 35 | - |
|
| 36 | - @Override |
|
| 37 | - public void serializeInstance(SerializationStreamWriter streamWriter, RadianPosition instance) |
|
| 38 | - throws SerializationException { |
|
| 39 | - serialize(streamWriter, instance); |
|
| 40 | - } |
|
| 41 | - |
|
| 42 | - public static void serialize(SerializationStreamWriter streamWriter, RadianPosition instance) |
|
| 43 | - throws SerializationException { |
|
| 44 | - streamWriter.writeDouble(instance.getLatRad()); |
|
| 45 | - streamWriter.writeDouble(instance.getLngRad()); |
|
| 46 | - } |
|
| 47 | -} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/orc/impl/ORCPerformanceCurveLegImpl_CustomFieldSerializer.java
| ... | ... | @@ -4,10 +4,10 @@ import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
| 4 | 4 | import com.google.gwt.user.client.rpc.SerializationException; |
| 5 | 5 | import com.google.gwt.user.client.rpc.SerializationStreamReader; |
| 6 | 6 | import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
| 7 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 8 | 7 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveLegTypes; |
| 9 | 8 | import com.sap.sailing.domain.common.orc.impl.ORCPerformanceCurveLegImpl; |
| 10 | 9 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 10 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 11 | 11 | |
| 12 | 12 | public class ORCPerformanceCurveLegImpl_CustomFieldSerializer extends CustomFieldSerializer<ORCPerformanceCurveLegImpl> { |
| 13 | 13 |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/tracking/impl/CompactWindImpl.java
| ... | ... | @@ -6,11 +6,11 @@ import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
| 6 | 6 | import com.google.gwt.user.client.rpc.SerializationException; |
| 7 | 7 | import com.google.gwt.user.client.rpc.SerializationStreamReader; |
| 8 | 8 | import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
| 9 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 10 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 11 | 9 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 12 | 10 | import com.sap.sailing.domain.common.tracking.impl.VeryCompactWindImpl.VeryCompactPosition; |
| 13 | 11 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 12 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 13 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 14 | 14 | import com.sap.sailing.domain.common.tracking.impl.CompactionNotPossibleException; |
| 15 | 15 | |
| 16 | 16 | public final class CompactWindImpl { |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/tracking/impl/PreciseCompactGPSFixImpl.java
| ... | ... | @@ -4,8 +4,8 @@ import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
| 4 | 4 | import com.google.gwt.user.client.rpc.SerializationException; |
| 5 | 5 | import com.google.gwt.user.client.rpc.SerializationStreamReader; |
| 6 | 6 | import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
| 7 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 8 | 7 | import com.sap.sailing.domain.common.tracking.impl.PreciseCompactGPSFixImpl.PreciseCompactPosition; |
| 8 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 9 | 9 | |
| 10 | 10 | public final class PreciseCompactGPSFixImpl { |
| 11 | 11 | public static final class PreciseCompactPosition_CustomFieldSerializer extends CustomFieldSerializer<PreciseCompactPosition> { |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/tracking/impl/PreciseCompactGPSFixMovingImpl.java
| ... | ... | @@ -4,12 +4,12 @@ import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
| 4 | 4 | import com.google.gwt.user.client.rpc.SerializationException; |
| 5 | 5 | import com.google.gwt.user.client.rpc.SerializationStreamReader; |
| 6 | 6 | import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
| 7 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 8 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 9 | 7 | import com.sap.sailing.domain.common.tracking.impl.PreciseCompactGPSFixMovingImpl.PreciseCompactEstimatedSpeed; |
| 10 | 8 | import com.sap.sailing.domain.common.tracking.impl.PreciseCompactGPSFixMovingImpl.PreciseCompactPosition; |
| 11 | 9 | import com.sap.sailing.domain.common.tracking.impl.PreciseCompactGPSFixMovingImpl.PreciseCompactSpeedWithBearing; |
| 12 | 10 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 11 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 12 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 13 | 13 | |
| 14 | 14 | public final class PreciseCompactGPSFixMovingImpl { |
| 15 | 15 | public static final class PreciseCompactPosition_CustomFieldSerializer extends CustomFieldSerializer<PreciseCompactPosition> { |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/tracking/impl/VeryCompactGPSFixImpl.java
| ... | ... | @@ -4,8 +4,8 @@ import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
| 4 | 4 | import com.google.gwt.user.client.rpc.SerializationException; |
| 5 | 5 | import com.google.gwt.user.client.rpc.SerializationStreamReader; |
| 6 | 6 | import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
| 7 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 8 | 7 | import com.sap.sailing.domain.common.tracking.impl.VeryCompactGPSFixImpl.CompactPosition; |
| 8 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 9 | 9 | |
| 10 | 10 | public final class VeryCompactGPSFixImpl { |
| 11 | 11 | public static final class CompactPosition_CustomFieldSerializer extends CustomFieldSerializer<CompactPosition> { |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/tracking/impl/VeryCompactGPSFixMovingImpl.java
| ... | ... | @@ -7,13 +7,13 @@ import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
| 7 | 7 | import com.google.gwt.user.client.rpc.SerializationException; |
| 8 | 8 | import com.google.gwt.user.client.rpc.SerializationStreamReader; |
| 9 | 9 | import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
| 10 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 11 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 12 | 10 | import com.sap.sailing.domain.common.tracking.impl.CompactionNotPossibleException; |
| 13 | 11 | import com.sap.sailing.domain.common.tracking.impl.VeryCompactGPSFixMovingImpl.VeryCompactEstimatedSpeed; |
| 14 | 12 | import com.sap.sailing.domain.common.tracking.impl.VeryCompactGPSFixMovingImpl.VeryCompactPosition; |
| 15 | 13 | import com.sap.sailing.domain.common.tracking.impl.VeryCompactGPSFixMovingImpl.VeryCompactSpeedWithBearing; |
| 16 | 14 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 15 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 16 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 17 | 17 | |
| 18 | 18 | public final class VeryCompactGPSFixMovingImpl { |
| 19 | 19 | private static final Logger logger = Logger.getLogger(VeryCompactGPSFixMovingImpl.class.getName()); |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/tracking/impl/VeryCompactWindImpl.java
| ... | ... | @@ -6,11 +6,11 @@ import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
| 6 | 6 | import com.google.gwt.user.client.rpc.SerializationException; |
| 7 | 7 | import com.google.gwt.user.client.rpc.SerializationStreamReader; |
| 8 | 8 | import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
| 9 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 10 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 11 | 9 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 12 | 10 | import com.sap.sailing.domain.common.tracking.impl.VeryCompactWindImpl.VeryCompactPosition; |
| 13 | 11 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 12 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 13 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 14 | 14 | import com.sap.sailing.domain.common.tracking.impl.CompactionNotPossibleException; |
| 15 | 15 | |
| 16 | 16 | public final class VeryCompactWindImpl { |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/domain/common/windfinder/SpotDTO_CustomFieldSerializer.java
| ... | ... | @@ -4,8 +4,8 @@ import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
| 4 | 4 | import com.google.gwt.user.client.rpc.SerializationException; |
| 5 | 5 | import com.google.gwt.user.client.rpc.SerializationStreamReader; |
| 6 | 6 | import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | 7 | import com.sap.sailing.domain.common.windfinder.SpotDTO; |
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | 9 | |
| 10 | 10 | public class SpotDTO_CustomFieldSerializer extends CustomFieldSerializer<SpotDTO> { |
| 11 | 11 | @Override |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sailing/gwt/ui/shared/GPSFixDTOWithSpeedWindTackAndLegTypeIterable_CustomFieldSerializer.java
| ... | ... | @@ -9,14 +9,14 @@ import com.google.gwt.user.client.rpc.SerializationException; |
| 9 | 9 | import com.google.gwt.user.client.rpc.SerializationStreamReader; |
| 10 | 10 | import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
| 11 | 11 | import com.sap.sailing.domain.common.LegType; |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | 12 | import com.sap.sailing.domain.common.Tack; |
| 14 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 15 | 13 | import com.sap.sailing.gwt.ui.shared.GPSFixDTOWithSpeedWindTackAndLegType; |
| 16 | 14 | import com.sap.sailing.gwt.ui.shared.GPSFixDTOWithSpeedWindTackAndLegTypeIterable; |
| 17 | 15 | import com.sap.sailing.gwt.ui.shared.SpeedWithBearingDTO; |
| 18 | 16 | import com.sap.sse.common.Bearing; |
| 17 | +import com.sap.sse.common.Position; |
|
| 19 | 18 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 19 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 20 | 20 | |
| 21 | 21 | /** |
| 22 | 22 | * Serializes the {@link GPSFixDTOWithSpeedWindTackAndLegType} objects one by one, writing only primitive values to the |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sse/common/confidence/impl/LazyDividedScaledPosition_CustomFieldSerializer.java
| ... | ... | @@ -0,0 +1,54 @@ |
| 1 | +package com.google.gwt.user.client.rpc.core.com.sap.sse.common.confidence.impl; |
|
| 2 | + |
|
| 3 | +import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | +import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | +import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | +import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | +import com.sap.sse.common.confidence.impl.LazyDividedScaledPosition; |
|
| 9 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 10 | +import com.sap.sse.common.scalablevalue.impl.ScalablePosition; |
|
| 11 | + |
|
| 12 | +public final class LazyDividedScaledPosition_CustomFieldSerializer extends |
|
| 13 | + CustomFieldSerializer<com.sap.sse.common.confidence.impl.LazyDividedScaledPosition> { |
|
| 14 | + public static void deserialize(SerializationStreamReader streamReader, LazyDividedScaledPosition instance) |
|
| 15 | + throws SerializationException { |
|
| 16 | + } |
|
| 17 | + |
|
| 18 | + @Override |
|
| 19 | + public void deserializeInstance(SerializationStreamReader streamReader, LazyDividedScaledPosition instance) |
|
| 20 | + throws SerializationException { |
|
| 21 | + deserialize(streamReader, instance); |
|
| 22 | + } |
|
| 23 | + |
|
| 24 | + @Override |
|
| 25 | + public void serializeInstance(SerializationStreamWriter streamWriter, LazyDividedScaledPosition instance) |
|
| 26 | + throws SerializationException { |
|
| 27 | + serialize(streamWriter, instance); |
|
| 28 | + } |
|
| 29 | + |
|
| 30 | + public static void serialize(SerializationStreamWriter streamWriter, LazyDividedScaledPosition instance) |
|
| 31 | + throws SerializationException { |
|
| 32 | + streamWriter.writeDouble(instance.getLatDeg()); |
|
| 33 | + streamWriter.writeDouble(instance.getLngDeg()); |
|
| 34 | + } |
|
| 35 | + |
|
| 36 | + @Override |
|
| 37 | + public boolean hasCustomInstantiateInstance() { |
|
| 38 | + return true; |
|
| 39 | + } |
|
| 40 | + |
|
| 41 | + @Override |
|
| 42 | + public LazyDividedScaledPosition instantiateInstance(SerializationStreamReader streamReader) |
|
| 43 | + throws SerializationException { |
|
| 44 | + return instantiate(streamReader); |
|
| 45 | + } |
|
| 46 | + |
|
| 47 | + public static LazyDividedScaledPosition instantiate(SerializationStreamReader streamReader) throws SerializationException { |
|
| 48 | + final double latDeg = streamReader.readDouble(); |
|
| 49 | + final double lngDeg = streamReader.readDouble(); |
|
| 50 | + Position position = new DegreePosition(latDeg, lngDeg); |
|
| 51 | + ScalablePosition scalablePosition = new ScalablePosition(position); |
|
| 52 | + return new LazyDividedScaledPosition(scalablePosition, 1); |
|
| 53 | + } |
|
| 54 | +} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sse/common/impl/CentralAngleDistance_CustomFieldSerializer.java
| ... | ... | @@ -0,0 +1,48 @@ |
| 1 | +package com.google.gwt.user.client.rpc.core.com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | +import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | +import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | +import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | +import com.sap.sse.common.impl.CentralAngleDistance; |
|
| 8 | + |
|
| 9 | +public class CentralAngleDistance_CustomFieldSerializer extends CustomFieldSerializer<CentralAngleDistance> { |
|
| 10 | + |
|
| 11 | + @Override |
|
| 12 | + public void serializeInstance(SerializationStreamWriter streamWriter, CentralAngleDistance instance) |
|
| 13 | + throws SerializationException { |
|
| 14 | + serialize(streamWriter, instance); |
|
| 15 | + } |
|
| 16 | + |
|
| 17 | + public static void serialize(SerializationStreamWriter streamWriter, CentralAngleDistance instance) |
|
| 18 | + throws SerializationException { |
|
| 19 | + streamWriter.writeDouble(instance.getCentralAngleRad()); |
|
| 20 | + } |
|
| 21 | + |
|
| 22 | + @Override |
|
| 23 | + public boolean hasCustomInstantiateInstance() { |
|
| 24 | + return true; |
|
| 25 | + } |
|
| 26 | + |
|
| 27 | + @Override |
|
| 28 | + public CentralAngleDistance instantiateInstance(SerializationStreamReader streamReader) |
|
| 29 | + throws SerializationException { |
|
| 30 | + return instantiate(streamReader); |
|
| 31 | + } |
|
| 32 | + |
|
| 33 | + public static CentralAngleDistance instantiate(SerializationStreamReader streamReader) |
|
| 34 | + throws SerializationException { |
|
| 35 | + return new CentralAngleDistance(streamReader.readDouble()); |
|
| 36 | + } |
|
| 37 | + |
|
| 38 | + @Override |
|
| 39 | + public void deserializeInstance(SerializationStreamReader streamReader, CentralAngleDistance instance) |
|
| 40 | + throws SerializationException { |
|
| 41 | + deserialize(streamReader, instance); |
|
| 42 | + } |
|
| 43 | + |
|
| 44 | + public static void deserialize(SerializationStreamReader streamReader, CentralAngleDistance instance) { |
|
| 45 | + // Done by instantiateInstance |
|
| 46 | + } |
|
| 47 | + |
|
| 48 | +} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sse/common/impl/DegreePosition_CustomFieldSerializer.java
| ... | ... | @@ -0,0 +1,47 @@ |
| 1 | +package com.google.gwt.user.client.rpc.core.com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | +import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | +import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | +import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 8 | + |
|
| 9 | +public class DegreePosition_CustomFieldSerializer extends CustomFieldSerializer<DegreePosition> { |
|
| 10 | + @Override |
|
| 11 | + public boolean hasCustomInstantiateInstance() { |
|
| 12 | + return true; |
|
| 13 | + } |
|
| 14 | + |
|
| 15 | + @Override |
|
| 16 | + public DegreePosition instantiateInstance(SerializationStreamReader streamReader) throws SerializationException { |
|
| 17 | + return instantiate(streamReader); |
|
| 18 | + } |
|
| 19 | + |
|
| 20 | + public static DegreePosition instantiate(SerializationStreamReader streamReader) throws SerializationException { |
|
| 21 | + return new DegreePosition(streamReader.readDouble(), streamReader.readDouble()); |
|
| 22 | + } |
|
| 23 | + |
|
| 24 | + public static void deserialize(SerializationStreamReader streamReader, DegreePosition instance) |
|
| 25 | + throws SerializationException { |
|
| 26 | + // handled by instantiateInstance |
|
| 27 | + } |
|
| 28 | + |
|
| 29 | + @Override |
|
| 30 | + public void deserializeInstance(SerializationStreamReader streamReader, DegreePosition instance) |
|
| 31 | + throws SerializationException { |
|
| 32 | + deserialize(streamReader, instance); |
|
| 33 | + } |
|
| 34 | + |
|
| 35 | + @Override |
|
| 36 | + public void serializeInstance(SerializationStreamWriter streamWriter, DegreePosition instance) |
|
| 37 | + throws SerializationException { |
|
| 38 | + serialize(streamWriter, instance); |
|
| 39 | + } |
|
| 40 | + |
|
| 41 | + public static void serialize(SerializationStreamWriter streamWriter, DegreePosition instance) |
|
| 42 | + throws SerializationException { |
|
| 43 | + streamWriter.writeDouble(instance.getLatDeg()); |
|
| 44 | + streamWriter.writeDouble(instance.getLngDeg()); |
|
| 45 | + } |
|
| 46 | + |
|
| 47 | +} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sse/common/impl/KilometersPerHourSpeedImpl_CustomFieldSerializer.java
| ... | ... | @@ -0,0 +1,48 @@ |
| 1 | +package com.google.gwt.user.client.rpc.core.com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | +import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | +import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | +import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 8 | + |
|
| 9 | +public class KilometersPerHourSpeedImpl_CustomFieldSerializer extends CustomFieldSerializer<KilometersPerHourSpeedImpl> { |
|
| 10 | + |
|
| 11 | + @Override |
|
| 12 | + public void serializeInstance(SerializationStreamWriter streamWriter, KilometersPerHourSpeedImpl instance) |
|
| 13 | + throws SerializationException { |
|
| 14 | + serialize(streamWriter, instance); |
|
| 15 | + } |
|
| 16 | + |
|
| 17 | + public static void serialize(SerializationStreamWriter streamWriter, KilometersPerHourSpeedImpl instance) |
|
| 18 | + throws SerializationException { |
|
| 19 | + streamWriter.writeDouble(instance.getKilometersPerHour()); |
|
| 20 | + } |
|
| 21 | + |
|
| 22 | + @Override |
|
| 23 | + public boolean hasCustomInstantiateInstance() { |
|
| 24 | + return true; |
|
| 25 | + } |
|
| 26 | + |
|
| 27 | + @Override |
|
| 28 | + public KilometersPerHourSpeedImpl instantiateInstance(SerializationStreamReader streamReader) |
|
| 29 | + throws SerializationException { |
|
| 30 | + return instantiate(streamReader); |
|
| 31 | + } |
|
| 32 | + |
|
| 33 | + public static KilometersPerHourSpeedImpl instantiate(SerializationStreamReader streamReader) |
|
| 34 | + throws SerializationException { |
|
| 35 | + return new KilometersPerHourSpeedImpl(streamReader.readDouble()); |
|
| 36 | + } |
|
| 37 | + |
|
| 38 | + @Override |
|
| 39 | + public void deserializeInstance(SerializationStreamReader streamReader, KilometersPerHourSpeedImpl instance) |
|
| 40 | + throws SerializationException { |
|
| 41 | + deserialize(streamReader, instance); |
|
| 42 | + } |
|
| 43 | + |
|
| 44 | + public static void deserialize(SerializationStreamReader streamReader, KilometersPerHourSpeedImpl instance) { |
|
| 45 | + // Done by instantiateInstance |
|
| 46 | + } |
|
| 47 | + |
|
| 48 | +} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sse/common/impl/KnotSpeedImpl_CustomFieldSerializer.java
| ... | ... | @@ -0,0 +1,48 @@ |
| 1 | +package com.google.gwt.user.client.rpc.core.com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | +import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | +import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | +import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 8 | + |
|
| 9 | +public class KnotSpeedImpl_CustomFieldSerializer extends CustomFieldSerializer<KnotSpeedImpl> { |
|
| 10 | + |
|
| 11 | + @Override |
|
| 12 | + public void serializeInstance(SerializationStreamWriter streamWriter, KnotSpeedImpl instance) |
|
| 13 | + throws SerializationException { |
|
| 14 | + serialize(streamWriter, instance); |
|
| 15 | + } |
|
| 16 | + |
|
| 17 | + public static void serialize(SerializationStreamWriter streamWriter, KnotSpeedImpl instance) |
|
| 18 | + throws SerializationException { |
|
| 19 | + streamWriter.writeDouble(instance.getKnots()); |
|
| 20 | + } |
|
| 21 | + |
|
| 22 | + @Override |
|
| 23 | + public boolean hasCustomInstantiateInstance() { |
|
| 24 | + return true; |
|
| 25 | + } |
|
| 26 | + |
|
| 27 | + @Override |
|
| 28 | + public KnotSpeedImpl instantiateInstance(SerializationStreamReader streamReader) |
|
| 29 | + throws SerializationException { |
|
| 30 | + return instantiate(streamReader); |
|
| 31 | + } |
|
| 32 | + |
|
| 33 | + public static KnotSpeedImpl instantiate(SerializationStreamReader streamReader) |
|
| 34 | + throws SerializationException { |
|
| 35 | + return new KnotSpeedImpl(streamReader.readDouble()); |
|
| 36 | + } |
|
| 37 | + |
|
| 38 | + @Override |
|
| 39 | + public void deserializeInstance(SerializationStreamReader streamReader, KnotSpeedImpl instance) |
|
| 40 | + throws SerializationException { |
|
| 41 | + deserialize(streamReader, instance); |
|
| 42 | + } |
|
| 43 | + |
|
| 44 | + public static void deserialize(SerializationStreamReader streamReader, KnotSpeedImpl instance) { |
|
| 45 | + // Done by instantiateInstance |
|
| 46 | + } |
|
| 47 | + |
|
| 48 | +} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sse/common/impl/KnotSpeedWithBearingImpl_CustomFieldSerializer.java
| ... | ... | @@ -0,0 +1,50 @@ |
| 1 | +package com.google.gwt.user.client.rpc.core.com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | +import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | +import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | +import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | +import com.sap.sse.common.impl.DegreeBearingImpl; |
|
| 8 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 9 | + |
|
| 10 | +public class KnotSpeedWithBearingImpl_CustomFieldSerializer extends CustomFieldSerializer<KnotSpeedWithBearingImpl> { |
|
| 11 | + |
|
| 12 | + @Override |
|
| 13 | + public void serializeInstance(SerializationStreamWriter streamWriter, KnotSpeedWithBearingImpl instance) |
|
| 14 | + throws SerializationException { |
|
| 15 | + serialize(streamWriter, instance); |
|
| 16 | + } |
|
| 17 | + |
|
| 18 | + public static void serialize(SerializationStreamWriter streamWriter, KnotSpeedWithBearingImpl instance) |
|
| 19 | + throws SerializationException { |
|
| 20 | + streamWriter.writeDouble(instance.getKnots()); |
|
| 21 | + streamWriter.writeDouble(instance.getBearing().getDegrees()); |
|
| 22 | + } |
|
| 23 | + |
|
| 24 | + @Override |
|
| 25 | + public boolean hasCustomInstantiateInstance() { |
|
| 26 | + return true; |
|
| 27 | + } |
|
| 28 | + |
|
| 29 | + @Override |
|
| 30 | + public KnotSpeedWithBearingImpl instantiateInstance(SerializationStreamReader streamReader) |
|
| 31 | + throws SerializationException { |
|
| 32 | + return instantiate(streamReader); |
|
| 33 | + } |
|
| 34 | + |
|
| 35 | + public static KnotSpeedWithBearingImpl instantiate(SerializationStreamReader streamReader) |
|
| 36 | + throws SerializationException { |
|
| 37 | + return new KnotSpeedWithBearingImpl(streamReader.readDouble(), new DegreeBearingImpl(streamReader.readDouble())); |
|
| 38 | + } |
|
| 39 | + |
|
| 40 | + @Override |
|
| 41 | + public void deserializeInstance(SerializationStreamReader streamReader, KnotSpeedWithBearingImpl instance) |
|
| 42 | + throws SerializationException { |
|
| 43 | + deserialize(streamReader, instance); |
|
| 44 | + } |
|
| 45 | + |
|
| 46 | + public static void deserialize(SerializationStreamReader streamReader, KnotSpeedWithBearingImpl instance) { |
|
| 47 | + // Done by instantiateInstance |
|
| 48 | + } |
|
| 49 | + |
|
| 50 | +} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sse/common/impl/MeterDistance_CustomFieldSerializer.java
| ... | ... | @@ -0,0 +1,48 @@ |
| 1 | +package com.google.gwt.user.client.rpc.core.com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | +import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | +import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | +import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 8 | + |
|
| 9 | +public class MeterDistance_CustomFieldSerializer extends CustomFieldSerializer<MeterDistance> { |
|
| 10 | + |
|
| 11 | + @Override |
|
| 12 | + public void serializeInstance(SerializationStreamWriter streamWriter, MeterDistance instance) |
|
| 13 | + throws SerializationException { |
|
| 14 | + serialize(streamWriter, instance); |
|
| 15 | + } |
|
| 16 | + |
|
| 17 | + public static void serialize(SerializationStreamWriter streamWriter, MeterDistance instance) |
|
| 18 | + throws SerializationException { |
|
| 19 | + streamWriter.writeDouble(instance.getMeters()); |
|
| 20 | + } |
|
| 21 | + |
|
| 22 | + @Override |
|
| 23 | + public boolean hasCustomInstantiateInstance() { |
|
| 24 | + return true; |
|
| 25 | + } |
|
| 26 | + |
|
| 27 | + @Override |
|
| 28 | + public MeterDistance instantiateInstance(SerializationStreamReader streamReader) |
|
| 29 | + throws SerializationException { |
|
| 30 | + return instantiate(streamReader); |
|
| 31 | + } |
|
| 32 | + |
|
| 33 | + public static MeterDistance instantiate(SerializationStreamReader streamReader) |
|
| 34 | + throws SerializationException { |
|
| 35 | + return new MeterDistance(streamReader.readDouble()); |
|
| 36 | + } |
|
| 37 | + |
|
| 38 | + @Override |
|
| 39 | + public void deserializeInstance(SerializationStreamReader streamReader, MeterDistance instance) |
|
| 40 | + throws SerializationException { |
|
| 41 | + deserialize(streamReader, instance); |
|
| 42 | + } |
|
| 43 | + |
|
| 44 | + public static void deserialize(SerializationStreamReader streamReader, MeterDistance instance) { |
|
| 45 | + // Done by instantiateInstance |
|
| 46 | + } |
|
| 47 | + |
|
| 48 | +} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sse/common/impl/NauticalMileDistance_CustomFieldSerializer.java
| ... | ... | @@ -0,0 +1,48 @@ |
| 1 | +package com.google.gwt.user.client.rpc.core.com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | +import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | +import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | +import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 8 | + |
|
| 9 | +public class NauticalMileDistance_CustomFieldSerializer extends CustomFieldSerializer<NauticalMileDistance> { |
|
| 10 | + |
|
| 11 | + @Override |
|
| 12 | + public void serializeInstance(SerializationStreamWriter streamWriter, NauticalMileDistance instance) |
|
| 13 | + throws SerializationException { |
|
| 14 | + serialize(streamWriter, instance); |
|
| 15 | + } |
|
| 16 | + |
|
| 17 | + public static void serialize(SerializationStreamWriter streamWriter, NauticalMileDistance instance) |
|
| 18 | + throws SerializationException { |
|
| 19 | + streamWriter.writeDouble(instance.getNauticalMiles()); |
|
| 20 | + } |
|
| 21 | + |
|
| 22 | + @Override |
|
| 23 | + public boolean hasCustomInstantiateInstance() { |
|
| 24 | + return true; |
|
| 25 | + } |
|
| 26 | + |
|
| 27 | + @Override |
|
| 28 | + public NauticalMileDistance instantiateInstance(SerializationStreamReader streamReader) |
|
| 29 | + throws SerializationException { |
|
| 30 | + return instantiate(streamReader); |
|
| 31 | + } |
|
| 32 | + |
|
| 33 | + public static NauticalMileDistance instantiate(SerializationStreamReader streamReader) |
|
| 34 | + throws SerializationException { |
|
| 35 | + return new NauticalMileDistance(streamReader.readDouble()); |
|
| 36 | + } |
|
| 37 | + |
|
| 38 | + @Override |
|
| 39 | + public void deserializeInstance(SerializationStreamReader streamReader, NauticalMileDistance instance) |
|
| 40 | + throws SerializationException { |
|
| 41 | + deserialize(streamReader, instance); |
|
| 42 | + } |
|
| 43 | + |
|
| 44 | + public static void deserialize(SerializationStreamReader streamReader, NauticalMileDistance instance) { |
|
| 45 | + // Done by instantiateInstance |
|
| 46 | + } |
|
| 47 | + |
|
| 48 | +} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sse/common/impl/RadianBearingImpl_CustomFieldSerializer.java
| ... | ... | @@ -0,0 +1,48 @@ |
| 1 | +package com.google.gwt.user.client.rpc.core.com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | +import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | +import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | +import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | +import com.sap.sse.common.impl.RadianBearingImpl; |
|
| 8 | + |
|
| 9 | +public class RadianBearingImpl_CustomFieldSerializer extends CustomFieldSerializer<RadianBearingImpl> { |
|
| 10 | + |
|
| 11 | + @Override |
|
| 12 | + public void serializeInstance(SerializationStreamWriter streamWriter, RadianBearingImpl instance) |
|
| 13 | + throws SerializationException { |
|
| 14 | + serialize(streamWriter, instance); |
|
| 15 | + } |
|
| 16 | + |
|
| 17 | + public static void serialize(SerializationStreamWriter streamWriter, RadianBearingImpl instance) |
|
| 18 | + throws SerializationException { |
|
| 19 | + streamWriter.writeDouble(instance.getRadians()); |
|
| 20 | + } |
|
| 21 | + |
|
| 22 | + @Override |
|
| 23 | + public boolean hasCustomInstantiateInstance() { |
|
| 24 | + return true; |
|
| 25 | + } |
|
| 26 | + |
|
| 27 | + @Override |
|
| 28 | + public RadianBearingImpl instantiateInstance(SerializationStreamReader streamReader) |
|
| 29 | + throws SerializationException { |
|
| 30 | + return instantiate(streamReader); |
|
| 31 | + } |
|
| 32 | + |
|
| 33 | + public static RadianBearingImpl instantiate(SerializationStreamReader streamReader) |
|
| 34 | + throws SerializationException { |
|
| 35 | + return new RadianBearingImpl(streamReader.readDouble()); |
|
| 36 | + } |
|
| 37 | + |
|
| 38 | + @Override |
|
| 39 | + public void deserializeInstance(SerializationStreamReader streamReader, RadianBearingImpl instance) |
|
| 40 | + throws SerializationException { |
|
| 41 | + deserialize(streamReader, instance); |
|
| 42 | + } |
|
| 43 | + |
|
| 44 | + public static void deserialize(SerializationStreamReader streamReader, RadianBearingImpl instance) { |
|
| 45 | + // Done by instantiateInstance |
|
| 46 | + } |
|
| 47 | + |
|
| 48 | +} |
java/com.sap.sailing.gwt.ui/src/main/java/com/google/gwt/user/client/rpc/core/com/sap/sse/common/impl/RadianPosition_CustomFieldSerializer.java
| ... | ... | @@ -0,0 +1,47 @@ |
| 1 | +package com.google.gwt.user.client.rpc.core.com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.google.gwt.user.client.rpc.CustomFieldSerializer; |
|
| 4 | +import com.google.gwt.user.client.rpc.SerializationException; |
|
| 5 | +import com.google.gwt.user.client.rpc.SerializationStreamReader; |
|
| 6 | +import com.google.gwt.user.client.rpc.SerializationStreamWriter; |
|
| 7 | +import com.sap.sse.common.impl.RadianPosition; |
|
| 8 | + |
|
| 9 | +public final class RadianPosition_CustomFieldSerializer extends CustomFieldSerializer<RadianPosition> { |
|
| 10 | + @Override |
|
| 11 | + public boolean hasCustomInstantiateInstance() { |
|
| 12 | + return true; |
|
| 13 | + } |
|
| 14 | + |
|
| 15 | + @Override |
|
| 16 | + public RadianPosition instantiateInstance(SerializationStreamReader streamReader) throws SerializationException { |
|
| 17 | + return instantiate(streamReader); |
|
| 18 | + } |
|
| 19 | + |
|
| 20 | + public static RadianPosition instantiate(SerializationStreamReader streamReader) throws SerializationException { |
|
| 21 | + final double latRad = streamReader.readDouble(); |
|
| 22 | + final double lngRad = streamReader.readDouble(); |
|
| 23 | + return new RadianPosition(latRad, lngRad); |
|
| 24 | + } |
|
| 25 | + |
|
| 26 | + @Override |
|
| 27 | + public void deserializeInstance(SerializationStreamReader streamReader, RadianPosition instance) |
|
| 28 | + throws SerializationException { |
|
| 29 | + deserialize(streamReader, instance); |
|
| 30 | + } |
|
| 31 | + |
|
| 32 | + public static void deserialize(SerializationStreamReader streamReader, RadianPosition instance) { |
|
| 33 | + // handled by instantiate |
|
| 34 | + } |
|
| 35 | + |
|
| 36 | + @Override |
|
| 37 | + public void serializeInstance(SerializationStreamWriter streamWriter, RadianPosition instance) |
|
| 38 | + throws SerializationException { |
|
| 39 | + serialize(streamWriter, instance); |
|
| 40 | + } |
|
| 41 | + |
|
| 42 | + public static void serialize(SerializationStreamWriter streamWriter, RadianPosition instance) |
|
| 43 | + throws SerializationException { |
|
| 44 | + streamWriter.writeDouble(instance.getLatRad()); |
|
| 45 | + streamWriter.writeDouble(instance.getLngRad()); |
|
| 46 | + } |
|
| 47 | +} |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/communication/SailingSerializationDummyResult.java
| ... | ... | @@ -1,6 +1,6 @@ |
| 1 | 1 | package com.sap.sailing.gwt.home.communication; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 3 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 4 | 4 | import com.sap.sse.gwt.dispatch.shared.commands.Result; |
| 5 | 5 | |
| 6 | 6 | public class SailingSerializationDummyResult implements Result { |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/server/RaceContext.java
| ... | ... | @@ -27,7 +27,6 @@ import com.sap.sailing.domain.base.RaceDefinition; |
| 27 | 27 | import com.sap.sailing.domain.base.Regatta; |
| 28 | 28 | import com.sap.sailing.domain.common.LeaderboardNameConstants; |
| 29 | 29 | import com.sap.sailing.domain.common.NoWindException; |
| 30 | -import com.sap.sailing.domain.common.Position; |
|
| 31 | 30 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 32 | 31 | import com.sap.sailing.domain.common.TimingConstants; |
| 33 | 32 | import com.sap.sailing.domain.common.Wind; |
| ... | ... | @@ -60,6 +59,7 @@ import com.sap.sailing.gwt.home.communication.race.wind.WindStatisticsDTO; |
| 60 | 59 | import com.sap.sailing.gwt.server.HomeServiceUtil; |
| 61 | 60 | import com.sap.sailing.server.interfaces.RacingEventService; |
| 62 | 61 | import com.sap.sse.common.Duration; |
| 62 | +import com.sap.sse.common.Position; |
|
| 63 | 63 | import com.sap.sse.common.TimePoint; |
| 64 | 64 | import com.sap.sse.common.TimeRange; |
| 65 | 65 | import com.sap.sse.common.Util; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/settings/client/settingtypes/converter/DistanceConverter.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.gwt.settings.client.settingtypes.converter; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 4 | 3 | import com.sap.sse.common.Distance; |
| 4 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 5 | 5 | import com.sap.sse.common.settings.generic.ValueConverter; |
| 6 | 6 | import com.sap.sse.common.settings.value.DoubleValue; |
| 7 | 7 | import com.sap.sse.common.settings.value.Value; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/AddWindFixDialog.java
| ... | ... | @@ -8,12 +8,12 @@ import com.google.gwt.user.client.ui.Label; |
| 8 | 8 | import com.google.gwt.user.client.ui.VerticalPanel; |
| 9 | 9 | import com.google.gwt.user.client.ui.Widget; |
| 10 | 10 | import com.google.gwt.user.datepicker.client.DateBox; |
| 11 | -import com.sap.sailing.domain.common.Position; |
|
| 12 | 11 | import com.sap.sailing.domain.common.dto.RaceDTO; |
| 13 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 14 | 12 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 15 | 13 | import com.sap.sailing.gwt.ui.shared.CoursePositionsDTO; |
| 16 | 14 | import com.sap.sailing.gwt.ui.shared.WindDTO; |
| 15 | +import com.sap.sse.common.Position; |
|
| 16 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 17 | 17 | import com.sap.sse.gwt.client.dialog.DataEntryDialog; |
| 18 | 18 | import com.sap.sse.gwt.client.dialog.DoubleBox; |
| 19 | 19 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/CourseAreaListInlineEditorComposite.java
| ... | ... | @@ -6,12 +6,12 @@ import com.google.gwt.resources.client.ImageResource; |
| 6 | 6 | import com.google.gwt.user.client.ui.HorizontalPanel; |
| 7 | 7 | import com.google.gwt.user.client.ui.Label; |
| 8 | 8 | import com.google.gwt.user.client.ui.Widget; |
| 9 | -import com.sap.sailing.domain.common.Position; |
|
| 10 | 9 | import com.sap.sailing.domain.common.dto.CourseAreaDTO; |
| 11 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 12 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 13 | 10 | import com.sap.sse.common.Distance; |
| 11 | +import com.sap.sse.common.Position; |
|
| 14 | 12 | import com.sap.sse.common.Util; |
| 13 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 14 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 15 | 15 | import com.sap.sse.gwt.client.controls.listedit.ExpandedListEditorUi; |
| 16 | 16 | import com.sap.sse.gwt.client.controls.listedit.GenericStringListEditorComposite; |
| 17 | 17 | import com.sap.sse.gwt.client.controls.listedit.GenericStringListInlineEditorComposite; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/ImpliedWindSourceEditDialog.java
| ... | ... | @@ -10,7 +10,6 @@ import com.google.gwt.user.client.ui.VerticalPanel; |
| 10 | 10 | import com.google.gwt.user.client.ui.Widget; |
| 11 | 11 | import com.sap.sailing.domain.common.dto.FleetDTO; |
| 12 | 12 | import com.sap.sailing.domain.common.dto.RaceColumnDTO; |
| 13 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 14 | 13 | import com.sap.sailing.domain.common.orc.FixedSpeedImpliedWind; |
| 15 | 14 | import com.sap.sailing.domain.common.orc.ImpliedWindSource; |
| 16 | 15 | import com.sap.sailing.domain.common.orc.ImpliedWindSourceVisitor; |
| ... | ... | @@ -24,6 +23,7 @@ import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync; |
| 24 | 23 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 25 | 24 | import com.sap.sailing.gwt.ui.shared.StrippedLeaderboardDTO; |
| 26 | 25 | import com.sap.sse.common.Util.Triple; |
| 26 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 27 | 27 | import com.sap.sse.gwt.client.ErrorReporter; |
| 28 | 28 | import com.sap.sse.gwt.client.dialog.DataEntryDialog; |
| 29 | 29 | import com.sap.sse.gwt.client.dialog.DoubleBox; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/ORCPerformanceCurveAllLegsDialog.java
| ... | ... | @@ -11,7 +11,6 @@ import com.google.gwt.user.client.ui.Label; |
| 11 | 11 | import com.google.gwt.user.client.ui.ListBox; |
| 12 | 12 | import com.google.gwt.user.client.ui.Widget; |
| 13 | 13 | import com.google.gwt.view.client.ListDataProvider; |
| 14 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 15 | 14 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveLegTypes; |
| 16 | 15 | import com.sap.sailing.domain.common.orc.impl.ORCPerformanceCurveLegImpl; |
| 17 | 16 | import com.sap.sailing.gwt.ui.adminconsole.CourseManagementWidget.LegGeometrySupplier; |
| ... | ... | @@ -20,6 +19,7 @@ import com.sap.sailing.gwt.ui.shared.WaypointDTO; |
| 20 | 19 | import com.sap.sse.common.Distance; |
| 21 | 20 | import com.sap.sse.common.Util; |
| 22 | 21 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 22 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 23 | 23 | import com.sap.sse.gwt.client.Notification; |
| 24 | 24 | import com.sap.sse.gwt.client.Notification.NotificationType; |
| 25 | 25 | import com.sap.sse.gwt.client.dialog.DoubleBox; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/ORCPerformanceCurveLegDialog.java
| ... | ... | @@ -9,13 +9,13 @@ import com.google.gwt.user.client.ui.Label; |
| 9 | 9 | import com.google.gwt.user.client.ui.ListBox; |
| 10 | 10 | import com.google.gwt.user.client.ui.Widget; |
| 11 | 11 | import com.google.gwt.view.client.ListDataProvider; |
| 12 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 13 | 12 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveLegTypes; |
| 14 | 13 | import com.sap.sailing.domain.common.orc.impl.ORCPerformanceCurveLegImpl; |
| 15 | 14 | import com.sap.sailing.gwt.ui.adminconsole.CourseManagementWidget.LegGeometrySupplier; |
| 16 | 15 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 17 | 16 | import com.sap.sailing.gwt.ui.shared.WaypointDTO; |
| 18 | 17 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 18 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 19 | 19 | import com.sap.sse.gwt.client.Notification; |
| 20 | 20 | import com.sap.sse.gwt.client.Notification.NotificationType; |
| 21 | 21 | import com.sap.sse.gwt.client.dialog.DoubleBox; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/PositionEntryDialog.java
| ... | ... | @@ -5,12 +5,12 @@ import java.util.Date; |
| 5 | 5 | import com.google.gwt.user.client.ui.Grid; |
| 6 | 6 | import com.google.gwt.user.client.ui.Label; |
| 7 | 7 | import com.google.gwt.user.client.ui.Widget; |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 10 | 8 | import com.sap.sailing.gwt.ui.client.DataEntryDialogWithDateTimeBox; |
| 11 | 9 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 10 | +import com.sap.sse.common.Position; |
|
| 12 | 11 | import com.sap.sse.common.TimePoint; |
| 13 | 12 | import com.sap.sse.common.Util.Pair; |
| 13 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 14 | 14 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 15 | 15 | import com.sap.sse.gwt.client.controls.datetime.DateAndTimeInput; |
| 16 | 16 | import com.sap.sse.gwt.client.controls.datetime.DateTimeInput.Accuracy; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/RaceLogCourseManagementWidget.java
| ... | ... | @@ -8,13 +8,13 @@ import com.google.gwt.event.dom.client.ClickEvent; |
| 8 | 8 | import com.google.gwt.event.dom.client.ClickHandler; |
| 9 | 9 | import com.google.gwt.user.client.rpc.AsyncCallback; |
| 10 | 10 | import com.google.gwt.user.client.ui.Button; |
| 11 | -import com.sap.sailing.domain.common.Position; |
|
| 12 | 11 | import com.sap.sailing.domain.common.orc.impl.ORCPerformanceCurveLegImpl; |
| 13 | 12 | import com.sap.sailing.gwt.ui.adminconsole.places.AdminConsoleView.Presenter; |
| 14 | 13 | import com.sap.sailing.gwt.ui.client.SailingServiceAsync; |
| 15 | 14 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 16 | 15 | import com.sap.sailing.gwt.ui.shared.MarkDTO; |
| 17 | 16 | import com.sap.sailing.gwt.ui.shared.RaceCourseDTO; |
| 17 | +import com.sap.sse.common.Position; |
|
| 18 | 18 | import com.sap.sse.common.TimePoint; |
| 19 | 19 | import com.sap.sse.common.Util.Pair; |
| 20 | 20 | import com.sap.sse.gwt.client.celltable.ImagesBarColumn; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/StructureImportManagementPanel.java
| ... | ... | @@ -34,7 +34,6 @@ import com.google.gwt.view.client.SelectionChangeEvent.Handler; |
| 34 | 34 | import com.sap.sailing.domain.common.RankingMetrics; |
| 35 | 35 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 36 | 36 | import com.sap.sailing.domain.common.dto.BoatClassDTO; |
| 37 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 38 | 37 | import com.sap.sailing.gwt.ui.adminconsole.StructureImportListComposite.RegattaStructureProvider; |
| 39 | 38 | import com.sap.sailing.gwt.ui.adminconsole.places.AdminConsoleView.Presenter; |
| 40 | 39 | import com.sap.sailing.gwt.ui.adminconsole.swisstiming.SwissTimingEventIdUrlUtil; |
| ... | ... | @@ -47,6 +46,7 @@ import com.sap.sailing.gwt.ui.shared.LeaderboardGroupDTO; |
| 47 | 46 | import com.sap.sailing.gwt.ui.shared.RegattaDTO; |
| 48 | 47 | import com.sap.sailing.gwt.ui.shared.SeriesDTO; |
| 49 | 48 | import com.sap.sse.common.Util; |
| 49 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 50 | 50 | import com.sap.sse.common.util.NaturalComparator; |
| 51 | 51 | import com.sap.sse.gwt.client.ErrorReporter; |
| 52 | 52 | import com.sap.sse.gwt.client.Notification; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/coursecreation/CourseConfigurationEditDialog.java
| ... | ... | @@ -4,7 +4,6 @@ import java.util.List; |
| 4 | 4 | |
| 5 | 5 | import com.google.gwt.user.client.ui.Grid; |
| 6 | 6 | import com.google.gwt.user.client.ui.Widget; |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | 7 | import com.sap.sailing.gwt.ui.client.SailingServiceAsync; |
| 9 | 8 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 10 | 9 | import com.sap.sailing.gwt.ui.shared.DeviceMappingDTO; |
| ... | ... | @@ -12,6 +11,7 @@ import com.sap.sailing.gwt.ui.shared.courseCreation.CourseConfigurationDTO; |
| 12 | 11 | import com.sap.sailing.gwt.ui.shared.courseCreation.CourseTemplateDTO; |
| 13 | 12 | import com.sap.sailing.gwt.ui.shared.courseCreation.MarkRoleDTO; |
| 14 | 13 | import com.sap.sailing.gwt.ui.shared.courseCreation.MarkTemplateDTO; |
| 14 | +import com.sap.sse.common.Position; |
|
| 15 | 15 | import com.sap.sse.gwt.client.dialog.DataEntryDialog; |
| 16 | 16 | |
| 17 | 17 | /** |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/coursecreation/MarkPropertiesPanel.java
| ... | ... | @@ -32,13 +32,13 @@ import com.google.gwt.user.client.ui.AbstractImagePrototype; |
| 32 | 32 | import com.google.gwt.user.client.ui.FlowPanel; |
| 33 | 33 | import com.google.gwt.user.client.ui.Label; |
| 34 | 34 | import com.google.gwt.view.client.ListDataProvider; |
| 35 | -import com.sap.sailing.domain.common.Position; |
|
| 36 | 35 | import com.sap.sailing.domain.common.security.SecuredDomainType; |
| 37 | 36 | import com.sap.sailing.gwt.ui.adminconsole.AdminConsoleResources; |
| 38 | 37 | import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync; |
| 39 | 38 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 40 | 39 | import com.sap.sailing.gwt.ui.shared.DeviceIdentifierDTO; |
| 41 | 40 | import com.sap.sailing.gwt.ui.shared.courseCreation.MarkPropertiesDTO; |
| 41 | +import com.sap.sse.common.Position; |
|
| 42 | 42 | import com.sap.sse.common.Util; |
| 43 | 43 | import com.sap.sse.gwt.adminconsole.AdminConsoleTableResources; |
| 44 | 44 | import com.sap.sse.gwt.adminconsole.FilterablePanelProvider; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/coursecreation/MarkPropertiesPositionEditDialog.java
| ... | ... | @@ -3,9 +3,9 @@ package com.sap.sailing.gwt.ui.adminconsole.coursecreation; |
| 3 | 3 | import com.google.gwt.user.client.ui.Grid; |
| 4 | 4 | import com.google.gwt.user.client.ui.Label; |
| 5 | 5 | import com.google.gwt.user.client.ui.Widget; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 8 | 6 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 9 | 9 | import com.sap.sse.gwt.client.dialog.DataEntryDialog; |
| 10 | 10 | import com.sap.sse.gwt.client.dialog.DoubleBox; |
| 11 | 11 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SailingService.java
| ... | ... | @@ -39,8 +39,6 @@ import com.sap.sailing.domain.common.dto.PairingListTemplateDTO; |
| 39 | 39 | import com.sap.sailing.domain.common.dto.PersonDTO; |
| 40 | 40 | import com.sap.sailing.domain.common.dto.RaceColumnDTO; |
| 41 | 41 | import com.sap.sailing.domain.common.dto.TagDTO; |
| 42 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 43 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 44 | 42 | import com.sap.sailing.domain.common.orc.ImpliedWindSource; |
| 45 | 43 | import com.sap.sailing.domain.common.orc.ORCCertificate; |
| 46 | 44 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveLegTypes; |
| ... | ... | @@ -107,6 +105,8 @@ import com.sap.sse.common.TimeRange; |
| 107 | 105 | import com.sap.sse.common.Util; |
| 108 | 106 | import com.sap.sse.common.Util.Pair; |
| 109 | 107 | import com.sap.sse.common.Util.Triple; |
| 108 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 109 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 110 | 110 | import com.sap.sse.common.impl.SecondsDurationImpl; |
| 111 | 111 | import com.sap.sse.gwt.client.replication.RemoteReplicationService; |
| 112 | 112 | import com.sap.sse.security.shared.HasPermissions; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SailingServiceAsync.java
| ... | ... | @@ -37,8 +37,6 @@ import com.sap.sailing.domain.common.dto.PairingListTemplateDTO; |
| 37 | 37 | import com.sap.sailing.domain.common.dto.PersonDTO; |
| 38 | 38 | import com.sap.sailing.domain.common.dto.RaceColumnDTO; |
| 39 | 39 | import com.sap.sailing.domain.common.dto.TagDTO; |
| 40 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 41 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 42 | 40 | import com.sap.sailing.domain.common.orc.ImpliedWindSource; |
| 43 | 41 | import com.sap.sailing.domain.common.orc.ORCCertificate; |
| 44 | 42 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveLegTypes; |
| ... | ... | @@ -104,6 +102,8 @@ import com.sap.sse.common.TimeRange; |
| 104 | 102 | import com.sap.sse.common.Util; |
| 105 | 103 | import com.sap.sse.common.Util.Pair; |
| 106 | 104 | import com.sap.sse.common.Util.Triple; |
| 105 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 106 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 107 | 107 | import com.sap.sse.common.impl.SecondsDurationImpl; |
| 108 | 108 | import com.sap.sse.gwt.client.replication.RemoteReplicationServiceAsync; |
| 109 | 109 | import com.sap.sse.pairinglist.PairingList; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SailingServiceWrite.java
| ... | ... | @@ -24,7 +24,6 @@ import com.sap.sailing.domain.common.MaxPointsReason; |
| 24 | 24 | import com.sap.sailing.domain.common.NoWindException; |
| 25 | 25 | import com.sap.sailing.domain.common.NotFoundException; |
| 26 | 26 | import com.sap.sailing.domain.common.PassingInstruction; |
| 27 | -import com.sap.sailing.domain.common.Position; |
|
| 28 | 27 | import com.sap.sailing.domain.common.RaceIdentifier; |
| 29 | 28 | import com.sap.sailing.domain.common.RankingMetrics; |
| 30 | 29 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| ... | ... | @@ -97,6 +96,7 @@ import com.sap.sailing.gwt.ui.shared.courseCreation.MarkRoleDTO; |
| 97 | 96 | import com.sap.sailing.gwt.ui.shared.courseCreation.MarkTemplateDTO; |
| 98 | 97 | import com.sap.sse.common.Duration; |
| 99 | 98 | import com.sap.sse.common.NoCorrespondingServiceRegisteredException; |
| 99 | +import com.sap.sse.common.Position; |
|
| 100 | 100 | import com.sap.sse.common.TimePoint; |
| 101 | 101 | import com.sap.sse.common.TransformationException; |
| 102 | 102 | import com.sap.sse.common.Util; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SailingServiceWriteAsync.java
| ... | ... | @@ -18,7 +18,6 @@ import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 18 | 18 | import com.sap.sailing.domain.common.DataImportProgress; |
| 19 | 19 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 20 | 20 | import com.sap.sailing.domain.common.PassingInstruction; |
| 21 | -import com.sap.sailing.domain.common.Position; |
|
| 22 | 21 | import com.sap.sailing.domain.common.RaceIdentifier; |
| 23 | 22 | import com.sap.sailing.domain.common.RankingMetrics; |
| 24 | 23 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| ... | ... | @@ -82,6 +81,7 @@ import com.sap.sailing.gwt.ui.shared.courseCreation.MarkPropertiesDTO; |
| 82 | 81 | import com.sap.sailing.gwt.ui.shared.courseCreation.MarkRoleDTO; |
| 83 | 82 | import com.sap.sailing.gwt.ui.shared.courseCreation.MarkTemplateDTO; |
| 84 | 83 | import com.sap.sse.common.Duration; |
| 84 | +import com.sap.sse.common.Position; |
|
| 85 | 85 | import com.sap.sse.common.TimePoint; |
| 86 | 86 | import com.sap.sse.common.Util; |
| 87 | 87 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SimulatorService.java
| ... | ... | @@ -3,7 +3,6 @@ package com.sap.sailing.gwt.ui.client; |
| 3 | 3 | import java.util.List; |
| 4 | 4 | |
| 5 | 5 | import com.google.gwt.user.client.rpc.RemoteService; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sailing.gwt.ui.shared.BoatClassDTOsAndNotificationMessage; |
| 8 | 7 | import com.sap.sailing.gwt.ui.shared.ConfigurationException; |
| 9 | 8 | import com.sap.sailing.gwt.ui.shared.PolarDiagramDTOAndNotificationMessage; |
| ... | ... | @@ -20,6 +19,7 @@ import com.sap.sailing.gwt.ui.shared.WindLatticeGenParamsDTO; |
| 20 | 19 | import com.sap.sailing.gwt.ui.shared.WindPatternDTO; |
| 21 | 20 | import com.sap.sailing.gwt.ui.simulator.windpattern.WindPatternDisplay; |
| 22 | 21 | import com.sap.sailing.gwt.ui.simulator.windpattern.WindPatternNotFoundException; |
| 22 | +import com.sap.sse.common.Position; |
|
| 23 | 23 | |
| 24 | 24 | public interface SimulatorService extends RemoteService { |
| 25 | 25 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/SimulatorServiceAsync.java
| ... | ... | @@ -3,7 +3,6 @@ package com.sap.sailing.gwt.ui.client; |
| 3 | 3 | import java.util.List; |
| 4 | 4 | |
| 5 | 5 | import com.google.gwt.user.client.rpc.AsyncCallback; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sailing.gwt.ui.shared.BoatClassDTOsAndNotificationMessage; |
| 8 | 7 | import com.sap.sailing.gwt.ui.shared.PolarDiagramDTOAndNotificationMessage; |
| 9 | 8 | import com.sap.sailing.gwt.ui.shared.Request1TurnerDTO; |
| ... | ... | @@ -18,6 +17,7 @@ import com.sap.sailing.gwt.ui.shared.WindLatticeDTO; |
| 18 | 17 | import com.sap.sailing.gwt.ui.shared.WindLatticeGenParamsDTO; |
| 19 | 18 | import com.sap.sailing.gwt.ui.shared.WindPatternDTO; |
| 20 | 19 | import com.sap.sailing.gwt.ui.simulator.windpattern.WindPatternDisplay; |
| 20 | +import com.sap.sse.common.Position; |
|
| 21 | 21 | |
| 22 | 22 | public interface SimulatorServiceAsync { |
| 23 | 23 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/WindIndicator.java
| ... | ... | @@ -5,9 +5,9 @@ import com.google.gwt.canvas.dom.client.Context2d; |
| 5 | 5 | import com.google.gwt.canvas.dom.client.Context2d.LineCap; |
| 6 | 6 | import com.google.gwt.event.logical.shared.AttachEvent; |
| 7 | 7 | import com.google.gwt.user.client.ui.Composite; |
| 8 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 9 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 8 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 10 | 9 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 10 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 11 | 11 | |
| 12 | 12 | /** |
| 13 | 13 | * WindIndicator Widget allows visualizing the wind direction and other wind related information. |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/charts/EditMarkPositionPanel.java
| ... | ... | @@ -78,10 +78,8 @@ import com.google.gwt.user.client.ui.RequiresResize; |
| 78 | 78 | import com.google.gwt.user.client.ui.Widget; |
| 79 | 79 | import com.google.gwt.view.client.SelectionChangeEvent; |
| 80 | 80 | import com.sap.sailing.domain.common.FixType; |
| 81 | -import com.sap.sailing.domain.common.Position; |
|
| 82 | 81 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 83 | 82 | import com.sap.sailing.domain.common.dto.LeaderboardDTO; |
| 84 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 85 | 83 | import com.sap.sailing.gwt.ui.client.SailingServiceAsync; |
| 86 | 84 | import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync; |
| 87 | 85 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| ... | ... | @@ -97,7 +95,9 @@ import com.sap.sailing.gwt.ui.shared.GPSFixDTOWithSpeedWindTackAndLegType; |
| 97 | 95 | import com.sap.sailing.gwt.ui.shared.MarkDTO; |
| 98 | 96 | import com.sap.sailing.gwt.ui.shared.WindDTO; |
| 99 | 97 | import com.sap.sailing.gwt.ui.shared.racemap.CanvasOverlayV3; |
| 98 | +import com.sap.sse.common.Position; |
|
| 100 | 99 | import com.sap.sse.common.Util.Pair; |
| 100 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 101 | 101 | import com.sap.sse.common.settings.AbstractSettings; |
| 102 | 102 | import com.sap.sse.gwt.client.ErrorReporter; |
| 103 | 103 | import com.sap.sse.gwt.client.Notification; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/charts/FixPositionChooser.java
| ... | ... | @@ -19,13 +19,13 @@ import com.google.gwt.maps.client.mvc.MVCArray; |
| 19 | 19 | import com.google.gwt.user.client.ui.MenuBar; |
| 20 | 20 | import com.google.gwt.user.client.ui.MenuItem; |
| 21 | 21 | import com.sap.sailing.domain.common.FixType; |
| 22 | -import com.sap.sailing.domain.common.Position; |
|
| 23 | 22 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 24 | 23 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 25 | 24 | import com.sap.sailing.gwt.ui.client.shared.racemap.FixOverlay; |
| 26 | 25 | import com.sap.sailing.gwt.ui.shared.GPSFixDTO; |
| 27 | 26 | import com.sap.sailing.gwt.ui.shared.GPSFixDTOWithSpeedWindTackAndLegType; |
| 28 | 27 | import com.sap.sailing.gwt.ui.shared.WindDTO; |
| 28 | +import com.sap.sse.common.Position; |
|
| 29 | 29 | |
| 30 | 30 | public class FixPositionChooser { |
| 31 | 31 | private final Callback<Position, Exception> callback; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/charts/MarkPositionService.java
| ... | ... | @@ -2,10 +2,10 @@ package com.sap.sailing.gwt.ui.client.shared.charts; |
| 2 | 2 | |
| 3 | 3 | import com.google.gwt.user.client.rpc.AsyncCallback; |
| 4 | 4 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | 5 | import com.sap.sailing.gwt.ui.client.shared.charts.RaceIdentifierToLeaderboardRaceColumnAndFleetMapper.LeaderboardNameRaceColumnNameAndFleetName; |
| 7 | 6 | import com.sap.sailing.gwt.ui.shared.GPSFixDTO; |
| 8 | 7 | import com.sap.sailing.gwt.ui.shared.MarkDTO; |
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | 9 | |
| 10 | 10 | public interface MarkPositionService { |
| 11 | 11 | public static class MarkTrackDTO implements IsSerializable { |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/charts/MarkPositionServiceForSailingService.java
| ... | ... | @@ -1,11 +1,11 @@ |
| 1 | 1 | package com.sap.sailing.gwt.ui.client.shared.charts; |
| 2 | 2 | |
| 3 | 3 | import com.google.gwt.user.client.rpc.AsyncCallback; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 4 | import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync; |
| 6 | 5 | import com.sap.sailing.gwt.ui.client.shared.charts.RaceIdentifierToLeaderboardRaceColumnAndFleetMapper.LeaderboardNameRaceColumnNameAndFleetName; |
| 7 | 6 | import com.sap.sailing.gwt.ui.shared.GPSFixDTO; |
| 8 | 7 | import com.sap.sailing.gwt.ui.shared.MarkDTO; |
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | 9 | |
| 10 | 10 | public class MarkPositionServiceForSailingService implements MarkPositionService { |
| 11 | 11 | private final SailingServiceWriteAsync sailingServiceWrite; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/charts/MarksPanel.java
| ... | ... | @@ -16,12 +16,12 @@ import com.google.gwt.user.client.ui.Label; |
| 16 | 16 | import com.google.gwt.user.client.ui.Widget; |
| 17 | 17 | import com.google.gwt.view.client.ListDataProvider; |
| 18 | 18 | import com.google.gwt.view.client.SingleSelectionModel; |
| 19 | -import com.sap.sailing.domain.common.Position; |
|
| 20 | 19 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 21 | 20 | import com.sap.sailing.gwt.ui.client.shared.charts.EditMarkPositionPanel.NotificationType; |
| 22 | 21 | import com.sap.sailing.gwt.ui.leaderboard.LeaderboardTableResources; |
| 23 | 22 | import com.sap.sailing.gwt.ui.shared.MarkDTO; |
| 24 | 23 | import com.sap.sse.common.InvertibleComparator; |
| 24 | +import com.sap.sse.common.Position; |
|
| 25 | 25 | import com.sap.sse.common.SortingOrder; |
| 26 | 26 | import com.sap.sse.common.impl.InvertibleComparatorAdapter; |
| 27 | 27 | import com.sap.sse.common.settings.AbstractSettings; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/BoundsUtil.java
| ... | ... | @@ -3,14 +3,14 @@ package com.sap.sailing.gwt.ui.client.shared.racemap; |
| 3 | 3 | import com.google.gwt.maps.client.MapWidget; |
| 4 | 4 | import com.google.gwt.maps.client.base.LatLng; |
| 5 | 5 | import com.google.gwt.maps.client.base.LatLngBounds; |
| 6 | -import com.sap.sailing.domain.common.Bounds; |
|
| 7 | 6 | import com.sap.sailing.domain.common.NonCardinalBounds; |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | -import com.sap.sailing.domain.common.impl.BoundsImpl; |
|
| 10 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 11 | 7 | import com.sap.sse.common.Bearing; |
| 8 | +import com.sap.sse.common.Bounds; |
|
| 12 | 9 | import com.sap.sse.common.Distance; |
| 10 | +import com.sap.sse.common.Position; |
|
| 11 | +import com.sap.sse.common.impl.BoundsImpl; |
|
| 13 | 12 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 13 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 14 | 14 | |
| 15 | 15 | /** |
| 16 | 16 | * Converts between {@link Bounds} and {@link LatLngBounds}. |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/CompetitorInfoOverlay.java
| ... | ... | @@ -6,9 +6,9 @@ import com.google.gwt.canvas.dom.client.TextMetrics; |
| 6 | 6 | import com.google.gwt.maps.client.MapWidget; |
| 7 | 7 | import com.google.gwt.maps.client.base.LatLng; |
| 8 | 8 | import com.google.gwt.maps.client.base.Point; |
| 9 | -import com.sap.sailing.domain.common.Position; |
|
| 10 | 9 | import com.sap.sailing.gwt.ui.shared.racemap.CanvasOverlayV3; |
| 11 | 10 | import com.sap.sse.common.Color; |
| 11 | +import com.sap.sse.common.Position; |
|
| 12 | 12 | |
| 13 | 13 | /** |
| 14 | 14 | * A google map overlay based on a HTML5 canvas for drawing a competitor info on a map at a given position. |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/CoordinateSystem.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.gwt.ui.client.shared.racemap; |
| 2 | 2 | |
| 3 | 3 | import com.google.gwt.maps.client.base.LatLng; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 4 | import com.sap.sse.common.Bearing; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | 6 | |
| 7 | 7 | /** |
| 8 | 8 | * Maps original coordinates, headings, bearings, and directions to a map coordinate space. The default mapping will |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/CourseAreaCircleOverlay.java
| ... | ... | @@ -9,10 +9,10 @@ import com.google.gwt.maps.client.base.LatLng; |
| 9 | 9 | import com.google.gwt.maps.client.base.Point; |
| 10 | 10 | import com.google.gwt.maps.client.overlays.overlayhandlers.OverlayViewMethods; |
| 11 | 11 | import com.google.gwt.maps.client.overlays.overlayhandlers.OverlayViewOnAddHandler; |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | 12 | import com.sap.sailing.domain.common.dto.CourseAreaDTO; |
| 14 | 13 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 15 | 14 | import com.sap.sailing.gwt.ui.shared.racemap.CanvasOverlayV3; |
| 15 | +import com.sap.sse.common.Position; |
|
| 16 | 16 | |
| 17 | 17 | /** |
| 18 | 18 | * A google map overlay based on a HTML5 canvas for drawing a course area circle with a center point that has |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/CourseMarkOverlay.java
| ... | ... | @@ -10,8 +10,6 @@ import com.google.gwt.maps.client.base.LatLng; |
| 10 | 10 | import com.google.gwt.maps.client.base.Point; |
| 11 | 11 | import com.google.gwt.maps.client.base.Size; |
| 12 | 12 | import com.sap.sailing.domain.common.MarkType; |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 15 | 13 | import com.sap.sailing.gwt.ui.shared.CoursePositionsDTO; |
| 16 | 14 | import com.sap.sailing.gwt.ui.shared.MarkDTO; |
| 17 | 15 | import com.sap.sailing.gwt.ui.shared.racemap.CanvasOverlayV3; |
| ... | ... | @@ -19,7 +17,9 @@ import com.sap.sailing.gwt.ui.shared.racemap.MarkVectorGraphics; |
| 19 | 17 | import com.sap.sailing.gwt.ui.shared.racemap.MarkVectorGraphicsFactory; |
| 20 | 18 | import com.sap.sse.common.Bearing; |
| 21 | 19 | import com.sap.sse.common.Distance; |
| 20 | +import com.sap.sse.common.Position; |
|
| 22 | 21 | import com.sap.sse.common.Util; |
| 22 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 23 | 23 | |
| 24 | 24 | /** |
| 25 | 25 | * A google map overlay based on a HTML5 canvas for drawing course marks (canvases) and the buoy zone if the mark is a buoy. |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/DelegateCoordinateSystem.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.gwt.ui.client.shared.racemap; |
| 2 | 2 | |
| 3 | 3 | import com.google.gwt.maps.client.base.LatLng; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 4 | import com.sap.sse.common.Bearing; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | 6 | |
| 7 | 7 | /** |
| 8 | 8 | * Holds a {@link CoordinateSystem} that can be exchanged, using {@link #setCoordinateSystem}. |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/IdentityCoordinateSystem.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.gwt.ui.client.shared.racemap; |
| 2 | 2 | |
| 3 | 3 | import com.google.gwt.maps.client.base.LatLng; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 6 | 4 | import com.sap.sse.common.Bearing; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 7 | 7 | |
| 8 | 8 | public class IdentityCoordinateSystem implements CoordinateSystem { |
| 9 | 9 | @Override |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/ManeuverAngleCache.java
| ... | ... | @@ -10,12 +10,12 @@ import com.google.gwt.core.client.GWT; |
| 10 | 10 | import com.google.gwt.user.client.rpc.AsyncCallback; |
| 11 | 11 | import com.sap.sailing.domain.common.ManeuverType; |
| 12 | 12 | import com.sap.sailing.domain.common.dto.BoatClassDTO; |
| 13 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 14 | 13 | import com.sap.sailing.gwt.ui.client.SailingServiceAsync; |
| 15 | 14 | import com.sap.sailing.gwt.ui.shared.BearingWithConfidenceDTO; |
| 16 | 15 | import com.sap.sse.common.Bearing; |
| 17 | 16 | import com.sap.sse.common.Speed; |
| 18 | 17 | import com.sap.sse.common.Util.Triple; |
| 18 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 19 | 19 | |
| 20 | 20 | /** |
| 21 | 21 | * Cache for maneuver angles for different boat classes, maneuver types and wind speeds. |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/ManeuverMarkersAndLossIndicators.java
| ... | ... | @@ -25,7 +25,6 @@ import com.google.gwt.user.client.ui.HorizontalPanel; |
| 25 | 25 | import com.google.gwt.user.client.ui.VerticalPanel; |
| 26 | 26 | import com.google.gwt.user.client.ui.Widget; |
| 27 | 27 | import com.sap.sailing.domain.common.ManeuverType; |
| 28 | -import com.sap.sailing.domain.common.Position; |
|
| 29 | 28 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 30 | 29 | import com.sap.sailing.domain.common.dto.CompetitorDTO; |
| 31 | 30 | import com.sap.sailing.domain.maneuverdetection.impl.ManeuverDetectorImpl; |
| ... | ... | @@ -38,6 +37,7 @@ import com.sap.sailing.gwt.ui.shared.ManeuverDTO; |
| 38 | 37 | import com.sap.sailing.gwt.ui.shared.SpeedWithBearingDTO; |
| 39 | 38 | import com.sap.sse.common.Bearing; |
| 40 | 39 | import com.sap.sse.common.Distance; |
| 40 | +import com.sap.sse.common.Position; |
|
| 41 | 41 | import com.sap.sse.common.TimeRange; |
| 42 | 42 | import com.sap.sse.common.Util.Pair; |
| 43 | 43 | import com.sap.sse.common.Util.Triple; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/RaceMap.java
| ... | ... | @@ -81,7 +81,6 @@ import com.google.gwt.user.client.ui.Widget; |
| 81 | 81 | import com.sap.sailing.domain.common.DetailType; |
| 82 | 82 | import com.sap.sailing.domain.common.ManeuverType; |
| 83 | 83 | import com.sap.sailing.domain.common.NonCardinalBounds; |
| 84 | -import com.sap.sailing.domain.common.Position; |
|
| 85 | 84 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 86 | 85 | import com.sap.sailing.domain.common.WindSource; |
| 87 | 86 | import com.sap.sailing.domain.common.WindSourceType; |
| ... | ... | @@ -90,10 +89,6 @@ import com.sap.sailing.domain.common.dto.CompetitorDTO; |
| 90 | 89 | import com.sap.sailing.domain.common.dto.CompetitorWithBoatDTO; |
| 91 | 90 | import com.sap.sailing.domain.common.dto.CourseAreaDTO; |
| 92 | 91 | import com.sap.sailing.domain.common.dto.LeaderboardDTO; |
| 93 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 94 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 95 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 96 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalablePosition; |
|
| 97 | 92 | import com.sap.sailing.domain.common.security.SecuredDomainType; |
| 98 | 93 | import com.sap.sailing.domain.common.security.SecuredDomainType.TrackedRaceActions; |
| 99 | 94 | import com.sap.sailing.domain.common.windfinder.SpotDTO; |
| ... | ... | @@ -160,6 +155,7 @@ import com.sap.sse.common.ColorMapper; |
| 160 | 155 | import com.sap.sse.common.ColorMapperChangedListener; |
| 161 | 156 | import com.sap.sse.common.Distance; |
| 162 | 157 | import com.sap.sse.common.Duration; |
| 158 | +import com.sap.sse.common.Position; |
|
| 163 | 159 | import com.sap.sse.common.TimePoint; |
| 164 | 160 | import com.sap.sse.common.TimeRange; |
| 165 | 161 | import com.sap.sse.common.Util; |
| ... | ... | @@ -168,9 +164,13 @@ import com.sap.sse.common.ValueRangeFlexibleBoundaries; |
| 168 | 164 | import com.sap.sse.common.filter.Filter; |
| 169 | 165 | import com.sap.sse.common.filter.FilterSet; |
| 170 | 166 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 167 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 168 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 171 | 169 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 172 | 170 | import com.sap.sse.common.impl.RGBColor; |
| 173 | 171 | import com.sap.sse.common.impl.TimeRangeImpl; |
| 172 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 173 | +import com.sap.sse.common.scalablevalue.impl.ScalablePosition; |
|
| 174 | 174 | import com.sap.sse.gwt.client.DOMUtils; |
| 175 | 175 | import com.sap.sse.gwt.client.DateAndTimeFormatterUtil; |
| 176 | 176 | import com.sap.sse.gwt.client.ErrorReporter; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/RaceMapSettings.java
| ... | ... | @@ -5,14 +5,14 @@ import java.util.HashSet; |
| 5 | 5 | import java.util.Set; |
| 6 | 6 | |
| 7 | 7 | import com.sap.sailing.domain.common.ManeuverType; |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 10 | 8 | import com.sap.sailing.domain.common.security.SecuredDomainType.TrackedRaceActions; |
| 11 | 9 | import com.sap.sailing.gwt.settings.client.settingtypes.DistanceSetting; |
| 12 | 10 | import com.sap.sailing.gwt.ui.client.shared.racemap.RaceMapHelpLinesSettings.HelpLineTypes; |
| 13 | 11 | import com.sap.sse.common.Distance; |
| 14 | 12 | import com.sap.sse.common.Duration; |
| 13 | +import com.sap.sse.common.Position; |
|
| 15 | 14 | import com.sap.sse.common.Util; |
| 15 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 16 | 16 | import com.sap.sse.common.settings.generic.AbstractGenericSerializableSettingsWithContext; |
| 17 | 17 | import com.sap.sse.common.settings.generic.BooleanSetting; |
| 18 | 18 | import com.sap.sse.common.settings.generic.DoubleSetting; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/RaceMapSettingsDialogComponent.java
| ... | ... | @@ -18,7 +18,6 @@ import com.google.gwt.user.client.ui.LongBox; |
| 18 | 18 | import com.google.gwt.user.client.ui.VerticalPanel; |
| 19 | 19 | import com.google.gwt.user.client.ui.Widget; |
| 20 | 20 | import com.sap.sailing.domain.common.ManeuverType; |
| 21 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 22 | 21 | import com.sap.sailing.gwt.common.client.premium.SailingPremiumCheckBox; |
| 23 | 22 | import com.sap.sailing.gwt.ui.client.ManeuverTypeFormatter; |
| 24 | 23 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| ... | ... | @@ -26,6 +25,7 @@ import com.sap.sailing.gwt.ui.client.shared.racemap.RaceMapHelpLinesSettings.Hel |
| 26 | 25 | import com.sap.sailing.gwt.ui.client.shared.racemap.RaceMapZoomSettings.ZoomTypes; |
| 27 | 26 | import com.sap.sse.common.Distance; |
| 28 | 27 | import com.sap.sse.common.Util; |
| 28 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 29 | 29 | import com.sap.sse.gwt.client.controls.IntegerBox; |
| 30 | 30 | import com.sap.sse.gwt.client.dialog.DataEntryDialog; |
| 31 | 31 | import com.sap.sse.gwt.client.dialog.DataEntryDialog.Validator; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/RotateAndTranslateCoordinateSystem.java
| ... | ... | @@ -1,10 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.gwt.ui.client.shared.racemap; |
| 2 | 2 | |
| 3 | 3 | import com.google.gwt.maps.client.base.LatLng; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 6 | 4 | import com.sap.sse.common.Bearing; |
| 5 | +import com.sap.sse.common.Position; |
|
| 7 | 6 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 7 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 8 | 8 | |
| 9 | 9 | /** |
| 10 | 10 | * Translates and rotates a coordinate space. The translation is specified by providing the position |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/RotatedCoordinateSystem.java
| ... | ... | @@ -1,10 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.gwt.ui.client.shared.racemap; |
| 2 | 2 | |
| 3 | 3 | import com.google.gwt.maps.client.base.LatLng; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 6 | 4 | import com.sap.sse.common.Bearing; |
| 5 | +import com.sap.sse.common.Position; |
|
| 7 | 6 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 7 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 8 | 8 | |
| 9 | 9 | /** |
| 10 | 10 | * Rotates a coordinate space regarding the calculation of bearings. The rotation is defined by a new equator direction. |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/SmallTransparentInfoOverlay.java
| ... | ... | @@ -6,8 +6,8 @@ import com.google.gwt.canvas.dom.client.TextMetrics; |
| 6 | 6 | import com.google.gwt.maps.client.MapWidget; |
| 7 | 7 | import com.google.gwt.maps.client.base.LatLng; |
| 8 | 8 | import com.google.gwt.maps.client.base.Point; |
| 9 | -import com.sap.sailing.domain.common.Position; |
|
| 10 | 9 | import com.sap.sailing.gwt.ui.shared.racemap.CanvasOverlayV3; |
| 10 | +import com.sap.sse.common.Position; |
|
| 11 | 11 | |
| 12 | 12 | /** |
| 13 | 13 | * A google map overlay based on a HTML5 canvas for drawing a short textual information close to some object on a map |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/WindSensorOverlay.java
| ... | ... | @@ -3,13 +3,13 @@ package com.sap.sailing.gwt.ui.client.shared.racemap; |
| 3 | 3 | import com.google.gwt.i18n.client.NumberFormat; |
| 4 | 4 | import com.google.gwt.maps.client.MapWidget; |
| 5 | 5 | import com.google.gwt.maps.client.base.Point; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sailing.domain.common.WindSource; |
| 8 | 7 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 9 | 8 | import com.sap.sailing.gwt.ui.client.WindSourceTypeFormatter; |
| 10 | 9 | import com.sap.sailing.gwt.ui.shared.WindDTO; |
| 11 | 10 | import com.sap.sailing.gwt.ui.shared.WindTrackInfoDTO; |
| 12 | 11 | import com.sap.sailing.gwt.ui.shared.racemap.CanvasOverlayV3; |
| 12 | +import com.sap.sse.common.Position; |
|
| 13 | 13 | |
| 14 | 14 | /** |
| 15 | 15 | * A google map overlay based on a HTML5 canvas for drawing a wind sensor (as an rotating arrow) |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/windladder/LaylineClipper.java
| ... | ... | @@ -9,9 +9,9 @@ import com.google.gwt.maps.client.base.Point; |
| 9 | 9 | import com.google.gwt.maps.client.overlays.MapCanvasProjection; |
| 10 | 10 | import com.sap.sailing.domain.common.LegType; |
| 11 | 11 | import com.sap.sailing.domain.common.PassingInstruction; |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | 12 | import com.sap.sailing.gwt.ui.shared.MarkDTO; |
| 14 | 13 | import com.sap.sailing.gwt.ui.shared.WaypointDTO; |
| 14 | +import com.sap.sse.common.Position; |
|
| 15 | 15 | |
| 16 | 16 | public class LaylineClipper { |
| 17 | 17 | protected final List<Position> markPositions = new ArrayList<>(1); |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/windladder/WindLadder.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.gwt.ui.client.shared.racemap.windladder; |
| 2 | 2 | |
| 3 | 3 | import com.google.gwt.maps.client.MapWidget; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | 4 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 6 | 5 | import com.sap.sailing.gwt.ui.shared.WindDTO; |
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | 7 | |
| 8 | 8 | /** |
| 9 | 9 | * <p>Main WindLadder component.</p> |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/windladder/WindLadderOverlay.java
| ... | ... | @@ -7,9 +7,9 @@ import com.google.gwt.maps.client.MapWidget; |
| 7 | 7 | import com.google.gwt.maps.client.base.Point; |
| 8 | 8 | import com.google.gwt.maps.client.overlays.overlayhandlers.OverlayViewMethods; |
| 9 | 9 | import com.google.gwt.maps.client.overlays.overlayhandlers.OverlayViewOnAddHandler; |
| 10 | -import com.sap.sailing.domain.common.Position; |
|
| 11 | 10 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 12 | 11 | import com.sap.sailing.gwt.ui.simulator.racemap.FullCanvasOverlay; |
| 12 | +import com.sap.sse.common.Position; |
|
| 13 | 13 | |
| 14 | 14 | /** |
| 15 | 15 | * <p>The visible overlay used by {@link WindLadder} to draw the actual wind ladder to screen.</p> |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/leaderboard/LeaderboardPanel.java
| ... | ... | @@ -61,7 +61,6 @@ import com.google.gwt.view.client.SelectionChangeEvent.Handler; |
| 61 | 61 | import com.sap.sailing.domain.common.DetailType; |
| 62 | 62 | import com.sap.sailing.domain.common.LeaderboardNameConstants; |
| 63 | 63 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 64 | -import com.sap.sailing.domain.common.Mile; |
|
| 65 | 64 | import com.sap.sailing.domain.common.RaceIdentifier; |
| 66 | 65 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 67 | 66 | import com.sap.sailing.domain.common.Tack; |
| ... | ... | @@ -97,6 +96,7 @@ import com.sap.sse.common.CountryCodeFactory; |
| 97 | 96 | import com.sap.sse.common.Distance; |
| 98 | 97 | import com.sap.sse.common.Duration; |
| 99 | 98 | import com.sap.sse.common.InvertibleComparator; |
| 99 | +import com.sap.sse.common.Mile; |
|
| 100 | 100 | import com.sap.sse.common.SortingOrder; |
| 101 | 101 | import com.sap.sse.common.Util; |
| 102 | 102 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/leaderboard/RideHeightQualityMinMaxRender.java
| ... | ... | @@ -4,8 +4,8 @@ import java.util.Comparator; |
| 4 | 4 | |
| 5 | 5 | import com.google.gwt.safehtml.shared.SafeHtmlBuilder; |
| 6 | 6 | import com.sap.sailing.domain.common.dto.LeaderboardRowDTO; |
| 7 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 8 | 7 | import com.sap.sailing.domain.common.tracking.BravoFix; |
| 8 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 9 | 9 | |
| 10 | 10 | public class RideHeightQualityMinMaxRender extends MinMaxRenderer<LeaderboardRowDTO> { |
| 11 | 11 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/polarmining/FoilingSegmentsDataMiningSettingsDialogComponent.java
| ... | ... | @@ -6,10 +6,10 @@ import com.google.gwt.user.client.ui.Label; |
| 6 | 6 | import com.google.gwt.user.client.ui.VerticalPanel; |
| 7 | 7 | import com.google.gwt.user.client.ui.Widget; |
| 8 | 8 | import com.sap.sailing.datamining.shared.FoilingSegmentsDataMiningSettings; |
| 9 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 10 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 11 | 9 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 12 | 10 | import com.sap.sailing.polars.datamining.shared.PolarDataMiningSettings; |
| 11 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 12 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 13 | 13 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 14 | 14 | import com.sap.sse.gwt.client.dialog.DataEntryDialog; |
| 15 | 15 | import com.sap.sse.gwt.client.dialog.DataEntryDialog.Validator; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/server/SailingServiceImpl.java
| ... | ... | @@ -163,7 +163,6 @@ import com.sap.sailing.domain.common.NauticalSide; |
| 163 | 163 | import com.sap.sailing.domain.common.NoWindException; |
| 164 | 164 | import com.sap.sailing.domain.common.NotFoundException; |
| 165 | 165 | import com.sap.sailing.domain.common.PathType; |
| 166 | -import com.sap.sailing.domain.common.Position; |
|
| 167 | 166 | import com.sap.sailing.domain.common.RaceFetcher; |
| 168 | 167 | import com.sap.sailing.domain.common.RankingMetrics; |
| 169 | 168 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| ... | ... | @@ -175,7 +174,6 @@ import com.sap.sailing.domain.common.RegattaScoreCorrections; |
| 175 | 174 | import com.sap.sailing.domain.common.RegattaScoreCorrections.ScoreCorrectionForCompetitorInRace; |
| 176 | 175 | import com.sap.sailing.domain.common.RegattaScoreCorrections.ScoreCorrectionsForRace; |
| 177 | 176 | import com.sap.sailing.domain.common.ScoreCorrectionProvider; |
| 178 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 179 | 177 | import com.sap.sailing.domain.common.Tack; |
| 180 | 178 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 181 | 179 | import com.sap.sailing.domain.common.Wind; |
| ... | ... | @@ -203,9 +201,6 @@ import com.sap.sailing.domain.common.dto.RaceLogTrackingInfoDTO; |
| 203 | 201 | import com.sap.sailing.domain.common.dto.SeriesCreationParametersDTO; |
| 204 | 202 | import com.sap.sailing.domain.common.dto.TagDTO; |
| 205 | 203 | import com.sap.sailing.domain.common.dto.TrackedRaceDTO; |
| 206 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 207 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 208 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 209 | 204 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 210 | 205 | import com.sap.sailing.domain.common.media.MediaTrack; |
| 211 | 206 | import com.sap.sailing.domain.common.orc.ImpliedWindSource; |
| ... | ... | @@ -462,8 +457,10 @@ import com.sap.sse.common.Duration; |
| 462 | 457 | import com.sap.sse.common.MultiTimeRange; |
| 463 | 458 | import com.sap.sse.common.NoCorrespondingServiceRegisteredException; |
| 464 | 459 | import com.sap.sse.common.PairingListCreationException; |
| 460 | +import com.sap.sse.common.Position; |
|
| 465 | 461 | import com.sap.sse.common.RepeatablePart; |
| 466 | 462 | import com.sap.sse.common.Speed; |
| 463 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 467 | 464 | import com.sap.sse.common.TimePoint; |
| 468 | 465 | import com.sap.sse.common.TimeRange; |
| 469 | 466 | import com.sap.sse.common.Timed; |
| ... | ... | @@ -474,6 +471,9 @@ import com.sap.sse.common.Util; |
| 474 | 471 | import com.sap.sse.common.Util.Pair; |
| 475 | 472 | import com.sap.sse.common.Util.Triple; |
| 476 | 473 | import com.sap.sse.common.WithID; |
| 474 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 475 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 476 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 477 | 477 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 478 | 478 | import com.sap.sse.common.impl.RepeatablePartImpl; |
| 479 | 479 | import com.sap.sse.common.impl.SecondsDurationImpl; |
| ... | ... | @@ -896,7 +896,7 @@ public class SailingServiceImpl extends ResultCachingProxiedRemoteServiceServlet |
| 896 | 896 | // total distance traveled in meters has to be expanded for the test to work. |
| 897 | 897 | final boolean storeLeaderboardForTesting = false; |
| 898 | 898 | if (storeLeaderboardForTesting) { |
| 899 | - ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(new File("../com.sap.sailing.domain.test/resources/IncrementalLeaderboardDTO.ser"))); |
|
| 899 | + ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(File.createTempFile("IncrementalLeaderboardDTO", ".ser"))); |
|
| 900 | 900 | oos.writeObject(leaderboardDTO); |
| 901 | 901 | oos.close(); |
| 902 | 902 | } |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/server/SailingServiceWriteImpl.java
| ... | ... | @@ -169,7 +169,6 @@ import com.sap.sailing.domain.common.MaxPointsReason; |
| 169 | 169 | import com.sap.sailing.domain.common.NoWindException; |
| 170 | 170 | import com.sap.sailing.domain.common.NotFoundException; |
| 171 | 171 | import com.sap.sailing.domain.common.PassingInstruction; |
| 172 | -import com.sap.sailing.domain.common.Position; |
|
| 173 | 172 | import com.sap.sailing.domain.common.RaceIdentifier; |
| 174 | 173 | import com.sap.sailing.domain.common.RankingMetrics; |
| 175 | 174 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| ... | ... | @@ -178,7 +177,6 @@ import com.sap.sailing.domain.common.RegattaName; |
| 178 | 177 | import com.sap.sailing.domain.common.RegattaNameAndRaceName; |
| 179 | 178 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 180 | 179 | import com.sap.sailing.domain.common.ServiceException; |
| 181 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 182 | 180 | import com.sap.sailing.domain.common.UnableToCloseDeviceMappingException; |
| 183 | 181 | import com.sap.sailing.domain.common.Wind; |
| 184 | 182 | import com.sap.sailing.domain.common.WindSource; |
| ... | ... | @@ -196,9 +194,6 @@ import com.sap.sailing.domain.common.dto.RaceColumnInSeriesDTO; |
| 196 | 194 | import com.sap.sailing.domain.common.dto.RaceDTO; |
| 197 | 195 | import com.sap.sailing.domain.common.dto.RegattaCreationParametersDTO; |
| 198 | 196 | import com.sap.sailing.domain.common.dto.TagDTO; |
| 199 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 200 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 201 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 202 | 197 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 203 | 198 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 204 | 199 | import com.sap.sailing.domain.common.media.MediaTrack; |
| ... | ... | @@ -368,8 +363,10 @@ import com.sap.sse.aicore.CredentialsParser; |
| 368 | 363 | import com.sap.sse.common.Distance; |
| 369 | 364 | import com.sap.sse.common.Duration; |
| 370 | 365 | import com.sap.sse.common.NoCorrespondingServiceRegisteredException; |
| 366 | +import com.sap.sse.common.Position; |
|
| 371 | 367 | import com.sap.sse.common.RepeatablePart; |
| 372 | 368 | import com.sap.sse.common.Speed; |
| 369 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 373 | 370 | import com.sap.sse.common.TimePoint; |
| 374 | 371 | import com.sap.sse.common.TimeRange; |
| 375 | 372 | import com.sap.sse.common.TransformationException; |
| ... | ... | @@ -378,6 +375,9 @@ import com.sap.sse.common.Util.Pair; |
| 378 | 375 | import com.sap.sse.common.Util.Triple; |
| 379 | 376 | import com.sap.sse.common.WithID; |
| 380 | 377 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 378 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 379 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 380 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 381 | 381 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 382 | 382 | import com.sap.sse.common.impl.TimeRangeImpl; |
| 383 | 383 | import com.sap.sse.common.mail.MailException; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/server/SimulatorServiceImpl.java
| ... | ... | @@ -21,13 +21,8 @@ import org.osgi.util.tracker.ServiceTracker; |
| 21 | 21 | |
| 22 | 22 | import com.sap.sailing.domain.base.BoatClass; |
| 23 | 23 | import com.sap.sailing.domain.common.PathType; |
| 24 | -import com.sap.sailing.domain.common.Position; |
|
| 25 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 26 | 24 | import com.sap.sailing.domain.common.Wind; |
| 27 | 25 | import com.sap.sailing.domain.common.dto.BoatClassDTO; |
| 28 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 29 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 30 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 31 | 26 | import com.sap.sailing.domain.common.security.SecuredDomainType; |
| 32 | 27 | import com.sap.sailing.domain.polars.PolarDataService; |
| 33 | 28 | import com.sap.sailing.gwt.ui.client.SimulatorService; |
| ... | ... | @@ -88,11 +83,16 @@ import com.sap.sse.ServerInfo; |
| 88 | 83 | import com.sap.sse.common.Bearing; |
| 89 | 84 | import com.sap.sse.common.Distance; |
| 90 | 85 | import com.sap.sse.common.Duration; |
| 86 | +import com.sap.sse.common.Position; |
|
| 91 | 87 | import com.sap.sse.common.Speed; |
| 88 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 92 | 89 | import com.sap.sse.common.TimePoint; |
| 93 | 90 | import com.sap.sse.common.Util; |
| 94 | 91 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 92 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 93 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 95 | 94 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 95 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 96 | 96 | import com.sap.sse.gwt.server.DelegatingProxiedRemoteServiceServlet; |
| 97 | 97 | import com.sap.sse.security.shared.HasPermissions.DefaultActions; |
| 98 | 98 | import com.sap.sse.security.shared.TypeRelativeObjectIdentifier; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/server/SimulatorServiceUtils.java
| ... | ... | @@ -4,10 +4,6 @@ import java.util.ArrayList; |
| 4 | 4 | import java.util.Collections; |
| 5 | 5 | import java.util.List; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 9 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 10 | -import com.sap.sailing.domain.common.impl.RadianPosition; |
|
| 11 | 7 | import com.sap.sailing.gwt.ui.shared.SimulatorUISelectionDTO; |
| 12 | 8 | import com.sap.sailing.gwt.ui.shared.SimulatorWindDTO; |
| 13 | 9 | import com.sap.sailing.simulator.Path; |
| ... | ... | @@ -15,8 +11,12 @@ import com.sap.sailing.simulator.SimulatorUISelection; |
| 15 | 11 | import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 16 | 12 | import com.sap.sailing.simulator.impl.SimulatorUISelectionImpl; |
| 17 | 13 | import com.sap.sse.common.Bearing; |
| 14 | +import com.sap.sse.common.Position; |
|
| 15 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 18 | 16 | import com.sap.sse.common.TimePoint; |
| 19 | 17 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 18 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 19 | +import com.sap.sse.common.impl.RadianPosition; |
|
| 20 | 20 | |
| 21 | 21 | public class SimulatorServiceUtils { |
| 22 | 22 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/BearingWithConfidenceDTO.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.gwt.ui.shared; |
| 2 | 2 | |
| 3 | 3 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 4 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 5 | -import com.sap.sailing.domain.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 6 | 4 | import com.sap.sse.common.Bearing; |
| 5 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 6 | +import com.sap.sse.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 7 | 7 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 8 | 8 | |
| 9 | 9 | public class BearingWithConfidenceDTO implements IsSerializable { |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/CoursePositionsDTO.java
| ... | ... | @@ -6,7 +6,7 @@ import java.util.Set; |
| 6 | 6 | |
| 7 | 7 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 8 | 8 | import com.sap.sailing.domain.common.NauticalSide; |
| 9 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | 10 | |
| 11 | 11 | public class CoursePositionsDTO implements IsSerializable { |
| 12 | 12 | public RaceCourseDTO course; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/GPSFixDTO.java
| ... | ... | @@ -3,7 +3,7 @@ package com.sap.sailing.gwt.ui.shared; |
| 3 | 3 | import java.util.Date; |
| 4 | 4 | |
| 5 | 5 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | 7 | |
| 8 | 8 | public class GPSFixDTO implements IsSerializable { |
| 9 | 9 | public Date timepoint; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/GPSFixDTOWithSpeedWindTackAndLegType.java
| ... | ... | @@ -4,9 +4,9 @@ import java.util.Date; |
| 4 | 4 | |
| 5 | 5 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 6 | 6 | import com.sap.sailing.domain.common.LegType; |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | 7 | import com.sap.sailing.domain.common.Tack; |
| 9 | 8 | import com.sap.sse.common.Bearing; |
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | 10 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 11 | 11 | |
| 12 | 12 | public class GPSFixDTOWithSpeedWindTackAndLegType extends GPSFixDTO implements IsSerializable { |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/GPSFixDTOWithSpeedWindTackAndLegTypeIterable.java
| ... | ... | @@ -24,8 +24,6 @@ import com.sap.sailing.domain.base.Leg; |
| 24 | 24 | import com.sap.sailing.domain.common.DetailType; |
| 25 | 25 | import com.sap.sailing.domain.common.LegType; |
| 26 | 26 | import com.sap.sailing.domain.common.NoWindException; |
| 27 | -import com.sap.sailing.domain.common.Position; |
|
| 28 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 29 | 27 | import com.sap.sailing.domain.common.Tack; |
| 30 | 28 | import com.sap.sailing.domain.common.Wind; |
| 31 | 29 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| ... | ... | @@ -37,6 +35,8 @@ import com.sap.sailing.domain.tracking.TrackedLegOfCompetitor; |
| 37 | 35 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 38 | 36 | import com.sap.sailing.domain.tracking.WindLegTypeAndLegBearingAndORCPerformanceCurveCache; |
| 39 | 37 | import com.sap.sailing.gwt.ui.server.SailingServiceImpl; |
| 38 | +import com.sap.sse.common.Position; |
|
| 39 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 40 | 40 | import com.sap.sse.common.TimePoint; |
| 41 | 41 | import com.sap.sse.common.Util; |
| 42 | 42 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/IgtimiDeviceWithSecurityDTO.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.gwt.ui.shared; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.domain.common.security.SecuredDomainType; |
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | 5 | import com.sap.sse.common.TimePoint; |
| 6 | 6 | import com.sap.sse.common.Util.Pair; |
| 7 | 7 | import com.sap.sse.security.shared.HasPermissions; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/ManeuverDTO.java
| ... | ... | @@ -8,10 +8,10 @@ import com.google.gwt.i18n.client.NumberFormat; |
| 8 | 8 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 9 | 9 | import com.sap.sailing.domain.common.ManeuverType; |
| 10 | 10 | import com.sap.sailing.domain.common.NauticalSide; |
| 11 | -import com.sap.sailing.domain.common.Position; |
|
| 12 | 11 | import com.sap.sailing.domain.common.Tack; |
| 13 | 12 | import com.sap.sailing.gwt.ui.client.NauticalSideFormatter; |
| 14 | 13 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 14 | +import com.sap.sse.common.Position; |
|
| 15 | 15 | |
| 16 | 16 | public class ManeuverDTO implements IsSerializable { |
| 17 | 17 | private ManeuverType type; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/ManeuverLossDTO.java
| ... | ... | @@ -1,10 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.gwt.ui.shared; |
| 2 | 2 | |
| 3 | 3 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 6 | 4 | import com.sap.sse.common.Distance; |
| 7 | 5 | import com.sap.sse.common.Duration; |
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 8 | 8 | |
| 9 | 9 | public class ManeuverLossDTO implements IsSerializable { |
| 10 | 10 | private Position maneuverStartPosition; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/MarkDTO.java
| ... | ... | @@ -3,10 +3,10 @@ package com.sap.sailing.gwt.ui.shared; |
| 3 | 3 | import java.util.Collections; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.common.MarkType; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 8 | 6 | import com.sap.sailing.domain.common.racelog.tracking.MappableToDevice; |
| 9 | 7 | import com.sap.sse.common.Color; |
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 10 | 10 | |
| 11 | 11 | public class MarkDTO extends ControlPointDTO implements MappableToDevice { |
| 12 | 12 | private static final long serialVersionUID = -8031499997812618751L; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/Request1TurnerDTO.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.gwt.ui.shared; |
| 2 | 2 | |
| 3 | 3 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | 5 | |
| 6 | 6 | public class Request1TurnerDTO implements IsSerializable { |
| 7 | 7 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/RequestTotalTimeDTO.java
| ... | ... | @@ -4,7 +4,7 @@ import java.util.ArrayList; |
| 4 | 4 | import java.util.List; |
| 5 | 5 | |
| 6 | 6 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | 8 | |
| 9 | 9 | public class RequestTotalTimeDTO implements IsSerializable { |
| 10 | 10 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/Response1TurnerDTO.java
| ... | ... | @@ -3,7 +3,7 @@ package com.sap.sailing.gwt.ui.shared; |
| 3 | 3 | import java.util.List; |
| 4 | 4 | |
| 5 | 5 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | 7 | |
| 8 | 8 | public class Response1TurnerDTO implements IsSerializable { |
| 9 | 9 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/SerializationDummy.java
| ... | ... | @@ -5,9 +5,9 @@ import java.io.Serializable; |
| 5 | 5 | import org.apache.shiro.authz.UnauthorizedException; |
| 6 | 6 | |
| 7 | 7 | import com.sap.sailing.domain.common.dto.PersonDTO; |
| 8 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 9 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 10 | 8 | import com.sap.sse.common.CountryCode; |
| 9 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 10 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 11 | 11 | import com.sap.sse.common.impl.SecondsDurationImpl; |
| 12 | 12 | import com.sap.sse.security.shared.HasPermissions; |
| 13 | 13 | import com.sap.sse.security.shared.TypeRelativeObjectIdentifier; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/SimulatorWindDTO.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.gwt.ui.shared; |
| 2 | 2 | |
| 3 | 3 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 4 | +import com.sap.sse.common.Position; |
|
| 6 | 5 | import com.sap.sse.common.TimePoint; |
| 6 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 7 | 7 | |
| 8 | 8 | public class SimulatorWindDTO implements IsSerializable { |
| 9 | 9 | public Boolean isTurn; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/WindDTO.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.gwt.ui.shared; |
| 2 | 2 | |
| 3 | 3 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | 5 | |
| 6 | 6 | public class WindDTO implements IsSerializable { |
| 7 | 7 | public Double trueWindSpeedInMetersPerSecond; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/WindFieldDTO.java
| ... | ... | @@ -3,7 +3,7 @@ package com.sap.sailing.gwt.ui.shared; |
| 3 | 3 | import java.util.List; |
| 4 | 4 | |
| 5 | 5 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | 7 | |
| 8 | 8 | public class WindFieldDTO implements IsSerializable { |
| 9 | 9 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/WindFieldGenParamsDTO.java
| ... | ... | @@ -3,8 +3,8 @@ package com.sap.sailing.gwt.ui.shared; |
| 3 | 3 | import java.util.Date; |
| 4 | 4 | |
| 5 | 5 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sse.common.Duration; |
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | 8 | |
| 9 | 9 | public class WindFieldGenParamsDTO implements IsSerializable { |
| 10 | 10 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/WindLatticeDTO.java
| ... | ... | @@ -2,7 +2,7 @@ package com.sap.sailing.gwt.ui.shared; |
| 2 | 2 | |
| 3 | 3 | import java.io.Serializable; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | 6 | |
| 7 | 7 | public class WindLatticeDTO implements Serializable { |
| 8 | 8 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/WindLatticeGenParamsDTO.java
| ... | ... | @@ -2,7 +2,7 @@ package com.sap.sailing.gwt.ui.shared; |
| 2 | 2 | |
| 3 | 3 | import java.io.Serializable; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | 6 | |
| 7 | 7 | public class WindLatticeGenParamsDTO implements Serializable { |
| 8 | 8 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/WindLinesDTO.java
| ... | ... | @@ -7,7 +7,7 @@ import java.util.SortedMap; |
| 7 | 7 | import java.util.TreeMap; |
| 8 | 8 | |
| 9 | 9 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 10 | -import com.sap.sailing.domain.common.Position; |
|
| 10 | +import com.sap.sse.common.Position; |
|
| 11 | 11 | |
| 12 | 12 | public class WindLinesDTO implements IsSerializable { |
| 13 | 13 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/WindTrackInfoDTO.java
| ... | ... | @@ -3,8 +3,8 @@ package com.sap.sailing.gwt.ui.shared; |
| 3 | 3 | import java.util.List; |
| 4 | 4 | |
| 5 | 5 | import com.google.gwt.user.client.rpc.IsSerializable; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sse.common.Duration; |
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | 9 | |
| 10 | 10 | public class WindTrackInfoDTO implements IsSerializable { |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/courseCreation/MarkConfigurationDTO.java
| ... | ... | @@ -3,9 +3,9 @@ package com.sap.sailing.gwt.ui.shared.courseCreation; |
| 3 | 3 | import java.util.ArrayList; |
| 4 | 4 | import java.util.Arrays; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sailing.gwt.ui.shared.DeviceIdentifierDTO; |
| 8 | 7 | import com.sap.sailing.gwt.ui.shared.GPSFixDTO; |
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | 9 | import com.sap.sse.common.TimeRange; |
| 10 | 10 | import com.sap.sse.common.Util.Triple; |
| 11 | 11 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/racemap/AbstractMarkVectorGraphics.java
| ... | ... | @@ -3,11 +3,11 @@ package com.sap.sailing.gwt.ui.shared.racemap; |
| 3 | 3 | import com.google.gwt.canvas.dom.client.CanvasGradient; |
| 4 | 4 | import com.google.gwt.canvas.dom.client.Context2d; |
| 5 | 5 | import com.sap.sailing.domain.common.MarkType; |
| 6 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 7 | 6 | import com.sap.sailing.gwt.ui.shared.CoursePositionsDTO; |
| 8 | 7 | import com.sap.sse.common.Bearing; |
| 9 | 8 | import com.sap.sse.common.Color; |
| 10 | 9 | import com.sap.sse.common.Distance; |
| 10 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 11 | 11 | |
| 12 | 12 | /** |
| 13 | 13 | * A class for course mark graphics based on SVG graphics drawn to a HTML5 canvas |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/racemap/BoatMarkVectorGraphics.java
| ... | ... | @@ -6,15 +6,15 @@ import com.google.gwt.canvas.dom.client.Context2d; |
| 6 | 6 | import com.sap.sailing.domain.common.LegType; |
| 7 | 7 | import com.sap.sailing.domain.common.MarkType; |
| 8 | 8 | import com.sap.sailing.domain.common.PassingInstruction; |
| 9 | -import com.sap.sailing.domain.common.Position; |
|
| 10 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 11 | 9 | import com.sap.sailing.gwt.ui.shared.CoursePositionsDTO; |
| 12 | 10 | import com.sap.sailing.gwt.ui.shared.MarkDTO; |
| 13 | 11 | import com.sap.sailing.gwt.ui.shared.WaypointDTO; |
| 14 | 12 | import com.sap.sse.common.Bearing; |
| 15 | 13 | import com.sap.sse.common.Color; |
| 16 | 14 | import com.sap.sse.common.Distance; |
| 15 | +import com.sap.sse.common.Position; |
|
| 17 | 16 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 17 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 18 | 18 | |
| 19 | 19 | public class BoatMarkVectorGraphics extends AbstractMarkVectorGraphics { |
| 20 | 20 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/racemap/CanvasOverlayV3.java
| ... | ... | @@ -40,9 +40,9 @@ import com.google.gwt.maps.client.overlays.overlayhandlers.OverlayViewMethods; |
| 40 | 40 | import com.google.gwt.maps.client.overlays.overlayhandlers.OverlayViewOnAddHandler; |
| 41 | 41 | import com.google.gwt.maps.client.overlays.overlayhandlers.OverlayViewOnDrawHandler; |
| 42 | 42 | import com.google.gwt.maps.client.overlays.overlayhandlers.OverlayViewOnRemoveHandler; |
| 43 | -import com.sap.sailing.domain.common.Position; |
|
| 44 | 43 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 45 | 44 | import com.sap.sse.common.Distance; |
| 45 | +import com.sap.sse.common.Position; |
|
| 46 | 46 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 47 | 47 | |
| 48 | 48 | /** |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/shared/racemap/FixVectorGraphics.java
| ... | ... | @@ -2,8 +2,8 @@ package com.sap.sailing.gwt.ui.shared.racemap; |
| 2 | 2 | |
| 3 | 3 | import com.google.gwt.canvas.dom.client.Context2d; |
| 4 | 4 | import com.sap.sailing.domain.common.FixType; |
| 5 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 6 | 5 | import com.sap.sse.common.Distance; |
| 6 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 7 | 7 | |
| 8 | 8 | /** |
| 9 | 9 | * A class for course fix graphics based on SVG graphics drawn to a HTML5 canvas |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/PathCanvasOverlay.java
| ... | ... | @@ -12,13 +12,13 @@ import com.google.gwt.maps.client.MapWidget; |
| 12 | 12 | import com.google.gwt.maps.client.base.LatLng; |
| 13 | 13 | import com.google.gwt.maps.client.base.Point; |
| 14 | 14 | import com.google.gwt.maps.client.geometrylib.SphericalUtils; |
| 15 | -import com.sap.sailing.domain.common.Mile; |
|
| 16 | 15 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 17 | 16 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 18 | 17 | import com.sap.sailing.gwt.ui.shared.SimulatorWindDTO; |
| 19 | 18 | import com.sap.sailing.gwt.ui.shared.WindFieldGenParamsDTO; |
| 20 | 19 | import com.sap.sse.common.AbstractBearing; |
| 21 | 20 | import com.sap.sse.common.Duration; |
| 21 | +import com.sap.sse.common.Mile; |
|
| 22 | 22 | import com.sap.sse.common.Named; |
| 23 | 23 | import com.sap.sse.common.TimePoint; |
| 24 | 24 | import com.sap.sse.common.impl.DegreeBearingImpl; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/PathPolyline.java
| ... | ... | @@ -18,10 +18,6 @@ import com.google.gwt.maps.client.overlays.PolylineOptions; |
| 18 | 18 | import com.google.gwt.maps.client.overlays.overlayhandlers.OverlayViewMethods; |
| 19 | 19 | import com.google.gwt.maps.client.overlays.overlayhandlers.OverlayViewOnDrawHandler; |
| 20 | 20 | import com.google.gwt.user.client.rpc.AsyncCallback; |
| 21 | -import com.sap.sailing.domain.common.Mile; |
|
| 22 | -import com.sap.sailing.domain.common.Position; |
|
| 23 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 24 | -import com.sap.sailing.domain.common.impl.RadianPosition; |
|
| 25 | 21 | import com.sap.sailing.gwt.ui.client.SimulatorServiceAsync; |
| 26 | 22 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| 27 | 23 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| ... | ... | @@ -33,6 +29,10 @@ import com.sap.sailing.gwt.ui.simulator.racemap.TwoDPoint; |
| 33 | 29 | import com.sap.sailing.gwt.ui.simulator.racemap.TwoDSegment; |
| 34 | 30 | import com.sap.sailing.gwt.ui.simulator.racemap.TwoDVector; |
| 35 | 31 | import com.sap.sse.common.Bearing; |
| 32 | +import com.sap.sse.common.Mile; |
|
| 33 | +import com.sap.sse.common.Position; |
|
| 34 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 35 | +import com.sap.sse.common.impl.RadianPosition; |
|
| 36 | 36 | import com.sap.sse.gwt.client.ErrorReporter; |
| 37 | 37 | |
| 38 | 38 | /** |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/RaceCourseCanvasOverlay.java
| ... | ... | @@ -16,10 +16,10 @@ import com.google.gwt.maps.client.events.mousemove.MouseMoveMapEvent; |
| 16 | 16 | import com.google.gwt.maps.client.events.mousemove.MouseMoveMapHandler; |
| 17 | 17 | import com.google.gwt.maps.client.geometrylib.SphericalUtils; |
| 18 | 18 | import com.google.gwt.maps.client.overlays.Marker; |
| 19 | -import com.sap.sailing.domain.common.Mile; |
|
| 20 | 19 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 21 | 20 | import com.sap.sailing.gwt.ui.simulator.racemap.FullCanvasOverlay; |
| 22 | 21 | import com.sap.sailing.simulator.util.SailingSimulatorConstants; |
| 22 | +import com.sap.sse.common.Mile; |
|
| 23 | 23 | |
| 24 | 24 | /** |
| 25 | 25 | * This class implements the layer to display the race course on the map. Currently the course only consists of the |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/RegattaAreaCanvasOverlay.java
| ... | ... | @@ -5,10 +5,10 @@ import com.google.gwt.canvas.dom.client.Context2d.TextAlign; |
| 5 | 5 | import com.google.gwt.maps.client.MapWidget; |
| 6 | 6 | import com.google.gwt.maps.client.base.LatLng; |
| 7 | 7 | import com.google.gwt.maps.client.base.Point; |
| 8 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 9 | 8 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 10 | 9 | import com.sap.sailing.gwt.ui.simulator.racemap.FullCanvasOverlay; |
| 11 | 10 | import com.sap.sailing.simulator.util.SailingSimulatorConstants; |
| 11 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 12 | 12 | |
| 13 | 13 | public class RegattaAreaCanvasOverlay extends FullCanvasOverlay { |
| 14 | 14 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/SimulatorMap.java
| ... | ... | @@ -33,8 +33,6 @@ import com.google.gwt.maps.client.overlays.Polyline; |
| 33 | 33 | import com.google.gwt.user.client.Window; |
| 34 | 34 | import com.google.gwt.user.client.rpc.AsyncCallback; |
| 35 | 35 | import com.google.gwt.user.client.ui.AbsolutePanel; |
| 36 | -import com.sap.sailing.domain.common.Position; |
|
| 37 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 38 | 36 | import com.sap.sailing.gwt.ui.client.RequiresDataInitialization; |
| 39 | 37 | import com.sap.sailing.gwt.ui.client.SimulatorServiceAsync; |
| 40 | 38 | import com.sap.sailing.gwt.ui.client.StringMessages; |
| ... | ... | @@ -54,8 +52,10 @@ import com.sap.sailing.gwt.ui.simulator.util.ColorPaletteGenerator; |
| 54 | 52 | import com.sap.sailing.gwt.ui.simulator.util.SimulatorResources; |
| 55 | 53 | import com.sap.sailing.gwt.ui.simulator.windpattern.WindPatternDisplay; |
| 56 | 54 | import com.sap.sailing.simulator.util.SailingSimulatorConstants; |
| 55 | +import com.sap.sse.common.Position; |
|
| 57 | 56 | import com.sap.sse.common.TimePoint; |
| 58 | 57 | import com.sap.sse.common.Util; |
| 58 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 59 | 59 | import com.sap.sse.common.impl.RGBColor; |
| 60 | 60 | import com.sap.sse.gwt.client.ErrorReporter; |
| 61 | 61 | import com.sap.sse.gwt.client.Notification; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/VenueDescriptorFactory.java
| ... | ... | @@ -3,9 +3,9 @@ package com.sap.sailing.gwt.ui.simulator; |
| 3 | 3 | import java.util.ArrayList; |
| 4 | 4 | |
| 5 | 5 | import com.google.gwt.maps.client.base.LatLng; |
| 6 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 7 | 6 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 8 | 7 | import com.sap.sailing.simulator.util.SailingSimulatorConstants; |
| 8 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 9 | 9 | |
| 10 | 10 | public class VenueDescriptorFactory { |
| 11 | 11 | public static VenueDescriptor createVenue(char event, CoordinateSystem coordinateSystem) { |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/WindGridCanvasOverlay.java
| ... | ... | @@ -18,14 +18,14 @@ import com.google.gwt.canvas.dom.client.Context2d; |
| 18 | 18 | import com.google.gwt.maps.client.MapWidget; |
| 19 | 19 | import com.google.gwt.maps.client.base.LatLng; |
| 20 | 20 | import com.google.gwt.maps.client.base.Point; |
| 21 | -import com.sap.sailing.domain.common.Position; |
|
| 22 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 23 | 21 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 24 | 22 | import com.sap.sailing.gwt.ui.shared.SimulatorWindDTO; |
| 25 | 23 | import com.sap.sailing.gwt.ui.shared.WindFieldDTO; |
| 26 | 24 | import com.sap.sailing.gwt.ui.simulator.racemap.FullCanvasOverlay; |
| 27 | 25 | import com.sap.sailing.gwt.ui.simulator.util.WindGridColorPalette; |
| 26 | +import com.sap.sse.common.Position; |
|
| 28 | 27 | import com.sap.sse.common.Util; |
| 28 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 29 | 29 | import com.sap.sse.gwt.client.player.Timer; |
| 30 | 30 | |
| 31 | 31 | /** |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/WindLineCanvasOverlay.java
| ... | ... | @@ -16,12 +16,12 @@ import com.google.gwt.canvas.dom.client.Context2d; |
| 16 | 16 | import com.google.gwt.maps.client.MapWidget; |
| 17 | 17 | import com.google.gwt.maps.client.base.LatLng; |
| 18 | 18 | import com.google.gwt.maps.client.base.Point; |
| 19 | -import com.sap.sailing.domain.common.Position; |
|
| 20 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 21 | 19 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 22 | 20 | import com.sap.sailing.gwt.ui.shared.WindLinesDTO; |
| 23 | 21 | import com.sap.sailing.gwt.ui.simulator.racemap.FullCanvasOverlay; |
| 24 | 22 | import com.sap.sailing.gwt.ui.simulator.util.LineSegment; |
| 23 | +import com.sap.sse.common.Position; |
|
| 24 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 25 | 25 | import com.sap.sse.gwt.client.player.Timer; |
| 26 | 26 | |
| 27 | 27 | public class WindLineCanvasOverlay extends FullCanvasOverlay implements TimeListenerWithStoppingCriteria { |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/WindLineGuidesCanvasOverlay.java
| ... | ... | @@ -15,13 +15,13 @@ import com.google.gwt.canvas.dom.client.Context2d; |
| 15 | 15 | import com.google.gwt.maps.client.MapWidget; |
| 16 | 16 | import com.google.gwt.maps.client.base.LatLng; |
| 17 | 17 | import com.google.gwt.maps.client.base.Point; |
| 18 | -import com.sap.sailing.domain.common.Position; |
|
| 19 | 18 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 20 | 19 | import com.sap.sailing.gwt.ui.shared.SimulatorWindDTO; |
| 21 | 20 | import com.sap.sailing.gwt.ui.shared.WindFieldDTO; |
| 22 | 21 | import com.sap.sailing.gwt.ui.simulator.racemap.FullCanvasOverlay; |
| 23 | 22 | import com.sap.sailing.gwt.ui.simulator.util.ToolTip; |
| 24 | 23 | import com.sap.sse.common.AbstractBearing; |
| 24 | +import com.sap.sse.common.Position; |
|
| 25 | 25 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 26 | 26 | import com.sap.sse.gwt.client.player.Timer; |
| 27 | 27 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/racemap/FullCanvasOverlay.java
| ... | ... | @@ -11,11 +11,11 @@ import com.google.gwt.maps.client.events.center.CenterChangeMapEvent; |
| 11 | 11 | import com.google.gwt.maps.client.events.center.CenterChangeMapHandler; |
| 12 | 12 | import com.google.gwt.maps.client.overlays.overlayhandlers.OverlayViewOnDrawHandler; |
| 13 | 13 | import com.google.gwt.user.client.ui.RequiresResize; |
| 14 | -import com.sap.sailing.domain.common.Position; |
|
| 15 | 14 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 16 | 15 | import com.sap.sailing.gwt.ui.shared.SimulatorWindDTO; |
| 17 | 16 | import com.sap.sailing.gwt.ui.shared.racemap.CanvasOverlayV3; |
| 18 | 17 | import com.sap.sailing.gwt.ui.simulator.streamlets.Vector; |
| 18 | +import com.sap.sse.common.Position; |
|
| 19 | 19 | |
| 20 | 20 | /** |
| 21 | 21 | * This class extends {@link CanvasOverlayV3} to provide the functionality that the canvas always covers the |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/streamlets/PositionDTOWeigher.java
| ... | ... | @@ -2,10 +2,10 @@ package com.sap.sailing.gwt.ui.simulator.streamlets; |
| 2 | 2 | |
| 3 | 3 | import java.util.Date; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 7 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 8 | 5 | import com.sap.sse.common.Distance; |
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | +import com.sap.sse.common.confidence.Weigher; |
|
| 8 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 9 | 9 | |
| 10 | 10 | /** |
| 11 | 11 | * A weigher that uses a {@link DegreePosition} and a {@link Date} to compute a confidence based on spatial |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/streamlets/RectField.java
| ... | ... | @@ -6,10 +6,10 @@ import com.google.gwt.json.client.JSONObject; |
| 6 | 6 | import com.google.gwt.json.client.JSONParser; |
| 7 | 7 | import com.google.gwt.maps.client.base.LatLng; |
| 8 | 8 | import com.google.gwt.maps.client.base.LatLngBounds; |
| 9 | -import com.sap.sailing.domain.common.Position; |
|
| 10 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 11 | 9 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 12 | 10 | import com.sap.sailing.gwt.ui.simulator.StreamletParameters; |
| 11 | +import com.sap.sse.common.Position; |
|
| 12 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 13 | 13 | |
| 14 | 14 | public class RectField implements VectorField { |
| 15 | 15 |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/streamlets/SimulatorField.java
| ... | ... | @@ -6,14 +6,14 @@ import java.util.List; |
| 6 | 6 | import com.google.gwt.core.client.GWT; |
| 7 | 7 | import com.google.gwt.maps.client.base.LatLng; |
| 8 | 8 | import com.google.gwt.maps.client.base.LatLngBounds; |
| 9 | -import com.sap.sailing.domain.common.Position; |
|
| 10 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 11 | 9 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 12 | 10 | import com.sap.sailing.gwt.ui.shared.SimulatorWindDTO; |
| 13 | 11 | import com.sap.sailing.gwt.ui.shared.WindFieldDTO; |
| 14 | 12 | import com.sap.sailing.gwt.ui.shared.WindFieldGenParamsDTO; |
| 15 | 13 | import com.sap.sailing.gwt.ui.simulator.StreamletParameters; |
| 16 | 14 | import com.sap.sse.common.Duration; |
| 15 | +import com.sap.sse.common.Position; |
|
| 16 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 17 | 17 | |
| 18 | 18 | public class SimulatorField implements VectorField { |
| 19 | 19 | private boolean swarmDebug = false; |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/streamlets/VectorField.java
| ... | ... | @@ -5,8 +5,8 @@ import java.util.Date; |
| 5 | 5 | import com.google.gwt.maps.client.MapWidget; |
| 6 | 6 | import com.google.gwt.maps.client.base.LatLng; |
| 7 | 7 | import com.google.gwt.maps.client.base.LatLngBounds; |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | 8 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | 10 | |
| 11 | 11 | /** |
| 12 | 12 | * A field of vectors to display in a streamlet {@link Swarm}. The {@link Vector}s returned by {@link #getVector(Position, Date)} |
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/simulator/streamlets/WindInfoForRaceVectorField.java
| ... | ... | @@ -6,20 +6,20 @@ import java.util.Map.Entry; |
| 6 | 6 | |
| 7 | 7 | import com.google.gwt.maps.client.base.LatLng; |
| 8 | 8 | import com.google.gwt.maps.client.base.LatLngBounds; |
| 9 | -import com.sap.sailing.domain.common.Position; |
|
| 10 | 9 | import com.sap.sailing.domain.common.WindSource; |
| 11 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 12 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidenceCluster; |
|
| 13 | -import com.sap.sailing.domain.common.confidence.Weigher; |
|
| 14 | -import com.sap.sailing.domain.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 15 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 16 | 10 | import com.sap.sailing.gwt.ui.client.shared.racemap.CoordinateSystem; |
| 17 | 11 | import com.sap.sailing.gwt.ui.shared.WindDTO; |
| 18 | 12 | import com.sap.sailing.gwt.ui.shared.WindInfoForRaceDTO; |
| 19 | 13 | import com.sap.sailing.gwt.ui.shared.WindTrackInfoDTO; |
| 20 | 14 | import com.sap.sailing.gwt.ui.simulator.streamlets.PositionDTOWeigher.AverageLatitudeProvider; |
| 15 | +import com.sap.sse.common.Position; |
|
| 21 | 16 | import com.sap.sse.common.Util; |
| 17 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 18 | +import com.sap.sse.common.confidence.BearingWithConfidenceCluster; |
|
| 19 | +import com.sap.sse.common.confidence.Weigher; |
|
| 20 | +import com.sap.sse.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 22 | 21 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 22 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 23 | 23 | |
| 24 | 24 | /** |
| 25 | 25 | * Implements the {@link VectorField} interface by providing real wind data from a <code>TrackedRace</code> which has |
java/com.sap.sailing.hanaexport/src/com/sap/sailing/hanaexport/jaxrs/api/InsertEventStatement.java
| ... | ... | @@ -5,7 +5,7 @@ import java.sql.Date; |
| 5 | 5 | import java.sql.SQLException; |
| 6 | 6 | |
| 7 | 7 | import com.sap.sailing.domain.base.Event; |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | 9 | |
| 10 | 10 | public class InsertEventStatement extends AbstractPreparedInsertStatement<Event> { |
| 11 | 11 | protected InsertEventStatement(Connection connection) throws SQLException { |
java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/RaceLogMongoDBTest.java
| ... | ... | @@ -23,11 +23,7 @@ import com.sap.sailing.domain.base.impl.MarkImpl; |
| 23 | 23 | import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 24 | 24 | import com.sap.sailing.domain.common.MarkType; |
| 25 | 25 | import com.sap.sailing.domain.common.PassingInstruction; |
| 26 | -import com.sap.sailing.domain.common.Position; |
|
| 27 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 28 | 26 | import com.sap.sailing.domain.common.Wind; |
| 29 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 30 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 31 | 27 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 32 | 28 | import com.sap.sailing.domain.persistence.DomainObjectFactory; |
| 33 | 29 | import com.sap.sailing.domain.persistence.MongoObjectFactory; |
| ... | ... | @@ -37,10 +33,14 @@ import com.sap.sailing.domain.persistence.PersistenceFactory; |
| 37 | 33 | import com.sap.sailing.domain.racelog.RaceLogStore; |
| 38 | 34 | import com.sap.sailing.domain.regattalog.RegattaLogStore; |
| 39 | 35 | import com.sap.sse.common.Bearing; |
| 36 | +import com.sap.sse.common.Position; |
|
| 37 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 40 | 38 | import com.sap.sse.common.TimePoint; |
| 41 | 39 | import com.sap.sse.common.Util; |
| 42 | 40 | import com.sap.sse.common.impl.AbstractColor; |
| 43 | 41 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 42 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 43 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 44 | 44 | |
| 45 | 45 | public abstract class RaceLogMongoDBTest extends AbstractMongoDBTest { |
| 46 | 46 |
java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndLoadingEventsAndRegattas.java
| ... | ... | @@ -68,8 +68,6 @@ import com.sap.sailing.domain.common.RankingMetrics; |
| 68 | 68 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 69 | 69 | import com.sap.sailing.domain.common.RegattaNameAndRaceName; |
| 70 | 70 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 71 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 72 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 73 | 71 | import com.sap.sailing.domain.common.racelog.RacingProcedureType; |
| 74 | 72 | import com.sap.sailing.domain.leaderboard.EventResolver; |
| 75 | 73 | import com.sap.sailing.domain.leaderboard.Leaderboard; |
| ... | ... | @@ -106,7 +104,9 @@ import com.sap.sailing.server.operationaltransformation.UpdateLeaderboardMaxPoin |
| 106 | 104 | import com.sap.sse.common.Color; |
| 107 | 105 | import com.sap.sse.common.TimePoint; |
| 108 | 106 | import com.sap.sse.common.Util; |
| 107 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 109 | 108 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 109 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 110 | 110 | import com.sap.sse.common.media.MediaTagConstants; |
| 111 | 111 | import com.sap.sse.common.media.MimeType; |
| 112 | 112 | import com.sap.sse.shared.media.ImageDescriptor; |
java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndLoadingRaceORCLegDataEvent.java
| ... | ... | @@ -25,7 +25,6 @@ import com.sap.sailing.domain.abstractlog.orc.impl.RaceLogORCLegDataEventImpl; |
| 25 | 25 | import com.sap.sailing.domain.abstractlog.race.RaceLogEvent; |
| 26 | 26 | import com.sap.sailing.domain.base.Competitor; |
| 27 | 27 | import com.sap.sailing.domain.base.DomainFactory; |
| 28 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 29 | 28 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveLegTypes; |
| 30 | 29 | import com.sap.sailing.domain.persistence.FieldNames; |
| 31 | 30 | import com.sap.sailing.domain.persistence.PersistenceFactory; |
| ... | ... | @@ -37,6 +36,7 @@ import com.sap.sse.common.TimePoint; |
| 37 | 36 | import com.sap.sse.common.Util; |
| 38 | 37 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 39 | 38 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 39 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 40 | 40 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 41 | 41 | |
| 42 | 42 | /** |
java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndRetrievingWindData.java
| ... | ... | @@ -12,14 +12,14 @@ import org.junit.jupiter.api.Test; |
| 12 | 12 | import com.mongodb.MongoException; |
| 13 | 13 | import com.mongodb.client.MongoCollection; |
| 14 | 14 | import com.sap.sailing.domain.common.Wind; |
| 15 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 16 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 17 | 15 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 18 | 16 | import com.sap.sailing.domain.persistence.PersistenceFactory; |
| 19 | 17 | import com.sap.sailing.domain.persistence.impl.DomainObjectFactoryImpl; |
| 20 | 18 | import com.sap.sailing.domain.persistence.impl.MongoObjectFactoryImpl; |
| 21 | 19 | import com.sap.sse.common.TimePoint; |
| 22 | 20 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 21 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 22 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 23 | 23 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 24 | 24 | |
| 25 | 25 | public class TestStoringAndRetrievingWindData extends AbstractMongoDBTest { |
java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndRetrievingWindTracksTest.java
| ... | ... | @@ -21,12 +21,9 @@ import com.mongodb.client.MongoDatabase; |
| 21 | 21 | import com.sap.sailing.domain.base.RaceDefinition; |
| 22 | 22 | import com.sap.sailing.domain.base.Regatta; |
| 23 | 23 | import com.sap.sailing.domain.base.Sideline; |
| 24 | -import com.sap.sailing.domain.common.Position; |
|
| 25 | 24 | import com.sap.sailing.domain.common.Wind; |
| 26 | 25 | import com.sap.sailing.domain.common.WindSource; |
| 27 | 26 | import com.sap.sailing.domain.common.WindSourceType; |
| 28 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 29 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 30 | 27 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 31 | 28 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 32 | 29 | import com.sap.sailing.domain.leaderboard.LeaderboardGroupResolver; |
| ... | ... | @@ -48,9 +45,12 @@ import com.sap.sailing.domain.tractracadapter.DomainFactory; |
| 48 | 45 | import com.sap.sailing.domain.tractracadapter.Receiver; |
| 49 | 46 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 50 | 47 | import com.sap.sailing.server.impl.RacingEventServiceImpl; |
| 48 | +import com.sap.sse.common.Position; |
|
| 51 | 49 | import com.sap.sse.common.TimePoint; |
| 52 | 50 | import com.sap.sse.common.Util; |
| 53 | 51 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 52 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 53 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 54 | 54 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 55 | 55 | import com.sap.sse.mongodb.MongoDBConfiguration; |
| 56 | 56 |
java/com.sap.sailing.nmeaconnector/src/com/sap/sailing/nmeaconnector/NmeaUtil.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.nmeaconnector; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | 3 | import com.sap.sailing.domain.common.Wind; |
| 4 | +import com.sap.sse.common.Position; |
|
| 6 | 5 | import com.sap.sse.common.Speed; |
| 6 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 7 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | 8 | |
| 9 | 9 | import net.sf.marineapi.nmea.parser.SentenceFactory; |
java/com.sap.sailing.nmeaconnector/src/com/sap/sailing/nmeaconnector/TimedSpeedWithBearing.java
| ... | ... | @@ -1,6 +1,6 @@ |
| 1 | 1 | package com.sap.sailing.nmeaconnector; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 3 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 4 | 4 | import com.sap.sse.common.Timed; |
| 5 | 5 | |
| 6 | 6 | public interface TimedSpeedWithBearing extends Timed, SpeedWithBearing { |
java/com.sap.sailing.nmeaconnector/src/com/sap/sailing/nmeaconnector/impl/KnotSpeedWithBearingAndTimepoint.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.nmeaconnector.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 4 | 3 | import com.sap.sailing.nmeaconnector.TimedSpeedWithBearing; |
| 5 | 4 | import com.sap.sse.common.Bearing; |
| 6 | 5 | import com.sap.sse.common.TimePoint; |
| 6 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 7 | 7 | |
| 8 | 8 | /** |
| 9 | 9 | * Can be used as a wind vector in a {@code Track} because it has a {@link TimePoint}. |
java/com.sap.sailing.nmeaconnector/src/com/sap/sailing/nmeaconnector/impl/NMEAWindReceiverImpl.java
| ... | ... | @@ -12,18 +12,8 @@ import java.util.logging.Logger; |
| 12 | 12 | |
| 13 | 13 | import com.sap.sailing.declination.Declination; |
| 14 | 14 | import com.sap.sailing.declination.DeclinationService; |
| 15 | -import com.sap.sailing.domain.common.Position; |
|
| 16 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 17 | 15 | import com.sap.sailing.domain.common.Wind; |
| 18 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 19 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 20 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 21 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 22 | -import com.sap.sailing.domain.common.impl.MeterPerSecondSpeedImpl; |
|
| 23 | 16 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 24 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 25 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalablePosition; |
|
| 26 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableSpeedWithBearing; |
|
| 27 | 17 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 28 | 18 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 29 | 19 | import com.sap.sailing.domain.tracking.DynamicTrack; |
| ... | ... | @@ -33,10 +23,20 @@ import com.sap.sailing.nmeaconnector.NMEAWindReceiver; |
| 33 | 23 | import com.sap.sailing.nmeaconnector.TimedBearing; |
| 34 | 24 | import com.sap.sailing.nmeaconnector.TimedSpeedWithBearing; |
| 35 | 25 | import com.sap.sse.common.Bearing; |
| 26 | +import com.sap.sse.common.Position; |
|
| 36 | 27 | import com.sap.sse.common.Speed; |
| 28 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 37 | 29 | import com.sap.sse.common.TimePoint; |
| 38 | 30 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 31 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 32 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 33 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 34 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 35 | +import com.sap.sse.common.impl.MeterPerSecondSpeedImpl; |
|
| 39 | 36 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 37 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 38 | +import com.sap.sse.common.scalablevalue.impl.ScalablePosition; |
|
| 39 | +import com.sap.sse.common.scalablevalue.impl.ScalableSpeedWithBearing; |
|
| 40 | 40 | |
| 41 | 41 | import net.sf.marineapi.nmea.event.AbstractSentenceListener; |
| 42 | 42 | import net.sf.marineapi.nmea.io.SentenceReader; |
| ... | ... | @@ -125,7 +125,7 @@ public class NMEAWindReceiverImpl implements NMEAWindReceiver { |
| 125 | 125 | // or degrees magnetic, and we need to find out which is available |
| 126 | 126 | final TimePoint timePoint = getLastTimePoint(); |
| 127 | 127 | if (timePoint != null) { |
| 128 | - final com.sap.sailing.domain.common.Position position = getPosition(timePoint); |
|
| 128 | + final com.sap.sse.common.Position position = getPosition(timePoint); |
|
| 129 | 129 | if (position != null) { |
| 130 | 130 | final Speed speed; |
| 131 | 131 | if (!Double.isNaN(sentence.getWindSpeed())) { |
| ... | ... | @@ -335,7 +335,7 @@ public class NMEAWindReceiverImpl implements NMEAWindReceiver { |
| 335 | 335 | * to {@link #notifyListeners(Wind)}. |
| 336 | 336 | */ |
| 337 | 337 | private void tryToCreateWindFixFromTrueWind(TimedSpeedWithBearing trueWind) { |
| 338 | - final com.sap.sailing.domain.common.Position position = getPosition(trueWind.getTimePoint()); |
|
| 338 | + final com.sap.sse.common.Position position = getPosition(trueWind.getTimePoint()); |
|
| 339 | 339 | if (position != null) { |
| 340 | 340 | final Wind wind = new WindImpl(position, trueWind.getTimePoint(), trueWind); |
| 341 | 341 | notifyListeners(wind); |
| ... | ... | @@ -349,7 +349,7 @@ public class NMEAWindReceiverImpl implements NMEAWindReceiver { |
| 349 | 349 | * passed to {@link #notifyListeners(Wind)}. |
| 350 | 350 | */ |
| 351 | 351 | private void tryToCreateWindFixFromApparentWind(TimedSpeedWithBearing apparentWind) { |
| 352 | - final com.sap.sailing.domain.common.Position position = getPosition(apparentWind.getTimePoint()); |
|
| 352 | + final com.sap.sse.common.Position position = getPosition(apparentWind.getTimePoint()); |
|
| 353 | 353 | if (position != null) { |
| 354 | 354 | final SpeedWithBearing sensorSpeed = sensorSpeeds.getInterpolatedValue(getLastTimePoint(), fix->new ScalableSpeedWithBearing(fix)); |
| 355 | 355 | if (sensorSpeed != null) { |
| ... | ... | @@ -385,7 +385,7 @@ public class NMEAWindReceiverImpl implements NMEAWindReceiver { |
| 385 | 385 | return result; |
| 386 | 386 | } |
| 387 | 387 | |
| 388 | - private com.sap.sailing.domain.common.Position getPosition(TimePoint timePoint) { |
|
| 388 | + private com.sap.sse.common.Position getPosition(TimePoint timePoint) { |
|
| 389 | 389 | return sensorPositions.getInterpolatedValue(timePoint, gpsFix->new ScalablePosition(gpsFix.getPosition())); |
| 390 | 390 | } |
| 391 | 391 |
java/com.sap.sailing.nmeaconnector/src/com/sap/sailing/nmeaconnector/impl/NmeaUtilImpl.java
| ... | ... | @@ -5,18 +5,18 @@ import java.util.Map; |
| 5 | 5 | import java.util.Map.Entry; |
| 6 | 6 | |
| 7 | 7 | import com.sap.sailing.domain.base.impl.KilometersPerHourSpeedWithBearingImpl; |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 10 | 8 | import com.sap.sailing.domain.common.Wind; |
| 11 | -import com.sap.sailing.domain.common.impl.KilometersPerHourSpeedImpl; |
|
| 12 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 13 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 14 | 9 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 15 | 10 | import com.sap.sailing.nmeaconnector.NmeaUtil; |
| 16 | 11 | import com.sap.sse.common.Bearing; |
| 12 | +import com.sap.sse.common.Position; |
|
| 17 | 13 | import com.sap.sse.common.Speed; |
| 14 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 18 | 15 | import com.sap.sse.common.TimePoint; |
| 19 | 16 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 17 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 18 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 19 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 20 | 20 | |
| 21 | 21 | import net.sf.marineapi.nmea.parser.SentenceFactory; |
| 22 | 22 | import net.sf.marineapi.nmea.parser.SentenceParser; |
java/com.sap.sailing.polars.datamining.shared/src/com/sap/sailing/polars/datamining/shared/PolarStatistic.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.polars.datamining.shared; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 4 | 3 | import com.sap.sse.common.Speed; |
| 4 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 5 | 5 | |
| 6 | 6 | public interface PolarStatistic { |
| 7 | 7 |
java/com.sap.sailing.polars.datamining/src/com/sap/sailing/polars/datamining/components/PolarGPSFixRetrievalProcessor.java
| ... | ... | @@ -7,7 +7,6 @@ import java.util.concurrent.ExecutorService; |
| 7 | 7 | |
| 8 | 8 | import com.sap.sailing.domain.base.Competitor; |
| 9 | 9 | import com.sap.sailing.domain.base.Leg; |
| 10 | -import com.sap.sailing.domain.common.Position; |
|
| 11 | 10 | import com.sap.sailing.domain.common.WindSource; |
| 12 | 11 | import com.sap.sailing.domain.common.impl.WindSpeedSteppingWithMaxDistance; |
| 13 | 12 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -21,6 +20,7 @@ import com.sap.sailing.polars.datamining.data.impl.GPSFixWithPolarContext; |
| 21 | 20 | import com.sap.sailing.polars.datamining.data.impl.PolarStatisticImpl; |
| 22 | 21 | import com.sap.sailing.polars.datamining.data.impl.SpeedClusterGroup; |
| 23 | 22 | import com.sap.sailing.polars.datamining.shared.PolarDataMiningSettings; |
| 23 | +import com.sap.sse.common.Position; |
|
| 24 | 24 | import com.sap.sse.common.Speed; |
| 25 | 25 | import com.sap.sse.common.TimePoint; |
| 26 | 26 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.polars.datamining/src/com/sap/sailing/polars/datamining/components/aggregators/PolarBackendDataAggregationProcessor.java
| ... | ... | @@ -10,13 +10,13 @@ import org.apache.commons.math.analysis.polynomials.PolynomialFunction; |
| 10 | 10 | import com.sap.sailing.domain.base.BoatClass; |
| 11 | 11 | import com.sap.sailing.domain.base.SpeedWithConfidence; |
| 12 | 12 | import com.sap.sailing.domain.common.LegType; |
| 13 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 14 | 13 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 15 | 14 | import com.sap.sailing.domain.polars.PolarDataService; |
| 16 | 15 | import com.sap.sailing.polars.datamining.data.HasBackendPolarBoatClassContext; |
| 17 | 16 | import com.sap.sailing.polars.datamining.shared.PolarBackendData; |
| 18 | 17 | import com.sap.sailing.polars.datamining.shared.PolarBackendDataImpl; |
| 19 | 18 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 19 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 20 | 20 | import com.sap.sse.datamining.components.AggregationProcessorDefinition; |
| 21 | 21 | import com.sap.sse.datamining.components.Processor; |
| 22 | 22 | import com.sap.sse.datamining.impl.components.GroupedDataEntry; |
java/com.sap.sailing.polars.datamining/src/com/sap/sailing/polars/datamining/data/impl/BoatClassWithBackendPolarContext.java
| ... | ... | @@ -3,10 +3,10 @@ package com.sap.sailing.polars.datamining.data.impl; |
| 3 | 3 | import com.sap.sailing.domain.base.BoatClass; |
| 4 | 4 | import com.sap.sailing.domain.common.LegType; |
| 5 | 5 | import com.sap.sailing.domain.common.Tack; |
| 6 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 7 | 6 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 8 | 7 | import com.sap.sailing.domain.polars.PolarDataService; |
| 9 | 8 | import com.sap.sailing.polars.datamining.data.HasBackendPolarBoatClassContext; |
| 9 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 10 | 10 | |
| 11 | 11 | public class BoatClassWithBackendPolarContext implements HasBackendPolarBoatClassContext { |
| 12 | 12 |
java/com.sap.sailing.polars.datamining/src/com/sap/sailing/polars/datamining/data/impl/GPSFixWithPolarContext.java
| ... | ... | @@ -6,7 +6,6 @@ import com.sap.sailing.datamining.data.HasTrackedRaceContext; |
| 6 | 6 | import com.sap.sailing.datamining.impl.data.TrackedRaceWithContext; |
| 7 | 7 | import com.sap.sailing.domain.base.Competitor; |
| 8 | 8 | import com.sap.sailing.domain.base.RaceColumn; |
| 9 | -import com.sap.sailing.domain.common.Position; |
|
| 10 | 9 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 11 | 10 | import com.sap.sailing.domain.leaderboard.Leaderboard; |
| 12 | 11 | import com.sap.sailing.domain.tracking.BravoFixTrack; |
| ... | ... | @@ -18,6 +17,7 @@ import com.sap.sailing.polars.datamining.data.HasGPSFixPolarContext; |
| 18 | 17 | import com.sap.sailing.polars.datamining.data.HasLeaderboardPolarContext; |
| 19 | 18 | import com.sap.sailing.polars.datamining.shared.PolarDataMiningSettings; |
| 20 | 19 | import com.sap.sailing.polars.datamining.shared.PolarStatistic; |
| 20 | +import com.sap.sse.common.Position; |
|
| 21 | 21 | import com.sap.sse.common.Speed; |
| 22 | 22 | import com.sap.sse.common.TimePoint; |
| 23 | 23 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.polars.datamining/src/com/sap/sailing/polars/datamining/data/impl/PolarStatisticImpl.java
| ... | ... | @@ -4,8 +4,6 @@ import java.util.HashSet; |
| 4 | 4 | import java.util.Set; |
| 5 | 5 | |
| 6 | 6 | import com.sap.sailing.domain.base.Competitor; |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 9 | 7 | import com.sap.sailing.domain.common.Wind; |
| 10 | 8 | import com.sap.sailing.domain.common.WindSource; |
| 11 | 9 | import com.sap.sailing.domain.common.WindSourceType; |
| ... | ... | @@ -15,7 +13,9 @@ import com.sap.sailing.domain.tracking.TrackedRace; |
| 15 | 13 | import com.sap.sailing.polars.datamining.shared.PolarDataMiningSettings; |
| 16 | 14 | import com.sap.sailing.polars.datamining.shared.PolarStatistic; |
| 17 | 15 | import com.sap.sse.common.Bearing; |
| 16 | +import com.sap.sse.common.Position; |
|
| 18 | 17 | import com.sap.sse.common.Speed; |
| 18 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 19 | 19 | |
| 20 | 20 | public class PolarStatisticImpl implements PolarStatistic { |
| 21 | 21 |
java/com.sap.sailing.polars.datamining/src/com/sap/sailing/polars/datamining/data/impl/SpeedClusterGroup.java
| ... | ... | @@ -3,9 +3,9 @@ package com.sap.sailing.polars.datamining.data.impl; |
| 3 | 3 | import java.util.ArrayList; |
| 4 | 4 | import java.util.Collection; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 7 | 6 | import com.sap.sailing.domain.common.impl.WindSpeedSteppingWithMaxDistance; |
| 8 | 7 | import com.sap.sse.common.Speed; |
| 8 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 9 | 9 | import com.sap.sse.datamining.data.Cluster; |
| 10 | 10 | import com.sap.sse.datamining.data.ClusterBoundary; |
| 11 | 11 | import com.sap.sse.datamining.data.ClusterGroup; |
java/com.sap.sailing.polars.test/resources/polar_data
| 12 | 12 | index d3a841e..cb9ff6b |
| ... | ... | Binary files a/java/com.sap.sailing.polars.test/resources/polar_data and b/java/com.sap.sailing.polars.test/resources/polar_data differ |
java/com.sap.sailing.polars.test/src/com/sap/sailing/polars/clusters/test/SpeedClusterGroupTest.java
| ... | ... | @@ -8,9 +8,9 @@ import org.junit.jupiter.api.Test; |
| 8 | 8 | |
| 9 | 9 | import static org.hamcrest.MatcherAssert.assertThat; |
| 10 | 10 | |
| 11 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 12 | 11 | import com.sap.sailing.polars.datamining.data.impl.SpeedClusterGroup; |
| 13 | 12 | import com.sap.sse.common.Speed; |
| 13 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 14 | 14 | import com.sap.sse.datamining.data.Cluster; |
| 15 | 15 | |
| 16 | 16 | public class SpeedClusterGroupTest { |
java/com.sap.sailing.polars.test/src/com/sap/sailing/polars/jaxrs/api/test/PolarDataClientMock.java
| ... | ... | @@ -1,30 +0,0 @@ |
| 1 | -package com.sap.sailing.polars.jaxrs.api.test; |
|
| 2 | - |
|
| 3 | -import java.io.File; |
|
| 4 | -import java.io.FileInputStream; |
|
| 5 | -import java.io.IOException; |
|
| 6 | -import java.io.InputStream; |
|
| 7 | -import java.util.Optional; |
|
| 8 | - |
|
| 9 | -import org.json.simple.parser.ParseException; |
|
| 10 | - |
|
| 11 | -import com.sap.sailing.domain.base.DomainFactory; |
|
| 12 | -import com.sap.sailing.polars.ReplicablePolarService; |
|
| 13 | -import com.sap.sailing.polars.jaxrs.client.PolarDataClient; |
|
| 14 | - |
|
| 15 | -public class PolarDataClientMock extends PolarDataClient { |
|
| 16 | - |
|
| 17 | - private final File file; |
|
| 18 | - |
|
| 19 | - public PolarDataClientMock(File file, ReplicablePolarService polarService, DomainFactory domainFactory) { |
|
| 20 | - super(null, polarService, Optional.empty()); |
|
| 21 | - polarService.registerDomainFactory(domainFactory); |
|
| 22 | - this.file = file; |
|
| 23 | - } |
|
| 24 | - |
|
| 25 | - @Override |
|
| 26 | - protected InputStream getContentFromResponse() throws IOException, ParseException { |
|
| 27 | - return new FileInputStream(file); |
|
| 28 | - } |
|
| 29 | - |
|
| 30 | -} |
java/com.sap.sailing.polars.test/src/com/sap/sailing/polars/jaxrs/api/test/PolarDataResourceTest.java
| ... | ... | @@ -19,13 +19,14 @@ import com.sap.sailing.domain.base.impl.DomainFactoryImpl; |
| 19 | 19 | import com.sap.sailing.domain.common.LegType; |
| 20 | 20 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 21 | 21 | import com.sap.sailing.polars.impl.PolarDataServiceImpl; |
| 22 | +import com.sap.sailing.polars.jaxrs.client.FileBasedPolarDataClient; |
|
| 22 | 23 | |
| 23 | 24 | public class PolarDataResourceTest { |
| 24 | 25 | private static final Logger logger = Logger.getLogger(PolarDataResourceTest.class.getName()); |
| 25 | 26 | private static final double[] SPEED_FUNCTIONS_COEFFS_DOWNWIND = |
| 26 | - new double[]{ 0, 2.2378615205516326, -0.0801870828343283, 9.81959605693472E-4 }; |
|
| 27 | + new double[]{ 0, 1.2454692253503623, 0.13300922896236855, -0.006811462395111101 }; |
|
| 27 | 28 | private static final double[] ANGLE_FUNCTION_COEFFS_DOWNWIND = |
| 28 | - new double[]{ 138.3296034098894, -5.908558698662091, 1.1870404653964215, -0.056603488833331994 }; |
|
| 29 | + new double[]{ 146.08526498113133, -8.612243308300094, 1.2273401844320233, -0.0411405074199962 }; |
|
| 29 | 30 | private static final String BOAT_CLASS = "GC32"; |
| 30 | 31 | |
| 31 | 32 | private PolarDataServiceImpl polarService; |
| ... | ... | @@ -35,7 +36,7 @@ public class PolarDataResourceTest { |
| 35 | 36 | public void setUp() throws IOException, ParseException, ClassNotFoundException, InterruptedException { |
| 36 | 37 | polarService = new PolarDataServiceImpl(); |
| 37 | 38 | domainFactory = new DomainFactoryImpl(/* raceLogResolver */ null); |
| 38 | - final PolarDataClientMock client = new PolarDataClientMock(new File("resources/polar_data"), polarService, domainFactory); |
|
| 39 | + final FileBasedPolarDataClient client = new FileBasedPolarDataClient(new File("resources/polar_data"), polarService, domainFactory); |
|
| 39 | 40 | client.updatePolarDataRegressions(); |
| 40 | 41 | // ensure that setting the domain factory has worked |
| 41 | 42 | polarService.runWithDomainFactory(domainFactory -> { |
| ... | ... | @@ -48,7 +49,7 @@ public class PolarDataResourceTest { |
| 48 | 49 | } |
| 49 | 50 | |
| 50 | 51 | /** |
| 51 | - * Test to check if client importing data correctly. Using {@link PolarDataClientMock} which use {@link File} |
|
| 52 | + * Test to check if client importing data correctly. Using {@link FileBasedPolarDataClient} which use {@link File} |
|
| 52 | 53 | * polar_data.json as source |
| 53 | 54 | * |
| 54 | 55 | * @throws NotEnoughDataHasBeenAddedException |
| ... | ... | @@ -58,9 +59,9 @@ public class PolarDataResourceTest { |
| 58 | 59 | BoatClass boatClass = domainFactory.getOrCreateBoatClass(BOAT_CLASS); |
| 59 | 60 | PolynomialFunction angleDownwindFunction = new PolynomialFunction(ANGLE_FUNCTION_COEFFS_DOWNWIND); |
| 60 | 61 | PolynomialFunction speedDownwindFunction = new PolynomialFunction(SPEED_FUNCTIONS_COEFFS_DOWNWIND); |
| 61 | - assertThat(polarService.getSpeedRegressionsPerAngle().size(), is(68)); |
|
| 62 | - assertThat(polarService.getCubicRegressionsPerCourse().size(), is(4)); |
|
| 63 | - assertThat(polarService.getFixCountPerBoatClass().get(boatClass), is(9330L)); |
|
| 62 | + assertThat(polarService.getSpeedRegressionsPerAngle().size(), is(36)); |
|
| 63 | + assertThat(polarService.getCubicRegressionsPerCourse().size(), is(2)); |
|
| 64 | + assertThat(polarService.getFixCountPerBoatClass().get(boatClass), is(248239L)); |
|
| 64 | 65 | // presuming that if downwind functions & regression collections' size are correct then any other thing is |
| 65 | 66 | // imported correctly |
| 66 | 67 | assertThat(polarService.getAngleRegressionFunction(boatClass, LegType.DOWNWIND), is(angleDownwindFunction)); |
java/com.sap.sailing.polars.test/src/com/sap/sailing/polars/mining/test/PolarDataMinerTest.java
| ... | ... | @@ -30,13 +30,8 @@ import com.sap.sailing.domain.base.RaceDefinition; |
| 30 | 30 | import com.sap.sailing.domain.base.SpeedWithConfidence; |
| 31 | 31 | import com.sap.sailing.domain.base.Waypoint; |
| 32 | 32 | import com.sap.sailing.domain.common.PolarSheetGenerationSettings; |
| 33 | -import com.sap.sailing.domain.common.Position; |
|
| 34 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 35 | 33 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 36 | 34 | import com.sap.sailing.domain.common.Wind; |
| 37 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 38 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 39 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 40 | 35 | import com.sap.sailing.domain.common.impl.PolarSheetGenerationSettingsImpl; |
| 41 | 36 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 42 | 37 | import com.sap.sailing.domain.common.impl.WindSpeedSteppingWithMaxDistance; |
| ... | ... | @@ -54,9 +49,14 @@ import com.sap.sailing.polars.mining.CubicRegressionPerCourseProcessor; |
| 54 | 49 | import com.sap.sailing.polars.mining.PolarDataMiner; |
| 55 | 50 | import com.sap.sailing.polars.mining.SpeedRegressionPerAngleClusterProcessor; |
| 56 | 51 | import com.sap.sse.common.Bearing; |
| 52 | +import com.sap.sse.common.Position; |
|
| 53 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 57 | 54 | import com.sap.sse.common.TimePoint; |
| 58 | 55 | import com.sap.sse.common.Util.Pair; |
| 59 | 56 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 57 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 58 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 59 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 60 | 60 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 61 | 61 | import com.sap.sse.datamining.data.ClusterGroup; |
| 62 | 62 |
java/com.sap.sailing.polars.test/src/com/sap/sailing/polars/windestimation/TestWindEstimationFromManeuversOnAFew505Races.java
| ... | ... | @@ -19,7 +19,6 @@ import com.sap.sailing.domain.common.ManeuverType; |
| 19 | 19 | import com.sap.sailing.domain.common.Wind; |
| 20 | 20 | import com.sap.sailing.domain.common.confidence.impl.ScalableWind; |
| 21 | 21 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 22 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 23 | 22 | import com.sap.sailing.domain.test.OnlineTracTracBasedTest; |
| 24 | 23 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 25 | 24 | import com.sap.sailing.polars.impl.PolarDataServiceImpl; |
| ... | ... | @@ -27,6 +26,7 @@ import com.sap.sse.common.Bearing; |
| 27 | 26 | import com.sap.sse.common.Util.Pair; |
| 28 | 27 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 29 | 28 | import com.sap.sse.common.scalablevalue.ScalableDouble; |
| 29 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 30 | 30 | import com.sap.sse.util.kmeans.Cluster; |
| 31 | 31 | import com.sap.sse.util.kmeans.KMeansMappingClusterer; |
| 32 | 32 |
java/com.sap.sailing.polars/src/com/sap/sailing/polars/impl/PolarDataServiceImpl.java
| ... | ... | @@ -23,9 +23,6 @@ import com.sap.sailing.domain.common.LegType; |
| 23 | 23 | import com.sap.sailing.domain.common.ManeuverType; |
| 24 | 24 | import com.sap.sailing.domain.common.PolarSheetGenerationSettings; |
| 25 | 25 | import com.sap.sailing.domain.common.Tack; |
| 26 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 27 | -import com.sap.sailing.domain.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 28 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 29 | 26 | import com.sap.sailing.domain.common.impl.PolarSheetGenerationSettingsImpl; |
| 30 | 27 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 31 | 28 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| ... | ... | @@ -44,7 +41,10 @@ import com.sap.sailing.polars.regression.impl.IncrementalAnyOrderLeastSquaresImp |
| 44 | 41 | import com.sap.sse.common.Bearing; |
| 45 | 42 | import com.sap.sse.common.Speed; |
| 46 | 43 | import com.sap.sse.common.Util.Pair; |
| 44 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 45 | +import com.sap.sse.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 47 | 46 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 47 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 48 | 48 | import com.sap.sse.datamining.data.ClusterGroup; |
| 49 | 49 | import com.sap.sse.datamining.shared.GroupKey; |
| 50 | 50 | import com.sap.sse.replication.interfaces.impl.AbstractReplicableWithObjectInputStream; |
java/com.sap.sailing.polars/src/com/sap/sailing/polars/jaxrs/client/FileBasedPolarDataClient.java
| ... | ... | @@ -0,0 +1,28 @@ |
| 1 | +package com.sap.sailing.polars.jaxrs.client; |
|
| 2 | + |
|
| 3 | +import java.io.File; |
|
| 4 | +import java.io.FileInputStream; |
|
| 5 | +import java.io.IOException; |
|
| 6 | +import java.io.InputStream; |
|
| 7 | +import java.util.Optional; |
|
| 8 | + |
|
| 9 | +import org.json.simple.parser.ParseException; |
|
| 10 | + |
|
| 11 | +import com.sap.sailing.domain.base.DomainFactory; |
|
| 12 | +import com.sap.sailing.polars.ReplicablePolarService; |
|
| 13 | + |
|
| 14 | +public class FileBasedPolarDataClient extends PolarDataClient { |
|
| 15 | + |
|
| 16 | + private final File file; |
|
| 17 | + |
|
| 18 | + public FileBasedPolarDataClient(File file, ReplicablePolarService polarService, DomainFactory domainFactory) { |
|
| 19 | + super(null, polarService, Optional.empty()); |
|
| 20 | + polarService.registerDomainFactory(domainFactory); |
|
| 21 | + this.file = file; |
|
| 22 | + } |
|
| 23 | + |
|
| 24 | + @Override |
|
| 25 | + protected InputStream getContentFromResponse() throws IOException, ParseException { |
|
| 26 | + return new FileInputStream(file); |
|
| 27 | + } |
|
| 28 | +} |
java/com.sap.sailing.polars/src/com/sap/sailing/polars/mining/AngleAndSpeedRegression.java
| ... | ... | @@ -9,21 +9,21 @@ import org.apache.commons.math.analysis.polynomials.PolynomialFunction; |
| 9 | 9 | import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 10 | 10 | import com.sap.sailing.domain.base.impl.SpeedWithBearingWithConfidenceImpl; |
| 11 | 11 | import com.sap.sailing.domain.common.LegType; |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 14 | 12 | import com.sap.sailing.domain.common.Tack; |
| 15 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 16 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 17 | 13 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 18 | 14 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 19 | 15 | import com.sap.sailing.polars.impl.CubicEquation; |
| 20 | 16 | import com.sap.sailing.polars.regression.IncrementalLeastSquares; |
| 21 | 17 | import com.sap.sailing.polars.regression.impl.IncrementalAnyOrderLeastSquaresImpl; |
| 22 | 18 | import com.sap.sse.common.Bearing; |
| 19 | +import com.sap.sse.common.Position; |
|
| 23 | 20 | import com.sap.sse.common.Speed; |
| 21 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 24 | 22 | import com.sap.sse.common.TimePoint; |
| 25 | 23 | import com.sap.sse.common.Util.Pair; |
| 24 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 26 | 25 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 26 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 27 | 27 | |
| 28 | 28 | /** |
| 29 | 29 | * This container has two regressions. One for boatSpeed over windSpeed and one for TWA (true wind angle) over windSpeed |
java/com.sap.sailing.polars/src/com/sap/sailing/polars/mining/GPSFixMovingWithPolarContext.java
| ... | ... | @@ -8,12 +8,8 @@ import com.sap.sailing.domain.base.Competitor; |
| 8 | 8 | import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 9 | 9 | import com.sap.sailing.domain.common.LegType; |
| 10 | 10 | import com.sap.sailing.domain.common.NoWindException; |
| 11 | -import com.sap.sailing.domain.common.Position; |
|
| 12 | 11 | import com.sap.sailing.domain.common.WindSource; |
| 13 | 12 | import com.sap.sailing.domain.common.WindSourceType; |
| 14 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 15 | -import com.sap.sailing.domain.common.confidence.ConfidenceFactory; |
|
| 16 | -import com.sap.sailing.domain.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 17 | 13 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 18 | 14 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 19 | 15 | import com.sap.sailing.domain.tracking.TrackedLeg; |
| ... | ... | @@ -21,8 +17,12 @@ import com.sap.sailing.domain.tracking.TrackedLegOfCompetitor; |
| 21 | 17 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 22 | 18 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 23 | 19 | import com.sap.sse.common.Bearing; |
| 20 | +import com.sap.sse.common.Position; |
|
| 24 | 21 | import com.sap.sse.common.TimePoint; |
| 25 | 22 | import com.sap.sse.common.Util.Pair; |
| 23 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 24 | +import com.sap.sse.common.confidence.ConfidenceFactory; |
|
| 25 | +import com.sap.sse.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 26 | 26 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 27 | 27 | import com.sap.sse.datamining.data.Cluster; |
| 28 | 28 | import com.sap.sse.datamining.data.ClusterGroup; |
java/com.sap.sailing.polars/src/com/sap/sailing/polars/mining/PolarDataMiner.java
| ... | ... | @@ -34,8 +34,6 @@ import com.sap.sailing.domain.common.PolarSheetsData; |
| 34 | 34 | import com.sap.sailing.domain.common.PolarSheetsHistogramData; |
| 35 | 35 | import com.sap.sailing.domain.common.Tack; |
| 36 | 36 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 37 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 38 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 39 | 37 | import com.sap.sailing.domain.common.impl.PolarSheetsDataImpl; |
| 40 | 38 | import com.sap.sailing.domain.common.impl.PolarSheetsHistogramDataImpl; |
| 41 | 39 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| ... | ... | @@ -48,6 +46,8 @@ import com.sap.sse.common.Bearing; |
| 48 | 46 | import com.sap.sse.common.Speed; |
| 49 | 47 | import com.sap.sse.common.Util.Pair; |
| 50 | 48 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 49 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 50 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 51 | 51 | import com.sap.sse.datamining.components.FilterCriterion; |
| 52 | 52 | import com.sap.sse.datamining.components.Processor; |
| 53 | 53 | import com.sap.sse.datamining.data.ClusterGroup; |
java/com.sap.sailing.polars/src/com/sap/sailing/polars/mining/PolarFixFilterCriteria.java
| ... | ... | @@ -10,15 +10,15 @@ import com.sap.sailing.domain.base.Course; |
| 10 | 10 | import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 11 | 11 | import com.sap.sailing.domain.base.Waypoint; |
| 12 | 12 | import com.sap.sailing.domain.common.LegType; |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | -import com.sap.sailing.domain.common.confidence.BearingWithConfidence; |
|
| 15 | 13 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 16 | 14 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 17 | 15 | import com.sap.sailing.domain.tracking.MarkPassing; |
| 18 | 16 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 19 | 17 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 18 | +import com.sap.sse.common.Position; |
|
| 20 | 19 | import com.sap.sse.common.TimePoint; |
| 21 | 20 | import com.sap.sse.common.Util.Pair; |
| 21 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 22 | 22 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 23 | 23 | import com.sap.sse.datamining.components.FilterCriterion; |
| 24 | 24 |
java/com.sap.sailing.polars/src/com/sap/sailing/polars/mining/SpeedRegressionPerAngleClusterProcessor.java
| ... | ... | @@ -15,7 +15,6 @@ import org.apache.commons.math.analysis.polynomials.PolynomialFunction; |
| 15 | 15 | import com.sap.sailing.domain.base.BoatClass; |
| 16 | 16 | import com.sap.sailing.domain.base.SpeedWithConfidence; |
| 17 | 17 | import com.sap.sailing.domain.base.impl.SpeedWithConfidenceImpl; |
| 18 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 19 | 18 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 20 | 19 | import com.sap.sailing.domain.polars.PolarsChangedListener; |
| 21 | 20 | import com.sap.sailing.polars.impl.CubicEquation; |
| ... | ... | @@ -26,6 +25,7 @@ import com.sap.sse.common.Speed; |
| 26 | 25 | import com.sap.sse.common.Util; |
| 27 | 26 | import com.sap.sse.common.Util.Pair; |
| 28 | 27 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 28 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 29 | 29 | import com.sap.sse.datamining.components.AdditionalResultDataBuilder; |
| 30 | 30 | import com.sap.sse.datamining.components.Processor; |
| 31 | 31 | import com.sap.sse.datamining.data.Cluster; |
java/com.sap.sailing.polars/src/com/sap/sailing/polars/windestimation/AbstractManeuverBasedWindEstimationTrackImpl.java
| ... | ... | @@ -12,24 +12,24 @@ import java.util.stream.Stream; |
| 12 | 12 | |
| 13 | 13 | import com.sap.sailing.domain.base.BoatClass; |
| 14 | 14 | import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 15 | -import com.sap.sailing.domain.common.DoublePair; |
|
| 16 | 15 | import com.sap.sailing.domain.common.ManeuverType; |
| 17 | 16 | import com.sap.sailing.domain.common.Wind; |
| 18 | -import com.sap.sailing.domain.common.confidence.ConfidenceBasedAverager; |
|
| 19 | -import com.sap.sailing.domain.common.confidence.ConfidenceFactory; |
|
| 20 | 17 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 21 | 18 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 22 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 23 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableSpeed; |
|
| 24 | 19 | import com.sap.sailing.domain.polars.PolarDataService; |
| 25 | 20 | import com.sap.sailing.domain.tracking.impl.WindTrackImpl; |
| 26 | 21 | import com.sap.sse.common.Bearing; |
| 22 | +import com.sap.sse.common.DoublePair; |
|
| 27 | 23 | import com.sap.sse.common.Speed; |
| 28 | 24 | import com.sap.sse.common.Util.Pair; |
| 29 | 25 | import com.sap.sse.common.Util.Triple; |
| 26 | +import com.sap.sse.common.confidence.ConfidenceBasedAverager; |
|
| 27 | +import com.sap.sse.common.confidence.ConfidenceFactory; |
|
| 28 | +import com.sap.sse.common.confidence.HasConfidence; |
|
| 30 | 29 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 31 | -import com.sap.sse.common.scalablevalue.HasConfidence; |
|
| 32 | 30 | import com.sap.sse.common.scalablevalue.ScalableDouble; |
| 31 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 32 | +import com.sap.sse.common.scalablevalue.impl.ScalableSpeed; |
|
| 33 | 33 | import com.sap.sse.util.kmeans.Cluster; |
| 34 | 34 | import com.sap.sse.util.kmeans.KMeansMappingClusterer; |
| 35 | 35 |
java/com.sap.sailing.polars/src/com/sap/sailing/polars/windestimation/ManeuverBasedWindEstimationTrack.java
| ... | ... | @@ -6,11 +6,11 @@ import java.util.stream.Stream; |
| 6 | 6 | |
| 7 | 7 | import com.sap.sailing.domain.base.BoatClass; |
| 8 | 8 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 9 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 10 | 9 | import com.sap.sailing.domain.tracking.WindTrack; |
| 11 | 10 | import com.sap.sse.common.Bearing; |
| 12 | 11 | import com.sap.sse.common.Util.Pair; |
| 13 | 12 | import com.sap.sse.common.scalablevalue.ScalableDouble; |
| 13 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 14 | 14 | import com.sap.sse.util.kmeans.Cluster; |
| 15 | 15 | |
| 16 | 16 | public interface ManeuverBasedWindEstimationTrack extends WindTrack { |
java/com.sap.sailing.polars/src/com/sap/sailing/polars/windestimation/ManeuverBasedWindEstimationTrackImpl.java
| ... | ... | @@ -14,7 +14,6 @@ import com.sap.sailing.domain.base.Waypoint; |
| 14 | 14 | import com.sap.sailing.domain.base.impl.CompetitorAndBoatImpl; |
| 15 | 15 | import com.sap.sailing.domain.common.ManeuverType; |
| 16 | 16 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 17 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 18 | 17 | import com.sap.sailing.domain.polars.PolarDataService; |
| 19 | 18 | import com.sap.sailing.domain.tracking.Maneuver; |
| 20 | 19 | import com.sap.sailing.domain.tracking.TrackedRace; |
| ... | ... | @@ -26,6 +25,7 @@ import com.sap.sse.common.Util.Pair; |
| 26 | 25 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 27 | 26 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 28 | 27 | import com.sap.sse.common.scalablevalue.ScalableDouble; |
| 28 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 29 | 29 | import com.sap.sse.util.kmeans.Cluster; |
| 30 | 30 | |
| 31 | 31 | /** |
java/com.sap.sailing.polars/src/com/sap/sailing/polars/windestimation/ManeuverClassification.java
| ... | ... | @@ -3,8 +3,8 @@ package com.sap.sailing.polars.windestimation; |
| 3 | 3 | import com.sap.sailing.domain.base.BoatClass; |
| 4 | 4 | import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 5 | 5 | import com.sap.sailing.domain.common.ManeuverType; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sse.common.Bearing; |
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | 8 | import com.sap.sse.common.Speed; |
| 9 | 9 | import com.sap.sse.common.TimePoint; |
| 10 | 10 |
java/com.sap.sailing.polars/src/com/sap/sailing/polars/windestimation/ManeuverClassificationImpl.java
| ... | ... | @@ -9,16 +9,16 @@ import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 9 | 9 | import com.sap.sailing.domain.base.impl.SpeedWithBearingWithConfidenceImpl; |
| 10 | 10 | import com.sap.sailing.domain.common.LegType; |
| 11 | 11 | import com.sap.sailing.domain.common.ManeuverType; |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 14 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 15 | 12 | import com.sap.sailing.domain.polars.PolarDataService; |
| 16 | 13 | import com.sap.sailing.domain.tracking.Maneuver; |
| 17 | 14 | import com.sap.sse.common.Bearing; |
| 18 | 15 | import com.sap.sse.common.Distance; |
| 16 | +import com.sap.sse.common.Position; |
|
| 19 | 17 | import com.sap.sse.common.Speed; |
| 18 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 20 | 19 | import com.sap.sse.common.TimePoint; |
| 21 | 20 | import com.sap.sse.common.Util.Pair; |
| 21 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 22 | 22 | |
| 23 | 23 | /** |
| 24 | 24 | * Collects data about a maneuver that will be used to assign probabilities for maneuver types such as tack or jibe, |
java/com.sap.sailing.polars/src/com/sap/sailing/polars/windestimation/ManeuverClassificationToHasConfidenceAndIsScalableAdapter.java
| ... | ... | @@ -3,8 +3,8 @@ package com.sap.sailing.polars.windestimation; |
| 3 | 3 | import java.util.function.Function; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.common.ManeuverType; |
| 6 | -import com.sap.sailing.domain.common.confidence.ConfidenceBasedAverager; |
|
| 7 | 6 | import com.sap.sailing.domain.polars.PolarDataService; |
| 7 | +import com.sap.sse.common.confidence.ConfidenceBasedAverager; |
|
| 8 | 8 | import com.sap.sse.common.scalablevalue.HasConfidenceAndIsScalable; |
| 9 | 9 | import com.sap.sse.common.scalablevalue.ScalableValue; |
| 10 | 10 |
java/com.sap.sailing.polars/src/com/sap/sailing/polars/windestimation/ScalableBearingAndScalableDouble.java
| ... | ... | @@ -1,11 +1,11 @@ |
| 1 | 1 | package com.sap.sailing.polars.windestimation; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 4 | 3 | import com.sap.sse.common.Bearing; |
| 5 | 4 | import com.sap.sse.common.Util.Pair; |
| 6 | 5 | import com.sap.sse.common.scalablevalue.ScalableDouble; |
| 7 | 6 | import com.sap.sse.common.scalablevalue.ScalableValue; |
| 8 | 7 | import com.sap.sse.common.scalablevalue.ScalableValueWithDistance; |
| 8 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 9 | 9 | |
| 10 | 10 | /** |
| 11 | 11 | * Two {@link Bearings} combined in one scalable object, like a vector of two bearings. {@link #add(ScalableValue) |
java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/api/coursetemplate/DeviceMapping.java
| ... | ... | @@ -2,10 +2,10 @@ package com.sap.sailing.selenium.api.coursetemplate; |
| 2 | 2 | |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 7 | 5 | import com.sap.sailing.selenium.api.core.JsonWrapper; |
| 6 | +import com.sap.sse.common.Position; |
|
| 8 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 9 | 9 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 10 | 10 | |
| 11 | 11 | public class DeviceMapping extends JsonWrapper { |
java/com.sap.sailing.selenium.test/src/com/sap/sailing/selenium/api/coursetemplate/MarkConfiguration.java
| ... | ... | @@ -11,9 +11,9 @@ import java.util.stream.Collectors; |
| 11 | 11 | import org.json.simple.JSONArray; |
| 12 | 12 | import org.json.simple.JSONObject; |
| 13 | 13 | |
| 14 | -import com.sap.sailing.domain.common.Position; |
|
| 15 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 16 | 14 | import com.sap.sailing.selenium.api.core.JsonWrapper; |
| 15 | +import com.sap.sse.common.Position; |
|
| 16 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 17 | 17 | |
| 18 | 18 | public class MarkConfiguration extends JsonWrapper { |
| 19 | 19 |
java/com.sap.sailing.server.gateway.serialization.shared.android/src/com/sap/sailing/server/gateway/deserialization/impl/CourseAreaJsonDeserializer.java
| ... | ... | @@ -7,10 +7,10 @@ import org.json.simple.JSONObject; |
| 7 | 7 | |
| 8 | 8 | import com.sap.sailing.domain.base.CourseArea; |
| 9 | 9 | import com.sap.sailing.domain.base.SharedDomainFactory; |
| 10 | -import com.sap.sailing.domain.common.Position; |
|
| 11 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 12 | 10 | import com.sap.sailing.server.gateway.serialization.impl.CourseAreaJsonSerializer; |
| 13 | 11 | import com.sap.sse.common.Distance; |
| 12 | +import com.sap.sse.common.Position; |
|
| 13 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 14 | 14 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 15 | 15 | import com.sap.sse.shared.json.JsonDeserializer; |
| 16 | 16 | import com.sap.sse.shared.util.impl.UUIDHelper; |
java/com.sap.sailing.server.gateway.serialization.shared.android/src/com/sap/sailing/server/gateway/deserialization/impl/PositionJsonDeserializer.java
| ... | ... | @@ -2,9 +2,9 @@ package com.sap.sailing.server.gateway.deserialization.impl; |
| 2 | 2 | |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 7 | 5 | import com.sap.sailing.server.gateway.serialization.impl.PositionJsonSerializer; |
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 8 | 8 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 9 | 9 | import com.sap.sse.shared.json.JsonDeserializer; |
| 10 | 10 |
java/com.sap.sailing.server.gateway.serialization.shared.android/src/com/sap/sailing/server/gateway/deserialization/impl/StatisticsJsonDeserializer.java
| ... | ... | @@ -4,8 +4,6 @@ import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.base.Competitor; |
| 6 | 6 | import com.sap.sailing.domain.base.SharedDomainFactory; |
| 7 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 8 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 9 | 7 | import com.sap.sailing.domain.statistics.Statistics; |
| 10 | 8 | import com.sap.sailing.domain.statistics.impl.StatisticsImpl; |
| 11 | 9 | import com.sap.sailing.server.gateway.serialization.impl.StatisticsJsonSerializer; |
| ... | ... | @@ -13,6 +11,8 @@ import com.sap.sse.common.Distance; |
| 13 | 11 | import com.sap.sse.common.Speed; |
| 14 | 12 | import com.sap.sse.common.TimePoint; |
| 15 | 13 | import com.sap.sse.common.Util.Triple; |
| 14 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 15 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 16 | 16 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 17 | 17 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 18 | 18 | import com.sap.sse.shared.json.JsonDeserializer; |
java/com.sap.sailing.server.gateway.serialization.shared.android/src/com/sap/sailing/server/gateway/deserialization/impl/TargetTimeInfoDeserializer.java
| ... | ... | @@ -10,7 +10,6 @@ import com.sap.sailing.domain.common.LegType; |
| 10 | 10 | import com.sap.sailing.domain.common.TargetTimeInfo; |
| 11 | 11 | import com.sap.sailing.domain.common.TargetTimeInfo.LegTargetTimeInfo; |
| 12 | 12 | import com.sap.sailing.domain.common.Wind; |
| 13 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 14 | 13 | import com.sap.sailing.domain.common.impl.TargetTimeInfoImpl; |
| 15 | 14 | import com.sap.sailing.server.gateway.serialization.impl.TargetTimeInfoSerializer; |
| 16 | 15 | import com.sap.sse.common.Bearing; |
| ... | ... | @@ -18,6 +17,7 @@ import com.sap.sse.common.Distance; |
| 18 | 17 | import com.sap.sse.common.Duration; |
| 19 | 18 | import com.sap.sse.common.TimePoint; |
| 20 | 19 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 20 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 21 | 21 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 22 | 22 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 23 | 23 | import com.sap.sse.shared.json.JsonDeserializationException; |
java/com.sap.sailing.server.gateway.serialization.shared.android/src/com/sap/sailing/server/gateway/deserialization/impl/WindJsonDeserializer.java
| ... | ... | @@ -2,14 +2,14 @@ package com.sap.sailing.server.gateway.deserialization.impl; |
| 2 | 2 | |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 7 | 5 | import com.sap.sailing.domain.common.Wind; |
| 8 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 9 | 6 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 10 | 7 | import com.sap.sailing.server.gateway.serialization.impl.WindJsonSerializer; |
| 11 | 8 | import com.sap.sse.common.Bearing; |
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 12 | 11 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 12 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 13 | 13 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 14 | 14 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 15 | 15 | import com.sap.sse.shared.json.JsonDeserializer; |
java/com.sap.sailing.server.gateway.serialization.shared.android/src/com/sap/sailing/server/gateway/deserialization/racelog/impl/ImpliedWindSourceDeserializer.java
| ... | ... | @@ -5,7 +5,6 @@ import java.util.logging.Logger; |
| 5 | 5 | |
| 6 | 6 | import org.json.simple.JSONObject; |
| 7 | 7 | |
| 8 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 9 | 8 | import com.sap.sailing.domain.common.orc.FixedSpeedImpliedWind; |
| 10 | 9 | import com.sap.sailing.domain.common.orc.ImpliedWindSource; |
| 11 | 10 | import com.sap.sailing.domain.common.orc.OtherRaceAsImpliedWindSource; |
| ... | ... | @@ -16,6 +15,7 @@ import com.sap.sailing.domain.common.orc.impl.OwnMaxImpliedWindImpl; |
| 16 | 15 | import com.sap.sailing.server.gateway.serialization.racelog.impl.ImpliedWindSourceSerializer; |
| 17 | 16 | import com.sap.sse.common.Speed; |
| 18 | 17 | import com.sap.sse.common.Util.Triple; |
| 18 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 19 | 19 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 20 | 20 | import com.sap.sse.shared.json.JsonDeserializer; |
| 21 | 21 |
java/com.sap.sailing.server.gateway.serialization.shared.android/src/com/sap/sailing/server/gateway/deserialization/racelog/impl/ORCCertificateJsonDeserializer.java
| ... | ... | @@ -9,8 +9,6 @@ import java.util.function.Function; |
| 9 | 9 | import org.json.simple.JSONArray; |
| 10 | 10 | import org.json.simple.JSONObject; |
| 11 | 11 | |
| 12 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 13 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 14 | 12 | import com.sap.sailing.domain.common.orc.ORCCertificate; |
| 15 | 13 | import com.sap.sailing.domain.common.orc.impl.ORCCertificateImpl; |
| 16 | 14 | import com.sap.sailing.server.gateway.serialization.racelog.impl.ORCCertificateJsonSerializer; |
| ... | ... | @@ -22,6 +20,8 @@ import com.sap.sse.common.Duration; |
| 22 | 20 | import com.sap.sse.common.Speed; |
| 23 | 21 | import com.sap.sse.common.TimePoint; |
| 24 | 22 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 23 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 24 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 25 | 25 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 26 | 26 | import com.sap.sse.common.impl.SecondsDurationImpl; |
| 27 | 27 | import com.sap.sse.shared.json.JsonDeserializationException; |
java/com.sap.sailing.server.gateway.serialization.shared.android/src/com/sap/sailing/server/gateway/deserialization/racelog/impl/RaceLogORCLegDataEventDeserializer.java
| ... | ... | @@ -10,13 +10,13 @@ import com.sap.sailing.domain.abstractlog.orc.impl.RaceLogORCLegDataEventImpl; |
| 10 | 10 | import com.sap.sailing.domain.abstractlog.race.RaceLogEvent; |
| 11 | 11 | import com.sap.sailing.domain.base.Competitor; |
| 12 | 12 | import com.sap.sailing.domain.base.impl.DynamicCompetitor; |
| 13 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 14 | 13 | import com.sap.sailing.domain.common.orc.ORCPerformanceCurveLegTypes; |
| 15 | 14 | import com.sap.sailing.server.gateway.serialization.racelog.impl.RaceLogORCLegDataEventSerializer; |
| 16 | 15 | import com.sap.sse.common.Bearing; |
| 17 | 16 | import com.sap.sse.common.Distance; |
| 18 | 17 | import com.sap.sse.common.TimePoint; |
| 19 | 18 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 19 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 20 | 20 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 21 | 21 | import com.sap.sse.shared.json.JsonDeserializer; |
| 22 | 22 |
java/com.sap.sailing.server.gateway.serialization.shared.android/src/com/sap/sailing/server/gateway/serialization/impl/MarkJsonSerializerWithPosition.java
| ... | ... | @@ -3,9 +3,9 @@ package com.sap.sailing.server.gateway.serialization.impl; |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.base.ControlPoint; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 8 | 7 | import com.sap.sailing.server.gateway.serialization.coursedata.impl.MarkJsonSerializer; |
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | 9 | import com.sap.sse.common.Util.Pair; |
| 10 | 10 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 11 | 11 | import com.sap.sse.shared.json.JsonSerializer; |
java/com.sap.sailing.server.gateway.serialization.shared.android/src/com/sap/sailing/server/gateway/serialization/impl/PositionJsonSerializer.java
| ... | ... | @@ -2,7 +2,7 @@ package com.sap.sailing.server.gateway.serialization.impl; |
| 2 | 2 | |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | 6 | import com.sap.sse.shared.json.JsonSerializer; |
| 7 | 7 | |
| 8 | 8 | public class PositionJsonSerializer implements JsonSerializer<Position> { |
java/com.sap.sailing.server.gateway.serialization.shared.android/src/com/sap/sailing/server/gateway/serialization/impl/WindJsonSerializer.java
| ... | ... | @@ -2,8 +2,8 @@ package com.sap.sailing.server.gateway.serialization.impl; |
| 2 | 2 | |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | 5 | import com.sap.sailing.domain.common.Wind; |
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | 7 | import com.sap.sse.shared.json.JsonSerializer; |
| 8 | 8 | |
| 9 | 9 | public class WindJsonSerializer implements JsonSerializer<Wind> { |
java/com.sap.sailing.server.gateway.serialization.test/src/com/sap/sailing/server/gateway/deserialization/test/racelog/ORCCertificateJsonDeserializerTest.java
| ... | ... | @@ -16,7 +16,6 @@ import org.json.simple.parser.ParseException; |
| 16 | 16 | import org.junit.jupiter.api.BeforeEach; |
| 17 | 17 | import org.junit.jupiter.api.Test; |
| 18 | 18 | |
| 19 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 20 | 19 | import com.sap.sailing.domain.common.orc.ORCCertificate; |
| 21 | 20 | import com.sap.sailing.domain.orc.ORCCertificatesCollection; |
| 22 | 21 | import com.sap.sailing.domain.orc.ORCCertificatesImporter; |
| ... | ... | @@ -25,6 +24,7 @@ import com.sap.sailing.server.gateway.serialization.racelog.impl.ORCCertificateJ |
| 25 | 24 | import com.sap.sse.common.Bearing; |
| 26 | 25 | import com.sap.sse.common.Speed; |
| 27 | 26 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 27 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 28 | 28 | |
| 29 | 29 | public class ORCCertificateJsonDeserializerTest { |
| 30 | 30 | private ORCCertificateJsonSerializer serializer; |
java/com.sap.sailing.server.gateway.serialization.test/src/com/sap/sailing/server/gateway/deserialization/test/racelog/RaceLogEventDeserializerTest.java
| ... | ... | @@ -34,7 +34,6 @@ import com.sap.sailing.domain.base.impl.DynamicCompetitor; |
| 34 | 34 | import com.sap.sailing.domain.common.BoatClassMasterdata; |
| 35 | 35 | import com.sap.sailing.domain.common.WindSource; |
| 36 | 36 | import com.sap.sailing.domain.common.WindSourceType; |
| 37 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 38 | 37 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 39 | 38 | import com.sap.sailing.domain.common.impl.WindSourceWithAdditionalID; |
| 40 | 39 | import com.sap.sailing.domain.common.orc.ORCCertificate; |
| ... | ... | @@ -57,6 +56,7 @@ import com.sap.sailing.server.gateway.serialization.racelog.impl.RaceLogEventSer |
| 57 | 56 | import com.sap.sse.common.TimePoint; |
| 58 | 57 | import com.sap.sse.common.Util; |
| 59 | 58 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 59 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 60 | 60 | import com.sap.sse.shared.json.JsonDeserializer; |
| 61 | 61 | |
| 62 | 62 | public class RaceLogEventDeserializerTest { |
java/com.sap.sailing.server.gateway.serialization.test/src/com/sap/sailing/server/gateway/serialization/test/EstimationDataSerializationDeserializationTest.java
| ... | ... | @@ -11,12 +11,7 @@ import org.junit.jupiter.api.Test; |
| 11 | 11 | import com.sap.sailing.domain.base.BoatClass; |
| 12 | 12 | import com.sap.sailing.domain.base.DomainFactory; |
| 13 | 13 | import com.sap.sailing.domain.common.BoatHullType; |
| 14 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 15 | 14 | import com.sap.sailing.domain.common.Wind; |
| 16 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 17 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 18 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 19 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 20 | 15 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 21 | 16 | import com.sap.sailing.domain.maneuverdetection.CompleteManeuverCurveWithEstimationData; |
| 22 | 17 | import com.sap.sailing.domain.maneuverdetection.ManeuverMainCurveWithEstimationData; |
| ... | ... | @@ -39,7 +34,12 @@ import com.sap.sse.common.Bearing; |
| 39 | 34 | import com.sap.sse.common.Distance; |
| 40 | 35 | import com.sap.sse.common.Duration; |
| 41 | 36 | import com.sap.sse.common.Speed; |
| 37 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 42 | 38 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 39 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 40 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 41 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 42 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 43 | 43 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 44 | 44 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 45 | 45 | import com.sap.sse.shared.json.JsonDeserializationException; |
java/com.sap.sailing.server.gateway.serialization.test/src/com/sap/sailing/server/gateway/serialization/test/EventDataJsonSerializerTest.java
| ... | ... | @@ -23,8 +23,6 @@ import com.sap.sailing.domain.base.DomainFactory; |
| 23 | 23 | import com.sap.sailing.domain.base.EventBase; |
| 24 | 24 | import com.sap.sailing.domain.base.Venue; |
| 25 | 25 | import com.sap.sailing.domain.base.impl.VenueImpl; |
| 26 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 27 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 28 | 26 | import com.sap.sailing.domain.leaderboard.LeaderboardGroup; |
| 29 | 27 | import com.sap.sailing.server.gateway.deserialization.impl.CourseAreaJsonDeserializer; |
| 30 | 28 | import com.sap.sailing.server.gateway.deserialization.impl.EventBaseJsonDeserializer; |
| ... | ... | @@ -38,7 +36,9 @@ import com.sap.sailing.server.gateway.serialization.impl.TrackingConnectorInfoJs |
| 38 | 36 | import com.sap.sailing.server.gateway.serialization.impl.VenueJsonSerializer; |
| 39 | 37 | import com.sap.sse.common.TimePoint; |
| 40 | 38 | import com.sap.sse.common.Util; |
| 39 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 41 | 40 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 41 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 42 | 42 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 43 | 43 | import com.sap.sse.shared.json.JsonSerializer; |
| 44 | 44 | import com.sap.sse.shared.media.ImageDescriptor; |
java/com.sap.sailing.server.gateway.serialization.test/src/com/sap/sailing/server/gateway/serialization/test/racelog/RaceLogWindFixEventSerializerTest.java
| ... | ... | @@ -13,11 +13,7 @@ import com.sap.sailing.domain.abstractlog.race.RaceLogWindFixEvent; |
| 13 | 13 | import com.sap.sailing.domain.abstractlog.race.impl.RaceLogWindFixEventImpl; |
| 14 | 14 | import com.sap.sailing.domain.base.DomainFactory; |
| 15 | 15 | import com.sap.sailing.domain.base.SharedDomainFactory; |
| 16 | -import com.sap.sailing.domain.common.Position; |
|
| 17 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 18 | 16 | import com.sap.sailing.domain.common.Wind; |
| 19 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 20 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 21 | 17 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 22 | 18 | import com.sap.sailing.server.gateway.deserialization.impl.CompetitorJsonDeserializer; |
| 23 | 19 | import com.sap.sailing.server.gateway.deserialization.impl.PositionJsonDeserializer; |
| ... | ... | @@ -33,9 +29,13 @@ import com.sap.sailing.server.gateway.serialization.impl.TeamJsonSerializer; |
| 33 | 29 | import com.sap.sailing.server.gateway.serialization.impl.WindJsonSerializer; |
| 34 | 30 | import com.sap.sailing.server.gateway.serialization.racelog.impl.RaceLogWindFixEventSerializer; |
| 35 | 31 | import com.sap.sse.common.Bearing; |
| 32 | +import com.sap.sse.common.Position; |
|
| 33 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 36 | 34 | import com.sap.sse.common.TimePoint; |
| 37 | 35 | import com.sap.sse.common.Util; |
| 38 | 36 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 37 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 38 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 39 | 39 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 40 | 40 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 41 | 41 |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/deserialization/impl/CompleteManeuverCurveWithEstimationDataJsonDeserializer.java
| ... | ... | @@ -2,10 +2,7 @@ package com.sap.sailing.server.gateway.deserialization.impl; |
| 2 | 2 | |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 7 | 5 | import com.sap.sailing.domain.common.Wind; |
| 8 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 9 | 6 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 10 | 7 | import com.sap.sailing.domain.maneuverdetection.CompleteManeuverCurveWithEstimationData; |
| 11 | 8 | import com.sap.sailing.domain.maneuverdetection.ManeuverCurveWithUnstableCourseAndSpeedWithEstimationData; |
| ... | ... | @@ -14,7 +11,10 @@ import com.sap.sailing.domain.maneuverdetection.impl.CompleteManeuverCurveWithEs |
| 14 | 11 | import com.sap.sailing.server.gateway.serialization.impl.CompleteManeuverCurveWithEstimationDataJsonSerializer; |
| 15 | 12 | import com.sap.sse.common.Bearing; |
| 16 | 13 | import com.sap.sse.common.Distance; |
| 14 | +import com.sap.sse.common.Position; |
|
| 15 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 17 | 16 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 17 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 18 | 18 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 19 | 19 | import com.sap.sse.shared.json.JsonDeserializer; |
| 20 | 20 |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/deserialization/impl/FlatSmartphoneUuidAndGPSFixMovingJsonDeserializer.java
| ... | ... | @@ -14,14 +14,14 @@ import org.json.simple.JSONArray; |
| 14 | 14 | import org.json.simple.JSONObject; |
| 15 | 15 | |
| 16 | 16 | import com.sap.sailing.declination.DeclinationService; |
| 17 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 18 | -import com.sap.sailing.domain.common.impl.MeterPerSecondSpeedImpl; |
|
| 19 | 17 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 20 | 18 | import com.sap.sailing.domain.common.tracking.impl.FlatSmartphoneUuidAndGPSFixMovingJsonSerializer; |
| 21 | 19 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 22 | 20 | import com.sap.sse.common.TimePoint; |
| 23 | 21 | import com.sap.sse.common.Util.Pair; |
| 24 | 22 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 23 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 24 | +import com.sap.sse.common.impl.MeterPerSecondSpeedImpl; |
|
| 25 | 25 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 26 | 26 | import com.sap.sse.shared.json.JsonDeserializer; |
| 27 | 27 |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/deserialization/impl/GPSFixJsonDeserializer.java
| ... | ... | @@ -4,12 +4,12 @@ import java.util.Date; |
| 4 | 4 | |
| 5 | 5 | import org.json.simple.JSONObject; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 9 | 7 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 10 | 8 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 11 | 9 | import com.sap.sailing.server.gateway.deserialization.TypeBasedJsonDeserializer; |
| 10 | +import com.sap.sse.common.Position; |
|
| 12 | 11 | import com.sap.sse.common.TimePoint; |
| 12 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 13 | 13 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 14 | 14 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 15 | 15 |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/deserialization/impl/GPSFixMovingJsonDeserializer.java
| ... | ... | @@ -2,14 +2,14 @@ package com.sap.sailing.server.gateway.deserialization.impl; |
| 2 | 2 | |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 6 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 7 | 5 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 8 | 6 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 9 | 7 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 10 | 8 | import com.sap.sailing.server.gateway.deserialization.TypeBasedJsonDeserializer; |
| 11 | 9 | import com.sap.sse.common.Bearing; |
| 10 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 12 | 11 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 12 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 13 | 13 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 14 | 14 | |
| 15 | 15 | public class GPSFixMovingJsonDeserializer extends TypeBasedJsonDeserializer<GPSFixMoving> { |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/deserialization/impl/ManeuverCurveBoundariesJsonDeserializer.java
| ... | ... | @@ -2,12 +2,12 @@ package com.sap.sailing.server.gateway.deserialization.impl; |
| 2 | 2 | |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 6 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 7 | 5 | import com.sap.sailing.domain.tracking.ManeuverCurveBoundaries; |
| 8 | 6 | import com.sap.sailing.domain.tracking.impl.ManeuverCurveBoundariesImpl; |
| 9 | 7 | import com.sap.sailing.server.gateway.serialization.impl.ManeuverCurveBoundariesJsonSerializer; |
| 10 | 8 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 9 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 10 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 11 | 11 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 12 | 12 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 13 | 13 | import com.sap.sse.shared.json.JsonDeserializer; |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/deserialization/impl/ManeuverCurveWithUnstableCourseAndSpeedWithEstimationDataJsonDeserializer.java
| ... | ... | @@ -2,14 +2,14 @@ package com.sap.sailing.server.gateway.deserialization.impl; |
| 2 | 2 | |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 6 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 7 | 5 | import com.sap.sailing.domain.maneuverdetection.ManeuverCurveWithUnstableCourseAndSpeedWithEstimationData; |
| 8 | 6 | import com.sap.sailing.domain.maneuverdetection.impl.ManeuverCurveWithUnstableCourseAndSpeedWithEstimationDataImpl; |
| 9 | 7 | import com.sap.sailing.domain.tracking.ManeuverCurveBoundaries; |
| 10 | 8 | import com.sap.sailing.server.gateway.serialization.impl.ManeuverCurveWithUnstableCourseAndSpeedWithEstimationDataJsonSerializer; |
| 11 | 9 | import com.sap.sse.common.Duration; |
| 10 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 12 | 11 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 12 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 13 | 13 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 14 | 14 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 15 | 15 |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/deserialization/impl/ManeuverMainCurveWithEstimationDataJsonDeserializer.java
| ... | ... | @@ -2,12 +2,12 @@ package com.sap.sailing.server.gateway.deserialization.impl; |
| 2 | 2 | |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 6 | 5 | import com.sap.sailing.domain.maneuverdetection.ManeuverMainCurveWithEstimationData; |
| 7 | 6 | import com.sap.sailing.domain.maneuverdetection.impl.ManeuverMainCurveWithEstimationDataImpl; |
| 8 | 7 | import com.sap.sailing.domain.tracking.ManeuverCurveBoundaries; |
| 9 | 8 | import com.sap.sailing.server.gateway.serialization.impl.ManeuverMainCurveWithEstimationDataJsonSerializer; |
| 10 | 9 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 10 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 11 | 11 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 12 | 12 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 13 | 13 | import com.sap.sse.shared.json.JsonDeserializationException; |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/deserialization/impl/ManeuverWindJsonDeserializer.java
| ... | ... | @@ -2,11 +2,11 @@ package com.sap.sailing.server.gateway.deserialization.impl; |
| 2 | 2 | |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 6 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 7 | 5 | import com.sap.sailing.server.gateway.serialization.impl.ManeuverWindJsonSerializer; |
| 8 | 6 | import com.sap.sse.common.Bearing; |
| 7 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 9 | 8 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 9 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 10 | 10 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 11 | 11 | import com.sap.sse.shared.json.JsonDeserializer; |
| 12 | 12 |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/deserialization/impl/MongoDbFriendlyPositionJsonDeserializer.java
| ... | ... | @@ -3,9 +3,9 @@ package com.sap.sailing.server.gateway.deserialization.impl; |
| 3 | 3 | import org.json.simple.JSONArray; |
| 4 | 4 | import org.json.simple.JSONObject; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 8 | 6 | import com.sap.sailing.server.gateway.serialization.impl.MongoDbFriendlyPositionJsonSerializer; |
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 9 | 9 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 10 | 10 | import com.sap.sse.shared.json.JsonDeserializer; |
| 11 | 11 |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/deserialization/impl/SpeedWithConfidenceWithIntegerRelationJsonDeserializer.java
| ... | ... | @@ -4,9 +4,9 @@ import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.base.SpeedWithConfidence; |
| 6 | 6 | import com.sap.sailing.domain.base.impl.SpeedWithConfidenceImpl; |
| 7 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 8 | 7 | import com.sap.sailing.server.gateway.serialization.impl.SpeedWithConfidenceWithIntegerRelationJsonSerializer; |
| 9 | 8 | import com.sap.sse.common.Speed; |
| 9 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 10 | 10 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 11 | 11 | import com.sap.sse.shared.json.JsonDeserializer; |
| 12 | 12 |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/serialization/impl/GPSFixMovingJsonSerializer.java
| ... | ... | @@ -2,10 +2,10 @@ package com.sap.sailing.server.gateway.serialization.impl; |
| 2 | 2 | |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 6 | 5 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 7 | 6 | import com.sap.sailing.server.gateway.deserialization.TypeBasedJsonDeserializer; |
| 8 | 7 | import com.sap.sailing.server.gateway.deserialization.impl.GPSFixMovingJsonDeserializer; |
| 8 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 9 | 9 | import com.sap.sse.shared.json.JsonSerializer; |
| 10 | 10 | |
| 11 | 11 | public class GPSFixMovingJsonSerializer implements JsonSerializer<GPSFixMoving> { |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/serialization/impl/GpsFixesWithEstimationDataJsonSerializer.java
| ... | ... | @@ -4,7 +4,6 @@ import org.json.simple.JSONArray; |
| 4 | 4 | import org.json.simple.JSONObject; |
| 5 | 5 | |
| 6 | 6 | import com.sap.sailing.domain.base.Competitor; |
| 7 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 8 | 7 | import com.sap.sailing.domain.common.Wind; |
| 9 | 8 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 10 | 9 | import com.sap.sailing.domain.maneuverdetection.TrackTimeInfo; |
| ... | ... | @@ -14,6 +13,7 @@ import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 14 | 13 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 15 | 14 | import com.sap.sse.common.Bearing; |
| 16 | 15 | import com.sap.sse.common.Distance; |
| 16 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 17 | 17 | import com.sap.sse.common.TimePoint; |
| 18 | 18 | |
| 19 | 19 |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/serialization/impl/MongoDbFriendlyPositionJsonSerializer.java
| ... | ... | @@ -3,7 +3,7 @@ package com.sap.sailing.server.gateway.serialization.impl; |
| 3 | 3 | import org.json.simple.JSONArray; |
| 4 | 4 | import org.json.simple.JSONObject; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | 7 | import com.sap.sse.shared.json.JsonSerializer; |
| 8 | 8 | |
| 9 | 9 | public class MongoDbFriendlyPositionJsonSerializer implements JsonSerializer<Position> { |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/serialization/impl/PositionedMarkJsonSerializer.java
| ... | ... | @@ -4,7 +4,7 @@ import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.base.ControlPoint; |
| 6 | 6 | import com.sap.sailing.domain.base.Mark; |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | 8 | import com.sap.sse.common.Util; |
| 9 | 9 | import com.sap.sse.shared.json.JsonSerializer; |
| 10 | 10 |
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/serialization/impl/RaceWindJsonSerializer.java
| ... | ... | @@ -8,13 +8,13 @@ import java.util.stream.Collectors; |
| 8 | 8 | import org.json.simple.JSONArray; |
| 9 | 9 | import org.json.simple.JSONObject; |
| 10 | 10 | |
| 11 | -import com.sap.sailing.domain.common.Position; |
|
| 12 | 11 | import com.sap.sailing.domain.common.Wind; |
| 13 | 12 | import com.sap.sailing.domain.common.WindSource; |
| 14 | 13 | import com.sap.sailing.domain.common.WindSourceType; |
| 15 | 14 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 16 | 15 | import com.sap.sailing.domain.tracking.WindTrack; |
| 17 | 16 | import com.sap.sse.common.Duration; |
| 17 | +import com.sap.sse.common.Position; |
|
| 18 | 18 | import com.sap.sse.common.TimePoint; |
| 19 | 19 | import com.sap.sse.common.Util; |
| 20 | 20 |
java/com.sap.sailing.server.gateway.test/src/com/sap/sailing/server/gateway/test/jaxrs/EventResourceTest.java
| ... | ... | @@ -25,12 +25,12 @@ import org.junit.jupiter.api.Test; |
| 25 | 25 | |
| 26 | 26 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 27 | 27 | import com.sap.sailing.domain.common.NotFoundException; |
| 28 | -import com.sap.sailing.domain.common.Position; |
|
| 29 | 28 | import com.sap.sailing.domain.common.RankingMetrics; |
| 30 | 29 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 31 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 32 | 30 | import com.sap.sailing.server.gateway.jaxrs.api.AbstractLeaderboardsResource; |
| 33 | 31 | import com.sap.sse.InvalidDateException; |
| 32 | +import com.sap.sse.common.Position; |
|
| 33 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 34 | 34 | import com.sap.sse.rest.StreamingOutputUtil; |
| 35 | 35 | |
| 36 | 36 | public class EventResourceTest extends AbstractJaxRsApiTest { |
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/impl/ExpeditionWindMeasureStatusGetServlet.java
| ... | ... | @@ -17,12 +17,12 @@ import javax.servlet.http.HttpServletResponse; |
| 17 | 17 | import org.osgi.framework.BundleContext; |
| 18 | 18 | import org.osgi.util.tracker.ServiceTracker; |
| 19 | 19 | |
| 20 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 21 | 20 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 22 | 21 | import com.sap.sailing.expeditionconnector.ExpeditionListener; |
| 23 | 22 | import com.sap.sailing.expeditionconnector.ExpeditionMessage; |
| 24 | 23 | import com.sap.sailing.expeditionconnector.ExpeditionTrackerFactory; |
| 25 | 24 | import com.sap.sailing.expeditionconnector.UDPExpeditionReceiver; |
| 25 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 26 | 26 | |
| 27 | 27 | public class ExpeditionWindMeasureStatusGetServlet extends SailingServerHttpServletWithPostBasedContentReplacing implements ExpeditionListener { |
| 28 | 28 | private static final long serialVersionUID = -6791613843435009810L; |
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/impl/rc/MarkPositionsJsonExportServlet.java
| ... | ... | @@ -13,7 +13,6 @@ import org.json.simple.JSONArray; |
| 13 | 13 | import com.sap.sailing.domain.base.Fleet; |
| 14 | 14 | import com.sap.sailing.domain.base.Mark; |
| 15 | 15 | import com.sap.sailing.domain.base.RaceColumn; |
| 16 | -import com.sap.sailing.domain.common.Position; |
|
| 17 | 16 | import com.sap.sailing.domain.common.racelog.RaceLogServletConstants; |
| 18 | 17 | import com.sap.sailing.domain.leaderboard.Leaderboard; |
| 19 | 18 | import com.sap.sailing.domain.tracking.TrackedRace; |
| ... | ... | @@ -23,6 +22,7 @@ import com.sap.sailing.server.gateway.serialization.impl.PositionJsonSerializer; |
| 23 | 22 | import com.sap.sailing.server.gateway.serialization.impl.PositionedMarkJsonSerializer; |
| 24 | 23 | import com.sap.sailing.server.interfaces.RacingEventService; |
| 25 | 24 | import com.sap.sse.common.Distance; |
| 25 | +import com.sap.sse.common.Position; |
|
| 26 | 26 | import com.sap.sse.common.Util; |
| 27 | 27 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 28 | 28 | import com.sap.sse.security.shared.HasPermissions.DefaultActions; |
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/jaxrs/api/EventsResource.java
| ... | ... | @@ -59,14 +59,12 @@ import com.sap.sailing.domain.base.impl.EventBaseImpl; |
| 59 | 59 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 60 | 60 | import com.sap.sailing.domain.common.LeaderboardNameConstants; |
| 61 | 61 | import com.sap.sailing.domain.common.NotFoundException; |
| 62 | -import com.sap.sailing.domain.common.Position; |
|
| 63 | 62 | import com.sap.sailing.domain.common.RankingMetrics; |
| 64 | 63 | import com.sap.sailing.domain.common.RegattaName; |
| 65 | 64 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 66 | 65 | import com.sap.sailing.domain.common.dto.FleetDTO; |
| 67 | 66 | import com.sap.sailing.domain.common.dto.RegattaCreationParametersDTO; |
| 68 | 67 | import com.sap.sailing.domain.common.dto.SeriesCreationParametersDTO; |
| 69 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 70 | 68 | import com.sap.sailing.domain.common.security.SecuredDomainType; |
| 71 | 69 | import com.sap.sailing.domain.leaderboard.Leaderboard; |
| 72 | 70 | import com.sap.sailing.domain.leaderboard.LeaderboardGroup; |
| ... | ... | @@ -104,10 +102,12 @@ import com.sap.sailing.shared.server.gateway.jaxrs.AbstractSailingServerResource |
| 104 | 102 | import com.sap.sse.InvalidDateException; |
| 105 | 103 | import com.sap.sse.common.Distance; |
| 106 | 104 | import com.sap.sse.common.Duration; |
| 105 | +import com.sap.sse.common.Position; |
|
| 107 | 106 | import com.sap.sse.common.TimePoint; |
| 108 | 107 | import com.sap.sse.common.Util; |
| 109 | 108 | import com.sap.sse.common.Util.Pair; |
| 110 | 109 | import com.sap.sse.common.Util.Triple; |
| 110 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 111 | 111 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 112 | 112 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 113 | 113 | import com.sap.sse.security.SecurityService; |
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/jaxrs/api/LeaderboardsResource.java
| ... | ... | @@ -80,24 +80,20 @@ import com.sap.sailing.domain.common.MaxPointsReason; |
| 80 | 80 | import com.sap.sailing.domain.common.NoWindException; |
| 81 | 81 | import com.sap.sailing.domain.common.NotFoundException; |
| 82 | 82 | import com.sap.sailing.domain.common.PassingInstruction; |
| 83 | -import com.sap.sailing.domain.common.Position; |
|
| 84 | 83 | import com.sap.sailing.domain.common.RegattaScoreCorrections; |
| 85 | 84 | import com.sap.sailing.domain.common.ScoreCorrectionProvider; |
| 86 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 87 | 85 | import com.sap.sailing.domain.common.dto.CompetitorDTO; |
| 88 | 86 | import com.sap.sailing.domain.common.dto.FleetDTO; |
| 89 | 87 | import com.sap.sailing.domain.common.dto.LeaderboardDTO; |
| 90 | 88 | import com.sap.sailing.domain.common.dto.LeaderboardEntryDTO; |
| 91 | 89 | import com.sap.sailing.domain.common.dto.LeaderboardRowDTO; |
| 92 | 90 | import com.sap.sailing.domain.common.dto.RaceColumnDTO; |
| 93 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 94 | 91 | import com.sap.sailing.domain.common.impl.RaceColumnConstants; |
| 95 | 92 | import com.sap.sailing.domain.common.racelog.RaceLogServletConstants; |
| 96 | 93 | import com.sap.sailing.domain.common.racelog.RacingProcedureType; |
| 97 | 94 | import com.sap.sailing.domain.common.racelog.tracking.DeviceMappingConstants; |
| 98 | 95 | import com.sap.sailing.domain.common.racelog.tracking.NotDenotableForRaceLogTrackingException; |
| 99 | 96 | import com.sap.sailing.domain.common.racelog.tracking.NotDenotedForRaceLogTrackingException; |
| 100 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 101 | 97 | import com.sap.sailing.domain.common.security.SecuredDomainType; |
| 102 | 98 | import com.sap.sailing.domain.common.sharding.ShardingType; |
| 103 | 99 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| ... | ... | @@ -147,12 +143,16 @@ import com.sap.sse.common.Distance; |
| 147 | 143 | import com.sap.sse.common.Duration; |
| 148 | 144 | import com.sap.sse.common.Named; |
| 149 | 145 | import com.sap.sse.common.NamedWithID; |
| 146 | +import com.sap.sse.common.Position; |
|
| 147 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 150 | 148 | import com.sap.sse.common.TimePoint; |
| 151 | 149 | import com.sap.sse.common.Util; |
| 152 | 150 | import com.sap.sse.common.Util.Pair; |
| 153 | 151 | import com.sap.sse.common.Util.Triple; |
| 154 | 152 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 153 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 155 | 154 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 155 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 156 | 156 | import com.sap.sse.security.SessionUtils; |
| 157 | 157 | import com.sap.sse.security.shared.HasPermissions.DefaultActions; |
| 158 | 158 | import com.sap.sse.security.shared.OwnershipAnnotation; |
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/jaxrs/api/LeaderboardsResourceV2.java
| ... | ... | @@ -31,7 +31,6 @@ import com.sap.sailing.domain.common.DetailType; |
| 31 | 31 | import com.sap.sailing.domain.common.ManeuverType; |
| 32 | 32 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 33 | 33 | import com.sap.sailing.domain.common.NoWindException; |
| 34 | -import com.sap.sailing.domain.common.Position; |
|
| 35 | 34 | import com.sap.sailing.domain.common.dto.BoatDTO; |
| 36 | 35 | import com.sap.sailing.domain.common.dto.CompetitorDTO; |
| 37 | 36 | import com.sap.sailing.domain.common.dto.FleetDTO; |
| ... | ... | @@ -50,6 +49,7 @@ import com.sap.sailing.domain.tracking.TrackedRace; |
| 50 | 49 | import com.sap.sse.InvalidDateException; |
| 51 | 50 | import com.sap.sse.common.Distance; |
| 52 | 51 | import com.sap.sse.common.Duration; |
| 52 | +import com.sap.sse.common.Position; |
|
| 53 | 53 | import com.sap.sse.common.TimePoint; |
| 54 | 54 | import com.sap.sse.common.Util; |
| 55 | 55 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/jaxrs/api/PolarResource.java
| ... | ... | @@ -26,9 +26,7 @@ import com.sap.sailing.domain.base.SpeedWithConfidence; |
| 26 | 26 | import com.sap.sailing.domain.common.LegType; |
| 27 | 27 | import com.sap.sailing.domain.common.Tack; |
| 28 | 28 | import com.sap.sailing.domain.common.Wind; |
| 29 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 30 | 29 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 31 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 32 | 30 | import com.sap.sailing.domain.polars.PolarDataService; |
| 33 | 31 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 34 | 32 | import com.sap.sailing.polars.windestimation.ManeuverBasedWindEstimationTrack; |
| ... | ... | @@ -42,7 +40,9 @@ import com.sap.sse.common.Bearing; |
| 42 | 40 | import com.sap.sse.common.Speed; |
| 43 | 41 | import com.sap.sse.common.Util.Pair; |
| 44 | 42 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 43 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 45 | 44 | import com.sap.sse.common.scalablevalue.ScalableDouble; |
| 45 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 46 | 46 | import com.sap.sse.util.kmeans.Cluster; |
| 47 | 47 | |
| 48 | 48 | /** |
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/jaxrs/api/RegattasResource.java
| ... | ... | @@ -89,7 +89,6 @@ import com.sap.sailing.domain.common.ManeuverType; |
| 89 | 89 | import com.sap.sailing.domain.common.NoWindException; |
| 90 | 90 | import com.sap.sailing.domain.common.RegattaName; |
| 91 | 91 | import com.sap.sailing.domain.common.RegattaNameAndRaceName; |
| 92 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 93 | 92 | import com.sap.sailing.domain.common.Tack; |
| 94 | 93 | import com.sap.sailing.domain.common.TargetTimeInfo; |
| 95 | 94 | import com.sap.sailing.domain.common.WindSource; |
| ... | ... | @@ -180,6 +179,7 @@ import com.sap.sse.common.Color; |
| 180 | 179 | import com.sap.sse.common.Distance; |
| 181 | 180 | import com.sap.sse.common.Duration; |
| 182 | 181 | import com.sap.sse.common.Speed; |
| 182 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 183 | 183 | import com.sap.sse.common.TimePoint; |
| 184 | 184 | import com.sap.sse.common.TimeRange; |
| 185 | 185 | import com.sap.sse.common.Util; |
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/trackfiles/impl/ExpeditionAllInOneImporter.java
| ... | ... | @@ -50,7 +50,6 @@ import com.sap.sailing.domain.base.impl.EventBaseImpl; |
| 50 | 50 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 51 | 51 | import com.sap.sailing.domain.common.LeaderboardNameConstants; |
| 52 | 52 | import com.sap.sailing.domain.common.Placemark; |
| 53 | -import com.sap.sailing.domain.common.Position; |
|
| 54 | 53 | import com.sap.sailing.domain.common.RankingMetrics; |
| 55 | 54 | import com.sap.sailing.domain.common.RegattaIdentifier; |
| 56 | 55 | import com.sap.sailing.domain.common.RegattaName; |
| ... | ... | @@ -101,6 +100,7 @@ import com.sap.sailing.server.util.WaitForTrackedRaceUtil; |
| 101 | 100 | import com.sap.sse.common.Distance; |
| 102 | 101 | import com.sap.sse.common.Duration; |
| 103 | 102 | import com.sap.sse.common.NoCorrespondingServiceRegisteredException; |
| 103 | +import com.sap.sse.common.Position; |
|
| 104 | 104 | import com.sap.sse.common.TimePoint; |
| 105 | 105 | import com.sap.sse.common.TransformationException; |
| 106 | 106 | import com.sap.sse.common.TypeBasedServiceFinderFactory; |
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/trackfiles/impl/ExpeditionCourseInferrer.java
| ... | ... | @@ -28,7 +28,6 @@ import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 28 | 28 | import com.sap.sailing.domain.common.CourseDesignerMode; |
| 29 | 29 | import com.sap.sailing.domain.common.PassingInstruction; |
| 30 | 30 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 31 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 32 | 31 | import com.sap.sailing.domain.common.sensordata.ExpeditionExtendedSensorDataMetadata; |
| 33 | 32 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 34 | 33 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| ... | ... | @@ -43,6 +42,7 @@ import com.sap.sailing.server.trackfiles.impl.ExpeditionExtendedDataImporterImpl |
| 43 | 42 | import com.sap.sailing.server.trackfiles.impl.ExpeditionImportFileHandler; |
| 44 | 43 | import com.sap.sse.common.TimePoint; |
| 45 | 44 | import com.sap.sse.common.Util; |
| 45 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 46 | 46 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 47 | 47 | |
| 48 | 48 | /** |
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/windimport/bravo/BravoWindImporter.java
| ... | ... | @@ -17,8 +17,6 @@ import java.util.zip.ZipInputStream; |
| 17 | 17 | import com.sap.sailing.domain.common.Wind; |
| 18 | 18 | import com.sap.sailing.domain.common.WindSource; |
| 19 | 19 | import com.sap.sailing.domain.common.WindSourceType; |
| 20 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 21 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 22 | 20 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 23 | 21 | import com.sap.sailing.domain.common.impl.WindSourceWithAdditionalID; |
| 24 | 22 | import com.sap.sailing.domain.common.tracking.DoubleVectorFix; |
| ... | ... | @@ -30,6 +28,8 @@ import com.sap.sailing.server.trackfiles.impl.BaseBravoDataImporterImpl; |
| 30 | 28 | import com.sap.sse.common.Util; |
| 31 | 29 | import com.sap.sse.common.Util.Pair; |
| 32 | 30 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 31 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 32 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 33 | 33 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 34 | 34 | |
| 35 | 35 | public class BravoWindImporter extends AbstractWindImporter { |
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/windimport/expedition/WindLogParser.java
| ... | ... | @@ -9,16 +9,16 @@ import java.util.List; |
| 9 | 9 | import java.util.Map; |
| 10 | 10 | import java.util.concurrent.atomic.AtomicInteger; |
| 11 | 11 | |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 14 | 12 | import com.sap.sailing.domain.common.Wind; |
| 15 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 16 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 17 | 13 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 18 | 14 | import com.sap.sailing.server.trackfiles.impl.ExpeditionExtendedDataImporterImpl; |
| 19 | 15 | import com.sap.sse.common.Bearing; |
| 16 | +import com.sap.sse.common.Position; |
|
| 17 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 20 | 18 | import com.sap.sse.common.TimePoint; |
| 21 | 19 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 20 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 21 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 22 | 22 | |
| 23 | 23 | public class WindLogParser { |
| 24 | 24 | /** |
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/windimport/grib/GribWindImporter.java
| ... | ... | @@ -10,7 +10,6 @@ import java.util.Set; |
| 10 | 10 | import java.util.logging.Level; |
| 11 | 11 | import java.util.logging.Logger; |
| 12 | 12 | |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | 13 | import com.sap.sailing.domain.common.Wind; |
| 15 | 14 | import com.sap.sailing.domain.common.WindSource; |
| 16 | 15 | import com.sap.sailing.domain.common.WindSourceType; |
| ... | ... | @@ -19,6 +18,7 @@ import com.sap.sailing.domain.common.impl.WindSourceWithAdditionalID; |
| 19 | 18 | import com.sap.sailing.grib.GribWindField; |
| 20 | 19 | import com.sap.sailing.grib.GribWindFieldFactory; |
| 21 | 20 | import com.sap.sailing.server.gateway.windimport.AbstractWindImporter; |
| 21 | +import com.sap.sse.common.Position; |
|
| 22 | 22 | import com.sap.sse.common.Util; |
| 23 | 23 | import com.sap.sse.common.Util.Pair; |
| 24 | 24 |
java/com.sap.sailing.server.interface/src/com/sap/sailing/server/interfaces/RacingEventService.java
| ... | ... | @@ -59,7 +59,6 @@ import com.sap.sailing.domain.common.DataImportProgress; |
| 59 | 59 | import com.sap.sailing.domain.common.DataImportSubProgress; |
| 60 | 60 | import com.sap.sailing.domain.common.DetailType; |
| 61 | 61 | import com.sap.sailing.domain.common.NoWindException; |
| 62 | -import com.sap.sailing.domain.common.Position; |
|
| 63 | 62 | import com.sap.sailing.domain.common.RaceFetcher; |
| 64 | 63 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 65 | 64 | import com.sap.sailing.domain.common.RegattaFetcher; |
| ... | ... | @@ -113,6 +112,7 @@ import com.sap.sailing.domain.tracking.WindTracker; |
| 113 | 112 | import com.sap.sailing.server.operationaltransformation.RemoveEvent; |
| 114 | 113 | import com.sap.sse.common.Distance; |
| 115 | 114 | import com.sap.sse.common.PairingListCreationException; |
| 115 | +import com.sap.sse.common.Position; |
|
| 116 | 116 | import com.sap.sse.common.TimePoint; |
| 117 | 117 | import com.sap.sse.common.TypeBasedServiceFinder; |
| 118 | 118 | import com.sap.sse.common.TypeBasedServiceFinderFactory; |
java/com.sap.sailing.server.interface/src/com/sap/sailing/server/operationaltransformation/AddCourseAreas.java
| ... | ... | @@ -5,10 +5,10 @@ import java.util.UUID; |
| 5 | 5 | import com.sap.sailing.domain.base.CourseArea; |
| 6 | 6 | import com.sap.sailing.domain.base.Event; |
| 7 | 7 | import com.sap.sailing.domain.base.Venue; |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | 8 | import com.sap.sailing.server.interfaces.RacingEventService; |
| 10 | 9 | import com.sap.sailing.server.interfaces.RacingEventServiceOperation; |
| 11 | 10 | import com.sap.sse.common.Distance; |
| 11 | +import com.sap.sse.common.Position; |
|
| 12 | 12 | |
| 13 | 13 | /** |
| 14 | 14 | * Adds a course area to an {@link Event}'s {@link Venue}. |
java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/AbstractLogReplicationTest.java
| ... | ... | @@ -19,7 +19,6 @@ import com.sap.sailing.domain.base.Event; |
| 19 | 19 | import com.sap.sailing.domain.base.Regatta; |
| 20 | 20 | import com.sap.sailing.domain.base.Series; |
| 21 | 21 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 22 | -import com.sap.sailing.domain.common.Position; |
|
| 23 | 22 | import com.sap.sailing.domain.common.RankingMetrics; |
| 24 | 23 | import com.sap.sailing.domain.common.RegattaName; |
| 25 | 24 | import com.sap.sailing.domain.common.dto.FleetDTO; |
| ... | ... | @@ -36,6 +35,7 @@ import com.sap.sailing.server.operationaltransformation.CreateFlexibleLeaderboar |
| 36 | 35 | import com.sap.sse.common.Color; |
| 37 | 36 | import com.sap.sse.common.Distance; |
| 38 | 37 | import com.sap.sse.common.Duration; |
| 38 | +import com.sap.sse.common.Position; |
|
| 39 | 39 | import com.sap.sse.common.TimePoint; |
| 40 | 40 | import com.sap.sse.common.Util; |
| 41 | 41 |
java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/BoatReplicationTest.java
| ... | ... | @@ -35,8 +35,6 @@ import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 35 | 35 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 36 | 36 | import com.sap.sailing.domain.common.RegattaName; |
| 37 | 37 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 38 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 39 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 40 | 38 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 41 | 39 | import com.sap.sailing.domain.ranking.OneDesignRankingMetric; |
| 42 | 40 | import com.sap.sailing.domain.tracking.DynamicTrackedRace; |
| ... | ... | @@ -49,6 +47,8 @@ import com.sap.sailing.server.operationaltransformation.UpdateBoat; |
| 49 | 47 | import com.sap.sse.common.Color; |
| 50 | 48 | import com.sap.sse.common.Util; |
| 51 | 49 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 50 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 51 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 52 | 52 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 53 | 53 | |
| 54 | 54 | /** |
java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/CompetitorReplicationTest.java
| ... | ... | @@ -38,8 +38,6 @@ import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 38 | 38 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 39 | 39 | import com.sap.sailing.domain.common.RegattaName; |
| 40 | 40 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 41 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 42 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 43 | 41 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 44 | 42 | import com.sap.sailing.domain.ranking.OneDesignRankingMetric; |
| 45 | 43 | import com.sap.sailing.domain.tracking.DynamicTrackedRace; |
| ... | ... | @@ -52,6 +50,8 @@ import com.sap.sailing.server.operationaltransformation.UpdateCompetitor; |
| 52 | 50 | import com.sap.sse.common.Color; |
| 53 | 51 | import com.sap.sse.common.Util; |
| 54 | 52 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 53 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 54 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 55 | 55 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 56 | 56 | |
| 57 | 57 | /** |
java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/EventReplicationTest.java
| ... | ... | @@ -15,12 +15,12 @@ import org.junit.jupiter.api.Test; |
| 15 | 15 | |
| 16 | 16 | import com.sap.sailing.domain.base.CourseArea; |
| 17 | 17 | import com.sap.sailing.domain.base.Event; |
| 18 | -import com.sap.sailing.domain.common.Position; |
|
| 19 | 18 | import com.sap.sailing.domain.leaderboard.LeaderboardGroup; |
| 20 | 19 | import com.sap.sailing.server.operationaltransformation.AddLeaderboardGroupToEvent; |
| 21 | 20 | import com.sap.sailing.server.operationaltransformation.CreateLeaderboardGroup; |
| 22 | 21 | import com.sap.sailing.server.operationaltransformation.RemoveLeaderboardGroupFromEvent; |
| 23 | 22 | import com.sap.sse.common.Distance; |
| 23 | +import com.sap.sse.common.Position; |
|
| 24 | 24 | import com.sap.sse.common.TimePoint; |
| 25 | 25 | import com.sap.sse.common.Util; |
| 26 | 26 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/InitialLoadReplicationObjectIdentityTest.java
| ... | ... | @@ -50,8 +50,6 @@ import com.sap.sailing.domain.common.RegattaNameAndRaceName; |
| 50 | 50 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 51 | 51 | import com.sap.sailing.domain.common.Wind; |
| 52 | 52 | import com.sap.sailing.domain.common.WindSourceType; |
| 53 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 54 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 55 | 53 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 56 | 54 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 57 | 55 | import com.sap.sailing.domain.common.media.MediaTrack; |
| ... | ... | @@ -83,6 +81,8 @@ import com.sap.sse.common.TimePoint; |
| 83 | 81 | import com.sap.sse.common.Util; |
| 84 | 82 | import com.sap.sse.common.Util.Pair; |
| 85 | 83 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 84 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 85 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 86 | 86 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 87 | 87 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 88 | 88 | import com.sap.sse.common.media.MimeType; |
java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/RegattaReplicationTest.java
| ... | ... | @@ -28,7 +28,6 @@ import com.sap.sailing.domain.base.impl.RegattaImpl; |
| 28 | 28 | import com.sap.sailing.domain.base.impl.SeriesImpl; |
| 29 | 29 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 30 | 30 | import com.sap.sailing.domain.common.CourseDesignerMode; |
| 31 | -import com.sap.sailing.domain.common.Position; |
|
| 32 | 31 | import com.sap.sailing.domain.common.RegattaName; |
| 33 | 32 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 34 | 33 | import com.sap.sailing.domain.common.dto.FleetDTO; |
| ... | ... | @@ -37,6 +36,7 @@ import com.sap.sailing.server.operationaltransformation.UpdateSeries; |
| 37 | 36 | import com.sap.sailing.server.operationaltransformation.UpdateSpecificRegatta; |
| 38 | 37 | import com.sap.sse.common.Color; |
| 39 | 38 | import com.sap.sse.common.Distance; |
| 39 | +import com.sap.sse.common.Position; |
|
| 40 | 40 | import com.sap.sse.common.TimePoint; |
| 41 | 41 | import com.sap.sse.common.Util; |
| 42 | 42 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/TrackedRaceContentsReplicationTest.java
| ... | ... | @@ -35,8 +35,6 @@ import com.sap.sailing.domain.common.RegattaNameAndRaceName; |
| 35 | 35 | import com.sap.sailing.domain.common.Wind; |
| 36 | 36 | import com.sap.sailing.domain.common.WindSource; |
| 37 | 37 | import com.sap.sailing.domain.common.WindSourceType; |
| 38 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 39 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 40 | 38 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 41 | 39 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 42 | 40 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| ... | ... | @@ -62,6 +60,8 @@ import com.sap.sse.common.Color; |
| 62 | 60 | import com.sap.sse.common.TimePoint; |
| 63 | 61 | import com.sap.sse.common.Util; |
| 64 | 62 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 63 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 64 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 65 | 65 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 66 | 66 | |
| 67 | 67 | public class TrackedRaceContentsReplicationTest extends AbstractServerReplicationTest { |
java/com.sap.sailing.server.replication.test/src/com/sap/sailing/server/replication/test/TrackedRaceWithSensorFixStoreContentsReplicationTest.java
| ... | ... | @@ -31,8 +31,6 @@ import com.sap.sailing.domain.base.impl.TeamImpl; |
| 31 | 31 | import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 32 | 32 | import com.sap.sailing.domain.common.RegattaName; |
| 33 | 33 | import com.sap.sailing.domain.common.RegattaNameAndRaceName; |
| 34 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 35 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 36 | 34 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 37 | 35 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 38 | 36 | import com.sap.sailing.domain.persistence.MongoWindStoreFactory; |
| ... | ... | @@ -53,6 +51,8 @@ import com.sap.sse.common.Color; |
| 53 | 51 | import com.sap.sse.common.Util; |
| 54 | 52 | import com.sap.sse.common.Util.Pair; |
| 55 | 53 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 54 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 55 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 56 | 56 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 57 | 57 | import com.sap.sse.replication.ReplicationMasterDescriptor; |
| 58 | 58 | import com.sap.sse.replication.testsupport.AbstractServerReplicationTestSetUp.ReplicationServiceTestImpl; |
java/com.sap.sailing.server.test/src/com/sap/sailing/server/statistics/StatisticsTest.java
| ... | ... | @@ -34,7 +34,6 @@ import com.sap.sailing.domain.base.impl.RaceDefinitionImpl; |
| 34 | 34 | import com.sap.sailing.domain.base.impl.RegattaImpl; |
| 35 | 35 | import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 36 | 36 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 37 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 38 | 37 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 39 | 38 | import com.sap.sailing.domain.racelog.RaceLogAndTrackedRaceResolver; |
| 40 | 39 | import com.sap.sailing.domain.racelog.impl.EmptyRaceLogStore; |
| ... | ... | @@ -48,6 +47,7 @@ import com.sap.sailing.domain.tracking.impl.DynamicTrackedRegattaImpl; |
| 48 | 47 | import com.sap.sailing.domain.tracking.impl.EmptyWindStore; |
| 49 | 48 | import com.sap.sailing.domain.tracking.impl.MarkPassingImpl; |
| 50 | 49 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 50 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 51 | 51 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 52 | 52 | |
| 53 | 53 | public class StatisticsTest { |
java/com.sap.sailing.server.test/src/com/sap/sailing/server/test/MasterDataImportTest.java
| ... | ... | @@ -95,18 +95,14 @@ import com.sap.sailing.domain.common.CourseDesignerMode; |
| 95 | 95 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 96 | 96 | import com.sap.sailing.domain.common.MasterDataImportObjectCreationCount; |
| 97 | 97 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 98 | -import com.sap.sailing.domain.common.Position; |
|
| 99 | 98 | import com.sap.sailing.domain.common.RaceIdentifier; |
| 100 | 99 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 101 | 100 | import com.sap.sailing.domain.common.RegattaNameAndRaceName; |
| 102 | 101 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 103 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 104 | 102 | import com.sap.sailing.domain.common.Wind; |
| 105 | 103 | import com.sap.sailing.domain.common.WindSource; |
| 106 | 104 | import com.sap.sailing.domain.common.WindSourceType; |
| 107 | 105 | import com.sap.sailing.domain.common.impl.DataImportProgressImpl; |
| 108 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 109 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 110 | 106 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 111 | 107 | import com.sap.sailing.domain.common.impl.WindSourceWithAdditionalID; |
| 112 | 108 | import com.sap.sailing.domain.common.media.MediaTrack; |
| ... | ... | @@ -147,11 +143,15 @@ import com.sap.sailing.server.testsupport.RacingEventServiceImplMock; |
| 147 | 143 | import com.sap.sailing.shared.server.gateway.jaxrs.AbstractSailingServerResource; |
| 148 | 144 | import com.sap.sse.common.Color; |
| 149 | 145 | import com.sap.sse.common.Distance; |
| 146 | +import com.sap.sse.common.Position; |
|
| 147 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 150 | 148 | import com.sap.sse.common.TimePoint; |
| 151 | 149 | import com.sap.sse.common.Timed; |
| 152 | 150 | import com.sap.sse.common.TypeBasedServiceFinderFactory; |
| 153 | 151 | import com.sap.sse.common.Util; |
| 154 | 152 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 153 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 154 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 155 | 155 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 156 | 156 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 157 | 157 | import com.sap.sse.common.media.MimeType; |
java/com.sap.sailing.server.test/src/com/sap/sailing/server/test/RaceColumnReloadTest.java
| ... | ... | @@ -35,15 +35,11 @@ import com.sap.sailing.domain.base.impl.PersonImpl; |
| 35 | 35 | import com.sap.sailing.domain.base.impl.RaceDefinitionImpl; |
| 36 | 36 | import com.sap.sailing.domain.base.impl.RegattaImpl; |
| 37 | 37 | import com.sap.sailing.domain.base.impl.TeamImpl; |
| 38 | -import com.sap.sailing.domain.common.Position; |
|
| 39 | 38 | import com.sap.sailing.domain.common.RegattaName; |
| 40 | 39 | import com.sap.sailing.domain.common.RegattaNameAndRaceName; |
| 41 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 42 | 40 | import com.sap.sailing.domain.common.Wind; |
| 43 | 41 | import com.sap.sailing.domain.common.WindSource; |
| 44 | 42 | import com.sap.sailing.domain.common.WindSourceType; |
| 45 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 46 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 47 | 43 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 48 | 44 | import com.sap.sailing.domain.leaderboard.impl.LowPoint; |
| 49 | 45 | import com.sap.sailing.domain.persistence.MongoObjectFactory; |
| ... | ... | @@ -62,9 +58,13 @@ import com.sap.sailing.server.operationaltransformation.CreateFlexibleLeaderboar |
| 62 | 58 | import com.sap.sailing.server.operationaltransformation.CreateTrackedRace; |
| 63 | 59 | import com.sap.sailing.server.operationaltransformation.TrackRegatta; |
| 64 | 60 | import com.sap.sse.common.Color; |
| 61 | +import com.sap.sse.common.Position; |
|
| 62 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 65 | 63 | import com.sap.sse.common.TimePoint; |
| 66 | 64 | import com.sap.sse.common.Util; |
| 67 | 65 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 66 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 67 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 68 | 68 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 69 | 69 | import com.sap.sse.mongodb.MongoDBService; |
| 70 | 70 |
java/com.sap.sailing.server.test/src/com/sap/sailing/server/test/WindByRaceLogTest.java
| ... | ... | @@ -40,8 +40,6 @@ import com.sap.sailing.domain.common.RegattaNameAndRaceName; |
| 40 | 40 | import com.sap.sailing.domain.common.Wind; |
| 41 | 41 | import com.sap.sailing.domain.common.WindSource; |
| 42 | 42 | import com.sap.sailing.domain.common.WindSourceType; |
| 43 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 44 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 45 | 43 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 46 | 44 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 47 | 45 | import com.sap.sailing.domain.leaderboard.impl.LowPoint; |
| ... | ... | @@ -63,6 +61,8 @@ import com.sap.sse.common.Color; |
| 63 | 61 | import com.sap.sse.common.TimePoint; |
| 64 | 62 | import com.sap.sse.common.Util; |
| 65 | 63 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 64 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 65 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 66 | 66 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 67 | 67 | |
| 68 | 68 | public class WindByRaceLogTest { |
java/com.sap.sailing.server.trackfiles.test/src/com/sap/sailing/server/trackfiles/test/JumpyTrackSmootheningTest.java
| ... | ... | @@ -51,9 +51,7 @@ import com.sap.sailing.domain.common.BoatClassMasterdata; |
| 51 | 51 | import com.sap.sailing.domain.common.CompetitorRegistrationType; |
| 52 | 52 | import com.sap.sailing.domain.common.MarkType; |
| 53 | 53 | import com.sap.sailing.domain.common.PassingInstruction; |
| 54 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 55 | 54 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 56 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 57 | 55 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 58 | 56 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 59 | 57 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| ... | ... | @@ -75,9 +73,11 @@ import com.sap.sailing.domain.tracking.impl.TrackedRaceStatusImpl; |
| 75 | 73 | import com.sap.sailing.server.trackfiles.RouteConverterGPSFixImporterFactory; |
| 76 | 74 | import com.sap.sse.common.Color; |
| 77 | 75 | import com.sap.sse.common.Duration; |
| 76 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 78 | 77 | import com.sap.sse.common.TimePoint; |
| 79 | 78 | import com.sap.sse.common.Util; |
| 80 | 79 | import com.sap.sse.common.Util.Pair; |
| 80 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 81 | 81 | |
| 82 | 82 | import difflib.PatchFailedException; |
| 83 | 83 |
java/com.sap.sailing.server.trackfiles/src/com/sap/sailing/server/trackfiles/common/BaseGPSFixImporterImpl.java
| ... | ... | @@ -1,11 +1,11 @@ |
| 1 | 1 | package com.sap.sailing.server.trackfiles.common; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 4 | 3 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 5 | 4 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 6 | 5 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 7 | 6 | import com.sap.sailing.domain.trackfiles.TrackFileImportDeviceIdentifier; |
| 8 | 7 | import com.sap.sailing.domain.trackimport.GPSFixImporter; |
| 8 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 9 | 9 | |
| 10 | 10 | /** |
| 11 | 11 | * When an importer only provides latitude/longitude positions but no course over ground (COG) and no speed over ground |
java/com.sap.sailing.server.trackfiles/src/com/sap/sailing/server/trackfiles/impl/RouteConverterGPSFixImporterImpl.java
| ... | ... | @@ -5,14 +5,14 @@ import java.util.Date; |
| 5 | 5 | import java.util.List; |
| 6 | 6 | |
| 7 | 7 | import com.sap.sailing.domain.base.impl.KilometersPerHourSpeedWithBearingImpl; |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 10 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 11 | 8 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 12 | 9 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 13 | 10 | import com.sap.sailing.domain.common.tracking.impl.GPSFixMovingImpl; |
| 11 | +import com.sap.sse.common.Position; |
|
| 12 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 14 | 13 | import com.sap.sse.common.TimePoint; |
| 15 | 14 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 15 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 16 | 16 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 17 | 17 | |
| 18 | 18 | import slash.common.type.CompactCalendar; |
java/com.sap.sailing.server/SailingServer (No Proxy).launch
| ... | ... | @@ -24,7 +24,7 @@ |
| 24 | 24 | <stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> |
| 25 | 25 | <stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog -console 12001 -clean"/> |
| 26 | 26 | <stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/> |
| 27 | - <stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea -Declipse.ignoreApp=true -Dosgi.noShutdown=true -Dfile.encoding=cp1252 -Dexpedition.udp.port=5010 -Xmx6000m -XX:ThreadPriorityPolicy=2 -XX:+UseG1GC -Djetty.home=${project_loc:com.sap.sailing.server}/../target/configuration/jetty -Djava.util.logging.config.file=${project_loc:com.sap.sailing.server}/../target/configuration/logging_debug.properties -Dkiwo.results=${project_loc:com.sap.sailing.kiworesultimport.test}/resources -Dpersistentcompetitors.clear=false -Dpolardata.source.url=https://www.sapsailing.com -Dwindestimation.source.url=https://www.sapsailing.com -Drestore.tracked.races=true -Dorg.eclipse.jetty.server.Request.maxFormContentSize=50000000 -DAnniversaryRaceDeterminator.enabled=true -Djava.naming.factory.url.pkgs=org.eclipse.jetty.jndi -Djava.naming.factory.initial=org.eclipse.jetty.jndi.InitialContextFactory -Dorg.eclipse.jetty.annotations.maxWait=120 -Dchargebee.site=${CHARGEBEE_SITE} -Dchargebee.apikey=${CHARGEBEE_API_KEY} -Dmanage2sail.accesstoken=${MANAGE2SAIL_ACCESS_TOKEN} -Dsubscriptions.disableMailVerificationRequirement=true -Dgoogle.maps.authenticationparams=${GOOGLE_MAPS_AUTHENTICATION_PARAMS} -Dgwt.rpc.version=9 -Dwindestimation.source.bearertoken=${WIND_ESTIMATION_MODEL_BEARER_TOKEN} -Dpolardata.source.bearertoken=${POLAR_DATA_BEARER_TOKEN} -Dcom.sap.sse.branding=SAP -Digtimi.riot.port=6000 -Digtimi.base.url=http://127.0.0.1:8888 -Dsap.aicore.credentials='${SAP_AICORE_CREDENTIALS}' -Dsap.sailing.aiagent.modelname=gpt-4o -Dgeonames.org.usernames="${GEONAMES_ORG_USERNAMES}""/> |
|
| 27 | + <stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea -Declipse.ignoreApp=true -Dosgi.noShutdown=true -Dfile.encoding=cp1252 -Dexpedition.udp.port=5010 -Xmx12g -XX:ThreadPriorityPolicy=2 -XX:+UseG1GC -Djetty.home=${project_loc:com.sap.sailing.server}/../target/configuration/jetty -Djava.util.logging.config.file=${project_loc:com.sap.sailing.server}/../target/configuration/logging_debug.properties -Dkiwo.results=${project_loc:com.sap.sailing.kiworesultimport.test}/resources -Dpersistentcompetitors.clear=false -Dpolardata.source.url=https://www.sapsailing.com -Dwindestimation.source.url=https://www.sapsailing.com -Drestore.tracked.races=true -Dorg.eclipse.jetty.server.Request.maxFormContentSize=50000000 -DAnniversaryRaceDeterminator.enabled=true -Djava.naming.factory.url.pkgs=org.eclipse.jetty.jndi -Djava.naming.factory.initial=org.eclipse.jetty.jndi.InitialContextFactory -Dorg.eclipse.jetty.annotations.maxWait=120 -Dchargebee.site=${CHARGEBEE_SITE} -Dchargebee.apikey=${CHARGEBEE_API_KEY} -Dmanage2sail.accesstoken=${MANAGE2SAIL_ACCESS_TOKEN} -Dsubscriptions.disableMailVerificationRequirement=true -Dgoogle.maps.authenticationparams=${GOOGLE_MAPS_AUTHENTICATION_PARAMS} -Dgwt.rpc.version=9 -Dwindestimation.source.bearertoken=${WIND_ESTIMATION_MODEL_BEARER_TOKEN} -Dpolardata.source.bearertoken=${POLAR_DATA_BEARER_TOKEN} -Dcom.sap.sse.branding=SAP -Digtimi.riot.port=6000 -Digtimi.base.url=http://127.0.0.1:8888 -Dsap.aicore.credentials='${SAP_AICORE_CREDENTIALS}' -Dsap.sailing.aiagent.modelname=gpt-4o -Dgeonames.org.usernames="${GEONAMES_ORG_USERNAMES}""/> |
|
| 28 | 28 | <stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${workspace_loc}"/> |
| 29 | 29 | <stringAttribute key="pde.version" value="3.3"/> |
| 30 | 30 | <stringAttribute key="profilingTraceType-ALLOCATION_TRACE" value="KEY_APPLICATION_FILTER%CTX_KEY%*%CTX_ENTRY%INCREASE_COUNT%CTX_KEY%8192%CTX_ENTRY%KEY_MIN_SIZE%CTX_KEY%32%CTX_ENTRY%KEY_MAX_SIZE%CTX_KEY%65536%CTX_ENTRY%KEY_INC_LINE_NRS%CTX_KEY%true%CTX_ENTRY%KEY_SESSION_FILTER%CTX_KEY%*%CTX_ENTRY%KEY_ENABLEMENT%CTX_KEY%false%CTX_ENTRY%CLASS_FILTER%CTX_KEY%*%CTX_ENTRY%KEY_USER_FILTER%CTX_KEY%*%CTX_ENTRY%KEY_REQUEST_FILTER%CTX_KEY%*%CTX_ENTRY%KEY_TENANT_FILTER%CTX_KEY%*%CTX_ENTRY%KEY_ADAPTIVE%CTX_KEY%false%CTX_ENTRY%"/> |
java/com.sap.sailing.server/src/com/sap/sailing/server/impl/CourseAndMarkConfigurationFactoryImpl.java
| ... | ... | @@ -41,7 +41,6 @@ import com.sap.sailing.domain.base.impl.CourseDataImpl; |
| 41 | 41 | import com.sap.sailing.domain.base.impl.WaypointImpl; |
| 42 | 42 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 43 | 43 | import com.sap.sailing.domain.common.PassingInstruction; |
| 44 | -import com.sap.sailing.domain.common.Position; |
|
| 45 | 44 | import com.sap.sailing.domain.common.tracking.GPSFix; |
| 46 | 45 | import com.sap.sailing.domain.common.tracking.impl.GPSFixImpl; |
| 47 | 46 | import com.sap.sailing.domain.coursetemplate.CommonMarkProperties; |
| ... | ... | @@ -91,6 +90,7 @@ import com.sap.sailing.server.gateway.deserialization.impl.CourseConfigurationBu |
| 91 | 90 | import com.sap.sailing.server.interfaces.CourseAndMarkConfigurationFactory; |
| 92 | 91 | import com.sap.sailing.shared.server.SharedSailingData; |
| 93 | 92 | import com.sap.sse.common.NoCorrespondingServiceRegisteredException; |
| 93 | +import com.sap.sse.common.Position; |
|
| 94 | 94 | import com.sap.sse.common.RepeatablePart; |
| 95 | 95 | import com.sap.sse.common.TimePoint; |
| 96 | 96 | import com.sap.sse.common.Timed; |
java/com.sap.sailing.server/src/com/sap/sailing/server/impl/RacingEventServiceImpl.java
| ... | ... | @@ -146,14 +146,12 @@ import com.sap.sailing.domain.common.DeviceIdentifier; |
| 146 | 146 | import com.sap.sailing.domain.common.LeaderboardType; |
| 147 | 147 | import com.sap.sailing.domain.common.MaxPointsReason; |
| 148 | 148 | import com.sap.sailing.domain.common.NoWindException; |
| 149 | -import com.sap.sailing.domain.common.Position; |
|
| 150 | 149 | import com.sap.sailing.domain.common.RaceIdentifier; |
| 151 | 150 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 152 | 151 | import com.sap.sailing.domain.common.RegattaIdentifier; |
| 153 | 152 | import com.sap.sailing.domain.common.RegattaName; |
| 154 | 153 | import com.sap.sailing.domain.common.ScoreCorrectionProvider; |
| 155 | 154 | import com.sap.sailing.domain.common.ScoringSchemeType; |
| 156 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 157 | 155 | import com.sap.sailing.domain.common.TackType; |
| 158 | 156 | import com.sap.sailing.domain.common.TrackedRaceStatusEnum; |
| 159 | 157 | import com.sap.sailing.domain.common.Wind; |
| ... | ... | @@ -336,7 +334,9 @@ import com.sap.sse.common.Bearing; |
| 336 | 334 | import com.sap.sse.common.Distance; |
| 337 | 335 | import com.sap.sse.common.Duration; |
| 338 | 336 | import com.sap.sse.common.PairingListCreationException; |
| 337 | +import com.sap.sse.common.Position; |
|
| 339 | 338 | import com.sap.sse.common.Speed; |
| 339 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 340 | 340 | import com.sap.sse.common.TimePoint; |
| 341 | 341 | import com.sap.sse.common.TypeBasedServiceFinder; |
| 342 | 342 | import com.sap.sse.common.TypeBasedServiceFinderFactory; |
java/com.sap.sailing.server/src/com/sap/sailing/server/simulation/SimulationServiceImpl.java
| ... | ... | @@ -32,7 +32,6 @@ import com.sap.sailing.domain.common.LegIdentifierImpl; |
| 32 | 32 | import com.sap.sailing.domain.common.LegType; |
| 33 | 33 | import com.sap.sailing.domain.common.NoWindException; |
| 34 | 34 | import com.sap.sailing.domain.common.PathType; |
| 35 | -import com.sap.sailing.domain.common.Position; |
|
| 36 | 35 | import com.sap.sailing.domain.common.RaceIdentifier; |
| 37 | 36 | import com.sap.sailing.domain.common.RegattaAndRaceIdentifier; |
| 38 | 37 | import com.sap.sailing.domain.common.Wind; |
| ... | ... | @@ -64,6 +63,7 @@ import com.sap.sailing.simulator.util.SailingSimulatorConstants; |
| 64 | 63 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 65 | 64 | import com.sap.sailing.simulator.windfield.impl.WindFieldTrackedRaceImpl; |
| 66 | 65 | import com.sap.sse.common.Duration; |
| 66 | +import com.sap.sse.common.Position; |
|
| 67 | 67 | import com.sap.sse.common.TimePoint; |
| 68 | 68 | import com.sap.sse.common.Util; |
| 69 | 69 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.shared.persistence/src/com/sap/sailing/shared/persistence/impl/DomainObjectFactoryImpl.java
| ... | ... | @@ -24,8 +24,6 @@ import com.mongodb.client.MongoDatabase; |
| 24 | 24 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 25 | 25 | import com.sap.sailing.domain.common.MarkType; |
| 26 | 26 | import com.sap.sailing.domain.common.PassingInstruction; |
| 27 | -import com.sap.sailing.domain.common.Position; |
|
| 28 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 29 | 27 | import com.sap.sailing.domain.coursetemplate.ControlPointTemplate; |
| 30 | 28 | import com.sap.sailing.domain.coursetemplate.CourseTemplate; |
| 31 | 29 | import com.sap.sailing.domain.coursetemplate.MarkProperties; |
| ... | ... | @@ -44,11 +42,13 @@ import com.sap.sailing.shared.persistence.device.DeviceIdentifierMongoHandler; |
| 44 | 42 | import com.sap.sailing.shared.persistence.device.impl.PlaceHolderDeviceIdentifierMongoHandler; |
| 45 | 43 | import com.sap.sse.common.Color; |
| 46 | 44 | import com.sap.sse.common.NoCorrespondingServiceRegisteredException; |
| 45 | +import com.sap.sse.common.Position; |
|
| 47 | 46 | import com.sap.sse.common.RepeatablePart; |
| 48 | 47 | import com.sap.sse.common.TimePoint; |
| 49 | 48 | import com.sap.sse.common.TypeBasedServiceFinder; |
| 50 | 49 | import com.sap.sse.common.TypeBasedServiceFinderFactory; |
| 51 | 50 | import com.sap.sse.common.impl.AbstractColor; |
| 51 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 52 | 52 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 53 | 53 | import com.sap.sse.common.impl.RepeatablePartImpl; |
| 54 | 54 | import com.sap.sse.common.TransformationException; |
java/com.sap.sailing.shared.persistence/src/com/sap/sailing/shared/persistence/impl/MongoObjectFactoryImpl.java
| ... | ... | @@ -19,7 +19,6 @@ import com.mongodb.client.model.Filters; |
| 19 | 19 | import com.mongodb.client.model.ReplaceOptions; |
| 20 | 20 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 21 | 21 | import com.sap.sailing.domain.common.PassingInstruction; |
| 22 | -import com.sap.sailing.domain.common.Position; |
|
| 23 | 22 | import com.sap.sailing.domain.coursetemplate.CommonMarkProperties; |
| 24 | 23 | import com.sap.sailing.domain.coursetemplate.CourseTemplate; |
| 25 | 24 | import com.sap.sailing.domain.coursetemplate.FixedPositioning; |
| ... | ... | @@ -33,6 +32,7 @@ import com.sap.sailing.shared.persistence.MongoObjectFactory; |
| 33 | 32 | import com.sap.sailing.shared.persistence.device.DeviceIdentifierMongoHandler; |
| 34 | 33 | import com.sap.sailing.shared.persistence.device.impl.PlaceHolderDeviceIdentifierMongoHandler; |
| 35 | 34 | import com.sap.sse.common.NoCorrespondingServiceRegisteredException; |
| 35 | +import com.sap.sse.common.Position; |
|
| 36 | 36 | import com.sap.sse.common.TransformationException; |
| 37 | 37 | import com.sap.sse.common.TypeBasedServiceFinder; |
| 38 | 38 | import com.sap.sse.common.TypeBasedServiceFinderFactory; |
java/com.sap.sailing.shared.server.gateway/src/com/sap/sailing/shared/server/gateway/jaxrs/api/MarkPropertiesResource.java
| ... | ... | @@ -22,8 +22,6 @@ import org.json.simple.JSONObject; |
| 22 | 22 | |
| 23 | 23 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 24 | 24 | import com.sap.sailing.domain.common.MarkType; |
| 25 | -import com.sap.sailing.domain.common.Position; |
|
| 26 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 27 | 25 | import com.sap.sailing.domain.coursetemplate.MarkProperties; |
| 28 | 26 | import com.sap.sailing.domain.coursetemplate.MarkPropertiesBuilder; |
| 29 | 27 | import com.sap.sailing.domain.coursetemplate.Positioning; |
| ... | ... | @@ -36,7 +34,9 @@ import com.sap.sailing.server.gateway.serialization.racelog.tracking.DeviceIdent |
| 36 | 34 | import com.sap.sailing.server.gateway.serialization.racelog.tracking.impl.PlaceHolderDeviceIdentifierJsonHandler; |
| 37 | 35 | import com.sap.sailing.shared.server.gateway.jaxrs.SharedAbstractSailingServerResource; |
| 38 | 36 | import com.sap.sse.common.Color; |
| 37 | +import com.sap.sse.common.Position; |
|
| 39 | 38 | import com.sap.sse.common.TypeBasedServiceFinder; |
| 39 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 40 | 40 | import com.sap.sse.common.impl.RGBColor; |
| 41 | 41 | import com.sap.sse.shared.json.JsonSerializer; |
| 42 | 42 | import com.sun.jersey.api.client.ClientResponse.Status; |
java/com.sap.sailing.shared.server/src/com/sap/sailing/shared/server/SharedSailingData.java
| ... | ... | @@ -7,7 +7,6 @@ import java.util.Optional; |
| 7 | 7 | import java.util.UUID; |
| 8 | 8 | |
| 9 | 9 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 10 | -import com.sap.sailing.domain.common.Position; |
|
| 11 | 10 | import com.sap.sailing.domain.coursetemplate.CommonMarkProperties; |
| 12 | 11 | import com.sap.sailing.domain.coursetemplate.CourseTemplate; |
| 13 | 12 | import com.sap.sailing.domain.coursetemplate.FixedPositioning; |
| ... | ... | @@ -18,6 +17,7 @@ import com.sap.sailing.domain.coursetemplate.Positioning; |
| 18 | 17 | import com.sap.sailing.domain.coursetemplate.WaypointTemplate; |
| 19 | 18 | import com.sap.sailing.shared.server.impl.ReplicatingSharedSailingData; |
| 20 | 19 | import com.sap.sailing.shared.server.impl.SharedSailingDataImpl; |
| 20 | +import com.sap.sse.common.Position; |
|
| 21 | 21 | import com.sap.sse.common.RepeatablePart; |
| 22 | 22 | import com.sap.sse.common.TimePoint; |
| 23 | 23 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
java/com.sap.sailing.shared.server/src/com/sap/sailing/shared/server/impl/SharedSailingDataImpl.java
| ... | ... | @@ -17,7 +17,6 @@ import java.util.concurrent.ConcurrentHashMap; |
| 17 | 17 | import java.util.stream.Collectors; |
| 18 | 18 | |
| 19 | 19 | import com.sap.sailing.domain.common.DeviceIdentifier; |
| 20 | -import com.sap.sailing.domain.common.Position; |
|
| 21 | 20 | import com.sap.sailing.domain.common.security.SecuredDomainType; |
| 22 | 21 | import com.sap.sailing.domain.coursetemplate.CommonMarkProperties; |
| 23 | 22 | import com.sap.sailing.domain.coursetemplate.CourseTemplate; |
| ... | ... | @@ -49,6 +48,7 @@ import com.sap.sailing.shared.server.operations.RecordUsageForMarkTemplateOperat |
| 49 | 48 | import com.sap.sailing.shared.server.operations.SetPositioningInformationForMarkPropertiesOperation; |
| 50 | 49 | import com.sap.sailing.shared.server.operations.UpdateCourseTemplateOperation; |
| 51 | 50 | import com.sap.sailing.shared.server.operations.UpdateMarkPropertiesOperation; |
| 51 | +import com.sap.sse.common.Position; |
|
| 52 | 52 | import com.sap.sse.common.RepeatablePart; |
| 53 | 53 | import com.sap.sse.common.TimePoint; |
| 54 | 54 | import com.sap.sse.common.TypeBasedServiceFinder; |
java/com.sap.sailing.simulator.test/src/com/sap/sailing/simulator/test/ConfigurationManagerTest.java
| ... | ... | @@ -7,12 +7,12 @@ import org.junit.jupiter.api.Assertions; |
| 7 | 7 | import org.junit.jupiter.api.BeforeEach; |
| 8 | 8 | import org.junit.jupiter.api.Test; |
| 9 | 9 | |
| 10 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 11 | 10 | import com.sap.sailing.simulator.BoatClassProperties; |
| 12 | 11 | import com.sap.sailing.simulator.RaceProperties; |
| 13 | 12 | import com.sap.sailing.simulator.impl.BoatClassPropertiesImpl; |
| 14 | 13 | import com.sap.sailing.simulator.impl.ConfigurationManager; |
| 15 | 14 | import com.sap.sailing.simulator.impl.RacePropertiesImpl; |
| 15 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 16 | 16 | |
| 17 | 17 | public class ConfigurationManagerTest { |
| 18 | 18 |
java/com.sap.sailing.simulator.test/src/com/sap/sailing/simulator/test/PolarDiagramCSVTest.java
| ... | ... | @@ -8,8 +8,6 @@ import java.util.Set; |
| 8 | 8 | import org.junit.jupiter.api.Assertions; |
| 9 | 9 | import org.junit.jupiter.api.Test; |
| 10 | 10 | |
| 11 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 12 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 13 | 11 | import com.sap.sailing.simulator.PolarDiagram; |
| 14 | 12 | import com.sap.sailing.simulator.impl.PolarDiagram49; |
| 15 | 13 | import com.sap.sailing.simulator.impl.PolarDiagram49Bethwaite; |
| ... | ... | @@ -20,7 +18,9 @@ import com.sap.sailing.simulator.impl.PolarDiagramCSV; |
| 20 | 18 | import com.sap.sse.common.AbstractBearing; |
| 21 | 19 | import com.sap.sse.common.Bearing; |
| 22 | 20 | import com.sap.sse.common.Speed; |
| 21 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 23 | 22 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 23 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 24 | 24 | |
| 25 | 25 | public class PolarDiagramCSVTest { |
| 26 | 26 | private static double DELTA_PERCENTAGE = 0.54; |
java/com.sap.sailing.simulator.test/src/com/sap/sailing/simulator/test/RectangularBoundaryTest.java
| ... | ... | @@ -4,10 +4,10 @@ import static org.junit.jupiter.api.Assertions.assertEquals; |
| 4 | 4 | |
| 5 | 5 | import org.junit.jupiter.api.Test; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 9 | 7 | import com.sap.sailing.simulator.Grid; |
| 10 | 8 | import com.sap.sailing.simulator.impl.RectangularGrid; |
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 11 | 11 | |
| 12 | 12 | public class RectangularBoundaryTest { |
| 13 | 13 |
java/com.sap.sailing.simulator.test/src/com/sap/sailing/simulator/test/SimulatorTest.java
| ... | ... | @@ -10,8 +10,6 @@ import org.junit.jupiter.api.Assertions; |
| 10 | 10 | import org.junit.jupiter.api.Test; |
| 11 | 11 | |
| 12 | 12 | import com.sap.sailing.domain.common.PathType; |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 15 | 13 | import com.sap.sailing.simulator.Path; |
| 16 | 14 | import com.sap.sailing.simulator.PolarDiagram; |
| 17 | 15 | import com.sap.sailing.simulator.SimulationParameters; |
| ... | ... | @@ -26,7 +24,9 @@ import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 26 | 24 | import com.sap.sailing.simulator.windfield.impl.WindFieldGeneratorBlastImpl; |
| 27 | 25 | import com.sap.sse.common.Bearing; |
| 28 | 26 | import com.sap.sse.common.Duration; |
| 27 | +import com.sap.sse.common.Position; |
|
| 29 | 28 | import com.sap.sse.common.TimePoint; |
| 29 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 30 | 30 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 31 | 31 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 32 | 32 |
java/com.sap.sailing.simulator.test/src/com/sap/sailing/simulator/test/TreeGrowTest.java
| ... | ... | @@ -7,10 +7,6 @@ import java.util.List; |
| 7 | 7 | import org.junit.jupiter.api.Assertions; |
| 8 | 8 | import org.junit.jupiter.api.Test; |
| 9 | 9 | |
| 10 | -import com.sap.sailing.domain.common.Position; |
|
| 11 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 12 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 13 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 14 | 10 | import com.sap.sailing.simulator.Path; |
| 15 | 11 | import com.sap.sailing.simulator.PolarDiagram; |
| 16 | 12 | import com.sap.sailing.simulator.SimulationParameters; |
| ... | ... | @@ -23,8 +19,12 @@ import com.sap.sailing.simulator.windfield.WindControlParameters; |
| 23 | 19 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 24 | 20 | import com.sap.sailing.simulator.windfield.impl.WindFieldGeneratorOscillationImpl; |
| 25 | 21 | import com.sap.sse.common.Duration; |
| 22 | +import com.sap.sse.common.Position; |
|
| 23 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 26 | 24 | import com.sap.sse.common.TimePoint; |
| 27 | 25 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 26 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 27 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 28 | 28 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 29 | 29 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 30 | 30 |
java/com.sap.sailing.simulator.test/src/com/sap/sailing/simulator/test/WindFieldGeneratorTest.java
| ... | ... | @@ -14,10 +14,7 @@ import java.util.logging.Logger; |
| 14 | 14 | import org.junit.jupiter.api.Test; |
| 15 | 15 | |
| 16 | 16 | import com.sap.sailing.domain.base.impl.KilometersPerHourSpeedWithBearingImpl; |
| 17 | -import com.sap.sailing.domain.common.Position; |
|
| 18 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 19 | 17 | import com.sap.sailing.domain.common.Wind; |
| 20 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 21 | 18 | import com.sap.sailing.simulator.impl.RectangularGrid; |
| 22 | 19 | import com.sap.sailing.simulator.impl.TimedPositionWithSpeedImpl; |
| 23 | 20 | import com.sap.sailing.simulator.windfield.WindControlParameters; |
| ... | ... | @@ -26,9 +23,12 @@ import com.sap.sailing.simulator.windfield.impl.WindFieldGeneratorCombined; |
| 26 | 23 | import com.sap.sailing.simulator.windfield.impl.WindFieldGeneratorImpl; |
| 27 | 24 | import com.sap.sailing.simulator.windfield.impl.WindFieldGeneratorOscillationImpl; |
| 28 | 25 | import com.sap.sse.common.Duration; |
| 26 | +import com.sap.sse.common.Position; |
|
| 27 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 29 | 28 | import com.sap.sse.common.TimePoint; |
| 30 | 29 | import com.sap.sse.common.Util; |
| 31 | 30 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 31 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 32 | 32 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 33 | 33 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 34 | 34 |
java/com.sap.sailing.simulator.test/src/com/sap/sailing/simulator/test/util/PathGenerator1TurnerEval.java
| ... | ... | @@ -10,8 +10,6 @@ import java.io.ObjectInputStream; |
| 10 | 10 | |
| 11 | 11 | import org.junit.jupiter.api.Assertions; |
| 12 | 12 | |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 15 | 13 | import com.sap.sailing.simulator.PolarDiagram; |
| 16 | 14 | import com.sap.sailing.simulator.SimulationParameters; |
| 17 | 15 | import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| ... | ... | @@ -20,7 +18,9 @@ import com.sap.sailing.simulator.impl.PolarDiagramCSV; |
| 20 | 18 | import com.sap.sailing.simulator.impl.SimulationParametersImpl; |
| 21 | 19 | import com.sap.sailing.simulator.util.SailingSimulatorConstants; |
| 22 | 20 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 21 | +import com.sap.sse.common.Position; |
|
| 23 | 22 | import com.sap.sse.common.TimePoint; |
| 23 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 24 | 24 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 25 | 25 | |
| 26 | 26 | public class PathGenerator1TurnerEval { |
java/com.sap.sailing.simulator.test/src/com/sap/sailing/simulator/test/util/PolarDiagramCurrentDataPolar.java
| ... | ... | @@ -5,12 +5,12 @@ import static org.junit.jupiter.api.Assertions.assertEquals; |
| 5 | 5 | import java.io.FileWriter; |
| 6 | 6 | import java.io.IOException; |
| 7 | 7 | |
| 8 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 9 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 10 | 8 | import com.sap.sailing.simulator.impl.PolarDiagram49STG; |
| 11 | 9 | import com.sap.sailing.simulator.impl.PolarDiagramBase; |
| 12 | 10 | import com.sap.sse.common.Bearing; |
| 11 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 13 | 12 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 13 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 14 | 14 | |
| 15 | 15 | public class PolarDiagramCurrentDataPolar { |
| 16 | 16 |
java/com.sap.sailing.simulator.test/src/com/sap/sailing/simulator/test/util/PolarDiagramInterpolate.java
| ... | ... | @@ -3,10 +3,10 @@ package com.sap.sailing.simulator.test.util; |
| 3 | 3 | import java.io.IOException; |
| 4 | 4 | import java.util.NavigableMap; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 7 | 6 | import com.sap.sailing.simulator.impl.PolarDiagram49STG; |
| 8 | 7 | import com.sap.sailing.simulator.impl.PolarDiagramBase; |
| 9 | 8 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 9 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 10 | 10 | |
| 11 | 11 | public class PolarDiagramInterpolate { |
| 12 | 12 |
java/com.sap.sailing.simulator.test/src/com/sap/sailing/simulator/test/util/PolarDiagramPlotDataPolar.java
| ... | ... | @@ -8,11 +8,11 @@ import java.util.NavigableMap; |
| 8 | 8 | import java.util.Set; |
| 9 | 9 | import java.util.TreeSet; |
| 10 | 10 | |
| 11 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 12 | 11 | import com.sap.sailing.simulator.PolarDiagram; |
| 13 | 12 | import com.sap.sailing.simulator.impl.PolarDiagram49STG; |
| 14 | 13 | import com.sap.sse.common.Bearing; |
| 15 | 14 | import com.sap.sse.common.Speed; |
| 15 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 16 | 16 | |
| 17 | 17 | public class PolarDiagramPlotDataPolar { |
| 18 | 18 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/Grid.java
| ... | ... | @@ -3,9 +3,9 @@ package com.sap.sailing.simulator; |
| 3 | 3 | import java.io.Serializable; |
| 4 | 4 | import java.util.Map; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sse.common.Bearing; |
| 8 | 7 | import com.sap.sse.common.Distance; |
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | 9 | import com.sap.sse.common.Util; |
| 10 | 10 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 11 | 11 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/PolarDiagram.java
| ... | ... | @@ -4,9 +4,9 @@ import java.io.Serializable; |
| 4 | 4 | import java.util.NavigableMap; |
| 5 | 5 | import java.util.Set; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 8 | 7 | import com.sap.sse.common.Bearing; |
| 9 | 8 | import com.sap.sse.common.Speed; |
| 9 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 10 | 10 | import com.sap.sse.common.Util.Pair; |
| 11 | 11 | |
| 12 | 12 | public interface PolarDiagram extends Serializable { |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/SimulationParameters.java
| ... | ... | @@ -3,9 +3,9 @@ package com.sap.sailing.simulator; |
| 3 | 3 | import java.util.List; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.common.LegType; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 8 | 7 | import com.sap.sse.common.Duration; |
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | 9 | |
| 10 | 10 | public interface SimulationParameters { |
| 11 | 11 | char getMode(); |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/SimulationResults.java
| ... | ... | @@ -3,8 +3,8 @@ package com.sap.sailing.simulator; |
| 3 | 3 | import java.util.Map; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.common.PathType; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sse.common.Duration; |
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | 9 | |
| 10 | 10 | public class SimulationResults { |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/TimedPosition.java
| ... | ... | @@ -1,6 +1,6 @@ |
| 1 | 1 | package com.sap.sailing.simulator; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Positioned; |
|
| 3 | +import com.sap.sse.common.Positioned; |
|
| 4 | 4 | import com.sap.sse.common.Timed; |
| 5 | 5 | |
| 6 | 6 | public interface TimedPosition extends Timed, Positioned { |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/TimedPositionWithSpeed.java
| ... | ... | @@ -1,6 +1,6 @@ |
| 1 | 1 | package com.sap.sailing.simulator; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 3 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 4 | 4 | |
| 5 | 5 | public interface TimedPositionWithSpeed extends TimedPosition { |
| 6 | 6 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/ConfigurationManager.java
| ... | ... | @@ -10,9 +10,9 @@ import java.nio.charset.Charset; |
| 10 | 10 | import java.util.ArrayList; |
| 11 | 11 | import java.util.List; |
| 12 | 12 | |
| 13 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 14 | 13 | import com.sap.sailing.simulator.BoatClassProperties; |
| 15 | 14 | import com.sap.sailing.simulator.RaceProperties; |
| 15 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 16 | 16 | |
| 17 | 17 | public enum ConfigurationManager { |
| 18 | 18 | INSTANCE; |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/CurvedGrid.java
| ... | ... | @@ -3,10 +3,10 @@ package com.sap.sailing.simulator.impl; |
| 3 | 3 | import java.util.HashMap; |
| 4 | 4 | import java.util.Map; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sailing.simulator.Grid; |
| 8 | 7 | import com.sap.sse.common.Bearing; |
| 9 | 8 | import com.sap.sse.common.Distance; |
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | 10 | import com.sap.sse.common.Util; |
| 11 | 11 | |
| 12 | 12 | /** |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathCandidate.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.simulator.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.domain.common.Wind; |
| 5 | 4 | import com.sap.sailing.simulator.TimedPosition; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | 6 | |
| 7 | 7 | public class PathCandidate implements Comparable<PathCandidate> { |
| 8 | 8 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathGenerator1Turner.java
| ... | ... | @@ -4,10 +4,7 @@ import java.util.ArrayList; |
| 4 | 4 | import java.util.LinkedList; |
| 5 | 5 | import java.util.List; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 9 | 7 | import com.sap.sailing.domain.common.Wind; |
| 10 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 11 | 8 | import com.sap.sailing.simulator.Path; |
| 12 | 9 | import com.sap.sailing.simulator.PolarDiagram; |
| 13 | 10 | import com.sap.sailing.simulator.SimulationParameters; |
| ... | ... | @@ -15,7 +12,10 @@ import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 15 | 12 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 16 | 13 | import com.sap.sse.common.Bearing; |
| 17 | 14 | import com.sap.sse.common.Distance; |
| 15 | +import com.sap.sse.common.Position; |
|
| 16 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 18 | 17 | import com.sap.sse.common.TimePoint; |
| 18 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 19 | 19 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 20 | 20 | |
| 21 | 21 | public class PathGenerator1Turner extends PathGeneratorBase { |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathGenerator1Turner360.java
| ... | ... | @@ -2,8 +2,6 @@ package com.sap.sailing.simulator.impl; |
| 2 | 2 | |
| 3 | 3 | import java.util.LinkedList; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 7 | 5 | import com.sap.sailing.domain.common.Wind; |
| 8 | 6 | import com.sap.sailing.simulator.BoatDirection; |
| 9 | 7 | import com.sap.sailing.simulator.Path; |
| ... | ... | @@ -14,6 +12,8 @@ import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 14 | 12 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 15 | 13 | import com.sap.sse.common.Bearing; |
| 16 | 14 | import com.sap.sse.common.Distance; |
| 15 | +import com.sap.sse.common.Position; |
|
| 16 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 17 | 17 | import com.sap.sse.common.TimePoint; |
| 18 | 18 | import com.sap.sse.common.Util; |
| 19 | 19 | import com.sap.sse.common.Util.Pair; |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathGenerator1TurnerLeftDirect.java
| ... | ... | @@ -2,8 +2,6 @@ package com.sap.sailing.simulator.impl; |
| 2 | 2 | |
| 3 | 3 | import java.util.LinkedList; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 7 | 5 | import com.sap.sailing.simulator.Grid; |
| 8 | 6 | import com.sap.sailing.simulator.Path; |
| 9 | 7 | import com.sap.sailing.simulator.PolarDiagram; |
| ... | ... | @@ -12,7 +10,9 @@ import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 12 | 10 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 13 | 11 | import com.sap.sse.common.Bearing; |
| 14 | 12 | import com.sap.sse.common.Distance; |
| 13 | +import com.sap.sse.common.Position; |
|
| 15 | 14 | import com.sap.sse.common.Speed; |
| 15 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 16 | 16 | import com.sap.sse.common.TimePoint; |
| 17 | 17 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 18 | 18 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathGenerator1TurnerRightDirect.java
| ... | ... | @@ -2,8 +2,6 @@ package com.sap.sailing.simulator.impl; |
| 2 | 2 | |
| 3 | 3 | import java.util.LinkedList; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 7 | 5 | import com.sap.sailing.simulator.Grid; |
| 8 | 6 | import com.sap.sailing.simulator.Path; |
| 9 | 7 | import com.sap.sailing.simulator.PolarDiagram; |
| ... | ... | @@ -12,7 +10,9 @@ import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 12 | 10 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 13 | 11 | import com.sap.sse.common.Bearing; |
| 14 | 12 | import com.sap.sse.common.Distance; |
| 13 | +import com.sap.sse.common.Position; |
|
| 15 | 14 | import com.sap.sse.common.Speed; |
| 15 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 16 | 16 | import com.sap.sse.common.TimePoint; |
| 17 | 17 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 18 | 18 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathGeneratorDijkstra.java
| ... | ... | @@ -7,8 +7,6 @@ import java.util.LinkedList; |
| 7 | 7 | import java.util.List; |
| 8 | 8 | import java.util.Map; |
| 9 | 9 | |
| 10 | -import com.sap.sailing.domain.common.Position; |
|
| 11 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 12 | 10 | import com.sap.sailing.simulator.Grid; |
| 13 | 11 | import com.sap.sailing.simulator.Path; |
| 14 | 12 | import com.sap.sailing.simulator.PolarDiagram; |
| ... | ... | @@ -18,7 +16,9 @@ import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 18 | 16 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 19 | 17 | import com.sap.sse.common.Bearing; |
| 20 | 18 | import com.sap.sse.common.Distance; |
| 19 | +import com.sap.sse.common.Position; |
|
| 21 | 20 | import com.sap.sse.common.Speed; |
| 21 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 22 | 22 | import com.sap.sse.common.TimePoint; |
| 23 | 23 | import com.sap.sse.common.Util; |
| 24 | 24 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathGeneratorDynProgForward.java
| ... | ... | @@ -4,8 +4,6 @@ import java.util.ArrayList; |
| 4 | 4 | import java.util.LinkedList; |
| 5 | 5 | import java.util.Vector; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 9 | 7 | import com.sap.sailing.simulator.Grid; |
| 10 | 8 | import com.sap.sailing.simulator.Path; |
| 11 | 9 | import com.sap.sailing.simulator.PolarDiagram; |
| ... | ... | @@ -16,7 +14,9 @@ import com.sap.sailing.simulator.windfield.WindField; |
| 16 | 14 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 17 | 15 | import com.sap.sse.common.Bearing; |
| 18 | 16 | import com.sap.sse.common.Distance; |
| 17 | +import com.sap.sse.common.Position; |
|
| 19 | 18 | import com.sap.sse.common.Speed; |
| 19 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 20 | 20 | import com.sap.sse.common.TimePoint; |
| 21 | 21 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 22 | 22 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathGeneratorOpportunistEuclidian.java
| ... | ... | @@ -5,8 +5,6 @@ import java.util.List; |
| 5 | 5 | import java.util.logging.Logger; |
| 6 | 6 | |
| 7 | 7 | import com.sap.sailing.domain.common.LegType; |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 10 | 8 | import com.sap.sailing.domain.common.Wind; |
| 11 | 9 | import com.sap.sailing.simulator.Path; |
| 12 | 10 | import com.sap.sailing.simulator.PolarDiagram; |
| ... | ... | @@ -15,6 +13,8 @@ import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 15 | 13 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 16 | 14 | import com.sap.sse.common.Bearing; |
| 17 | 15 | import com.sap.sse.common.Distance; |
| 16 | +import com.sap.sse.common.Position; |
|
| 17 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 18 | 18 | import com.sap.sse.common.TimePoint; |
| 19 | 19 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 20 | 20 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathGeneratorOpportunistEuclidian360.java
| ... | ... | @@ -8,8 +8,6 @@ import java.util.TimeZone; |
| 8 | 8 | import java.util.logging.Logger; |
| 9 | 9 | |
| 10 | 10 | import com.sap.sailing.domain.common.LegType; |
| 11 | -import com.sap.sailing.domain.common.Position; |
|
| 12 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 13 | 11 | import com.sap.sailing.domain.common.Wind; |
| 14 | 12 | import com.sap.sailing.simulator.BoatDirection; |
| 15 | 13 | import com.sap.sailing.simulator.Path; |
| ... | ... | @@ -21,6 +19,8 @@ import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 21 | 19 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 22 | 20 | import com.sap.sse.common.Bearing; |
| 23 | 21 | import com.sap.sse.common.Distance; |
| 22 | +import com.sap.sse.common.Position; |
|
| 23 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 24 | 24 | import com.sap.sse.common.TimePoint; |
| 25 | 25 | import com.sap.sse.common.Util.Pair; |
| 26 | 26 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathGeneratorOpportunistVMG.java
| ... | ... | @@ -4,8 +4,6 @@ import java.util.ArrayList; |
| 4 | 4 | import java.util.List; |
| 5 | 5 | import java.util.logging.Logger; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 9 | 7 | import com.sap.sailing.domain.common.Wind; |
| 10 | 8 | import com.sap.sailing.simulator.Path; |
| 11 | 9 | import com.sap.sailing.simulator.PolarDiagram; |
| ... | ... | @@ -13,6 +11,8 @@ import com.sap.sailing.simulator.SimulationParameters; |
| 13 | 11 | import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 14 | 12 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 15 | 13 | import com.sap.sse.common.Bearing; |
| 14 | +import com.sap.sse.common.Position; |
|
| 15 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 16 | 16 | import com.sap.sse.common.TimePoint; |
| 17 | 17 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 18 | 18 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathGeneratorTracTrac.java
| ... | ... | @@ -16,10 +16,7 @@ import com.sap.sailing.domain.base.Competitor; |
| 16 | 16 | import com.sap.sailing.domain.base.Leg; |
| 17 | 17 | import com.sap.sailing.domain.base.RaceDefinition; |
| 18 | 18 | import com.sap.sailing.domain.base.Regatta; |
| 19 | -import com.sap.sailing.domain.common.Position; |
|
| 20 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 21 | 19 | import com.sap.sailing.domain.common.Wind; |
| 22 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 23 | 20 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 24 | 21 | import com.sap.sailing.domain.tracking.GPSFixTrack; |
| 25 | 22 | import com.sap.sailing.domain.tracking.RaceHandle; |
| ... | ... | @@ -29,8 +26,11 @@ import com.sap.sailing.domain.tractracadapter.impl.TracTracAdapterFactoryImpl; |
| 29 | 26 | import com.sap.sailing.simulator.Path; |
| 30 | 27 | import com.sap.sailing.simulator.SimulationParameters; |
| 31 | 28 | import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 29 | +import com.sap.sse.common.Position; |
|
| 30 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 32 | 31 | import com.sap.sse.common.TimePoint; |
| 33 | 32 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 33 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 34 | 34 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 35 | 35 | |
| 36 | 36 | @SuppressWarnings("restriction") |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathGeneratorTreeGrow.java
| ... | ... | @@ -10,8 +10,6 @@ import java.util.List; |
| 10 | 10 | import java.util.logging.Logger; |
| 11 | 11 | |
| 12 | 12 | import com.sap.sailing.domain.common.LegType; |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 15 | 13 | import com.sap.sailing.domain.common.Wind; |
| 16 | 14 | import com.sap.sailing.simulator.Path; |
| 17 | 15 | import com.sap.sailing.simulator.PolarDiagram; |
| ... | ... | @@ -21,6 +19,8 @@ import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 21 | 19 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 22 | 20 | import com.sap.sse.common.Bearing; |
| 23 | 21 | import com.sap.sse.common.Distance; |
| 22 | +import com.sap.sse.common.Position; |
|
| 23 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 24 | 24 | import com.sap.sse.common.TimePoint; |
| 25 | 25 | import com.sap.sse.common.Util; |
| 26 | 26 | import com.sap.sse.common.impl.DegreeBearingImpl; |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathGeneratorTreeGrow360.java
| ... | ... | @@ -13,8 +13,6 @@ import java.util.TimeZone; |
| 13 | 13 | import java.util.logging.Logger; |
| 14 | 14 | |
| 15 | 15 | import com.sap.sailing.domain.common.LegType; |
| 16 | -import com.sap.sailing.domain.common.Position; |
|
| 17 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 18 | 16 | import com.sap.sailing.domain.common.Wind; |
| 19 | 17 | import com.sap.sailing.simulator.Path; |
| 20 | 18 | import com.sap.sailing.simulator.PointOfSail; |
| ... | ... | @@ -25,6 +23,8 @@ import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 25 | 23 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 26 | 24 | import com.sap.sse.common.Bearing; |
| 27 | 25 | import com.sap.sse.common.Distance; |
| 26 | +import com.sap.sse.common.Position; |
|
| 27 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 28 | 28 | import com.sap.sse.common.TimePoint; |
| 29 | 29 | import com.sap.sse.common.Util; |
| 30 | 30 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathGeneratorTreeGrowBitSet.java
| ... | ... | @@ -10,8 +10,6 @@ import java.util.Comparator; |
| 10 | 10 | import java.util.List; |
| 11 | 11 | import java.util.logging.Logger; |
| 12 | 12 | |
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 15 | 13 | import com.sap.sailing.domain.common.Wind; |
| 16 | 14 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 17 | 15 | import com.sap.sailing.simulator.Path; |
| ... | ... | @@ -22,6 +20,8 @@ import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 22 | 20 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 23 | 21 | import com.sap.sse.common.Bearing; |
| 24 | 22 | import com.sap.sse.common.Distance; |
| 23 | +import com.sap.sse.common.Position; |
|
| 24 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 25 | 25 | import com.sap.sse.common.TimePoint; |
| 26 | 26 | import com.sap.sse.common.Util; |
| 27 | 27 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PathImpl.java
| ... | ... | @@ -9,17 +9,17 @@ import java.text.SimpleDateFormat; |
| 9 | 9 | import java.util.ArrayList; |
| 10 | 10 | import java.util.List; |
| 11 | 11 | |
| 12 | -import com.sap.sailing.domain.common.Position; |
|
| 13 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 14 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 15 | 12 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 16 | 13 | import com.sap.sailing.simulator.Path; |
| 17 | 14 | import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 18 | 15 | import com.sap.sailing.simulator.windfield.WindField; |
| 19 | 16 | import com.sap.sse.common.Bearing; |
| 20 | 17 | import com.sap.sse.common.Distance; |
| 18 | +import com.sap.sse.common.Position; |
|
| 19 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 21 | 20 | import com.sap.sse.common.TimePoint; |
| 22 | 21 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 22 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 23 | 23 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 24 | 24 | |
| 25 | 25 | public class PathImpl implements Path, Serializable { |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PolarDiagram49.java
| ... | ... | @@ -4,10 +4,10 @@ import java.util.NavigableMap; |
| 4 | 4 | import java.util.TreeMap; |
| 5 | 5 | |
| 6 | 6 | import com.sap.sailing.domain.base.DomainFactory; |
| 7 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 8 | 7 | import com.sap.sse.common.Bearing; |
| 9 | 8 | import com.sap.sse.common.Speed; |
| 10 | 9 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 10 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 11 | 11 | |
| 12 | 12 | public class PolarDiagram49 extends PolarDiagramBase { |
| 13 | 13 | private static final long serialVersionUID = -878812179468801167L; |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PolarDiagram49Bethwaite.java
| ... | ... | @@ -4,10 +4,10 @@ import java.util.NavigableMap; |
| 4 | 4 | import java.util.TreeMap; |
| 5 | 5 | |
| 6 | 6 | import com.sap.sailing.domain.base.DomainFactory; |
| 7 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 8 | 7 | import com.sap.sse.common.Bearing; |
| 9 | 8 | import com.sap.sse.common.Speed; |
| 10 | 9 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 10 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 11 | 11 | |
| 12 | 12 | public class PolarDiagram49Bethwaite extends PolarDiagramBase { |
| 13 | 13 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PolarDiagram49ORC.java
| ... | ... | @@ -4,10 +4,10 @@ import java.util.NavigableMap; |
| 4 | 4 | import java.util.TreeMap; |
| 5 | 5 | |
| 6 | 6 | import com.sap.sailing.domain.base.DomainFactory; |
| 7 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 8 | 7 | import com.sap.sse.common.Bearing; |
| 9 | 8 | import com.sap.sse.common.Speed; |
| 10 | 9 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 10 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 11 | 11 | |
| 12 | 12 | public class PolarDiagram49ORC extends PolarDiagramBase { |
| 13 | 13 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PolarDiagram49STG.java
| ... | ... | @@ -4,10 +4,10 @@ import java.util.NavigableMap; |
| 4 | 4 | import java.util.TreeMap; |
| 5 | 5 | |
| 6 | 6 | import com.sap.sailing.domain.base.DomainFactory; |
| 7 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 8 | 7 | import com.sap.sse.common.Bearing; |
| 9 | 8 | import com.sap.sse.common.Speed; |
| 10 | 9 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 10 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 11 | 11 | |
| 12 | 12 | public class PolarDiagram49STG extends PolarDiagramBase { |
| 13 | 13 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PolarDiagram505STG.java
| ... | ... | @@ -4,10 +4,10 @@ import java.util.NavigableMap; |
| 4 | 4 | import java.util.TreeMap; |
| 5 | 5 | |
| 6 | 6 | import com.sap.sailing.domain.base.DomainFactory; |
| 7 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 8 | 7 | import com.sap.sse.common.Bearing; |
| 9 | 8 | import com.sap.sse.common.Speed; |
| 10 | 9 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 10 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 11 | 11 | |
| 12 | 12 | public class PolarDiagram505STG extends PolarDiagramBase { |
| 13 | 13 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PolarDiagramBase.java
| ... | ... | @@ -13,16 +13,16 @@ import java.util.TreeSet; |
| 13 | 13 | |
| 14 | 14 | import com.sap.sailing.domain.base.BoatClass; |
| 15 | 15 | import com.sap.sailing.domain.common.BoatClassMasterdata; |
| 16 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 17 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 18 | -import com.sap.sailing.domain.common.impl.RadianBearingImpl; |
|
| 19 | 16 | import com.sap.sailing.simulator.BoatDirection; |
| 20 | 17 | import com.sap.sailing.simulator.PointOfSail; |
| 21 | 18 | import com.sap.sailing.simulator.PolarDiagram; |
| 22 | 19 | import com.sap.sse.common.Bearing; |
| 23 | 20 | import com.sap.sse.common.Speed; |
| 21 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 24 | 22 | import com.sap.sse.common.Util.Pair; |
| 25 | 23 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 24 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 25 | +import com.sap.sse.common.impl.RadianBearingImpl; |
|
| 26 | 26 | |
| 27 | 27 | public class PolarDiagramBase implements PolarDiagram, Serializable { |
| 28 | 28 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PolarDiagramCSV.java
| ... | ... | @@ -14,10 +14,10 @@ import java.util.NavigableMap; |
| 14 | 14 | import java.util.TreeMap; |
| 15 | 15 | |
| 16 | 16 | import com.sap.sailing.domain.base.DomainFactory; |
| 17 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 18 | 17 | import com.sap.sse.common.Bearing; |
| 19 | 18 | import com.sap.sse.common.Speed; |
| 20 | 19 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 20 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 21 | 21 | |
| 22 | 22 | public class PolarDiagramCSV extends PolarDiagramBase { |
| 23 | 23 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/PolarDiagramGPS.java
| ... | ... | @@ -11,14 +11,14 @@ import java.util.logging.Logger; |
| 11 | 11 | |
| 12 | 12 | import com.sap.sailing.domain.base.BoatClass; |
| 13 | 13 | import com.sap.sailing.domain.common.LegType; |
| 14 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 15 | 14 | import com.sap.sailing.domain.common.Tack; |
| 16 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 17 | 15 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 18 | 16 | import com.sap.sailing.domain.polars.PolarDataService; |
| 19 | 17 | import com.sap.sse.common.Bearing; |
| 20 | 18 | import com.sap.sse.common.Speed; |
| 19 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 21 | 20 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 21 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 22 | 22 | |
| 23 | 23 | public class PolarDiagramGPS extends PolarDiagramBase { |
| 24 | 24 | private static final Logger logger = Logger.getLogger(PolarDiagramGPS.class.getName()); |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/RectangularGrid.java
| ... | ... | @@ -3,12 +3,12 @@ package com.sap.sailing.simulator.impl; |
| 3 | 3 | import java.util.HashMap; |
| 4 | 4 | import java.util.Map; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 8 | 6 | import com.sap.sailing.simulator.Grid; |
| 9 | 7 | import com.sap.sse.common.Bearing; |
| 10 | 8 | import com.sap.sse.common.Distance; |
| 9 | +import com.sap.sse.common.Position; |
|
| 11 | 10 | import com.sap.sse.common.Util; |
| 11 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 12 | 12 | |
| 13 | 13 | /** |
| 14 | 14 | * Implements the {@link Grid} interface by providing a grid of GPS-positions based on the plane approximation of the |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/SimulationParametersImpl.java
| ... | ... | @@ -3,12 +3,12 @@ package com.sap.sailing.simulator.impl; |
| 3 | 3 | import java.util.List; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.common.LegType; |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sailing.simulator.Grid; |
| 8 | 7 | import com.sap.sailing.simulator.PolarDiagram; |
| 9 | 8 | import com.sap.sailing.simulator.SimulationParameters; |
| 10 | 9 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 11 | 10 | import com.sap.sse.common.Duration; |
| 11 | +import com.sap.sse.common.Position; |
|
| 12 | 12 | |
| 13 | 13 | public class SimulationParametersImpl implements SimulationParameters { |
| 14 | 14 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/SimulatorUtils.java
| ... | ... | @@ -19,13 +19,13 @@ import java.util.logging.Logger; |
| 19 | 19 | |
| 20 | 20 | import org.osgi.framework.FrameworkUtil; |
| 21 | 21 | |
| 22 | -import com.sap.sailing.domain.common.Position; |
|
| 23 | 22 | import com.sap.sailing.simulator.Path; |
| 24 | 23 | import com.sap.sailing.simulator.SimulationParameters; |
| 25 | 24 | import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 26 | 25 | import com.sap.sailing.simulator.util.SailingSimulatorConstants; |
| 27 | 26 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 28 | 27 | import com.sap.sailing.simulator.windfield.impl.WindFieldGeneratorMeasured; |
| 28 | +import com.sap.sse.common.Position; |
|
| 29 | 29 | import com.sap.sse.common.Util; |
| 30 | 30 | |
| 31 | 31 | public class SimulatorUtils { |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/TimedPositionImpl.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.simulator.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | 3 | import com.sap.sailing.simulator.TimedPosition; |
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | 5 | import com.sap.sse.common.TimePoint; |
| 6 | 6 | |
| 7 | 7 | public class TimedPositionImpl implements TimedPosition { |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/TimedPositionWithSpeedImpl.java
| ... | ... | @@ -1,8 +1,8 @@ |
| 1 | 1 | package com.sap.sailing.simulator.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | 3 | import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 6 | 6 | import com.sap.sse.common.TimePoint; |
| 7 | 7 | |
| 8 | 8 | public class TimedPositionWithSpeedImpl implements TimedPositionWithSpeed { |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/impl/TimedPositionWithSpeedSimple.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.simulator.impl; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | 3 | import com.sap.sailing.simulator.TimedPositionWithSpeed; |
| 4 | +import com.sap.sse.common.Position; |
|
| 6 | 5 | import com.sap.sse.common.Speed; |
| 6 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 7 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | 8 | |
| 9 | 9 | public class TimedPositionWithSpeedSimple implements TimedPositionWithSpeed { |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/windfield/WindFieldGenerator.java
| ... | ... | @@ -4,9 +4,9 @@ package com.sap.sailing.simulator.windfield; |
| 4 | 4 | |
| 5 | 5 | import java.io.Serializable; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | 7 | import com.sap.sailing.simulator.Grid; |
| 9 | 8 | import com.sap.sse.common.Duration; |
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | 10 | import com.sap.sse.common.TimePoint; |
| 11 | 11 | |
| 12 | 12 | public interface WindFieldGenerator extends WindField, Serializable { |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/windfield/impl/WindFieldGeneratorBlastImpl.java
| ... | ... | @@ -2,19 +2,19 @@ package com.sap.sailing.simulator.windfield.impl; |
| 2 | 2 | |
| 3 | 3 | import java.util.logging.Logger; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 7 | 5 | import com.sap.sailing.domain.common.Wind; |
| 8 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 9 | 6 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 10 | 7 | import com.sap.sailing.simulator.Grid; |
| 11 | 8 | import com.sap.sailing.simulator.TimedPosition; |
| 12 | 9 | import com.sap.sailing.simulator.windfield.WindControlParameters; |
| 13 | 10 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 14 | 11 | import com.sap.sse.common.Duration; |
| 12 | +import com.sap.sse.common.Position; |
|
| 13 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 15 | 14 | import com.sap.sse.common.TimePoint; |
| 16 | 15 | import com.sap.sse.common.Util; |
| 17 | 16 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 17 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 18 | 18 | |
| 19 | 19 | public class WindFieldGeneratorBlastImpl extends WindFieldGeneratorImpl implements WindFieldGenerator { |
| 20 | 20 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/windfield/impl/WindFieldGeneratorCombined.java
| ... | ... | @@ -1,16 +1,16 @@ |
| 1 | 1 | package com.sap.sailing.simulator.windfield.impl; |
| 2 | 2 | |
| 3 | 3 | |
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | 4 | import com.sap.sailing.domain.common.Wind; |
| 6 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 7 | 5 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 8 | 6 | import com.sap.sailing.simulator.Grid; |
| 9 | 7 | import com.sap.sailing.simulator.TimedPosition; |
| 10 | 8 | import com.sap.sailing.simulator.windfield.WindControlParameters; |
| 11 | 9 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 12 | 10 | import com.sap.sse.common.Duration; |
| 11 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 13 | 12 | import com.sap.sse.common.TimePoint; |
| 13 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 14 | 14 | |
| 15 | 15 | public class WindFieldGeneratorCombined extends WindFieldGeneratorImpl implements WindFieldGenerator { |
| 16 | 16 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/windfield/impl/WindFieldGeneratorImpl.java
| ... | ... | @@ -5,10 +5,7 @@ import java.util.Map; |
| 5 | 5 | import java.util.logging.Logger; |
| 6 | 6 | |
| 7 | 7 | import com.sap.sailing.domain.base.impl.KilometersPerHourSpeedWithBearingImpl; |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 10 | 8 | import com.sap.sailing.domain.common.Wind; |
| 11 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 12 | 9 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 13 | 10 | import com.sap.sailing.simulator.Grid; |
| 14 | 11 | import com.sap.sailing.simulator.Path; |
| ... | ... | @@ -20,9 +17,12 @@ import com.sap.sailing.simulator.impl.TimedPositionWithSpeedImpl; |
| 20 | 17 | import com.sap.sailing.simulator.windfield.WindControlParameters; |
| 21 | 18 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 22 | 19 | import com.sap.sse.common.Duration; |
| 20 | +import com.sap.sse.common.Position; |
|
| 21 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 23 | 22 | import com.sap.sse.common.TimePoint; |
| 24 | 23 | import com.sap.sse.common.Util; |
| 25 | 24 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 25 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 26 | 26 | |
| 27 | 27 | public abstract class WindFieldGeneratorImpl implements WindFieldGenerator { |
| 28 | 28 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/windfield/impl/WindFieldGeneratorMeasured.java
| ... | ... | @@ -3,9 +3,7 @@ package com.sap.sailing.simulator.windfield.impl; |
| 3 | 3 | import java.util.List; |
| 4 | 4 | import java.util.logging.Logger; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 7 | 6 | import com.sap.sailing.domain.common.Wind; |
| 8 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 9 | 7 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 10 | 8 | import com.sap.sailing.simulator.Grid; |
| 11 | 9 | import com.sap.sailing.simulator.Path; |
| ... | ... | @@ -15,8 +13,10 @@ import com.sap.sailing.simulator.windfield.WindControlParameters; |
| 15 | 13 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 16 | 14 | import com.sap.sse.common.Bearing; |
| 17 | 15 | import com.sap.sse.common.Duration; |
| 16 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 18 | 17 | import com.sap.sse.common.TimePoint; |
| 19 | 18 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 19 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 20 | 20 | |
| 21 | 21 | public class WindFieldGeneratorMeasured extends WindFieldGeneratorImpl implements WindFieldGenerator { |
| 22 | 22 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/windfield/impl/WindFieldGeneratorOscillationImpl.java
| ... | ... | @@ -2,11 +2,7 @@ package com.sap.sailing.simulator.windfield.impl; |
| 2 | 2 | |
| 3 | 3 | import java.util.logging.Logger; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 7 | 5 | import com.sap.sailing.domain.common.Wind; |
| 8 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 9 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 10 | 6 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 11 | 7 | import com.sap.sailing.simulator.Grid; |
| 12 | 8 | import com.sap.sailing.simulator.TimedPosition; |
| ... | ... | @@ -15,10 +11,14 @@ import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 15 | 11 | import com.sap.sse.common.Bearing; |
| 16 | 12 | import com.sap.sse.common.Distance; |
| 17 | 13 | import com.sap.sse.common.Duration; |
| 14 | +import com.sap.sse.common.Position; |
|
| 18 | 15 | import com.sap.sse.common.Speed; |
| 16 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 19 | 17 | import com.sap.sse.common.TimePoint; |
| 20 | 18 | import com.sap.sse.common.Util; |
| 21 | 19 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 20 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 21 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 22 | 22 | |
| 23 | 23 | public class WindFieldGeneratorOscillationImpl extends WindFieldGeneratorImpl implements WindFieldGenerator { |
| 24 | 24 |
java/com.sap.sailing.simulator/src/com/sap/sailing/simulator/windfield/impl/WindFieldTrackedRaceImpl.java
| ... | ... | @@ -3,15 +3,15 @@ package com.sap.sailing.simulator.windfield.impl; |
| 3 | 3 | import java.util.concurrent.ConcurrentHashMap; |
| 4 | 4 | import java.util.concurrent.ConcurrentMap; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sailing.domain.common.Wind; |
| 8 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 9 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 10 | 7 | import com.sap.sailing.domain.tracking.TrackedRace; |
| 11 | 8 | import com.sap.sailing.simulator.TimedPosition; |
| 12 | 9 | import com.sap.sailing.simulator.impl.TimedPositionImpl; |
| 13 | 10 | import com.sap.sailing.simulator.windfield.WindFieldGenerator; |
| 11 | +import com.sap.sse.common.Position; |
|
| 14 | 12 | import com.sap.sse.common.TimePoint; |
| 13 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 14 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 15 | 15 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 16 | 16 | |
| 17 | 17 | /** |
java/com.sap.sailing.windestimation.lab/src/com/sap/sailing/windestimation/data/LabeledManeuverForEstimation.java
| ... | ... | @@ -1,10 +1,10 @@ |
| 1 | 1 | package com.sap.sailing.windestimation.data; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.base.BoatClass; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 6 | 4 | import com.sap.sailing.domain.common.Wind; |
| 7 | 5 | import com.sap.sse.common.Bearing; |
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 8 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | 9 | |
| 10 | 10 | public class LabeledManeuverForEstimation extends ManeuverForEstimation { |
java/com.sap.sailing.windestimation.lab/src/com/sap/sailing/windestimation/data/WindSourceMetadata.java
| ... | ... | @@ -1,6 +1,6 @@ |
| 1 | 1 | package com.sap.sailing.windestimation.data; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 3 | +import com.sap.sse.common.Position; |
|
| 4 | 4 | import com.sap.sse.common.TimePoint; |
| 5 | 5 | |
| 6 | 6 | public class WindSourceMetadata { |
java/com.sap.sailing.windestimation.lab/src/com/sap/sailing/windestimation/data/serialization/CompetitorTrackWithEstimationDataJsonDeserializer.java
| ... | ... | @@ -9,11 +9,11 @@ import org.json.simple.parser.JSONParser; |
| 9 | 9 | import org.json.simple.parser.ParseException; |
| 10 | 10 | |
| 11 | 11 | import com.sap.sailing.domain.base.BoatClass; |
| 12 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 13 | 12 | import com.sap.sailing.server.gateway.deserialization.impl.BoatClassJsonDeserializer; |
| 14 | 13 | import com.sap.sailing.server.gateway.serialization.impl.CompetitorTrackWithEstimationDataJsonSerializer; |
| 15 | 14 | import com.sap.sailing.windestimation.data.CompetitorTrackWithEstimationData; |
| 16 | 15 | import com.sap.sse.common.Distance; |
| 16 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 17 | 17 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 18 | 18 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 19 | 19 | import com.sap.sse.shared.json.JsonDeserializer; |
java/com.sap.sailing.windestimation.lab/src/com/sap/sailing/windestimation/data/serialization/LabeledManeuverForEstimationJsonDeserializer.java
| ... | ... | @@ -4,14 +4,14 @@ import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.base.BoatClass; |
| 6 | 6 | import com.sap.sailing.domain.base.DomainFactory; |
| 7 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 8 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 9 | 7 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 10 | 8 | import com.sap.sailing.server.gateway.deserialization.impl.BoatClassJsonDeserializer; |
| 11 | 9 | import com.sap.sailing.windestimation.data.LabeledManeuverForEstimation; |
| 12 | 10 | import com.sap.sailing.windestimation.data.ManeuverCategory; |
| 13 | 11 | import com.sap.sailing.windestimation.data.ManeuverTypeForClassification; |
| 14 | 12 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 13 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 14 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 15 | 15 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 16 | 16 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 17 | 17 | import com.sap.sse.shared.json.JsonDeserializer; |
java/com.sap.sailing.windestimation.lab/src/com/sap/sailing/windestimation/data/serialization/TwdTransitionJsonDeserializer.java
| ... | ... | @@ -2,10 +2,10 @@ package com.sap.sailing.windestimation.data.serialization; |
| 2 | 2 | |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 6 | 5 | import com.sap.sailing.windestimation.data.LabeledTwdTransition; |
| 7 | 6 | import com.sap.sailing.windestimation.data.ManeuverTypeForClassification; |
| 8 | 7 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 8 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 9 | 9 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
| 10 | 10 | import com.sap.sse.shared.json.JsonDeserializationException; |
| 11 | 11 | import com.sap.sse.shared.json.JsonDeserializer; |
java/com.sap.sailing.windestimation.lab/src/com/sap/sailing/windestimation/data/serialization/WindSourceMetadataJsonDeserializer.java
| ... | ... | @@ -2,9 +2,9 @@ package com.sap.sailing.windestimation.data.serialization; |
| 2 | 2 | |
| 3 | 3 | import org.json.simple.JSONObject; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | 5 | import com.sap.sailing.server.gateway.serialization.impl.RaceWindJsonSerializer; |
| 7 | 6 | import com.sap.sailing.windestimation.data.WindSourceMetadata; |
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | 9 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 10 | 10 | import com.sap.sse.shared.json.JsonDeserializationException; |
java/com.sap.sailing.windestimation.lab/src/com/sap/sailing/windestimation/evaluation/WindEstimationEvaluatorImpl.java
| ... | ... | @@ -9,8 +9,6 @@ import java.util.Spliterators; |
| 9 | 9 | import java.util.stream.Stream; |
| 10 | 10 | import java.util.stream.StreamSupport; |
| 11 | 11 | |
| 12 | -import com.sap.sailing.domain.common.BearingChangeAnalyzer; |
|
| 13 | -import com.sap.sailing.domain.common.Position; |
|
| 14 | 12 | import com.sap.sailing.domain.common.Wind; |
| 15 | 13 | import com.sap.sailing.domain.tracking.WindTrack; |
| 16 | 14 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| ... | ... | @@ -25,6 +23,8 @@ import com.sap.sailing.windestimation.preprocessing.DummyRacePreprocessingPipeli |
| 25 | 23 | import com.sap.sailing.windestimation.preprocessing.RaceWithRandomClippingPreprocessingPipelineImpl; |
| 26 | 24 | import com.sap.sailing.windestimation.util.LoggingUtil; |
| 27 | 25 | import com.sap.sse.common.Bearing; |
| 26 | +import com.sap.sse.common.BearingChangeAnalyzer; |
|
| 27 | +import com.sap.sse.common.Position; |
|
| 28 | 28 | import com.sap.sse.common.TimePoint; |
| 29 | 29 | import com.sap.sse.common.Util.Pair; |
| 30 | 30 |
java/com.sap.sailing.windestimation.test/resources/polar_data
| ... | ... | Binary files /dev/null and b/java/com.sap.sailing.windestimation.test/resources/polar_data differ |
java/com.sap.sailing.windestimation.test/src/com/sap/sailing/windestimation/integration/AbstractTestWithLocal505PolarData.java
| ... | ... | @@ -0,0 +1,30 @@ |
| 1 | +package com.sap.sailing.windestimation.integration; |
|
| 2 | + |
|
| 3 | +import java.io.File; |
|
| 4 | +import java.io.IOException; |
|
| 5 | +import java.net.MalformedURLException; |
|
| 6 | +import java.net.URISyntaxException; |
|
| 7 | + |
|
| 8 | +import org.json.simple.parser.ParseException; |
|
| 9 | + |
|
| 10 | +import com.sap.sailing.domain.base.DomainFactory; |
|
| 11 | +import com.sap.sailing.domain.polars.PolarDataService; |
|
| 12 | +import com.sap.sailing.domain.test.OnlineTracTracBasedTest; |
|
| 13 | +import com.sap.sailing.polars.impl.PolarDataServiceImpl; |
|
| 14 | +import com.sap.sailing.polars.jaxrs.client.FileBasedPolarDataClient; |
|
| 15 | + |
|
| 16 | +public abstract class AbstractTestWithLocal505PolarData extends OnlineTracTracBasedTest { |
|
| 17 | + protected AbstractTestWithLocal505PolarData() throws MalformedURLException, URISyntaxException { |
|
| 18 | + super(); |
|
| 19 | + } |
|
| 20 | + |
|
| 21 | + protected PolarDataService createPolarDataService() throws ClassNotFoundException, IOException, ParseException, InterruptedException { |
|
| 22 | + final PolarDataServiceImpl polarDataService = new PolarDataServiceImpl(); |
|
| 23 | + final com.sap.sailing.domain.tractracadapter.DomainFactory domainFactoryImpl = getDomainFactory(); |
|
| 24 | + final DomainFactory baseDomainFactory = domainFactoryImpl.getBaseDomainFactory(); |
|
| 25 | + final FileBasedPolarDataClient client = new FileBasedPolarDataClient(new File("resources/polar_data"), polarDataService, baseDomainFactory); |
|
| 26 | + client.updatePolarDataRegressions(); |
|
| 27 | + getTrackedRace().setPolarDataService(polarDataService); |
|
| 28 | + return polarDataService; |
|
| 29 | + } |
|
| 30 | +} |
java/com.sap.sailing.windestimation.test/src/com/sap/sailing/windestimation/integration/IncrementalMstHmmWindEstimationForTrackedRaceTest.java
| ... | ... | @@ -28,15 +28,11 @@ import org.junit.jupiter.api.Test; |
| 28 | 28 | import com.sap.sailing.domain.base.Competitor; |
| 29 | 29 | import com.sap.sailing.domain.base.DomainFactory; |
| 30 | 30 | import com.sap.sailing.domain.common.NoWindException; |
| 31 | -import com.sap.sailing.domain.common.Position; |
|
| 32 | 31 | import com.sap.sailing.domain.common.Wind; |
| 33 | 32 | import com.sap.sailing.domain.common.WindSourceType; |
| 34 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 35 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 36 | 33 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 37 | 34 | import com.sap.sailing.domain.common.impl.WindSourceImpl; |
| 38 | 35 | import com.sap.sailing.domain.common.impl.WindSourceWithAdditionalID; |
| 39 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 40 | 36 | import com.sap.sailing.domain.maneuverdetection.CompleteManeuverCurveWithEstimationData; |
| 41 | 37 | import com.sap.sailing.domain.maneuverdetection.impl.IncrementalManeuverDetectorImpl; |
| 42 | 38 | import com.sap.sailing.domain.maneuverdetection.impl.ManeuverDetectorWithEstimationDataSupportDecoratorImpl; |
| ... | ... | @@ -49,7 +45,7 @@ import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 49 | 45 | import com.sap.sailing.domain.windestimation.IncrementalWindEstimation; |
| 50 | 46 | import com.sap.sailing.domain.windestimation.TimePointAndPositionWithToleranceComparator; |
| 51 | 47 | import com.sap.sailing.polars.impl.PolarDataServiceImpl; |
| 52 | -import com.sap.sailing.polars.jaxrs.client.PolarDataClient; |
|
| 48 | +import com.sap.sailing.polars.jaxrs.client.FileBasedPolarDataClient; |
|
| 53 | 49 | import com.sap.sailing.windestimation.ManeuverBasedWindEstimationComponentImpl; |
| 54 | 50 | import com.sap.sailing.windestimation.aggregator.ManeuverClassificationsAggregatorFactory; |
| 55 | 51 | import com.sap.sailing.windestimation.data.CompetitorTrackWithEstimationData; |
| ... | ... | @@ -65,10 +61,14 @@ import com.sap.sailing.windestimation.windinference.MiddleCourseBasedTwdCalculat |
| 65 | 61 | import com.sap.sailing.windestimation.windinference.WindTrackCalculatorImpl; |
| 66 | 62 | import com.sap.sse.common.Bearing; |
| 67 | 63 | import com.sap.sse.common.Duration; |
| 64 | +import com.sap.sse.common.Position; |
|
| 68 | 65 | import com.sap.sse.common.TimePoint; |
| 69 | 66 | import com.sap.sse.common.Util.Pair; |
| 70 | 67 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 68 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 69 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 71 | 70 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 71 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 72 | 72 | import com.sap.sse.shared.util.Wait; |
| 73 | 73 | import com.sap.sse.testutils.Measurement; |
| 74 | 74 | import com.sap.sse.testutils.MeasurementCase; |
| ... | ... | @@ -79,7 +79,7 @@ import com.sap.sse.testutils.MeasurementXMLFile; |
| 79 | 79 | * @author Vladislav Chumak (D069712) |
| 80 | 80 | * |
| 81 | 81 | */ |
| 82 | -public class IncrementalMstHmmWindEstimationForTrackedRaceTest extends OnlineTracTracBasedTest { |
|
| 82 | +public class IncrementalMstHmmWindEstimationForTrackedRaceTest extends AbstractTestWithLocal505PolarData { |
|
| 83 | 83 | private static final Logger logger = Logger.getLogger(IncrementalMstHmmWindEstimationForTrackedRaceTest.class.getName()); |
| 84 | 84 | |
| 85 | 85 | |
| ... | ... | @@ -131,30 +131,11 @@ public class IncrementalMstHmmWindEstimationForTrackedRaceTest extends OnlineTra |
| 131 | 131 | new URL("file:///" + new File("resources/event_20110609_KielerWoch-505_Race_2.txt").getCanonicalPath()), |
| 132 | 132 | /* liveUri */ null, /* storedUri */ storedUri, |
| 133 | 133 | new ReceiverType[] { ReceiverType.MARKPASSINGS, ReceiverType.RACECOURSE, ReceiverType.RAWPOSITIONS, ReceiverType.MARKPOSITIONS }); |
| 134 | - String polarDataBearerToken = System.getProperty("polardata.source.bearertoken"); |
|
| 135 | - if (polarDataBearerToken == null) { |
|
| 136 | - logger.info("Couldn't find polardata.source.bearertoken system property, trying environment variable POLAR_DATA_BEARER_TOKEN"); |
|
| 137 | - polarDataBearerToken = System.getenv("POLAR_DATA_BEARER_TOKEN"); |
|
| 138 | - if (polarDataBearerToken == null) { |
|
| 139 | - logger.warning("Couldn't find POLAR_DATA_BEARER_TOKEN environment variable either, polar data service will not be available"); |
|
| 140 | - } else { |
|
| 141 | - logger.info("Found POLAR_DATA_BEARER_TOKEN environment variable, length "+polarDataBearerToken.length() |
|
| 142 | - +"; polar data service will be available"); |
|
| 143 | - } |
|
| 144 | - } else { |
|
| 145 | - logger.info("Found polardata.source.bearertoken system property, polar data service will be available"); |
|
| 146 | - } |
|
| 147 | - final Optional<String> polardataBearerTokenOptional = Optional.ofNullable(polarDataBearerToken); |
|
| 148 | - if (polardataBearerTokenOptional.isPresent()) { |
|
| 149 | - polarDataService = new PolarDataServiceImpl(); |
|
| 150 | - final com.sap.sailing.domain.tractracadapter.DomainFactory domainFactoryImpl = getDomainFactory(); |
|
| 151 | - final DomainFactory baseDomainFactory = domainFactoryImpl.getBaseDomainFactory(); |
|
| 152 | - polarDataService.registerDomainFactory(baseDomainFactory); |
|
| 153 | - new PolarDataClient(Optional.ofNullable(System.getenv("POLAR_DATA_BASE_URL")).orElse("https://sapsailing.com"), polarDataService, polardataBearerTokenOptional) |
|
| 154 | - .updatePolarDataRegressions(); |
|
| 155 | - } else { |
|
| 156 | - polarDataService = new PolarDataServiceImpl(); |
|
| 157 | - } |
|
| 134 | + polarDataService = new PolarDataServiceImpl(); |
|
| 135 | + final com.sap.sailing.domain.tractracadapter.DomainFactory domainFactoryImpl = getDomainFactory(); |
|
| 136 | + final DomainFactory baseDomainFactory = domainFactoryImpl.getBaseDomainFactory(); |
|
| 137 | + final FileBasedPolarDataClient client = new FileBasedPolarDataClient(new File("resources/polar_data"), polarDataService, baseDomainFactory); |
|
| 138 | + client.updatePolarDataRegressions(); |
|
| 158 | 139 | getTrackedRace().setPolarDataService(polarDataService); |
| 159 | 140 | final GregorianCalendar cal = new GregorianCalendar(2011, 05, 23, 13, 40); |
| 160 | 141 | cal.setTimeZone(TimeZone.getTimeZone("UTC")); |
java/com.sap.sailing.windestimation.test/src/com/sap/sailing/windestimation/integration/IncrementalMstManeuverGraphGeneratorTest.java
| ... | ... | @@ -13,30 +13,24 @@ import java.text.SimpleDateFormat; |
| 13 | 13 | import java.util.ArrayList; |
| 14 | 14 | import java.util.GregorianCalendar; |
| 15 | 15 | import java.util.List; |
| 16 | -import java.util.Optional; |
|
| 17 | 16 | import java.util.Set; |
| 18 | 17 | import java.util.TimeZone; |
| 19 | 18 | import java.util.TreeSet; |
| 20 | -import java.util.logging.Logger; |
|
| 21 | 19 | |
| 22 | 20 | import org.json.simple.parser.ParseException; |
| 23 | 21 | import org.junit.jupiter.api.BeforeEach; |
| 24 | 22 | import org.junit.jupiter.api.Test; |
| 25 | 23 | |
| 26 | 24 | import com.sap.sailing.domain.base.Competitor; |
| 27 | -import com.sap.sailing.domain.base.DomainFactory; |
|
| 28 | -import com.sap.sailing.domain.common.Position; |
|
| 29 | 25 | import com.sap.sailing.domain.maneuverdetection.TrackTimeInfo; |
| 30 | 26 | import com.sap.sailing.domain.maneuverdetection.impl.IncrementalManeuverDetectorImpl; |
| 31 | 27 | import com.sap.sailing.domain.maneuverdetection.impl.ManeuverDetectorWithEstimationDataSupportDecoratorImpl; |
| 28 | +import com.sap.sailing.domain.polars.PolarDataService; |
|
| 32 | 29 | import com.sap.sailing.domain.test.OnlineTracTracBasedTest; |
| 33 | 30 | import com.sap.sailing.domain.tracking.CompleteManeuverCurve; |
| 34 | 31 | import com.sap.sailing.domain.tracking.impl.DynamicTrackedRaceImpl; |
| 35 | 32 | import com.sap.sailing.domain.tractracadapter.ReceiverType; |
| 36 | 33 | import com.sap.sailing.domain.windestimation.TimePointAndPositionWithToleranceComparator; |
| 37 | -import com.sap.sailing.polars.ReplicablePolarService; |
|
| 38 | -import com.sap.sailing.polars.impl.PolarDataServiceImpl; |
|
| 39 | -import com.sap.sailing.polars.jaxrs.client.PolarDataClient; |
|
| 40 | 34 | import com.sap.sailing.windestimation.aggregator.msthmm.DistanceAndDurationAwareWindTransitionProbabilitiesCalculator; |
| 41 | 35 | import com.sap.sailing.windestimation.aggregator.msthmm.MstGraphLevel; |
| 42 | 36 | import com.sap.sailing.windestimation.aggregator.msthmm.MstManeuverGraphGenerator.MstManeuverGraphComponents; |
| ... | ... | @@ -46,6 +40,7 @@ import com.sap.sailing.windestimation.model.classifier.maneuver.ManeuverFeatures |
| 46 | 40 | import com.sap.sailing.windestimation.model.exception.ModelPersistenceException; |
| 47 | 41 | import com.sap.sailing.windestimation.model.regressor.twdtransition.GaussianBasedTwdTransitionDistributionCache; |
| 48 | 42 | import com.sap.sailing.windestimation.model.store.ClassPathReadOnlyModelStoreImpl; |
| 43 | +import com.sap.sse.common.Position; |
|
| 49 | 44 | import com.sap.sse.common.TimePoint; |
| 50 | 45 | import com.sap.sse.common.Util.Pair; |
| 51 | 46 | import com.sap.sse.common.impl.MillisecondsTimePoint; |
| ... | ... | @@ -55,9 +50,7 @@ import com.sap.sse.common.impl.MillisecondsTimePoint; |
| 55 | 50 | * @author Vladislav Chumak (D069712) |
| 56 | 51 | * |
| 57 | 52 | */ |
| 58 | -public class IncrementalMstManeuverGraphGeneratorTest extends OnlineTracTracBasedTest { |
|
| 59 | - private static final Logger logger = Logger.getLogger(IncrementalMstManeuverGraphGeneratorTest.class.getName()); |
|
| 60 | - |
|
| 53 | +public class IncrementalMstManeuverGraphGeneratorTest extends AbstractTestWithLocal505PolarData { |
|
| 61 | 54 | protected final SimpleDateFormat dateFormat; |
| 62 | 55 | private ClassPathReadOnlyModelStoreImpl modelStore; |
| 63 | 56 | |
| ... | ... | @@ -94,32 +87,7 @@ public class IncrementalMstManeuverGraphGeneratorTest extends OnlineTracTracBase |
| 94 | 87 | assertTrue(gaussianBasedTwdTransitionDistributionCache.isReady() && maneuverClassifiersCache.isReady(), |
| 95 | 88 | "Wind estimation models are empty"); |
| 96 | 89 | final DynamicTrackedRaceImpl trackedRace = getTrackedRace(); |
| 97 | - final ReplicablePolarService polarDataService; |
|
| 98 | - String polarDataBearerToken = System.getProperty("polardata.source.bearertoken"); |
|
| 99 | - if (polarDataBearerToken == null) { |
|
| 100 | - logger.info("Couldn't find polardata.source.bearertoken system property, trying environment variable POLAR_DATA_BEARER_TOKEN"); |
|
| 101 | - polarDataBearerToken = System.getenv("POLAR_DATA_BEARER_TOKEN"); |
|
| 102 | - if (polarDataBearerToken == null) { |
|
| 103 | - logger.warning("Couldn't find POLAR_DATA_BEARER_TOKEN environment variable either, polar data service will not be available"); |
|
| 104 | - } else { |
|
| 105 | - logger.info("Found POLAR_DATA_BEARER_TOKEN environment variable, length "+polarDataBearerToken.length() |
|
| 106 | - +"; polar data service will be available"); |
|
| 107 | - } |
|
| 108 | - } else { |
|
| 109 | - logger.info("Found polardata.source.bearertoken system property, polar data service will be available"); |
|
| 110 | - } |
|
| 111 | - final Optional<String> polardataBearerTokenOptional = Optional.ofNullable(polarDataBearerToken); |
|
| 112 | - if (polardataBearerTokenOptional.isPresent()) { |
|
| 113 | - polarDataService = new PolarDataServiceImpl(); |
|
| 114 | - final com.sap.sailing.domain.tractracadapter.DomainFactory domainFactoryImpl = getDomainFactory(); |
|
| 115 | - final DomainFactory baseDomainFactory = domainFactoryImpl.getBaseDomainFactory(); |
|
| 116 | - polarDataService.registerDomainFactory(baseDomainFactory); |
|
| 117 | - new PolarDataClient( |
|
| 118 | - Optional.ofNullable(System.getenv("POLAR_DATA_BASE_URL")).orElse("https://sapsailing.com"), |
|
| 119 | - polarDataService, polardataBearerTokenOptional).updatePolarDataRegressions(); |
|
| 120 | - } else { |
|
| 121 | - polarDataService = null; |
|
| 122 | - } |
|
| 90 | + final PolarDataService polarDataService = createPolarDataService(); |
|
| 123 | 91 | final IncrementalMstManeuverGraphGenerator generator = new IncrementalMstManeuverGraphGenerator( |
| 124 | 92 | new CompleteManeuverCurveToManeuverForEstimationConverter(trackedRace, polarDataService), |
| 125 | 93 | transitionProbabilitiesCalculator, maneuverClassifiersCache); |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/ManeuverBasedWindEstimationComponentImpl.java
| ... | ... | @@ -3,7 +3,6 @@ package com.sap.sailing.windestimation; |
| 3 | 3 | import java.util.List; |
| 4 | 4 | import java.util.stream.Collectors; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 8 | 7 | import com.sap.sailing.windestimation.aggregator.ManeuverClassificationsAggregator; |
| 9 | 8 | import com.sap.sailing.windestimation.data.CompetitorTrackWithEstimationData; |
| ... | ... | @@ -14,6 +13,7 @@ import com.sap.sailing.windestimation.model.classifier.maneuver.ManeuverClassifi |
| 14 | 13 | import com.sap.sailing.windestimation.model.classifier.maneuver.ManeuverWithProbabilisticTypeClassification; |
| 15 | 14 | import com.sap.sailing.windestimation.preprocessing.PreprocessingPipeline; |
| 16 | 15 | import com.sap.sailing.windestimation.windinference.WindTrackCalculator; |
| 16 | +import com.sap.sse.common.Position; |
|
| 17 | 17 | import com.sap.sse.common.TimePoint; |
| 18 | 18 | import com.sap.sse.common.Util.Pair;; |
| 19 | 19 |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/PolarsFittingBasedWindEstimationComponentImpl.java
| ... | ... | @@ -4,7 +4,6 @@ import java.util.ArrayList; |
| 4 | 4 | import java.util.List; |
| 5 | 5 | import java.util.stream.Collectors; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | 7 | import com.sap.sailing.domain.common.Wind; |
| 9 | 8 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 10 | 9 | import com.sap.sailing.domain.polars.PolarDataService; |
| ... | ... | @@ -20,6 +19,7 @@ import com.sap.sailing.windestimation.model.classifier.maneuver.ManeuverWithProb |
| 20 | 19 | import com.sap.sailing.windestimation.preprocessing.PreprocessingPipeline; |
| 21 | 20 | import com.sap.sailing.windestimation.windinference.WindTrackCalculator; |
| 22 | 21 | import com.sap.sse.common.Bearing; |
| 22 | +import com.sap.sse.common.Position; |
|
| 23 | 23 | import com.sap.sse.common.TimePoint; |
| 24 | 24 | import com.sap.sse.common.Util.Pair; |
| 25 | 25 |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/WindEstimationComponent.java
| ... | ... | @@ -2,8 +2,8 @@ package com.sap.sailing.windestimation; |
| 2 | 2 | |
| 3 | 3 | import java.util.List; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | 5 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | 8 | import com.sap.sse.common.Util.Pair; |
| 9 | 9 |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/WindEstimationComponentWithInternals.java
| ... | ... | @@ -2,7 +2,6 @@ package com.sap.sailing.windestimation; |
| 2 | 2 | |
| 3 | 3 | import java.util.List; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | 5 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 7 | 6 | import com.sap.sailing.windestimation.aggregator.ManeuverClassificationsAggregator; |
| 8 | 7 | import com.sap.sailing.windestimation.data.ManeuverForEstimation; |
| ... | ... | @@ -12,6 +11,7 @@ import com.sap.sailing.windestimation.model.classifier.maneuver.ManeuverClassifi |
| 12 | 11 | import com.sap.sailing.windestimation.model.classifier.maneuver.ManeuverWithProbabilisticTypeClassification; |
| 13 | 12 | import com.sap.sailing.windestimation.preprocessing.PreprocessingPipeline; |
| 14 | 13 | import com.sap.sailing.windestimation.windinference.WindTrackCalculator; |
| 14 | +import com.sap.sse.common.Position; |
|
| 15 | 15 | import com.sap.sse.common.TimePoint; |
| 16 | 16 | import com.sap.sse.common.Util.Pair; |
| 17 | 17 |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/aggregator/clustering/ManeuverClusteringBasedWindEstimationTrackImpl.java
| ... | ... | @@ -7,7 +7,6 @@ import java.util.stream.Stream; |
| 7 | 7 | |
| 8 | 8 | import com.sap.sailing.domain.base.BoatClass; |
| 9 | 9 | import com.sap.sailing.domain.common.ManeuverType; |
| 10 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 11 | 10 | import com.sap.sailing.domain.polars.PolarDataService; |
| 12 | 11 | import com.sap.sailing.polars.windestimation.AbstractManeuverBasedWindEstimationTrackImpl; |
| 13 | 12 | import com.sap.sailing.polars.windestimation.ManeuverBasedWindEstimationTrackImpl; |
| ... | ... | @@ -22,6 +21,7 @@ import com.sap.sse.common.Bearing; |
| 22 | 21 | import com.sap.sse.common.Speed; |
| 23 | 22 | import com.sap.sse.common.Util.Pair; |
| 24 | 23 | import com.sap.sse.common.scalablevalue.ScalableDouble; |
| 24 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 25 | 25 | import com.sap.sse.util.kmeans.Cluster; |
| 26 | 26 | |
| 27 | 27 | /** |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/aggregator/outlierremoval/MeanBasedOutlierRemovalWindEstimator.java
| ... | ... | @@ -2,11 +2,11 @@ package com.sap.sailing.windestimation.aggregator.outlierremoval; |
| 2 | 2 | |
| 3 | 3 | import java.util.List; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.scalablevalue.impl.ScalableBearing; |
|
| 6 | 5 | import com.sap.sailing.windestimation.data.ManeuverWithEstimatedType; |
| 7 | 6 | import com.sap.sailing.windestimation.windinference.TwdFromManeuverCalculator; |
| 8 | 7 | import com.sap.sse.common.Bearing; |
| 9 | 8 | import com.sap.sse.common.Util.Pair; |
| 9 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 10 | 10 | |
| 11 | 11 | /** |
| 12 | 12 | * |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/aggregator/polarsfitting/PolarsFittingWindEstimation.java
| ... | ... | @@ -11,9 +11,6 @@ import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 11 | 11 | import com.sap.sailing.domain.base.SpeedWithConfidence; |
| 12 | 12 | import com.sap.sailing.domain.base.impl.SpeedWithBearingWithConfidenceImpl; |
| 13 | 13 | import com.sap.sailing.domain.base.impl.SpeedWithConfidenceImpl; |
| 14 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 15 | -import com.sap.sailing.domain.common.impl.KnotSpeedImpl; |
|
| 16 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 17 | 14 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 18 | 15 | import com.sap.sailing.domain.common.polars.NotEnoughDataHasBeenAddedException; |
| 19 | 16 | import com.sap.sailing.domain.polars.PolarDataService; |
| ... | ... | @@ -23,8 +20,11 @@ import com.sap.sailing.windestimation.data.CompetitorTrackWithEstimationData; |
| 23 | 20 | import com.sap.sailing.windestimation.data.ManeuverForEstimation; |
| 24 | 21 | import com.sap.sse.common.Bearing; |
| 25 | 22 | import com.sap.sse.common.Speed; |
| 23 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 26 | 24 | import com.sap.sse.common.Util.Pair; |
| 27 | 25 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 26 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 27 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 28 | 28 | |
| 29 | 29 | /** |
| 30 | 30 | * |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/data/CompetitorTrackWithEstimationData.java
| ... | ... | @@ -3,10 +3,10 @@ package com.sap.sailing.windestimation.data; |
| 3 | 3 | import java.util.List; |
| 4 | 4 | |
| 5 | 5 | import com.sap.sailing.domain.base.BoatClass; |
| 6 | -import com.sap.sailing.domain.common.impl.MeterPerSecondSpeedImpl; |
|
| 7 | 6 | import com.sap.sse.common.Distance; |
| 8 | 7 | import com.sap.sse.common.Duration; |
| 9 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | +import com.sap.sse.common.impl.MeterPerSecondSpeedImpl; |
|
| 10 | 10 | |
| 11 | 11 | /** |
| 12 | 12 | * Competitor track with elements (e.g. maneuvers or gps-fixes) which has been fetched during data import. |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/data/ManeuverForEstimation.java
| ... | ... | @@ -1,9 +1,9 @@ |
| 1 | 1 | package com.sap.sailing.windestimation.data; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.base.BoatClass; |
| 4 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 6 | 4 | import com.sap.sse.common.Bearing; |
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 7 | 7 | import com.sap.sse.common.TimePoint; |
| 8 | 8 | |
| 9 | 9 | /** |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/data/transformer/ConvertableManeuverForEstimationAdapterForCompleteManeuverCurveWithEstimationData.java
| ... | ... | @@ -4,13 +4,13 @@ import java.util.ArrayList; |
| 4 | 4 | import java.util.List; |
| 5 | 5 | |
| 6 | 6 | import com.sap.sailing.domain.common.ManeuverType; |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 9 | 7 | import com.sap.sailing.domain.common.Wind; |
| 10 | 8 | import com.sap.sailing.domain.maneuverdetection.CompleteManeuverCurveWithEstimationData; |
| 11 | 9 | import com.sap.sse.common.Bearing; |
| 12 | 10 | import com.sap.sse.common.Duration; |
| 11 | +import com.sap.sse.common.Position; |
|
| 13 | 12 | import com.sap.sse.common.Speed; |
| 13 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 14 | 14 | import com.sap.sse.common.TimePoint; |
| 15 | 15 | |
| 16 | 16 | /** |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/data/transformer/ConvertableToManeuverForEstimation.java
| ... | ... | @@ -1,11 +1,11 @@ |
| 1 | 1 | package com.sap.sailing.windestimation.data.transformer; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | 3 | import com.sap.sailing.windestimation.data.ManeuverForEstimation; |
| 6 | 4 | import com.sap.sse.common.Bearing; |
| 7 | 5 | import com.sap.sse.common.Duration; |
| 6 | +import com.sap.sse.common.Position; |
|
| 8 | 7 | import com.sap.sse.common.Speed; |
| 8 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 9 | 9 | import com.sap.sse.common.TimePoint; |
| 10 | 10 | |
| 11 | 11 | /** |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/integration/CompleteManeuverCurveToManeuverForEstimationConverter.java
| ... | ... | @@ -4,7 +4,6 @@ import com.sap.sailing.domain.base.BoatClass; |
| 4 | 4 | import com.sap.sailing.domain.base.Competitor; |
| 5 | 5 | import com.sap.sailing.domain.base.SpeedWithBearingWithConfidence; |
| 6 | 6 | import com.sap.sailing.domain.common.ManeuverType; |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | 7 | import com.sap.sailing.domain.common.tracking.GPSFixMoving; |
| 9 | 8 | import com.sap.sailing.domain.maneuverdetection.TrackTimeInfo; |
| 10 | 9 | import com.sap.sailing.domain.polars.PolarDataService; |
| ... | ... | @@ -16,6 +15,7 @@ import com.sap.sailing.domain.tracking.TrackedRace; |
| 16 | 15 | import com.sap.sailing.windestimation.data.ManeuverForEstimation; |
| 17 | 16 | import com.sap.sailing.windestimation.data.transformer.ManeuverForEstimationTransformer; |
| 18 | 17 | import com.sap.sse.common.Duration; |
| 18 | +import com.sap.sse.common.Position; |
|
| 19 | 19 | import com.sap.sse.common.Speed; |
| 20 | 20 | import com.sap.sse.common.TimePoint; |
| 21 | 21 | import com.sap.sse.common.impl.MillisecondsDurationImpl; |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/integration/ConvertableManeuverForEstimationAdapterForCompleteManeuverCurve.java
| ... | ... | @@ -1,14 +1,14 @@ |
| 1 | 1 | package com.sap.sailing.windestimation.integration; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 5 | 3 | import com.sap.sailing.domain.tracking.CompleteManeuverCurve; |
| 6 | 4 | import com.sap.sailing.windestimation.data.ManeuverForEstimation; |
| 7 | 5 | import com.sap.sailing.windestimation.data.transformer.ConvertableToManeuverForEstimation; |
| 8 | 6 | import com.sap.sailing.windestimation.data.transformer.ManeuverForEstimationTransformer; |
| 9 | 7 | import com.sap.sse.common.Bearing; |
| 10 | 8 | import com.sap.sse.common.Duration; |
| 9 | +import com.sap.sse.common.Position; |
|
| 11 | 10 | import com.sap.sse.common.Speed; |
| 11 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 12 | 12 | import com.sap.sse.common.TimePoint; |
| 13 | 13 | |
| 14 | 14 | /** |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/integration/IncrementalMstHmmWindEstimationForTrackedRace.java
| ... | ... | @@ -15,7 +15,6 @@ import java.util.logging.Level; |
| 15 | 15 | import java.util.logging.Logger; |
| 16 | 16 | |
| 17 | 17 | import com.sap.sailing.domain.base.Competitor; |
| 18 | -import com.sap.sailing.domain.common.Position; |
|
| 19 | 18 | import com.sap.sailing.domain.common.Wind; |
| 20 | 19 | import com.sap.sailing.domain.common.WindSource; |
| 21 | 20 | import com.sap.sailing.domain.common.WindSourceType; |
| ... | ... | @@ -43,6 +42,7 @@ import com.sap.sailing.windestimation.windinference.MiddleCourseBasedTwdCalculat |
| 43 | 42 | import com.sap.sailing.windestimation.windinference.PolarsBasedTwsCalculatorImpl; |
| 44 | 43 | import com.sap.sailing.windestimation.windinference.WindTrackCalculator; |
| 45 | 44 | import com.sap.sailing.windestimation.windinference.WindTrackCalculatorImpl; |
| 45 | +import com.sap.sse.common.Position; |
|
| 46 | 46 | import com.sap.sse.common.TimePoint; |
| 47 | 47 | import com.sap.sse.common.Util.Pair; |
| 48 | 48 | import com.sap.sse.common.Util.Triple; |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/model/regressor/twdtransition/SingleDimensionBasedTwdTransitionRegressorModelFactory.java
| ... | ... | @@ -1,6 +1,5 @@ |
| 1 | 1 | package com.sap.sailing.windestimation.model.regressor.twdtransition; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 4 | 3 | import com.sap.sailing.windestimation.data.ManeuverTypeForClassification; |
| 5 | 4 | import com.sap.sailing.windestimation.data.TwdTransition; |
| 6 | 5 | import com.sap.sailing.windestimation.model.ModelFactory; |
| ... | ... | @@ -8,6 +7,7 @@ import com.sap.sailing.windestimation.model.regressor.IncrementalSingleDimension |
| 8 | 7 | import com.sap.sailing.windestimation.model.regressor.RegressorModelFactory; |
| 9 | 8 | import com.sap.sse.common.Duration; |
| 10 | 9 | import com.sap.sse.common.impl.DegreeBearingImpl; |
| 10 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 11 | 11 | |
| 12 | 12 | /** |
| 13 | 13 | * Base class for {@link DistanceBasedTwdTransitionRegressorModelFactory} and |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/util/WindUtil.java
| ... | ... | @@ -4,14 +4,14 @@ import java.util.ArrayList; |
| 4 | 4 | import java.util.Arrays; |
| 5 | 5 | import java.util.List; |
| 6 | 6 | |
| 7 | -import com.sap.sailing.domain.common.Position; |
|
| 8 | 7 | import com.sap.sailing.domain.common.Wind; |
| 9 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 10 | 8 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 11 | 9 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 12 | 10 | import com.sap.sailing.domain.tracking.impl.WindWithConfidenceImpl; |
| 11 | +import com.sap.sse.common.Position; |
|
| 13 | 12 | import com.sap.sse.common.TimePoint; |
| 14 | 13 | import com.sap.sse.common.Util.Pair; |
| 14 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 15 | 15 | |
| 16 | 16 | import smile.sort.QuickSelect; |
| 17 | 17 |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/windinference/WindTrackCalculator.java
| ... | ... | @@ -2,9 +2,9 @@ package com.sap.sailing.windestimation.windinference; |
| 2 | 2 | |
| 3 | 3 | import java.util.List; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | 5 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 7 | 6 | import com.sap.sailing.windestimation.data.ManeuverWithEstimatedType; |
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | 8 | import com.sap.sse.common.TimePoint; |
| 9 | 9 | import com.sap.sse.common.Util.Pair; |
| 10 | 10 |
java/com.sap.sailing.windestimation/src/com/sap/sailing/windestimation/windinference/WindTrackCalculatorImpl.java
| ... | ... | @@ -3,9 +3,7 @@ package com.sap.sailing.windestimation.windinference; |
| 3 | 3 | import java.util.ArrayList; |
| 4 | 4 | import java.util.List; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | 6 | import com.sap.sailing.domain.common.Wind; |
| 8 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 9 | 7 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 10 | 8 | import com.sap.sailing.domain.tracking.WindWithConfidence; |
| 11 | 9 | import com.sap.sailing.domain.tracking.impl.WindWithConfidenceImpl; |
| ... | ... | @@ -13,9 +11,11 @@ import com.sap.sailing.windestimation.data.ManeuverForEstimation; |
| 13 | 11 | import com.sap.sailing.windestimation.data.ManeuverWithEstimatedType; |
| 14 | 12 | import com.sap.sailing.windestimation.util.WindUtil; |
| 15 | 13 | import com.sap.sse.common.Bearing; |
| 14 | +import com.sap.sse.common.Position; |
|
| 16 | 15 | import com.sap.sse.common.Speed; |
| 17 | 16 | import com.sap.sse.common.TimePoint; |
| 18 | 17 | import com.sap.sse.common.Util.Pair; |
| 18 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 19 | 19 | |
| 20 | 20 | /** |
| 21 | 21 | * Uses provided {@link #twdCalculator} and {@link #twsCalculator} to derive wind fixes. TWS of all wind fixes is set to |
java/com.sap.sse.common/.settings/org.eclipse.core.resources.prefs
| ... | ... | @@ -1,4 +1,8 @@ |
| 1 | 1 | eclipse.preferences.version=1 |
| 2 | 2 | encoding//src/com/sap/sse/common/AbstractBearing.java=UTF-8 |
| 3 | +encoding//src/com/sap/sse/common/AbstractPosition.java=UTF-8 |
|
| 4 | +encoding//src/com/sap/sse/common/Position.java=UTF-8 |
|
| 5 | +encoding//src/com/sap/sse/common/confidence/impl/ConfidenceBasedAveragerImpl.java=utf-8 |
|
| 6 | +encoding//src/com/sap/sse/common/impl/AbstractSpeedWithAbstractBearingImpl.java=UTF-8 |
|
| 3 | 7 | encoding//src/com/sap/sse/common/impl/CountryCodeFactoryImpl.java=UTF-8 |
| 4 | 8 | encoding/<project>=UTF-8 |
java/com.sap.sse.common/META-INF/MANIFEST.MF
| ... | ... | @@ -6,6 +6,8 @@ Bundle-Version: 1.0.0.qualifier |
| 6 | 6 | Bundle-Vendor: SAP |
| 7 | 7 | Bundle-RequiredExecutionEnvironment: JavaSE-1.8 |
| 8 | 8 | Export-Package: com.sap.sse.common, |
| 9 | + com.sap.sse.common.confidence, |
|
| 10 | + com.sap.sse.common.confidence.impl, |
|
| 9 | 11 | com.sap.sse.common.fileupload, |
| 10 | 12 | com.sap.sse.common.filter, |
| 11 | 13 | com.sap.sse.common.filter.impl, |
| ... | ... | @@ -14,6 +16,7 @@ Export-Package: com.sap.sse.common, |
| 14 | 16 | com.sap.sse.common.mail, |
| 15 | 17 | com.sap.sse.common.media, |
| 16 | 18 | com.sap.sse.common.scalablevalue, |
| 19 | + com.sap.sse.common.scalablevalue.impl, |
|
| 17 | 20 | com.sap.sse.common.search, |
| 18 | 21 | com.sap.sse.common.settings, |
| 19 | 22 | com.sap.sse.common.settings.generic, |
java/com.sap.sse.common/src/com/sap/sse/common/AbstractDistance.java
| ... | ... | @@ -0,0 +1,107 @@ |
| 1 | +package com.sap.sse.common; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.impl.KilometersPerHourSpeedImpl; |
|
| 4 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 5 | +import com.sap.sse.common.impl.SecondsDurationImpl; |
|
| 6 | + |
|
| 7 | +public abstract class AbstractDistance implements Distance { |
|
| 8 | + |
|
| 9 | + private static final long serialVersionUID = 4393500221539639333L; |
|
| 10 | + |
|
| 11 | + @Override |
|
| 12 | + public boolean equals(Object o) { |
|
| 13 | + return (o instanceof Distance) && this.compareTo((Distance) o) == 0; |
|
| 14 | + } |
|
| 15 | + |
|
| 16 | + @Override |
|
| 17 | + public int hashCode() { |
|
| 18 | + return 9128347 ^ (int) getMeters(); |
|
| 19 | + } |
|
| 20 | + |
|
| 21 | + @Override |
|
| 22 | + public int compareTo(Distance o) { |
|
| 23 | + final double meters = getMeters(); |
|
| 24 | + final double otherMeters = o.getMeters(); |
|
| 25 | + return meters > otherMeters ? 1 : meters == otherMeters ? 0 : -1; |
|
| 26 | + } |
|
| 27 | + |
|
| 28 | + private Speed inSeconds(double seconds) { |
|
| 29 | + return new KilometersPerHourSpeedImpl(getKilometers() * 3600 / seconds); |
|
| 30 | + } |
|
| 31 | + |
|
| 32 | + @Override |
|
| 33 | + public Speed inTime(long milliseconds) { |
|
| 34 | + return new KilometersPerHourSpeedImpl(getKilometers() * 1000. * 3600. / milliseconds); |
|
| 35 | + } |
|
| 36 | + |
|
| 37 | + @Override |
|
| 38 | + public Speed inTime(Duration duration) { |
|
| 39 | + return inSeconds(duration.asSeconds()); |
|
| 40 | + } |
|
| 41 | + |
|
| 42 | + @Override |
|
| 43 | + public Duration atSpeed(Speed speed) { |
|
| 44 | + return new SecondsDurationImpl(getMeters() / speed.getMetersPerSecond()); |
|
| 45 | + } |
|
| 46 | + |
|
| 47 | + @Override |
|
| 48 | + public double getNauticalMiles() { |
|
| 49 | + return getMeters() / Mile.METERS_PER_NAUTICAL_MILE; |
|
| 50 | + } |
|
| 51 | + |
|
| 52 | + @Override |
|
| 53 | + public double getMeters() { |
|
| 54 | + return getNauticalMiles() * Mile.METERS_PER_NAUTICAL_MILE; |
|
| 55 | + } |
|
| 56 | + |
|
| 57 | + @Override |
|
| 58 | + public double getKilometers() { |
|
| 59 | + return getMeters() / 1000; |
|
| 60 | + } |
|
| 61 | + |
|
| 62 | + @Override |
|
| 63 | + public double getGeographicalMiles() { |
|
| 64 | + return getMeters() / Mile.METERS_PER_GEOGRAPHICAL_MILE; |
|
| 65 | + } |
|
| 66 | + |
|
| 67 | + @Override |
|
| 68 | + public double getSeaMiles() { |
|
| 69 | + return getMeters() / Mile.METERS_PER_SEA_MILE; |
|
| 70 | + } |
|
| 71 | + |
|
| 72 | + @Override |
|
| 73 | + public double getCentralAngleDeg() { |
|
| 74 | + return getCentralAngleRad() / Math.PI * 180.; // one geographical mile equals one minute |
|
| 75 | + } |
|
| 76 | + |
|
| 77 | + @Override |
|
| 78 | + public double getCentralAngleRad() { |
|
| 79 | + return getCentralAngleDeg() * Math.PI / 180.; |
|
| 80 | + } |
|
| 81 | + |
|
| 82 | + @Override |
|
| 83 | + public String toString() { |
|
| 84 | + return getMeters()+"m"; |
|
| 85 | + } |
|
| 86 | + |
|
| 87 | + @Override |
|
| 88 | + public Distance add(Distance d) { |
|
| 89 | + return new NauticalMileDistance(getNauticalMiles()+d.getNauticalMiles()); |
|
| 90 | + } |
|
| 91 | + |
|
| 92 | + @Override |
|
| 93 | + public double divide(Distance other) { |
|
| 94 | + return getMeters() / other.getMeters(); |
|
| 95 | + } |
|
| 96 | + |
|
| 97 | + @Override |
|
| 98 | + public Distance abs() { |
|
| 99 | + final Distance result; |
|
| 100 | + if (getMeters() >= 0) { |
|
| 101 | + result = this; |
|
| 102 | + } else { |
|
| 103 | + result = scale(-1); |
|
| 104 | + } |
|
| 105 | + return result; |
|
| 106 | + } |
|
| 107 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/AbstractPosition.java
| ... | ... | @@ -0,0 +1,279 @@ |
| 1 | +package com.sap.sse.common; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.impl.CentralAngleDistance; |
|
| 4 | +import com.sap.sse.common.impl.DegreeBearingImpl; |
|
| 5 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 6 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 7 | +import com.sap.sse.common.impl.RadianBearingImpl; |
|
| 8 | +import com.sap.sse.common.impl.RadianPosition; |
|
| 9 | +import com.sap.sse.common.util.RoundingUtil; |
|
| 10 | + |
|
| 11 | +public class AbstractPosition implements Position { |
|
| 12 | + private static final long serialVersionUID = -3057027562787541064L; |
|
| 13 | + |
|
| 14 | + public int hashCode() { |
|
| 15 | + return (int) (4711. * getLngRad() * getLatRad()); |
|
| 16 | + } |
|
| 17 | + |
|
| 18 | + public boolean equals(Object o) { |
|
| 19 | + if (o == null) { |
|
| 20 | + return false; |
|
| 21 | + } if (this == o) { |
|
| 22 | + return true; |
|
| 23 | + } else { |
|
| 24 | + return o instanceof Position && getLatRad() == ((Position) o).getLatRad() |
|
| 25 | + && getLngRad() == ((Position) o).getLngRad(); |
|
| 26 | + } |
|
| 27 | + } |
|
| 28 | + |
|
| 29 | + @Override |
|
| 30 | + public double getLngRad() { |
|
| 31 | + return getLngDeg() / 180. * Math.PI; |
|
| 32 | + } |
|
| 33 | + |
|
| 34 | + @Override |
|
| 35 | + public double getLatRad() { |
|
| 36 | + return getLatDeg() / 180. * Math.PI; |
|
| 37 | + } |
|
| 38 | + |
|
| 39 | + @Override |
|
| 40 | + public double getLatDeg() { |
|
| 41 | + return getLatRad() / Math.PI * 180.; |
|
| 42 | + } |
|
| 43 | + |
|
| 44 | + @Override |
|
| 45 | + public double getLngDeg() { |
|
| 46 | + return getLngRad() / Math.PI * 180.; |
|
| 47 | + } |
|
| 48 | + |
|
| 49 | + @Override |
|
| 50 | + public double getCentralAngleRad(Position p) { |
|
| 51 | + // Sinnott: |
|
| 52 | + double dLat = p.getLatRad() - getLatRad(); |
|
| 53 | + double dLon = p.getLngRad() - getLngRad(); |
|
| 54 | + double a = Math.sin(dLat / 2.) * Math.sin(dLat / 2.) + Math.cos(getLatRad()) * Math.cos(p.getLatRad()) |
|
| 55 | + * Math.sin(dLon / 2.) * Math.sin(dLon / 2.); |
|
| 56 | + return 2. * Math.atan2(Math.sqrt(a), Math.sqrt(1. - a)); |
|
| 57 | + // Spherical Law of Cosines; simpler formula, but doesn't work well for very small distances |
|
| 58 | + // return Math.acos(Math.sin(getLatRad()) * Math.sin(p.getLatRad()) |
|
| 59 | + // + Math.cos(getLatRad()) * Math.cos(p.getLatRad()) |
|
| 60 | + // * Math.cos(p.getLngRad() - getLngRad())); |
|
| 61 | + } |
|
| 62 | + |
|
| 63 | + @Override |
|
| 64 | + public Distance getDistance(Position p) { |
|
| 65 | + final Distance result; |
|
| 66 | + if (p == this || this.equals(p)) { |
|
| 67 | + result = Distance.NULL; |
|
| 68 | + } else { |
|
| 69 | + result = new CentralAngleDistance(getCentralAngleRad(p)); |
|
| 70 | + } |
|
| 71 | + return result; |
|
| 72 | + } |
|
| 73 | + |
|
| 74 | + @Override |
|
| 75 | + public double getQuickApproximateNauticalMileDistance(Position p) { |
|
| 76 | + double latDeg = getLatDeg(); |
|
| 77 | + double pLatDeg = p.getLatDeg(); |
|
| 78 | + final double latDiffDeg = Math.abs(latDeg - pLatDeg); |
|
| 79 | + double cosineOfAverageLatitude = Math.cos((latDeg+pLatDeg)/2./180.*Math.PI); |
|
| 80 | + final double normalizedLngDiffDeg = cosineOfAverageLatitude * Math.abs(getLngDeg() - p.getLngDeg()); |
|
| 81 | + // One degree of latitude or one degree of longitude at the equator each correspond to 60 nautical miles. |
|
| 82 | + return Math.sqrt(latDiffDeg*latDiffDeg + normalizedLngDiffDeg*normalizedLngDiffDeg) * 60.; |
|
| 83 | + } |
|
| 84 | + |
|
| 85 | + @Override |
|
| 86 | + public Bearing getBearingGreatCircle(Position p) { |
|
| 87 | + final Bearing bearing; |
|
| 88 | + if (p != null) { |
|
| 89 | + double result = Math.atan2(Math.sin(p.getLngRad() - getLngRad()) * Math.cos(p.getLatRad()), |
|
| 90 | + Math.cos(getLatRad()) * Math.sin(p.getLatRad()) |
|
| 91 | + - Math.sin(getLatRad()) * Math.cos(p.getLatRad()) * Math.cos(p.getLngRad() - getLngRad())); |
|
| 92 | + if (result < 0) { |
|
| 93 | + result = result + 2 * Math.PI; |
|
| 94 | + } |
|
| 95 | + bearing = new RadianBearingImpl(result); |
|
| 96 | + } else { |
|
| 97 | + bearing = null; |
|
| 98 | + } |
|
| 99 | + return bearing; |
|
| 100 | + } |
|
| 101 | + |
|
| 102 | + @Override |
|
| 103 | + public Position translateRhumb(Bearing bearing, Distance distance) { |
|
| 104 | + /* |
|
| 105 | + * This algorithm is limited to distances such that dlon < pi/2, i.e those that extend around less than one |
|
| 106 | + * quarter of the circumference of the earth in longitude. A completely general, but more complicated algorithm |
|
| 107 | + * is necessary if greater distances are allowed. |
|
| 108 | + */ |
|
| 109 | + double distanceRad = distance.getKilometers() / 6371.0; // r = 6371 means earth's radius in km |
|
| 110 | + double lat1 = getLatRad(); |
|
| 111 | + double lon1 = getLngRad(); |
|
| 112 | + double bearingRad = bearing.getRadians(); |
|
| 113 | + double lat2 = Math.asin(Math.sin(lat1) * Math.cos(distanceRad) + Math.cos(lat1) * Math.sin(distanceRad) |
|
| 114 | + * Math.cos(bearingRad)); |
|
| 115 | + double lon2 = lon1 |
|
| 116 | + + Math.atan2(Math.sin(bearingRad) * Math.sin(distanceRad) * Math.cos(lat1), Math.cos(distanceRad) |
|
| 117 | + - Math.sin(lat1) * Math.sin(lat2)); |
|
| 118 | + lon2 = (lon2 + 3 * Math.PI) % (2 * Math.PI) - Math.PI; // normalize to -180..+180 |
|
| 119 | + return new DegreePosition(lat2 / Math.PI * 180., lon2 / Math.PI * 180.); |
|
| 120 | + } |
|
| 121 | + |
|
| 122 | + @Override |
|
| 123 | + public Position translateGreatCircle(Bearing bearing, Distance distance) { |
|
| 124 | + double lat = Math.asin(Math.sin(getLatRad()) * Math.cos(distance.getCentralAngleRad()) + Math.cos(getLatRad()) |
|
| 125 | + * Math.sin(distance.getCentralAngleRad()) * Math.cos(bearing.getRadians())); |
|
| 126 | + double lng = getLngRad() |
|
| 127 | + + Math.atan2( |
|
| 128 | + Math.sin(bearing.getRadians()) * Math.sin(distance.getCentralAngleRad()) |
|
| 129 | + * Math.cos(getLatRad()), |
|
| 130 | + Math.cos(distance.getCentralAngleRad()) - Math.sin(getLatRad()) * Math.sin(lat)); |
|
| 131 | + return new RadianPosition(lat, lng); |
|
| 132 | + } |
|
| 133 | + |
|
| 134 | + @Override |
|
| 135 | + public Distance absoluteCrossTrackError(Position p, Bearing bearing) { |
|
| 136 | + return new CentralAngleDistance(Math.abs(crossTrackError(p, bearing).getCentralAngleRad())); |
|
| 137 | + } |
|
| 138 | + |
|
| 139 | + @Override |
|
| 140 | + public Distance crossTrackError(Position p, Bearing bearing) { |
|
| 141 | + return new CentralAngleDistance(Math.asin(Math.sin(p.getCentralAngleRad(this)) |
|
| 142 | + * Math.sin(p.getBearingGreatCircle(this).getRadians() - bearing.getRadians()))); |
|
| 143 | + } |
|
| 144 | + |
|
| 145 | + @Override |
|
| 146 | + public Position projectToLineThrough(Position pos, Bearing bearing) { |
|
| 147 | + return pos.translateGreatCircle(bearing, this.alongTrackDistance(pos, bearing)); |
|
| 148 | + } |
|
| 149 | + |
|
| 150 | + @Override |
|
| 151 | + public Distance alongTrackDistance(Position from, Bearing bearing) { |
|
| 152 | + final Distance result; |
|
| 153 | + if (from != null && bearing != null) { |
|
| 154 | + double direction = Math.signum(Math.cos(from.getBearingGreatCircle(this).getRadians() - bearing.getRadians())); |
|
| 155 | + // Test if denominator gets ridiculously small; if so, the cross-track error is about 90� central angle. |
|
| 156 | + // This means that the cross-track error is maximized, and that there is no way to determine how far along |
|
| 157 | + // the great circle described by pos2 and bearing we should travel. This is an exception which will |
|
| 158 | + // surface as a division-by-zero exception or a NaN result |
|
| 159 | + result = new CentralAngleDistance(direction |
|
| 160 | + * Math.acos(Math.cos(from.getCentralAngleRad(this)) |
|
| 161 | + / Math.cos(crossTrackError(from, bearing).getCentralAngleRad()))); |
|
| 162 | + } else { |
|
| 163 | + result = null; |
|
| 164 | + } |
|
| 165 | + return result; |
|
| 166 | + } |
|
| 167 | + |
|
| 168 | + @Override |
|
| 169 | + public Distance getDistanceToLine(Position left, Position right) { |
|
| 170 | + final Distance result; |
|
| 171 | + final Distance crossTrackError = this.crossTrackError(left, left.getBearingGreatCircle(right)); |
|
| 172 | + final int factor = crossTrackError.getMeters()>0?1:-1; |
|
| 173 | + double toLeft = Math.abs(left.getBearingGreatCircle(this).getDifferenceTo(left.getBearingGreatCircle(right)) |
|
| 174 | + .getDegrees()); |
|
| 175 | + double toRight = Math.abs(right.getBearingGreatCircle(this).getDifferenceTo(right.getBearingGreatCircle(left)) |
|
| 176 | + .getDegrees()); |
|
| 177 | + if (toLeft > 90) { |
|
| 178 | + result = this.getDistance(left).scale(factor); |
|
| 179 | + } else if (toRight > 90) { |
|
| 180 | + result = this.getDistance(right).scale(factor); |
|
| 181 | + } else { |
|
| 182 | + result = crossTrackError; |
|
| 183 | + } |
|
| 184 | + return result; |
|
| 185 | + } |
|
| 186 | + |
|
| 187 | + @Override |
|
| 188 | + public Position getLocalCoordinates(Position localOrigin, Bearing localEquatorBearing) { |
|
| 189 | + return this.getTargetCoordinates(localOrigin, localEquatorBearing, new DegreePosition(0.0, 0.0), new DegreeBearingImpl(90.0)); |
|
| 190 | + } |
|
| 191 | + |
|
| 192 | + @Override |
|
| 193 | + public Position getTargetCoordinates(Position localOrigin, Bearing localEquatorBearing, Position targetOrigin, Bearing targetEquatorBearing) { |
|
| 194 | + Bearing localBearing = localEquatorBearing.getDifferenceTo(localOrigin.getBearingGreatCircle(this)); |
|
| 195 | + Distance localDistance = this.getDistance(localOrigin); |
|
| 196 | + return targetOrigin.translateGreatCircle(targetEquatorBearing.add(localBearing), localDistance); |
|
| 197 | + } |
|
| 198 | + |
|
| 199 | + @Override |
|
| 200 | + public String toString() { |
|
| 201 | + return "(" + getLatDeg() + "," + getLngDeg() + ")"; |
|
| 202 | + } |
|
| 203 | + |
|
| 204 | + @Override |
|
| 205 | + public Position getIntersection(Bearing thisBearing, Position to, Bearing toBearing) { |
|
| 206 | + /* |
|
| 207 | + * See http://www.movable-type.co.uk/scripts/latlong-vectors.html#intersection for explanation |
|
| 208 | + */ |
|
| 209 | + double radBearing1 = thisBearing.getRadians(); |
|
| 210 | + double radLatPos1 = getLatRad(); |
|
| 211 | + double radLngPos1 = getLngRad(); |
|
| 212 | + double[] greatCircle1 = createGreatCircleVector(radBearing1, radLatPos1, radLngPos1); |
|
| 213 | + double radBearing2 = toBearing.getRadians(); |
|
| 214 | + double radLatPos2 = to.getLatRad(); |
|
| 215 | + double radLngPos2 = to.getLngRad(); |
|
| 216 | + double[] greatCircle2 = createGreatCircleVector(radBearing2, radLatPos2, radLngPos2); |
|
| 217 | + double[] intersection1 = computeCrossProductOf3PartVectors(greatCircle1, greatCircle2); |
|
| 218 | + double[] intersection2 = computeCrossProductOf3PartVectors(greatCircle2, greatCircle1); |
|
| 219 | + Position intersectionPosition1 = cartesianVectorToPosition(intersection1); |
|
| 220 | + Position intersectionPosition2 = cartesianVectorToPosition(intersection2); |
|
| 221 | + Distance sumOfDistances1 = getDistance(intersectionPosition1).add(intersectionPosition1.getDistance(to)); |
|
| 222 | + Distance sumOfDistances2 = getDistance(intersectionPosition2).add(intersectionPosition2.getDistance(to)); |
|
| 223 | + return sumOfDistances1.compareTo(sumOfDistances2) < 0 ? intersectionPosition1 : intersectionPosition2; |
|
| 224 | + } |
|
| 225 | + |
|
| 226 | + @Override |
|
| 227 | + public SpeedWithBearing getSpeedWithBearingToReachOnGreatCircle(Position to, Duration inTime) { |
|
| 228 | + final Bearing bearing = getBearingGreatCircle(to); |
|
| 229 | + final Distance distance = getDistance(to); |
|
| 230 | + final Speed speed = distance.inTime(inTime); |
|
| 231 | + return new KnotSpeedWithBearingImpl(speed.getKnots(), bearing); |
|
| 232 | + } |
|
| 233 | + |
|
| 234 | + private Position cartesianVectorToPosition(double[] vector) { |
|
| 235 | + double lat = Math.atan2(vector[2], Math.sqrt(vector[0]*vector[0] + vector[1]*vector[1])); |
|
| 236 | + double lng = Math.atan2(vector[1], vector[0]); |
|
| 237 | + return new RadianPosition(lat, lng); |
|
| 238 | + } |
|
| 239 | + |
|
| 240 | + private double[] computeCrossProductOf3PartVectors(double[] vec1, double[] vec2) { |
|
| 241 | + double[] crossProduct= new double[3]; |
|
| 242 | + crossProduct[0] = vec1[1]*vec2[2] - vec1[2]*vec2[1]; |
|
| 243 | + crossProduct[1] = vec1[2]*vec2[0] - vec1[0]*vec2[2]; |
|
| 244 | + crossProduct[2] = vec1[0]*vec2[1] - vec1[1]*vec2[0]; |
|
| 245 | + return crossProduct; |
|
| 246 | + } |
|
| 247 | + |
|
| 248 | + private double[] createGreatCircleVector(double radBearing, double radLatPos, double radLngPos) { |
|
| 249 | + double[] greatCircle = new double[3]; |
|
| 250 | + greatCircle[0] = Math.sin(radLngPos) * Math.cos(radBearing) - Math.sin(radLatPos) * Math.cos(radLngPos) * Math.sin(radBearing); |
|
| 251 | + greatCircle[1] = -Math.cos(radLngPos) * Math.cos(radBearing) - Math.sin(radLatPos) * Math.sin(radLngPos) * Math.sin(radBearing); |
|
| 252 | + greatCircle[2] = Math.cos(radLatPos) * Math.sin(radBearing); |
|
| 253 | + return greatCircle; |
|
| 254 | + } |
|
| 255 | + |
|
| 256 | + @Override |
|
| 257 | + public String getAsDegreesAndDecimalMinutesWithCardinalPoints() { |
|
| 258 | + final String lat = (getLatDeg()>=0 ? "N" : "S") + getDegreesAndDecimalMinutesOfNonNegativeAngle(Math.abs(getLatDeg()), /* degreePlaces */ 2, /* minuteDecimals */ 3); |
|
| 259 | + final String lng = (getLngDeg()>=0 ? "E" : "W") + getDegreesAndDecimalMinutesOfNonNegativeAngle(Math.abs(getLngDeg()), /* degreePlaces */ 3, /* minuteDecimals */ 3); |
|
| 260 | + return lat+" "+lng; |
|
| 261 | + } |
|
| 262 | + |
|
| 263 | + private String getDegreesAndDecimalMinutesOfNonNegativeAngle(double nonNegativeAngle, int degreePlaces, int minuteDecimals) { |
|
| 264 | + final double abs = Math.abs(nonNegativeAngle); |
|
| 265 | + int integerDegrees = (int) nonNegativeAngle; |
|
| 266 | + double minutes = RoundingUtil.format((abs-(int) abs)*60.0, 3); |
|
| 267 | + if (minutes >= 60.0) { |
|
| 268 | + minutes -= 60.0; |
|
| 269 | + integerDegrees++; |
|
| 270 | + } |
|
| 271 | + return Util.padPositiveValue(integerDegrees, degreePlaces, 0, /* round */ true) + "°"+ |
|
| 272 | + Util.padPositiveValue(minutes, 2, minuteDecimals, /* round */ true)+"'"; |
|
| 273 | + } |
|
| 274 | + |
|
| 275 | + @Override |
|
| 276 | + public String getAsSignedDecimalDegrees() { |
|
| 277 | + return "("+getLatDeg()+", "+getLngDeg()+")"; |
|
| 278 | + } |
|
| 279 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/AbstractSpeedImpl.java
| ... | ... | @@ -0,0 +1,85 @@ |
| 1 | +package com.sap.sse.common; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 4 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 5 | +import com.sap.sse.common.impl.SecondsDurationImpl; |
|
| 6 | + |
|
| 7 | +public abstract class AbstractSpeedImpl implements Speed { |
|
| 8 | + |
|
| 9 | + private static final long serialVersionUID = 4910662213901175982L; |
|
| 10 | + |
|
| 11 | + @Override |
|
| 12 | + public double getBeaufort() { |
|
| 13 | + return Math.exp(Math.log(getMetersPerSecond()/0.8360) * 2./3.); |
|
| 14 | + } |
|
| 15 | + |
|
| 16 | + @Override |
|
| 17 | + public Distance travel(TimePoint t1, TimePoint t2) { |
|
| 18 | + return travel(t1.until(t2)); |
|
| 19 | + } |
|
| 20 | + |
|
| 21 | + @Override |
|
| 22 | + public Distance travel(Duration duration) { |
|
| 23 | + return new NauticalMileDistance(duration.asHours() * getKnots()); |
|
| 24 | + } |
|
| 25 | + |
|
| 26 | + @Override |
|
| 27 | + public Duration getDuration(Distance distance) { |
|
| 28 | + return distance == null ? null : new SecondsDurationImpl(distance.getMeters() / getMetersPerSecond()); |
|
| 29 | + } |
|
| 30 | + |
|
| 31 | + @Override |
|
| 32 | + public double getMetersPerSecond() { |
|
| 33 | + return getKnots() * Mile.METERS_PER_NAUTICAL_MILE / 3600; |
|
| 34 | + } |
|
| 35 | + |
|
| 36 | + @Override |
|
| 37 | + public double getKilometersPerHour() { |
|
| 38 | + return getKnots() * Mile.METERS_PER_NAUTICAL_MILE / 1000; |
|
| 39 | + } |
|
| 40 | + |
|
| 41 | + @Override |
|
| 42 | + public double getStatuteMilesPerHour() { |
|
| 43 | + return getMetersPerSecond() * 2.2369; |
|
| 44 | + } |
|
| 45 | + |
|
| 46 | + @Override |
|
| 47 | + public int compareTo(Speed speed) { |
|
| 48 | + final double metersPerSecond = getMetersPerSecond(); |
|
| 49 | + final double otherMetersPerSecond = speed.getMetersPerSecond(); |
|
| 50 | + return Double.compare(metersPerSecond, otherMetersPerSecond); |
|
| 51 | + } |
|
| 52 | + |
|
| 53 | + @Override |
|
| 54 | + public String toString() { |
|
| 55 | + return ""+getKnots()+"kn"; |
|
| 56 | + } |
|
| 57 | + |
|
| 58 | + @Override |
|
| 59 | + public int hashCode() { |
|
| 60 | + return 31 * (int) getMetersPerSecond(); |
|
| 61 | + } |
|
| 62 | + |
|
| 63 | + @Override |
|
| 64 | + public boolean equals(Object object) { |
|
| 65 | + if (object == null || !(object instanceof Speed)) { |
|
| 66 | + return false; |
|
| 67 | + } |
|
| 68 | + return getMetersPerSecond() == ((Speed) object).getMetersPerSecond(); |
|
| 69 | + } |
|
| 70 | + |
|
| 71 | + @Override |
|
| 72 | + public double getKnots() { |
|
| 73 | + return getKilometersPerHour() * 1000. / Mile.METERS_PER_NAUTICAL_MILE; |
|
| 74 | + } |
|
| 75 | + |
|
| 76 | + @Override |
|
| 77 | + public double divide(Speed speed) { |
|
| 78 | + return getKnots() / speed.getKnots(); |
|
| 79 | + } |
|
| 80 | + |
|
| 81 | + @Override |
|
| 82 | + public Speed scale(double d) { |
|
| 83 | + return new KnotSpeedImpl(getKnots()*d); |
|
| 84 | + } |
|
| 85 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/BearingChangeAnalyzer.java
| ... | ... | @@ -0,0 +1,36 @@ |
| 1 | +package com.sap.sse.common; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.impl.BearingChangeAnalyzerImpl; |
|
| 4 | + |
|
| 5 | +/** |
|
| 6 | + * Helps analyze a change of a course over ground / {@link Bearing} and in particular can judge whether |
|
| 7 | + * such a course change passed over a certain other course over ground / {@link Bearing}. |
|
| 8 | + * |
|
| 9 | + * @author Axel Uhl (d043530) |
|
| 10 | + * |
|
| 11 | + */ |
|
| 12 | +public interface BearingChangeAnalyzer { |
|
| 13 | + BearingChangeAnalyzer INSTANCE = new BearingChangeAnalyzerImpl(); |
|
| 14 | + |
|
| 15 | + /** |
|
| 16 | + * Determines whether during a maneuver a certain course was reached and crossed. When used with the wind direction, |
|
| 17 | + * this can tell whether a boat tacked or jibed. |
|
| 18 | + * |
|
| 19 | + * @param totalCourseChangeInDegrees |
|
| 20 | + * tells how far and to which direction the course was changed. Positive values mean a change to |
|
| 21 | + * {@link NauticalSide#STARBOARD}, negative values to {@link NauticalSide#PORT}. This is required to |
|
| 22 | + * understand over which side the competitor reached the new course from the old course; if could have |
|
| 23 | + * been either way. Example: if the <code>courseBeforeManeuver</code> was 355deg and the |
|
| 24 | + * <code>courseAfterManeuver</code> was 005deg then if the <code>totalCourseChangeInDegrees</code> was |
|
| 25 | + * positive then the competitor passed the 000deg course, whereas had the |
|
| 26 | + * <code>totalCourseChangeInDegrees</code> been negative and less than 370deg then the competitor would |
|
| 27 | + * have passed the 180deg course but not the 000deg course. |
|
| 28 | + * @return the number of times that the course identified by |
|
| 29 | + * <code>wasThisCourseReachedAndCrossedDuringManeuver</code> was crossed; <code>0</code> means it was not |
|
| 30 | + * crossed; any positive number tells how many times it was crossed, otherwise. Numbers greater than |
|
| 31 | + * <code>1</code> require <code>totalCourseChangeInDegrees</code> to be greater than 360 degrees. |
|
| 32 | + * |
|
| 33 | + */ |
|
| 34 | + int didPass(Bearing courseBeforeManeuver, double totalCourseChangeInDegrees, |
|
| 35 | + Bearing courseAfterManeuver, Bearing wasThisCourseReachedAndCrossedDuringManeuver); |
|
| 36 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/BearingCluster.java
| ... | ... | @@ -0,0 +1,57 @@ |
| 1 | +package com.sap.sse.common; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 4 | +import com.sap.sse.common.confidence.BearingWithConfidenceCluster; |
|
| 5 | +import com.sap.sse.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 6 | + |
|
| 7 | +/** |
|
| 8 | + * Contains a number of {@link Bearing} objects and maintains the average bearing. For a given {@link Bearing} it |
|
| 9 | + * can determine the difference to this cluster's average bearing. It can also split the cluster into two, based |
|
| 10 | + * on the two bearings farthest apart. The cluster can contain multiple occurrences of the same and also |
|
| 11 | + * multiple occurrences of mutually equal {@link Bearing} objects which is one possible way of computing a |
|
| 12 | + * weighted average.<p> |
|
| 13 | + * |
|
| 14 | + * It is assumed that bearings added to this cluster are no further than 180 degrees apart. Violating this |
|
| 15 | + * rule will lead to unpredictable results. |
|
| 16 | + * |
|
| 17 | + * @author Axel Uhl (d043530) |
|
| 18 | + * |
|
| 19 | + */ |
|
| 20 | +public class BearingCluster { |
|
| 21 | + private final BearingWithConfidenceCluster<Void> cluster; |
|
| 22 | + |
|
| 23 | + public BearingCluster() { |
|
| 24 | + cluster = new BearingWithConfidenceCluster<Void>(/* weigher */ null); |
|
| 25 | + } |
|
| 26 | + |
|
| 27 | + private BearingCluster(BearingWithConfidenceCluster<Void> cluster) { |
|
| 28 | + this.cluster = cluster; |
|
| 29 | + } |
|
| 30 | + |
|
| 31 | + public BearingCluster[] splitInTwo(double minimumDegreeDifferenceBetweenTacks) { |
|
| 32 | + BearingWithConfidenceCluster<Void>[] array = cluster.splitInTwo(minimumDegreeDifferenceBetweenTacks, /* relativeTo */ null); |
|
| 33 | + BearingCluster[] result = new BearingCluster[array.length]; |
|
| 34 | + int i=0; |
|
| 35 | + for (BearingWithConfidenceCluster<Void> element : array) { |
|
| 36 | + result[i++] = new BearingCluster(element); |
|
| 37 | + } |
|
| 38 | + return result; |
|
| 39 | + } |
|
| 40 | + |
|
| 41 | + public Bearing getAverage() { |
|
| 42 | + BearingWithConfidence<Void> average = cluster.getAverage(null); |
|
| 43 | + return average == null ? null : average.getObject(); |
|
| 44 | + } |
|
| 45 | + |
|
| 46 | + public boolean isEmpty() { |
|
| 47 | + return cluster.isEmpty(); |
|
| 48 | + } |
|
| 49 | + |
|
| 50 | + public int size() { |
|
| 51 | + return cluster.size(); |
|
| 52 | + } |
|
| 53 | + |
|
| 54 | + public void add(Bearing bearing) { |
|
| 55 | + cluster.add(new BearingWithConfidenceImpl<Void>(bearing, /* confidence */ 1.0, /* relativeTo */ null)); |
|
| 56 | + } |
|
| 57 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/Bounds.java
| ... | ... | @@ -0,0 +1,42 @@ |
| 1 | +package com.sap.sse.common; |
|
| 2 | + |
|
| 3 | +public interface Bounds { |
|
| 4 | + Position getNorthEast(); |
|
| 5 | + |
|
| 6 | + Position getSouthWest(); |
|
| 7 | + |
|
| 8 | + Position getNorthWest(); |
|
| 9 | + |
|
| 10 | + Position getSouthEast(); |
|
| 11 | + |
|
| 12 | + Bounds intersect(Bounds other); |
|
| 13 | + |
|
| 14 | + /** |
|
| 15 | + * A short-hand for {@link #union} |
|
| 16 | + */ |
|
| 17 | + Bounds extend(Bounds other); |
|
| 18 | + |
|
| 19 | + Bounds extend(Position p); |
|
| 20 | + |
|
| 21 | + Bounds union(Bounds other); |
|
| 22 | + |
|
| 23 | + boolean intersects(Bounds other); |
|
| 24 | + |
|
| 25 | + boolean contains(Position other); |
|
| 26 | + |
|
| 27 | + boolean contains(Bounds other); |
|
| 28 | + |
|
| 29 | + boolean isCrossesDateLine(); |
|
| 30 | + |
|
| 31 | + boolean containsLatDeg(double latDeg); |
|
| 32 | + |
|
| 33 | + boolean containsLngDeg(double lngDeg); |
|
| 34 | + |
|
| 35 | + boolean isEmpty(); |
|
| 36 | + |
|
| 37 | + /** |
|
| 38 | + * @return the length of the diagonal from the {@link #getNorthWest() NW} to the {@link #getSouthEast() SE} corner |
|
| 39 | + * of this bounding box |
|
| 40 | + */ |
|
| 41 | + Distance getDiameter(); |
|
| 42 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/CourseChange.java
| ... | ... | @@ -0,0 +1,15 @@ |
| 1 | +package com.sap.sse.common; |
|
| 2 | + |
|
| 3 | +/** |
|
| 4 | + * A course change represents a change of the course over ground as well as the speed over ground. |
|
| 5 | + * {@link SpeedWithBearing#applyCourseChange(CourseChange) Applying} this {@link CourseChange} object to a |
|
| 6 | + * {@link SpeedWithBearing} results in the {@link SpeedWithBearing} as it was after this course change. |
|
| 7 | + * |
|
| 8 | + * @author Axel Uhl (d043530) |
|
| 9 | + * |
|
| 10 | + */ |
|
| 11 | +public interface CourseChange { |
|
| 12 | + double getCourseChangeInDegrees(); |
|
| 13 | + |
|
| 14 | + double getSpeedChangeInKnots(); |
|
| 15 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/DoublePair.java
| ... | ... | @@ -0,0 +1,20 @@ |
| 1 | +package com.sap.sse.common; |
|
| 2 | + |
|
| 3 | +public class DoublePair { |
|
| 4 | + private final double a; |
|
| 5 | + private final double b; |
|
| 6 | + |
|
| 7 | + public DoublePair(double a, double b) { |
|
| 8 | + super(); |
|
| 9 | + this.a = a; |
|
| 10 | + this.b = b; |
|
| 11 | + } |
|
| 12 | + |
|
| 13 | + public double getA() { |
|
| 14 | + return a; |
|
| 15 | + } |
|
| 16 | + |
|
| 17 | + public double getB() { |
|
| 18 | + return b; |
|
| 19 | + } |
|
| 20 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/DoubleTriple.java
| ... | ... | @@ -0,0 +1,26 @@ |
| 1 | +package com.sap.sse.common; |
|
| 2 | + |
|
| 3 | +public class DoubleTriple { |
|
| 4 | + private final double a; |
|
| 5 | + private final double b; |
|
| 6 | + private final double c; |
|
| 7 | + |
|
| 8 | + public DoubleTriple(double a, double b, double c) { |
|
| 9 | + super(); |
|
| 10 | + this.a = a; |
|
| 11 | + this.b = b; |
|
| 12 | + this.c = c; |
|
| 13 | + } |
|
| 14 | + |
|
| 15 | + public double getA() { |
|
| 16 | + return a; |
|
| 17 | + } |
|
| 18 | + |
|
| 19 | + public double getB() { |
|
| 20 | + return b; |
|
| 21 | + } |
|
| 22 | + |
|
| 23 | + public double getC() { |
|
| 24 | + return c; |
|
| 25 | + } |
|
| 26 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/Mile.java
| ... | ... | @@ -0,0 +1,9 @@ |
| 1 | +package com.sap.sse.common; |
|
| 2 | + |
|
| 3 | +public interface Mile { |
|
| 4 | + static double METERS_PER_SEA_MILE = 1852.3; |
|
| 5 | + static double METERS_PER_NAUTICAL_MILE = 1852; |
|
| 6 | + static double METERS_PER_GEOGRAPHICAL_MILE = 400080. / 216. /* = 40008000/360/60 */; |
|
| 7 | + static double METERS_PER_STATUTE_MILE = 1609.344; |
|
| 8 | + static double METERS_PER_SECOND_PER_KNOT = METERS_PER_NAUTICAL_MILE / 3600.; |
|
| 9 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/Position.java
| ... | ... | @@ -0,0 +1,143 @@ |
| 1 | +package com.sap.sse.common; |
|
| 2 | + |
|
| 3 | +import java.io.Serializable; |
|
| 4 | + |
|
| 5 | +public interface Position extends Serializable { |
|
| 6 | + double getLatRad(); |
|
| 7 | + |
|
| 8 | + double getLngRad(); |
|
| 9 | + |
|
| 10 | + double getLatDeg(); |
|
| 11 | + |
|
| 12 | + double getLngDeg(); |
|
| 13 | + |
|
| 14 | + /** |
|
| 15 | + * Generates a string representation of the form S03°45.235' E003°22.837' |
|
| 16 | + */ |
|
| 17 | + String getAsDegreesAndDecimalMinutesWithCardinalPoints(); |
|
| 18 | + |
|
| 19 | + /** |
|
| 20 | + * Generates a string representation of the form (-3.7539166666, 3.3806166666) |
|
| 21 | + */ |
|
| 22 | + String getAsSignedDecimalDegrees(); |
|
| 23 | + |
|
| 24 | + /** |
|
| 25 | + * Central angle between this position and the other position, in radians |
|
| 26 | + */ |
|
| 27 | + double getCentralAngleRad(Position p); |
|
| 28 | + |
|
| 29 | + Distance getDistance(Position p); |
|
| 30 | + |
|
| 31 | + /** |
|
| 32 | + * The bearing from this position towards <code>p</code> on a great circle, using the shortest path. |
|
| 33 | + * |
|
| 34 | + * @return {@code null} if {@code p} is {@code null}, otherwise the bearing from {@code this} {@link Position} to |
|
| 35 | + * {@code p} along a great circle |
|
| 36 | + */ |
|
| 37 | + Bearing getBearingGreatCircle(Position p); |
|
| 38 | + |
|
| 39 | + /** |
|
| 40 | + * Translates along a rhumb line, assuming travel at constant bearing. This |
|
| 41 | + * is therfore not translating along a great circle but as a straight line, e.g., |
|
| 42 | + * on a Marcator projection. |
|
| 43 | + */ |
|
| 44 | + Position translateRhumb(Bearing bearing, Distance distance); |
|
| 45 | + |
|
| 46 | + /** |
|
| 47 | + * Translates along a great circle, assuming travel at varying bearing where |
|
| 48 | + * <code>bearing</code> tells the bearing at this position. Invariant: |
|
| 49 | + * <code>translate(getBearingGreatCircle(p), getDistance(p)).equals(p)</code> |
|
| 50 | + */ |
|
| 51 | + Position translateGreatCircle(Bearing bearing, Distance distance); |
|
| 52 | + |
|
| 53 | + /** |
|
| 54 | + * Projects this position onto the great circle through <code>p</code> with bearing <code>bearing</code>. Note that |
|
| 55 | + * if the angle between this position and the great circle is 90 degrees then there is no solution, and a |
|
| 56 | + * <code>NaN</code> or exception will result. |
|
| 57 | + */ |
|
| 58 | + Position projectToLineThrough(Position p, Bearing bearing); |
|
| 59 | + |
|
| 60 | + /** |
|
| 61 | + * @return an unsigned distance |
|
| 62 | + */ |
|
| 63 | + Distance absoluteCrossTrackError(Position p, Bearing bearing); |
|
| 64 | + |
|
| 65 | + /** |
|
| 66 | + * @return a signed distance; positive distances mean that this position is to the right (starboard) of the |
|
| 67 | + * line one gets when traveling from <code>p</code> with <code>bearing</code> |
|
| 68 | + */ |
|
| 69 | + Distance crossTrackError(Position p, Bearing bearing); |
|
| 70 | + |
|
| 71 | + /** |
|
| 72 | + * Computes how far along the great circle starting at <code>from</code> and pointing to <code>bearing</code> one |
|
| 73 | + * has to travel to reach the projection of this position onto the great circle described by <code>from</code> and |
|
| 74 | + * <code>bearing</code>. Note that if the angle between this position and the great circle is 90 degrees then there |
|
| 75 | + * is no solution, and a <code>NaN</code> or exception will result. |
|
| 76 | + * <p> |
|
| 77 | + * |
|
| 78 | + * The distance returned will be negative if one needs to travel towards the reverse of {@code bearing} to reach this |
|
| 79 | + * position starting at {@code from} on the shortest path.<p> |
|
| 80 | + * |
|
| 81 | + * If either <code>from</code> or <code>bearing</code> or both are <code>null</code>, <code>null</code> is returned. |
|
| 82 | + */ |
|
| 83 | + |
|
| 84 | + Distance alongTrackDistance(Position from, Bearing bearing); |
|
| 85 | + |
|
| 86 | + /** |
|
| 87 | + * Computes the distance from this position to the line between <code>left</code> and <code>right</code>. This distance |
|
| 88 | + * is positive if <code>left</code> is actually the position farther to the left, as seen from this position; negative |
|
| 89 | + * otherwise. |
|
| 90 | + */ |
|
| 91 | + Distance getDistanceToLine(Position left, Position right); |
|
| 92 | + |
|
| 93 | + /** |
|
| 94 | + * Transform a position into its representation in a local geo-coordinate frame where <code>localOrigin</code> is |
|
| 95 | + * locally represented as <code>(latitude, longitude) = (0,0)</code> and <code>localEquatorBearing</code> is locally |
|
| 96 | + * represented as <code>East = 90 degrees</code>. |
|
| 97 | + * <p> |
|
| 98 | + * |
|
| 99 | + * This can be used to move a GPS-track to the origin <code>(0,0)</code> and aligning wind direction with North, or |
|
| 100 | + * bearing of start line with East. |
|
| 101 | + */ |
|
| 102 | + Position getLocalCoordinates(Position localOrigin, Bearing localEquatorBearing); |
|
| 103 | + |
|
| 104 | + /** |
|
| 105 | + * Transform a position from local geo-coordinate frame <code>(localOrigin, localEquatorBearing)</code> |
|
| 106 | + * into the corresponding position in target geo-coordinate frame <code>(targetOrigin, targetEquatorBearing)</code>. |
|
| 107 | + * The transformation is equivalent to a rotation of the earth, which moves <code>localOrigin</code> |
|
| 108 | + * to <code>targetOrigin</code> while aligning <code>localEquatorBearing</code> to <code>targetEquatorBearing</code>.<p> |
|
| 109 | + * |
|
| 110 | + * This can be used to move a GPS-track from one location to another, in order to compare GPS-tracks from different areas |
|
| 111 | + * by superposing and aligning them based on wind direction or bearing of start line. |
|
| 112 | + */ |
|
| 113 | + Position getTargetCoordinates(Position localOrigin, Bearing localEquatorBearing, Position targetOrigin, Bearing targetEquatorBearing); |
|
| 114 | + |
|
| 115 | + /** |
|
| 116 | + * Computes an approximate distance between this position and <code>p</code> by |
|
| 117 | + * using the average latitude's cosine to scale the longitudes and then calculate |
|
| 118 | + * the distance non-spherically in an imaginary Euklidian plane. The error is below |
|
| 119 | + * 1% even for several hundred nautical miles of randomly chosen distances, and even |
|
| 120 | + * lower (~.1%) for distances below ten nautical miles.<p> |
|
| 121 | + * |
|
| 122 | + * The method executes efficiently and requires only one call to the cosine method. |
|
| 123 | + */ |
|
| 124 | + double getQuickApproximateNauticalMileDistance(Position p); |
|
| 125 | + |
|
| 126 | + /** |
|
| 127 | + * Computes the intersection of two paths. The first path is defined by the underlying position and the parameter |
|
| 128 | + * <code>thisBearing</code>. The second path is defined by parameters <code>to</code> and <code>toBearing</code> |
|
| 129 | + * |
|
| 130 | + * @param thisBearing defines first path with <code>this</code> position |
|
| 131 | + * @param to defines second path with <code>toBearing</code> |
|
| 132 | + * @param toBearing defines second path <code>to</code> position |
|
| 133 | + * @return position of intersection. Since there are usually 2 intersections, we return the smaller intersection. |
|
| 134 | + */ |
|
| 135 | + Position getIntersection(Bearing thisBearing, Position to, Bearing toBearing); |
|
| 136 | + |
|
| 137 | + /** |
|
| 138 | + * Calculates the speed vector needed to reach the {@code to} position from this position in time |
|
| 139 | + * {@code inTime}. A {@link NullPointerException} will be thrown if either {@code to} or {@code inTime} |
|
| 140 | + * is {@code null}. |
|
| 141 | + */ |
|
| 142 | + SpeedWithBearing getSpeedWithBearingToReachOnGreatCircle(Position to, Duration inTime); |
|
| 143 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/Positioned.java
| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | +package com.sap.sse.common; |
|
| 2 | + |
|
| 3 | +import java.io.Serializable; |
|
| 4 | + |
|
| 5 | +public interface Positioned extends Serializable { |
|
| 6 | + Position getPosition(); |
|
| 7 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/SpeedWithBearing.java
| ... | ... | @@ -0,0 +1,48 @@ |
| 1 | +package com.sap.sse.common; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 4 | +import com.sap.sse.datamining.annotations.Statistic; |
|
| 5 | + |
|
| 6 | + |
|
| 7 | + |
|
| 8 | +public interface SpeedWithBearing extends Speed { |
|
| 9 | + @Statistic(messageKey="bearing", resultDecimals=1) |
|
| 10 | + Bearing getBearing(); |
|
| 11 | + |
|
| 12 | + /** |
|
| 13 | + * Traveling at this speed starting at time <code>from</code> in position <code>pos</code> until time |
|
| 14 | + * </code>to</code>, how far have we traveled? If <code>to</code> is before </code>from</code>, the speed will be |
|
| 15 | + * applied in reverse. |
|
| 16 | + */ |
|
| 17 | + Position travelTo(Position pos, TimePoint from, TimePoint to); |
|
| 18 | + |
|
| 19 | + default Position travelTo(Position from, Duration duration) { |
|
| 20 | + return from.translateGreatCircle(getBearing(), travel(duration)); |
|
| 21 | + } |
|
| 22 | + |
|
| 23 | + /** |
|
| 24 | + * Computes the minimal (in terms of bearing change) course and speed change required to reach the |
|
| 25 | + * target speed and bearing specified. |
|
| 26 | + */ |
|
| 27 | + CourseChange getCourseChangeRequiredToReach(SpeedWithBearing targetSpeedWithBearing); |
|
| 28 | + |
|
| 29 | + SpeedWithBearing applyCourseChange(CourseChange courseChange); |
|
| 30 | + |
|
| 31 | + /** |
|
| 32 | + * Projects this speed onto <code>bearing</code>. The speed will keep its sign, regardless of whether the <code>bearing</code> points in |
|
| 33 | + * the opposite direction or not. The resulting speed can never be greater than this speed. If this speed's bearing is orthogonal to |
|
| 34 | + * <code>bearing</code>, a zero speed will result. |
|
| 35 | + * |
|
| 36 | + * @param position the position at which to perform the projection; the angle between the bearings depends on the position |
|
| 37 | + */ |
|
| 38 | + Speed projectTo(Position position, Bearing bearing); |
|
| 39 | + |
|
| 40 | + /** |
|
| 41 | + * Adds two directed speeds onto each other using vector addition. |
|
| 42 | + */ |
|
| 43 | + SpeedWithBearing add(SpeedWithBearing other); |
|
| 44 | + |
|
| 45 | + default SpeedWithBearing scale(double d) { |
|
| 46 | + return new KnotSpeedWithBearingImpl(getKnots(), getBearing()); |
|
| 47 | + } |
|
| 48 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/BearingWithConfidence.java
| ... | ... | @@ -0,0 +1,9 @@ |
| 1 | +package com.sap.sse.common.confidence; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Bearing; |
|
| 4 | +import com.sap.sse.common.DoublePair; |
|
| 5 | +import com.sap.sse.common.scalablevalue.HasConfidenceAndIsScalable; |
|
| 6 | + |
|
| 7 | + |
|
| 8 | +public interface BearingWithConfidence<RelativeTo> extends HasConfidenceAndIsScalable<DoublePair, Bearing, RelativeTo> { |
|
| 9 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/BearingWithConfidenceCluster.java
| ... | ... | @@ -0,0 +1,179 @@ |
| 1 | +package com.sap.sse.common.confidence; |
|
| 2 | + |
|
| 3 | +import java.util.ArrayList; |
|
| 4 | +import java.util.Collections; |
|
| 5 | +import java.util.List; |
|
| 6 | + |
|
| 7 | +import com.sap.sse.common.Bearing; |
|
| 8 | +import com.sap.sse.common.DoublePair; |
|
| 9 | +import com.sap.sse.common.Util; |
|
| 10 | +import com.sap.sse.common.confidence.impl.BearingWithConfidenceImpl; |
|
| 11 | + |
|
| 12 | +/** |
|
| 13 | + * Contains a number of {@link Bearing} objects and maintains the average bearing. For a given {@link Bearing} it |
|
| 14 | + * can determine the difference to this cluster's average bearing. It can also split the cluster into two, based |
|
| 15 | + * on the two bearings farthest apart. The cluster can contain multiple occurrences of the same and also |
|
| 16 | + * multiple occurrences of mutually equal {@link Bearing} objects which is one possible way of computing a |
|
| 17 | + * weighted average.<p> |
|
| 18 | + * |
|
| 19 | + * It is assumed that bearings added to this cluster are no further than 180 degrees apart. Violating this |
|
| 20 | + * rule will lead to unpredictable results. |
|
| 21 | + * |
|
| 22 | + * @author Axel Uhl (d043530) |
|
| 23 | + * |
|
| 24 | + */ |
|
| 25 | +public class BearingWithConfidenceCluster<RelativeTo> { |
|
| 26 | + private final List<BearingWithConfidence<RelativeTo>> bearings; |
|
| 27 | + private final Weigher<RelativeTo> weigher; |
|
| 28 | + private final ConfidenceBasedAverager<DoublePair, Bearing, RelativeTo> averager; |
|
| 29 | + |
|
| 30 | + /** |
|
| 31 | + * @param weigher |
|
| 32 | + * if <code>null</code>, the <code>relativeTo</code> parameter of {@link #getAverage(Object)} will be ignored, |
|
| 33 | + * and only the confidences provided by the {@link BearingWithConfidence} objects will be taken into |
|
| 34 | + * account. Otherwise, the <code>weigher</code> will be used to determine the confidence relative to |
|
| 35 | + * the <code>relativeTo</code> argument of {@link #getAverage(Object)}. |
|
| 36 | + */ |
|
| 37 | + public BearingWithConfidenceCluster(Weigher<RelativeTo> weigher) { |
|
| 38 | + bearings = new ArrayList<BearingWithConfidence<RelativeTo>>(); |
|
| 39 | + this.weigher = weigher; |
|
| 40 | + averager = ConfidenceFactory.INSTANCE.createAverager(weigher); |
|
| 41 | + } |
|
| 42 | + |
|
| 43 | + /** |
|
| 44 | + * Finds the two bearings in the cluster that are farthest apart (at least <code>minimumDegreeDifferenceBetweenTacks</code>). |
|
| 45 | + * Then, the remaining bearings in this cluster are associated with the one of the two extreme bearings to which they are |
|
| 46 | + * closer. The two resulting clusters are returned. |
|
| 47 | + * |
|
| 48 | + * @param minimumDegreeDifferenceBetweenTacks |
|
| 49 | + * tells the minimum degree difference that must exist between the two extreme bearings before they are |
|
| 50 | + * considered to represent boats on different tacks. If more than one bearing exists in this cluster |
|
| 51 | + * but no two bearings are at least <code>minimumDegreeDifferenceBetweenTacks</code> degrees apart from |
|
| 52 | + * each other, only fir first of the two clusters returned will contain bearings while the second one |
|
| 53 | + * remains empty. |
|
| 54 | + * @return two bearing clusters; both empty if this cluster is empty; only the second one empty if this cluster |
|
| 55 | + * contains only one bearing. Otherwise, the two bearings farthest apart (greatest absolute |
|
| 56 | + * {@link Bearing#getDifferenceTo(Bearing) difference}) are guaranteed to be in different clusters, and |
|
| 57 | + * all other bearings contained in this cluster will be contained in the cluster that contains the extreme |
|
| 58 | + * bearing to which it's closer. |
|
| 59 | + */ |
|
| 60 | + public BearingWithConfidenceCluster<RelativeTo>[] splitInTwo(double minimumDegreeDifferenceBetweenTacks, RelativeTo relativeTo) { |
|
| 61 | + BearingWithConfidenceCluster<RelativeTo>[] result = createBearingClusterArraySizeTwo(); |
|
| 62 | + result[0] = createEmptyCluster(); |
|
| 63 | + result[1] = createEmptyCluster(); |
|
| 64 | + if (bearings.size() >= 2) { |
|
| 65 | + Util.Pair<BearingWithConfidence<RelativeTo>, BearingWithConfidence<RelativeTo>> extremeBearings = getExtremeBearings(minimumDegreeDifferenceBetweenTacks); |
|
| 66 | + if (extremeBearings != null) { |
|
| 67 | + result[0].add(extremeBearings.getA()); |
|
| 68 | + result[1].add(extremeBearings.getB()); |
|
| 69 | + } |
|
| 70 | + for (BearingWithConfidence<RelativeTo> bearing : bearings) { |
|
| 71 | + if (extremeBearings == null || (bearing != extremeBearings.getA() && bearing != extremeBearings.getB())) { |
|
| 72 | + if (extremeBearings == null |
|
| 73 | + || result[0].getDifferenceFromAverage(bearing.getObject(), relativeTo) <= result[1] |
|
| 74 | + .getDifferenceFromAverage(bearing.getObject(), relativeTo)) { |
|
| 75 | + result[0].add(bearing); |
|
| 76 | + } else { |
|
| 77 | + result[1].add(bearing); |
|
| 78 | + } |
|
| 79 | + } |
|
| 80 | + } |
|
| 81 | + } else if (!bearings.isEmpty()) { |
|
| 82 | + // add the only bearing to the first of the two resulting clusters |
|
| 83 | + result[0].add(bearings.get(0)); |
|
| 84 | + } |
|
| 85 | + return result; |
|
| 86 | + } |
|
| 87 | + |
|
| 88 | + @SuppressWarnings("unchecked") |
|
| 89 | + protected BearingWithConfidenceCluster<RelativeTo>[] createBearingClusterArraySizeTwo() { |
|
| 90 | + return (BearingWithConfidenceCluster<RelativeTo>[]) new BearingWithConfidenceCluster<?>[2]; |
|
| 91 | + } |
|
| 92 | + |
|
| 93 | + /** |
|
| 94 | + * To avoid that a bearing with low confidence decides about the clustering, the difference between two bearings |
|
| 95 | + * is scaled by their confidences. This scaled distance is then maximized for those bearings at least |
|
| 96 | + * <code>minimumDegreeDifferenceBetweenTacks</code> degrees apart. |
|
| 97 | + */ |
|
| 98 | + private Util.Pair<BearingWithConfidence<RelativeTo>, BearingWithConfidence<RelativeTo>> getExtremeBearings(double minimumDegreeDifferenceBetweenTacks) { |
|
| 99 | + assert bearings.size() >= 2; |
|
| 100 | + double maxAbsDegDiff = 0; |
|
| 101 | + Util.Pair<BearingWithConfidence<RelativeTo>, BearingWithConfidence<RelativeTo>> result = null; |
|
| 102 | + for (int i=0; i<bearings.size(); i++) { |
|
| 103 | + for (int j=i+1; j<bearings.size(); j++) { |
|
| 104 | + final double confidenceScaledDifference = getConfidenceScaledDifference(bearings.get(i), bearings.get(j)); |
|
| 105 | + if (Math.abs(bearings.get(i).getObject().getDifferenceTo(bearings.get(j).getObject()).getDegrees()) >= minimumDegreeDifferenceBetweenTacks |
|
| 106 | + && confidenceScaledDifference > maxAbsDegDiff) { |
|
| 107 | + result = new Util.Pair<BearingWithConfidence<RelativeTo>, BearingWithConfidence<RelativeTo>>(bearings.get(i), bearings.get(j)); |
|
| 108 | + maxAbsDegDiff = confidenceScaledDifference; |
|
| 109 | + assert Math.abs(bearings.get(i).getObject().getDifferenceTo(bearings.get(j).getObject()).getDegrees()) <= 180.; |
|
| 110 | + } |
|
| 111 | + } |
|
| 112 | + } |
|
| 113 | + return result; |
|
| 114 | + } |
|
| 115 | + |
|
| 116 | + private double getConfidenceScaledDifference(BearingWithConfidence<RelativeTo> bearingWithConfidence1, |
|
| 117 | + BearingWithConfidence<RelativeTo> bearingWithConfidence2) { |
|
| 118 | + return Math.abs(bearingWithConfidence1.getObject().getDifferenceTo(bearingWithConfidence2.getObject()).getDegrees()) * |
|
| 119 | + bearingWithConfidence1.getConfidence() * bearingWithConfidence2.getConfidence(); |
|
| 120 | + } |
|
| 121 | + |
|
| 122 | + public boolean isEmpty() { |
|
| 123 | + return bearings.isEmpty(); |
|
| 124 | + } |
|
| 125 | + |
|
| 126 | + public int size() { |
|
| 127 | + return bearings.size(); |
|
| 128 | + } |
|
| 129 | + |
|
| 130 | + /** |
|
| 131 | + * Adds the <code>bearing</code> if its {@link BearingWithConfidence#getConfidence() confidence} is greater than 0.0 |
|
| 132 | + */ |
|
| 133 | + public void add(BearingWithConfidence<RelativeTo> bearing) { |
|
| 134 | + if (bearing.getConfidence() > 0) { |
|
| 135 | + bearings.add(bearing); |
|
| 136 | + } |
|
| 137 | + } |
|
| 138 | + |
|
| 139 | + /** |
|
| 140 | + * If the cluster contains no bearings, <code>null</code> is returned. Otherwise, the average angle is computed |
|
| 141 | + * by adding up the sin and cos values of the individual bearings, then computing the atan2 of the ratio. If the |
|
| 142 | + * combined confidence of the bearings in the cluster is 0.0, the result will contain <code>null</code> as |
|
| 143 | + * {@link BearingWithConfidence#getObject() object}. |
|
| 144 | + * |
|
| 145 | + * TODO bug5576 comment 40: we could analyze the cluster's variance and let greater variances reduce the confidence |
|
| 146 | + */ |
|
| 147 | + public BearingWithConfidence<RelativeTo> getAverage(RelativeTo relativeTo) { |
|
| 148 | + HasConfidence<DoublePair, Bearing, RelativeTo> average = averager.getAverage(getBearings(), relativeTo); |
|
| 149 | + return average == null ? null : new BearingWithConfidenceImpl<RelativeTo>(average.getObject(), average.getConfidence(), average.getRelativeTo()); |
|
| 150 | + } |
|
| 151 | + |
|
| 152 | + /** |
|
| 153 | + * Absolute difference to {@link #getAverage() this cluster's average bearing} in degrees. If there is no bearing stored in |
|
| 154 | + * this cluster yet, or the combined confidence of the values in the cluster is 0.0, 0.0 is returned. |
|
| 155 | + * |
|
| 156 | + * @return a value <code>>=0.0</code> |
|
| 157 | + */ |
|
| 158 | + private double getDifferenceFromAverage(Bearing bearing, RelativeTo relativeTo) { |
|
| 159 | + Bearing averageBearing = getAverage(relativeTo).getObject(); |
|
| 160 | + return averageBearing == null ? 0.0 : Math.abs(averageBearing.getDifferenceTo(bearing).getDegrees()); |
|
| 161 | + } |
|
| 162 | + |
|
| 163 | + protected Iterable<BearingWithConfidence<RelativeTo>> getBearings() { |
|
| 164 | + return Collections.unmodifiableCollection(bearings); |
|
| 165 | + } |
|
| 166 | + |
|
| 167 | + @Override |
|
| 168 | + public String toString() { |
|
| 169 | + return bearings.toString(); |
|
| 170 | + } |
|
| 171 | + |
|
| 172 | + private BearingWithConfidenceCluster<RelativeTo> createEmptyCluster() { |
|
| 173 | + return new BearingWithConfidenceCluster<RelativeTo>(weigher); |
|
| 174 | + } |
|
| 175 | + |
|
| 176 | + public void clear() { |
|
| 177 | + bearings.clear(); |
|
| 178 | + } |
|
| 179 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/ConfidenceBasedAverager.java
| ... | ... | @@ -0,0 +1,25 @@ |
| 1 | +package com.sap.sse.common.confidence; |
|
| 2 | + |
|
| 3 | +import java.util.Iterator; |
|
| 4 | + |
|
| 5 | +import com.sap.sse.common.scalablevalue.HasConfidenceAndIsScalable; |
|
| 6 | + |
|
| 7 | +public interface ConfidenceBasedAverager<ValueType, BaseType, RelativeTo> { |
|
| 8 | + /** |
|
| 9 | + * If a non-<code>null</code> weigher has been set for this averager, <code>at</code> must be a valid reference |
|
| 10 | + * point to which the weigher will determine the difference and from it the confidence for each of the |
|
| 11 | + * <code>values</code>. Otherwise, the <code>at</code> argument is ignored. |
|
| 12 | + * |
|
| 13 | + * @return <code>null</code> if <code>values==null</code> or <code>values</code> is empty; otherwise, a non- |
|
| 14 | + * <code>null</code> average with confidence is returned. Note, however, that the |
|
| 15 | + * {@link HasConfidence#getObject() object} in the {@link HasConfidence} result may be <code>null</code>, |
|
| 16 | + * e.g., if the combined confidence went to 0.0 and the averager was unable to determine a reasonable |
|
| 17 | + * average value. The result's confidence is the arithmetic average of the confidences of all values |
|
| 18 | + * that contributed to the result. |
|
| 19 | + */ |
|
| 20 | + HasConfidence<ValueType, BaseType, RelativeTo> getAverage( |
|
| 21 | + Iterable<? extends HasConfidenceAndIsScalable<ValueType, BaseType, RelativeTo>> values, RelativeTo at); |
|
| 22 | + |
|
| 23 | + HasConfidence<ValueType, BaseType, RelativeTo> getAverage( |
|
| 24 | + Iterator<? extends HasConfidenceAndIsScalable<ValueType, BaseType, RelativeTo>> values, RelativeTo at); |
|
| 25 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/ConfidenceFactory.java
| ... | ... | @@ -0,0 +1,47 @@ |
| 1 | +package com.sap.sse.common.confidence; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Distance; |
|
| 4 | +import com.sap.sse.common.Duration; |
|
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | +import com.sap.sse.common.TimePoint; |
|
| 7 | +import com.sap.sse.common.confidence.impl.ConfidenceBasedAveragerFactoryImpl; |
|
| 8 | + |
|
| 9 | +public interface ConfidenceFactory { |
|
| 10 | + ConfidenceFactory INSTANCE = new ConfidenceBasedAveragerFactoryImpl(); |
|
| 11 | + |
|
| 12 | + /** |
|
| 13 | + * @param weigher |
|
| 14 | + * used to determine the confidence of the elements to be averaged, relative to the reference point given |
|
| 15 | + * as parameter to {@link ConfidenceBasedAverager#getAverage(Iterable, Object)}. If <code>null</code>, |
|
| 16 | + * 1.0 will be assumed as default confidence for all values provided, regardless the reference point |
|
| 17 | + * relative to which the average is to be computed |
|
| 18 | + */ |
|
| 19 | + <ValueType, BaseType, RelativeTo> ConfidenceBasedAverager<ValueType, BaseType, RelativeTo> createAverager(Weigher<RelativeTo> weigher); |
|
| 20 | + |
|
| 21 | + <RelativeTo> Weigher<RelativeTo> createConstantWeigher(double constantConfidence); |
|
| 22 | + |
|
| 23 | + /** |
|
| 24 | + * Creates a weigher for time points. With increasing time difference the weight/confidence decreases exponentially. |
|
| 25 | + * It is halved every <code>halfConfidenceAfterMilliseconds</code> milliseconds. |
|
| 26 | + */ |
|
| 27 | + Weigher<TimePoint> createExponentialTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds); |
|
| 28 | + |
|
| 29 | + /** |
|
| 30 | + * Like {@link #createExponentialTimeDifferenceWeigher(long)}, only that additionally a minimum confidence value is defined. |
|
| 31 | + * This can be useful for averagers that have trouble with values scaled down with 0.0. |
|
| 32 | + */ |
|
| 33 | + Weigher<TimePoint> createExponentialTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds, double minimumConfidence); |
|
| 34 | + |
|
| 35 | + Weigher<TimePoint> createHyperbolicTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds); |
|
| 36 | + |
|
| 37 | + Weigher<TimePoint> createStandardDistributionTimeDifferenceWeigher(Duration standardDeviation); |
|
| 38 | + |
|
| 39 | + Weigher<TimePoint> createHyperbolicSquaredTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds); |
|
| 40 | + |
|
| 41 | + /** |
|
| 42 | + * Constructs a weigher that determines a confidence based on a distance. A {@link Distance#NULL zero distance} |
|
| 43 | + * will yield a confidence of 1; a distance of <code>halfConfidence</code> will return a confidence of .5, and the |
|
| 44 | + * confidence will decrease hyperbolically with increasing distance. |
|
| 45 | + */ |
|
| 46 | + Weigher<Position> createHyperbolicDistanceWeigher(Distance halfConfidence); |
|
| 47 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/HasConfidence.java
| ... | ... | @@ -0,0 +1,91 @@ |
| 1 | +package com.sap.sse.common.confidence; |
|
| 2 | + |
|
| 3 | +import java.io.Serializable; |
|
| 4 | + |
|
| 5 | +import com.sap.sse.common.Distance; |
|
| 6 | +import com.sap.sse.common.TimePoint; |
|
| 7 | +import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 8 | + |
|
| 9 | +/** |
|
| 10 | + * Some values, particularly those obtained from real-world measurements, are not always accurate. Some values are |
|
| 11 | + * derived by interpolating or extrapolating data series obtained through measurement or even estimation. Some values |
|
| 12 | + * are simply guessed by humans and entered into the system. |
|
| 13 | + * <p> |
|
| 14 | + * |
|
| 15 | + * All those values have a certain level of confidence. In case multiple sources of information about the same entity or |
|
| 16 | + * phenomenon are available, knowing the confidence of each value helps in weighing and averaging these values more |
|
| 17 | + * properly than would be possible without a confidence value. |
|
| 18 | + * <p> |
|
| 19 | + * |
|
| 20 | + * In simple cases, the type used to compute a weighed average over the things equipped with a confidence level is the |
|
| 21 | + * same as the type of the things themselves. In particular, this is the case for scalar types such as {@link Double} |
|
| 22 | + * and {@link Distance}. For non-scalar values, averaging may be non-trivial. For example, averaging a bearing cannot |
|
| 23 | + * simply happen by computing the arithmetic average of the bearing's angles. Instead, an intermediate structure |
|
| 24 | + * providing the sinus and cosinus values of the bearing's angle is used to compute the weighed average tangens. |
|
| 25 | + * <p> |
|
| 26 | + * |
|
| 27 | + * Generally, the relationship between the type implementing this interface, the <code>ValueType</code> and the |
|
| 28 | + * <code>AveragesTo</code> type is this: an instance of the implementing type can transform itself into a |
|
| 29 | + * {@link ScalableValue} which is then used for computing a weighed sum. The values' weight is their |
|
| 30 | + * {@link #getConfidence() confidence}. The sum (which is still a {@link ScalableValue} because |
|
| 31 | + * {@link ScalableValue#add(ScalableValue)} returns again a {@link ScalableValue}) is then |
|
| 32 | + * {@link ScalableValue#divide(double) divided} by the sum of the confidences. This "division" is expected to |
|
| 33 | + * produce an object of type <code>AveragesTo</code>. Usually, <code>AveragesTo</code> would be the same as the class |
|
| 34 | + * implementing this interface. |
|
| 35 | + * |
|
| 36 | + * @author Axel Uhl (d043530) |
|
| 37 | + * |
|
| 38 | + * @param <ValueType> |
|
| 39 | + * the type of the scalable value used for scalar operations during aggregation |
|
| 40 | + * @param <RelativeTo> |
|
| 41 | + * the type of the object relative to which the confidence applies; for example, if the |
|
| 42 | + * base type is a position and the <code>RelativeTo</code> type is {@link TimePoint}, |
|
| 43 | + * the confidence of the position is relative to a certain time point. Together with |
|
| 44 | + * a correspondingly-typed weigher, such a value with confidence can be aggregated with |
|
| 45 | + * other values, again relative to (maybe a different) time point. |
|
| 46 | + */ |
|
| 47 | +public interface HasConfidence<ValueType, BaseType, RelativeTo> extends Serializable { |
|
| 48 | + /** |
|
| 49 | + * A confidence is a number between 0.0 and 1.0 (inclusive) where 0.0 means that the value is randomly guessed while |
|
| 50 | + * 1.0 means the value is authoritatively known for a fact. It represents the weight with which a value is to be |
|
| 51 | + * considered by averaging, interpolation and extrapolation algorithms. |
|
| 52 | + * <p> |
|
| 53 | + * |
|
| 54 | + * An averaging algorithm for a sequence of <code>n</code> tuples <code>(v1, c1), ..., (vn, cn)</code> of a value |
|
| 55 | + * <code>vi</code> with a confidence <code>ci</code> each can for example look like this: |
|
| 56 | + * <code>a := (c1*v1 + ... + cn*vn) / (c1 + ... + cn)</code>. For a single value with a confidence this trivially |
|
| 57 | + * results in <code>c1*v1 / (c1)</code> which is equivalent to <code>v1</code>. As another example, consider two |
|
| 58 | + * values with equal confidence <code>0.8</code>. Then, <code>a := (0.8*v1 + 0.8*vn) / (0.8 + 0.8)</code> which |
|
| 59 | + * resolves to <code>0.5*v1 + 0.5*v2</code> which is obviously the arithmetic mean of the two values. If one value |
|
| 60 | + * has confidence <code>0.8</code> and the other <code>0.4</code>, then |
|
| 61 | + * <code>a := (0.8*v1 + 0.4*vn) / (0.8 + 0.4)</code> which resolves to <code>2/3*v1 + 1/3*v2</code> which is a |
|
| 62 | + * weighed average. |
|
| 63 | + * <p> |
|
| 64 | + * |
|
| 65 | + * Note, that this doesn't exactly take facts for facts. In other words, if one value is provided with a confidence |
|
| 66 | + * of <code>1.0</code>, the average may still be influenced by other values. However, this cleanly resolves otherwise |
|
| 67 | + * mutually contradictory "facts" such a <code>(v1, 1.0), (v2, 1.0)</code> with <code>v1 != v2</code>. It is |
|
| 68 | + * considered bad practice to claim a fact as soon as it results from any kind of measurement or estimation. All |
|
| 69 | + * measurement devices produce some statistical errors, no matter how small (cf. Heisenberg ;-) ). |
|
| 70 | + */ |
|
| 71 | + double getConfidence(); |
|
| 72 | + |
|
| 73 | + /** |
|
| 74 | + * The confidence attached to a value is usually relative to some reference point, such as a time point or |
|
| 75 | + * a position. For example, when a <code>GPSFixTrack</code> is asked to deliver an estimation for the tracked item's |
|
| 76 | + * {@link Position} at some given {@link TimePoint}, the track computes some average from a number of GPS fixes. The resulting |
|
| 77 | + * position has a certain confidence, depending on the time differences between the fixes and the time point for which |
|
| 78 | + * the position estimation was requested. The result therefore carries this reference time point for which the estimation |
|
| 79 | + * was requested so that when the result is to be used in further estimations it is clear relative to which time point the |
|
| 80 | + * confidence is to be interpreted.<p> |
|
| 81 | + * |
|
| 82 | + * In this context, a single GPS fix is a measurement whose values may also have a confidence attached. This confidence could be |
|
| 83 | + * regarded as relative to the fix's time point. |
|
| 84 | + */ |
|
| 85 | + RelativeTo getRelativeTo(); |
|
| 86 | + |
|
| 87 | + /** |
|
| 88 | + * The object annotated by a confidence |
|
| 89 | + */ |
|
| 90 | + BaseType getObject(); |
|
| 91 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/Weigher.java
| ... | ... | @@ -0,0 +1,19 @@ |
| 1 | +package com.sap.sse.common.confidence; |
|
| 2 | + |
|
| 3 | +import java.io.Serializable; |
|
| 4 | + |
|
| 5 | +/** |
|
| 6 | + * A weigher can compute a confidence value for a distance of two <code>RelativeTo</code> objects. |
|
| 7 | + * |
|
| 8 | + * @author Axel Uhl (d043530) |
|
| 9 | + */ |
|
| 10 | +public interface Weigher<RelativeTo> extends Serializable { |
|
| 11 | + /** |
|
| 12 | + * Computes a confidence, based on some weighed notion of "distance" between the two <code>RelativeTo</code> objects. |
|
| 13 | + * |
|
| 14 | + * @param fix the reference point of some object for which to determine the confidence value |
|
| 15 | + * @param request the reference point provided with some aggregation request; the confidence value returned for the fix is |
|
| 16 | + * relative to the request's reference point. |
|
| 17 | + */ |
|
| 18 | + double getConfidence(RelativeTo fix, RelativeTo request); |
|
| 19 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/impl/BearingWithConfidenceImpl.java
| ... | ... | @@ -0,0 +1,22 @@ |
| 1 | +package com.sap.sse.common.confidence.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Bearing; |
|
| 4 | +import com.sap.sse.common.DoublePair; |
|
| 5 | +import com.sap.sse.common.confidence.BearingWithConfidence; |
|
| 6 | +import com.sap.sse.common.scalablevalue.IsScalable; |
|
| 7 | +import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 8 | +import com.sap.sse.common.scalablevalue.impl.ScalableBearing; |
|
| 9 | + |
|
| 10 | +public class BearingWithConfidenceImpl<RelativeTo> extends HasConfidenceImpl<DoublePair, Bearing, RelativeTo> |
|
| 11 | +implements BearingWithConfidence<RelativeTo>, IsScalable<DoublePair, Bearing> { |
|
| 12 | + private static final long serialVersionUID = 1624026377840747818L; |
|
| 13 | + |
|
| 14 | + public BearingWithConfidenceImpl(Bearing bearing, double confidence, RelativeTo relativeTo) { |
|
| 15 | + super(bearing, confidence, relativeTo); |
|
| 16 | + } |
|
| 17 | + |
|
| 18 | + @Override |
|
| 19 | + public ScalableValue<DoublePair, Bearing> getScalableValue() { |
|
| 20 | + return new ScalableBearing(getObject()); |
|
| 21 | + } |
|
| 22 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/impl/ConfidenceBasedAveragerFactoryImpl.java
| ... | ... | @@ -0,0 +1,58 @@ |
| 1 | +package com.sap.sse.common.confidence.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Distance; |
|
| 4 | +import com.sap.sse.common.Duration; |
|
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | +import com.sap.sse.common.TimePoint; |
|
| 7 | +import com.sap.sse.common.confidence.ConfidenceBasedAverager; |
|
| 8 | +import com.sap.sse.common.confidence.ConfidenceFactory; |
|
| 9 | +import com.sap.sse.common.confidence.Weigher; |
|
| 10 | + |
|
| 11 | +public class ConfidenceBasedAveragerFactoryImpl implements ConfidenceFactory { |
|
| 12 | + @Override |
|
| 13 | + public <RelativeTo> Weigher<RelativeTo> createConstantWeigher(final double constantConfidence) { |
|
| 14 | + return new Weigher<RelativeTo>() { |
|
| 15 | + private static final long serialVersionUID = 8693131975511149792L; |
|
| 16 | + |
|
| 17 | + @Override |
|
| 18 | + public double getConfidence(RelativeTo fix, RelativeTo request) { |
|
| 19 | + return constantConfidence; |
|
| 20 | + } |
|
| 21 | + }; |
|
| 22 | + } |
|
| 23 | + |
|
| 24 | + @Override |
|
| 25 | + public <ValueType, BaseType, RelativeTo> ConfidenceBasedAverager<ValueType, BaseType, RelativeTo> createAverager(Weigher<RelativeTo> weigher) { |
|
| 26 | + return new ConfidenceBasedAveragerImpl<ValueType, BaseType, RelativeTo>(weigher); |
|
| 27 | + } |
|
| 28 | + |
|
| 29 | + @Override |
|
| 30 | + public Weigher<TimePoint> createHyperbolicTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds) { |
|
| 31 | + return new HyperbolicTimeDifferenceWeigher(halfConfidenceAfterMilliseconds); |
|
| 32 | + } |
|
| 33 | + |
|
| 34 | + @Override |
|
| 35 | + public Weigher<TimePoint> createStandardDistributionTimeDifferenceWeigher(Duration standardDeviation) { |
|
| 36 | + return new StandardDistributionTimeDifferenceWeigher(standardDeviation); |
|
| 37 | + } |
|
| 38 | + |
|
| 39 | + @Override |
|
| 40 | + public Weigher<Position> createHyperbolicDistanceWeigher(Distance halfConfidence) { |
|
| 41 | + return new HyperbolicDistanceWeigher(halfConfidence); |
|
| 42 | + } |
|
| 43 | + |
|
| 44 | + @Override |
|
| 45 | + public Weigher<TimePoint> createHyperbolicSquaredTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds) { |
|
| 46 | + return new HyperbolicSquaredTimeDifferenceWeigher(halfConfidenceAfterMilliseconds); |
|
| 47 | + } |
|
| 48 | + |
|
| 49 | + @Override |
|
| 50 | + public Weigher<TimePoint> createExponentialTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds) { |
|
| 51 | + return new ExponentialTimeDifferenceWeigher(halfConfidenceAfterMilliseconds); |
|
| 52 | + } |
|
| 53 | + |
|
| 54 | + @Override |
|
| 55 | + public Weigher<TimePoint> createExponentialTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds, double minimumConfidence) { |
|
| 56 | + return new ExponentialTimeDifferenceWeigher(halfConfidenceAfterMilliseconds, minimumConfidence); |
|
| 57 | + } |
|
| 58 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/impl/ConfidenceBasedAveragerImpl.java
| ... | ... | @@ -0,0 +1,87 @@ |
| 1 | +package com.sap.sse.common.confidence.impl; |
|
| 2 | + |
|
| 3 | +import java.util.Iterator; |
|
| 4 | + |
|
| 5 | +import com.sap.sse.common.confidence.ConfidenceBasedAverager; |
|
| 6 | +import com.sap.sse.common.confidence.HasConfidence; |
|
| 7 | +import com.sap.sse.common.confidence.Weigher; |
|
| 8 | +import com.sap.sse.common.scalablevalue.HasConfidenceAndIsScalable; |
|
| 9 | +import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 10 | + |
|
| 11 | + |
|
| 12 | +/** |
|
| 13 | + * A set of values that {@link HasConfidence have a confidence attached} can be averaged using the confidence value to |
|
| 14 | + * weigh values with greater confidence more than those with lesser confidence. It implements the following algorithm |
|
| 15 | + * for a sequence of <code>n</code> tuples <code>(v1, c1), ..., (vn, cn)</code> of a value <code>vi</code> with a |
|
| 16 | + * confidence <code>ci</code> each:<p> |
|
| 17 | + * |
|
| 18 | + * <code>a := (c1*v1 + ... + cn*vn) / (c1 + ... + cn)</code>. For a single value with a confidence this trivially |
|
| 19 | + * results in <code>c1*v1 / (c1)</code> which is equivalent to <code>v1</code>. As another example, consider two values |
|
| 20 | + * with equal confidence <code>0.8</code>. Then, <code>a := (0.8*v1 + 0.8*vn) / (0.8 + 0.8)</code> which resolves to |
|
| 21 | + * <code>0.5*v1 + 0.5*v2</code> which is obviously the arithmetic mean of the two values. If one value has confidence |
|
| 22 | + * <code>0.8</code> and the other <code>0.4</code>, then <code>a := (0.8*v1 + 0.4*vn) / (0.8 + 0.4)</code> which |
|
| 23 | + * resolves to <code>2/3*v1 + 1/3*v2</code> which is a weighed average. |
|
| 24 | + * <p> |
|
| 25 | + * |
|
| 26 | + * Note, that this doesn't exactly take facts for facts. In other words, if one value is provided with a confidence of |
|
| 27 | + * <code>1.0</code>, the average may still be influenced by other values. However, this cleanly resolves otherwise |
|
| 28 | + * mutually contradictory "facts" such a <code>(v1, 1.0), (v2, 1.0)</code> with <code>v1 != v2</code>. It is considered |
|
| 29 | + * bad practice to claim a fact as soon as it results from any kind of measurement or estimation. All measurement |
|
| 30 | + * devices produce some statistical errors, no matter how small (cf. Heisenberg ;-) ). |
|
| 31 | + * |
|
| 32 | + * @author Axel Uhl (d043530) |
|
| 33 | + */ |
|
| 34 | +public class ConfidenceBasedAveragerImpl<ValueType, BaseType, RelativeTo> implements ConfidenceBasedAverager<ValueType, BaseType, RelativeTo> { |
|
| 35 | + private final Weigher<RelativeTo> weigher; |
|
| 36 | + |
|
| 37 | + /** |
|
| 38 | + * @param weigher |
|
| 39 | + * If <code>null</code>, 1.0 will be assumed as default confidence for all values provided, regardless |
|
| 40 | + * the reference point relative to which the average is to be computed |
|
| 41 | + */ |
|
| 42 | + public ConfidenceBasedAveragerImpl(Weigher<RelativeTo> weigher) { |
|
| 43 | + this.weigher = weigher; |
|
| 44 | + } |
|
| 45 | + |
|
| 46 | + @Override |
|
| 47 | + public HasConfidence<ValueType, BaseType, RelativeTo> getAverage( |
|
| 48 | + Iterable<? extends HasConfidenceAndIsScalable<ValueType, BaseType, RelativeTo>> values, RelativeTo at) { |
|
| 49 | + return values == null ? null : getAverage(values.iterator(), at); |
|
| 50 | + } |
|
| 51 | + |
|
| 52 | + @Override |
|
| 53 | + public HasConfidence<ValueType, BaseType, RelativeTo> getAverage( |
|
| 54 | + Iterator<? extends HasConfidenceAndIsScalable<ValueType, BaseType, RelativeTo>> values, RelativeTo at) { |
|
| 55 | + if (values == null || !values.hasNext()) { |
|
| 56 | + return null; |
|
| 57 | + } else { |
|
| 58 | + ScalableValue<ValueType, BaseType> numerator = null; |
|
| 59 | + double confidenceSum = 0; |
|
| 60 | + int count = 0; |
|
| 61 | + while (values.hasNext()) { |
|
| 62 | + HasConfidenceAndIsScalable<ValueType, BaseType, RelativeTo> next = values.next(); |
|
| 63 | + double relativeWeight = getWeight(next, at); |
|
| 64 | + ScalableValue<ValueType, BaseType> weightedNext = next.getScalableValue().multiply(relativeWeight); |
|
| 65 | + if (numerator == null) { |
|
| 66 | + numerator = weightedNext; |
|
| 67 | + } else { |
|
| 68 | + numerator = numerator.add(weightedNext); |
|
| 69 | + } |
|
| 70 | + confidenceSum += relativeWeight; |
|
| 71 | + count++; |
|
| 72 | + } |
|
| 73 | + // TODO consider greater variance to reduce the confidence |
|
| 74 | + double newConfidence = confidenceSum / count; |
|
| 75 | + BaseType result = numerator.divide(confidenceSum); |
|
| 76 | + return new HasConfidenceImpl<ValueType, BaseType, RelativeTo>(result, newConfidence, at); |
|
| 77 | + } |
|
| 78 | + } |
|
| 79 | + |
|
| 80 | + protected double getWeight(HasConfidenceAndIsScalable<ValueType, BaseType, RelativeTo> next, RelativeTo at) { |
|
| 81 | + return (getWeigher() == null ? 1.0 : getWeigher().getConfidence(next.getRelativeTo(), at)) * next.getConfidence(); |
|
| 82 | + } |
|
| 83 | + |
|
| 84 | + private Weigher<RelativeTo> getWeigher() { |
|
| 85 | + return weigher; |
|
| 86 | + } |
|
| 87 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/impl/ExponentialTimeDifferenceWeigher.java
| ... | ... | @@ -0,0 +1,37 @@ |
| 1 | +package com.sap.sse.common.confidence.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.TimePoint; |
|
| 4 | +import com.sap.sse.common.confidence.Weigher; |
|
| 5 | + |
|
| 6 | +/** |
|
| 7 | + * The weigher computes an exponentially-decreasing weight based on the time difference of two {@link TimePoint}s. |
|
| 8 | + * The weigher can be configured by the time difference after which the confidence is halved. A minimum confidence can |
|
| 9 | + * optionally be set. |
|
| 10 | + * |
|
| 11 | + * @author Axel Uhl (d043530) |
|
| 12 | + */ |
|
| 13 | +public class ExponentialTimeDifferenceWeigher implements Weigher<TimePoint> { |
|
| 14 | + private static final long serialVersionUID = 1832731495731693670L; |
|
| 15 | + |
|
| 16 | + private final static double logHalf = Math.log(0.5); |
|
| 17 | + |
|
| 18 | + private final long halfConfidenceAfterMilliseconds; |
|
| 19 | + |
|
| 20 | + private final double minimumConfidence; |
|
| 21 | + |
|
| 22 | + public ExponentialTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds, double minimumConfidence) { |
|
| 23 | + this.halfConfidenceAfterMilliseconds = halfConfidenceAfterMilliseconds; |
|
| 24 | + this.minimumConfidence = minimumConfidence; |
|
| 25 | + } |
|
| 26 | + |
|
| 27 | + public ExponentialTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds) { |
|
| 28 | + this(halfConfidenceAfterMilliseconds, /* minimumConfidence */ 0); |
|
| 29 | + } |
|
| 30 | + |
|
| 31 | + @Override |
|
| 32 | + public double getConfidence(TimePoint fix, TimePoint request) { |
|
| 33 | + return Math.max(minimumConfidence, |
|
| 34 | + Math.exp(logHalf * ((double) (Math.abs(request.asMillis() - fix.asMillis())) / (double) halfConfidenceAfterMilliseconds))); |
|
| 35 | + } |
|
| 36 | + |
|
| 37 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/impl/HasConfidenceImpl.java
| ... | ... | @@ -0,0 +1,36 @@ |
| 1 | +package com.sap.sse.common.confidence.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.confidence.HasConfidence; |
|
| 4 | + |
|
| 5 | +public class HasConfidenceImpl<ValueType, BaseType, RelativeTo> implements HasConfidence<ValueType, BaseType, RelativeTo> { |
|
| 6 | + private static final long serialVersionUID = -1635823148449693024L; |
|
| 7 | + private final double confidence; |
|
| 8 | + private final RelativeTo relativeTo; |
|
| 9 | + private final BaseType object; |
|
| 10 | + |
|
| 11 | + public HasConfidenceImpl(BaseType object, double confidence, RelativeTo relativeTo) { |
|
| 12 | + this.confidence = confidence; |
|
| 13 | + this.relativeTo = relativeTo; |
|
| 14 | + this.object = object; |
|
| 15 | + } |
|
| 16 | + |
|
| 17 | + @Override |
|
| 18 | + public double getConfidence() { |
|
| 19 | + return confidence; |
|
| 20 | + } |
|
| 21 | + |
|
| 22 | + @Override |
|
| 23 | + public RelativeTo getRelativeTo() { |
|
| 24 | + return relativeTo; |
|
| 25 | + } |
|
| 26 | + |
|
| 27 | + @Override |
|
| 28 | + public BaseType getObject() { |
|
| 29 | + return object; |
|
| 30 | + } |
|
| 31 | + |
|
| 32 | + @Override |
|
| 33 | + public String toString() { |
|
| 34 | + return ""+getObject()+"@"+getConfidence(); |
|
| 35 | + } |
|
| 36 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/impl/HyperbolicDistanceWeigher.java
| ... | ... | @@ -0,0 +1,53 @@ |
| 1 | +package com.sap.sse.common.confidence.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Distance; |
|
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | +import com.sap.sse.common.confidence.Weigher; |
|
| 6 | + |
|
| 7 | +/** |
|
| 8 | + * Uses {@link Position#getQuickApproximateNauticalMileDistance(Position)} to come |
|
| 9 | + * to a quick and reasonably fair weight for distances where the weight asymptotically |
|
| 10 | + * decreases hyperbolically with distance. |
|
| 11 | + * |
|
| 12 | + * @author Axel Uhl (d043530) |
|
| 13 | + * |
|
| 14 | + */ |
|
| 15 | +public class HyperbolicDistanceWeigher implements Weigher<Position> { |
|
| 16 | + private static final long serialVersionUID = 5521299690322077224L; |
|
| 17 | + |
|
| 18 | + private final Distance halfConfidence; |
|
| 19 | + |
|
| 20 | + public HyperbolicDistanceWeigher(Distance halfConfidence) { |
|
| 21 | + this.halfConfidence = halfConfidence; |
|
| 22 | + } |
|
| 23 | + |
|
| 24 | + /** |
|
| 25 | + * Postconditions: |
|
| 26 | + * <pre> |
|
| 27 | + * |fix-request|=halfConfidence ==> result==0.5 |
|
| 28 | + * 0 <= result <= 1 |
|
| 29 | + * fix==request ==> result==1 |
|
| 30 | + * </pre> |
|
| 31 | + * |
|
| 32 | + * This implies the following formula for result := f(x): |
|
| 33 | + * |
|
| 34 | + * <pre> |
|
| 35 | + * for x := |fix-request| with x>=0: |
|
| 36 | + * f(x) := c/(x+y) |
|
| 37 | + * f(0) = 1 = c/y ==> c = y |
|
| 38 | + * f(halfConfidence) = 0.5 = c/(halfConfidence+y) |
|
| 39 | + * => c/y = 2c/(halfConfidence+y) |
|
| 40 | + * <=> 1/y = 2/(halfConfidence+y) |
|
| 41 | + * <=> halfConfidence + y = 2y |
|
| 42 | + * <=> y = halfConfidence |
|
| 43 | + * => c = halfConfidence |
|
| 44 | + * </pre> |
|
| 45 | + */ |
|
| 46 | + @Override |
|
| 47 | + public double getConfidence(Position fix, Position request) { |
|
| 48 | + double x = fix.getQuickApproximateNauticalMileDistance(request); |
|
| 49 | + double c = halfConfidence.getNauticalMiles(); |
|
| 50 | + double y = c; |
|
| 51 | + return c/(x+y); |
|
| 52 | + } |
|
| 53 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/impl/HyperbolicSquaredTimeDifferenceWeigher.java
| ... | ... | @@ -0,0 +1,44 @@ |
| 1 | +package com.sap.sse.common.confidence.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.TimePoint; |
|
| 4 | +import com.sap.sse.common.confidence.Weigher; |
|
| 5 | + |
|
| 6 | +public class HyperbolicSquaredTimeDifferenceWeigher implements Weigher<TimePoint> { |
|
| 7 | + private static final long serialVersionUID = 4378168079868145134L; |
|
| 8 | + private final long halfConfidenceAfterMilliseconds; |
|
| 9 | + |
|
| 10 | + public HyperbolicSquaredTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds) { |
|
| 11 | + this.halfConfidenceAfterMilliseconds = halfConfidenceAfterMilliseconds; |
|
| 12 | + } |
|
| 13 | + |
|
| 14 | + /** |
|
| 15 | + * Postconditions: |
|
| 16 | + * <pre> |
|
| 17 | + * |fix-request|=halfConfidenceAfterMilliseconds ==> result==0.5 |
|
| 18 | + * 0 <= result <= 1 |
|
| 19 | + * fix=request ==> result==1 |
|
| 20 | + * With request approaching infinity, the function grows with the reciprocal of request squared |
|
| 21 | + * </pre> |
|
| 22 | + * |
|
| 23 | + * This implies the following formula for result := f(x): |
|
| 24 | + * |
|
| 25 | + * <pre> |
|
| 26 | + * for x := |fix-request| with x>=0: |
|
| 27 | + * f(x) := c/(x^2+y) |
|
| 28 | + * f(0) = 1 = c/y ==> c = y |
|
| 29 | + * f(halfConfidenceAfterMilliseconds) = 0.5 = c/(halfConfidenceAfterMilliseconds+y) |
|
| 30 | + * => c/y = 2c/(halfConfidenceAfterMilliseconds+y) |
|
| 31 | + * <=> 1/y = 2/(halfConfidenceAfterMilliseconds+y) |
|
| 32 | + * <=> halfConfidenceAfterMilliseconds + y = 2y |
|
| 33 | + * <=> y = halfConfidenceAfterMilliseconds |
|
| 34 | + * => c = halfConfidenceAfterMilliseconds |
|
| 35 | + * </pre> |
|
| 36 | + */ |
|
| 37 | + @Override |
|
| 38 | + public double getConfidence(TimePoint fix, TimePoint request) { |
|
| 39 | + double x = Math.abs(fix.asMillis() - request.asMillis()); |
|
| 40 | + double c = halfConfidenceAfterMilliseconds*halfConfidenceAfterMilliseconds; |
|
| 41 | + double y = c; |
|
| 42 | + return c/(x*x+y); |
|
| 43 | + } |
|
| 44 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/impl/HyperbolicTimeDifferenceWeigher.java
| ... | ... | @@ -0,0 +1,43 @@ |
| 1 | +package com.sap.sse.common.confidence.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.TimePoint; |
|
| 4 | +import com.sap.sse.common.confidence.Weigher; |
|
| 5 | + |
|
| 6 | +public class HyperbolicTimeDifferenceWeigher implements Weigher<TimePoint> { |
|
| 7 | + private static final long serialVersionUID = 4378168079868145134L; |
|
| 8 | + private final long halfConfidenceAfterMilliseconds; |
|
| 9 | + |
|
| 10 | + public HyperbolicTimeDifferenceWeigher(long halfConfidenceAfterMilliseconds) { |
|
| 11 | + this.halfConfidenceAfterMilliseconds = halfConfidenceAfterMilliseconds; |
|
| 12 | + } |
|
| 13 | + |
|
| 14 | + /** |
|
| 15 | + * Postconditions: |
|
| 16 | + * <pre> |
|
| 17 | + * |fix-request|=halfConfidenceAfterMilliseconds ==> result==0.5 |
|
| 18 | + * 0 <= result <= 1 |
|
| 19 | + * fix==request ==> result==1 |
|
| 20 | + * </pre> |
|
| 21 | + * |
|
| 22 | + * This implies the following formula for result := f(x): |
|
| 23 | + * |
|
| 24 | + * <pre> |
|
| 25 | + * for x := |fix-request| with x>=0: |
|
| 26 | + * f(x) := c/(x+y) |
|
| 27 | + * f(0) = 1 = c/y ==> c = y |
|
| 28 | + * f(halfConfidenceAfterMilliseconds) = 0.5 = c/(halfConfidenceAfterMilliseconds+y) |
|
| 29 | + * => c/y = 2c/(halfConfidenceAfterMilliseconds+y) |
|
| 30 | + * <=> 1/y = 2/(halfConfidenceAfterMilliseconds+y) |
|
| 31 | + * <=> halfConfidenceAfterMilliseconds + y = 2y |
|
| 32 | + * <=> y = halfConfidenceAfterMilliseconds |
|
| 33 | + * => c = halfConfidenceAfterMilliseconds |
|
| 34 | + * </pre> |
|
| 35 | + */ |
|
| 36 | + @Override |
|
| 37 | + public double getConfidence(TimePoint fix, TimePoint request) { |
|
| 38 | + double x = Math.abs(fix.asMillis() - request.asMillis()); |
|
| 39 | + double c = halfConfidenceAfterMilliseconds; |
|
| 40 | + double y = halfConfidenceAfterMilliseconds; |
|
| 41 | + return c/(x+y); |
|
| 42 | + } |
|
| 43 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/impl/LazyDividedScaledPosition.java
| ... | ... | @@ -0,0 +1,47 @@ |
| 1 | +package com.sap.sse.common.confidence.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.AbstractPosition; |
|
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | +import com.sap.sse.common.scalablevalue.impl.ScalablePosition; |
|
| 6 | + |
|
| 7 | +/** |
|
| 8 | + * A wind object's position is currently not very frequently used. However, during averaging, computing the average |
|
| 9 | + * position of a number of wind fixes costs quite a few CPU cycles. By making this calculation lazy / on-demand we may |
|
| 10 | + * save some of them. |
|
| 11 | + * |
|
| 12 | + * @author Axel Uhl (d043530) |
|
| 13 | + * |
|
| 14 | + */ |
|
| 15 | +public class LazyDividedScaledPosition extends AbstractPosition { |
|
| 16 | + private static final long serialVersionUID = -4755705843467806809L; |
|
| 17 | + private final ScalablePosition scalablePosition; |
|
| 18 | + private final double divisor; |
|
| 19 | + private Position position; |
|
| 20 | + |
|
| 21 | + public LazyDividedScaledPosition(ScalablePosition scalablePosition, double divisor) { |
|
| 22 | + super(); |
|
| 23 | + this.scalablePosition = scalablePosition; |
|
| 24 | + this.divisor = divisor; |
|
| 25 | + this.position = null; |
|
| 26 | + } |
|
| 27 | + |
|
| 28 | + @Override |
|
| 29 | + public synchronized double getLatRad() { |
|
| 30 | + if (position == null) { |
|
| 31 | + resolve(); |
|
| 32 | + } |
|
| 33 | + return position.getLatRad(); |
|
| 34 | + } |
|
| 35 | + |
|
| 36 | + @Override |
|
| 37 | + public synchronized double getLngRad() { |
|
| 38 | + if (position == null) { |
|
| 39 | + resolve(); |
|
| 40 | + } |
|
| 41 | + return position.getLngRad(); |
|
| 42 | + } |
|
| 43 | + |
|
| 44 | + private synchronized void resolve() { |
|
| 45 | + position = scalablePosition.divide(divisor); |
|
| 46 | + } |
|
| 47 | +} |
|
| ... | ... | \ No newline at end of file |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/impl/PositionAndTimePointWeigher.java
| ... | ... | @@ -0,0 +1,53 @@ |
| 1 | +package com.sap.sse.common.confidence.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Distance; |
|
| 4 | +import com.sap.sse.common.Duration; |
|
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | +import com.sap.sse.common.TimePoint; |
|
| 7 | +import com.sap.sse.common.Util; |
|
| 8 | +import com.sap.sse.common.confidence.ConfidenceFactory; |
|
| 9 | +import com.sap.sse.common.confidence.Weigher; |
|
| 10 | + |
|
| 11 | +/** |
|
| 12 | + * A weigher that uses a {@link Position} and a {@link TimePoint} to compute a confidence based on |
|
| 13 | + * time and space distance. If the <code>fix</code> or the <code>request</code> parameter in a call |
|
| 14 | + * to {@link #getConfidence(com.sap.sse.common.Util.Pair, com.sap.sse.common.Util.Pair)} have a <code>null</code> |
|
| 15 | + * {@link Position} then no distance-based confidence is considered, and only the time difference is taken |
|
| 16 | + * into account. Otherwise, the time-based confidence and the distance-based confidence are multiplied to |
|
| 17 | + * result in the total confidence.<p> |
|
| 18 | + * |
|
| 19 | + * @author Axel Uhl (d043530) |
|
| 20 | + * |
|
| 21 | + */ |
|
| 22 | +public class PositionAndTimePointWeigher implements Weigher<Util.Pair<Position, TimePoint>> { |
|
| 23 | + private final static String USE_POSITION_SYSTEM_PROPERTY_NAME = "spatialWind"; |
|
| 24 | + private static final long serialVersionUID = -262428237738496818L; |
|
| 25 | + private final Weigher<TimePoint> timeWeigher; |
|
| 26 | + private final Weigher<Position> distanceWeigher; |
|
| 27 | + private final boolean usePosition; |
|
| 28 | + |
|
| 29 | + public PositionAndTimePointWeigher(Duration halfConfidenceAfter, Distance halfConfidenceDistance) { |
|
| 30 | + timeWeigher = ConfidenceFactory.INSTANCE.createHyperbolicTimeDifferenceWeigher( |
|
| 31 | + /* use as standard deviation */ halfConfidenceAfter.asMillis()); |
|
| 32 | + distanceWeigher = ConfidenceFactory.INSTANCE.createHyperbolicDistanceWeigher(halfConfidenceDistance); |
|
| 33 | + this.usePosition = Boolean.valueOf(System.getProperty(USE_POSITION_SYSTEM_PROPERTY_NAME, "true")); |
|
| 34 | + } |
|
| 35 | + |
|
| 36 | + @Override |
|
| 37 | + public double getConfidence(Util.Pair<Position, TimePoint> fix, Util.Pair<Position, TimePoint> reference) { |
|
| 38 | + final double timeConfidence = timeWeigher.getConfidence(fix.getB(), reference.getB()); |
|
| 39 | + final double distanceConfidence; |
|
| 40 | + // For now, we make the use of the position for spatial wind field calculation optional. It has to be turned |
|
| 41 | + // on by providing a system property using -DspatialWind=true |
|
| 42 | + if (usePosition && reference != null) { |
|
| 43 | + if (fix.getA() != null && reference.getA() != null) { |
|
| 44 | + distanceConfidence = distanceWeigher.getConfidence(fix.getA(), reference.getA()); |
|
| 45 | + } else { |
|
| 46 | + distanceConfidence = 0.1; |
|
| 47 | + } |
|
| 48 | + } else { |
|
| 49 | + distanceConfidence = 1; |
|
| 50 | + } |
|
| 51 | + return timeConfidence * distanceConfidence; |
|
| 52 | + } |
|
| 53 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/confidence/impl/StandardDistributionTimeDifferenceWeigher.java
| ... | ... | @@ -0,0 +1,23 @@ |
| 1 | +package com.sap.sse.common.confidence.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Duration; |
|
| 4 | +import com.sap.sse.common.TimePoint; |
|
| 5 | +import com.sap.sse.common.confidence.Weigher; |
|
| 6 | + |
|
| 7 | +public class StandardDistributionTimeDifferenceWeigher implements Weigher<TimePoint> { |
|
| 8 | + private static final long serialVersionUID = 4378168079868145134L; |
|
| 9 | + private final double standardDeviationAsMillis; |
|
| 10 | + private final double oneDividedByStandardDeviationTimesSquareRootOfTwoPi; |
|
| 11 | + |
|
| 12 | + public StandardDistributionTimeDifferenceWeigher(Duration standardDeviation) { |
|
| 13 | + this.standardDeviationAsMillis = standardDeviation.asMillis(); |
|
| 14 | + this.oneDividedByStandardDeviationTimesSquareRootOfTwoPi = 1/(this.standardDeviationAsMillis*Math.sqrt(2*Math.PI)); |
|
| 15 | + } |
|
| 16 | + |
|
| 17 | + @Override |
|
| 18 | + public double getConfidence(TimePoint fix, TimePoint request) { |
|
| 19 | + double xMinusMu = Math.abs(fix.asMillis() - request.asMillis()); |
|
| 20 | + double xMinusMuDividedByStandardDeviation = xMinusMu/standardDeviationAsMillis; |
|
| 21 | + return oneDividedByStandardDeviationTimesSquareRootOfTwoPi * Math.exp(-0.5*xMinusMuDividedByStandardDeviation*xMinusMuDividedByStandardDeviation); |
|
| 22 | + } |
|
| 23 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/AbstractSpeedWithAbstractBearingImpl.java
| ... | ... | @@ -0,0 +1,101 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.AbstractSpeedImpl; |
|
| 4 | +import com.sap.sse.common.Bearing; |
|
| 5 | +import com.sap.sse.common.CourseChange; |
|
| 6 | +import com.sap.sse.common.Distance; |
|
| 7 | +import com.sap.sse.common.Position; |
|
| 8 | +import com.sap.sse.common.Speed; |
|
| 9 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 10 | +import com.sap.sse.common.TimePoint; |
|
| 11 | + |
|
| 12 | +public abstract class AbstractSpeedWithAbstractBearingImpl extends AbstractSpeedImpl implements SpeedWithBearing { |
|
| 13 | + private static final long serialVersionUID = 6136100417593538013L; |
|
| 14 | + |
|
| 15 | + @Override |
|
| 16 | + public Position travelTo(Position pos, TimePoint from, TimePoint to) { |
|
| 17 | + return pos.translateGreatCircle(getBearing(), this.travel(from, to)); |
|
| 18 | + } |
|
| 19 | + |
|
| 20 | + @Override |
|
| 21 | + public String toString() { |
|
| 22 | + return super.toString()+" to "+getBearing().getDegrees()+"°"; |
|
| 23 | + } |
|
| 24 | + |
|
| 25 | + @Override |
|
| 26 | + public int hashCode() { |
|
| 27 | + return super.hashCode() ^ getBearing().hashCode(); |
|
| 28 | + } |
|
| 29 | + |
|
| 30 | + @Override |
|
| 31 | + public boolean equals(Object object) { |
|
| 32 | + return super.equals(object) && object instanceof SpeedWithBearing |
|
| 33 | + && getBearing().equals(((SpeedWithBearing) object).getBearing()); |
|
| 34 | + } |
|
| 35 | + |
|
| 36 | + @Override |
|
| 37 | + public SpeedWithBearing add(SpeedWithBearing other) { |
|
| 38 | + return AbstractSpeedWithAbstractBearingImpl.add(this, other); |
|
| 39 | + } |
|
| 40 | + |
|
| 41 | + @Override |
|
| 42 | + public CourseChange getCourseChangeRequiredToReach(SpeedWithBearing targetSpeedWithBearing) { |
|
| 43 | + return AbstractSpeedWithBearingImpl.getCourseChangeRequiredToReach(this, targetSpeedWithBearing); |
|
| 44 | + } |
|
| 45 | + |
|
| 46 | + public static CourseChange getCourseChangeRequiredToReach(SpeedWithBearing from, SpeedWithBearing to) { |
|
| 47 | + double courseChangeInDegrees = to.getBearing().getDegrees() - from.getBearing().getDegrees(); |
|
| 48 | + if (courseChangeInDegrees < -180.) { |
|
| 49 | + courseChangeInDegrees += 360.; |
|
| 50 | + } else if (courseChangeInDegrees > 180.) { |
|
| 51 | + courseChangeInDegrees -= 360.; |
|
| 52 | + } |
|
| 53 | + double speedChangeInKnots = to.getKnots() - from.getKnots(); |
|
| 54 | + return new CourseChangeImpl(courseChangeInDegrees, speedChangeInKnots); |
|
| 55 | + } |
|
| 56 | + |
|
| 57 | + @Override |
|
| 58 | + public SpeedWithBearing applyCourseChange(CourseChange courseChange) { |
|
| 59 | + return applyCourseChange(this, courseChange); |
|
| 60 | + } |
|
| 61 | + |
|
| 62 | + public static SpeedWithBearing applyCourseChange(SpeedWithBearing from, CourseChange courseChange) { |
|
| 63 | + double newBearingDeg = from.getBearing().getDegrees() + courseChange.getCourseChangeInDegrees(); |
|
| 64 | + if (newBearingDeg < 0) { |
|
| 65 | + newBearingDeg += 360; |
|
| 66 | + } else if (newBearingDeg > 360) { |
|
| 67 | + newBearingDeg -= 360; |
|
| 68 | + } |
|
| 69 | + Bearing newBearing = new DegreeBearingImpl(newBearingDeg); |
|
| 70 | + double newSpeedInKnots = from.getKnots()+courseChange.getSpeedChangeInKnots(); |
|
| 71 | + return new KnotSpeedWithBearingImpl(newSpeedInKnots, newBearing); |
|
| 72 | + } |
|
| 73 | + |
|
| 74 | + private final static TimePoint start = new MillisecondsTimePoint(0); |
|
| 75 | + private final static TimePoint end = start.plus(60000); |
|
| 76 | + |
|
| 77 | + public static Speed projectTo(SpeedWithBearing speedWithBearing, Position position, Bearing projectTo) { |
|
| 78 | + Position traveledOneMinute = speedWithBearing.travelTo(position, start, end); |
|
| 79 | + Position traveledToProjected = traveledOneMinute.projectToLineThrough(position, projectTo); |
|
| 80 | + Distance projectedDistance = position.getDistance(traveledToProjected); |
|
| 81 | + return projectedDistance.inTime(end.asMillis() - start.asMillis()); |
|
| 82 | + } |
|
| 83 | + |
|
| 84 | + @Override |
|
| 85 | + public Speed projectTo(Position position, Bearing projectTo) { |
|
| 86 | + return projectTo(this, position, projectTo); |
|
| 87 | + } |
|
| 88 | + |
|
| 89 | + public static SpeedWithBearing add(SpeedWithBearing first, SpeedWithBearing other) { |
|
| 90 | + double x = first.getMetersPerSecond()*Math.cos(first.getBearing().getRadians()) + other.getMetersPerSecond()*Math.cos(other.getBearing().getRadians()); |
|
| 91 | + double y = first.getMetersPerSecond()*Math.sin(first.getBearing().getRadians()) + other.getMetersPerSecond()*Math.sin(other.getBearing().getRadians()); |
|
| 92 | + double metersPerSecond = Math.sqrt(x*x+y*y); |
|
| 93 | + double directionRad = (2*Math.PI+Math.atan2(y, x))%(2*Math.PI); |
|
| 94 | + return new MeterPerSecondSpeedWithDegreeBearingImpl(metersPerSecond, new RadianBearingImpl(directionRad)); |
|
| 95 | + } |
|
| 96 | + |
|
| 97 | + @Override |
|
| 98 | + public SpeedWithBearing scale(double d) { |
|
| 99 | + return SpeedWithBearing.super.scale(d); |
|
| 100 | + } |
|
| 101 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/AbstractSpeedWithBearingImpl.java
| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Bearing; |
|
| 4 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 5 | + |
|
| 6 | +public abstract class AbstractSpeedWithBearingImpl extends AbstractSpeedWithAbstractBearingImpl implements SpeedWithBearing { |
|
| 7 | + private static final long serialVersionUID = -8594305027333573010L; |
|
| 8 | + /* #gwtnofinal */ private Bearing bearing; |
|
| 9 | + |
|
| 10 | + protected AbstractSpeedWithBearingImpl(final Bearing bearing) { |
|
| 11 | + this.bearing = bearing; |
|
| 12 | + } |
|
| 13 | + |
|
| 14 | + @Override |
|
| 15 | + public Bearing getBearing() { |
|
| 16 | + return bearing; |
|
| 17 | + } |
|
| 18 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/BearingChangeAnalyzerImpl.java
| ... | ... | @@ -0,0 +1,32 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Bearing; |
|
| 4 | +import com.sap.sse.common.BearingChangeAnalyzer; |
|
| 5 | + |
|
| 6 | +public class BearingChangeAnalyzerImpl implements BearingChangeAnalyzer { |
|
| 7 | + |
|
| 8 | + @Override |
|
| 9 | + public int didPass(Bearing courseBeforeManeuver, double totalCourseChangeInDegrees, Bearing courseAfterManeuver, |
|
| 10 | + Bearing wasThisCourseReachedAndCrossedDuringManeuver) { |
|
| 11 | + final int result; |
|
| 12 | + Bearing diffToCourseInQuestion = courseBeforeManeuver.getDifferenceTo(wasThisCourseReachedAndCrossedDuringManeuver); |
|
| 13 | + if (Math.signum(diffToCourseInQuestion.getDegrees()) == Math.signum(totalCourseChangeInDegrees)) { |
|
| 14 | + // simple case: the actual course change was greater than what was required in that direction to |
|
| 15 | + // reach the course in question |
|
| 16 | + result = (int) ((Math.abs(totalCourseChangeInDegrees) + 360. - Math.abs(diffToCourseInQuestion.getDegrees())) / 360.); |
|
| 17 | + } else { |
|
| 18 | + // more complicated: the smallest possible course change required may have been to a different direction than the |
|
| 19 | + // actual course change. The course in question may still have been reached and crossed in the actual course |
|
| 20 | + // change that points the other way has been great enough. Example: courseBeforeManeuver=355deg; |
|
| 21 | + // totalCourseChangeInDegrees=-357; courseAfterManeuver=358deg; wasThisCourseReachedAndCrossedDuringManeuver=000deg. |
|
| 22 | + // The answer has to be TRUE because the course changed to port and was almost a full circle, passing 000deg. |
|
| 23 | + // Still, the diffToCourseInQuestion is 005deg and positive. |
|
| 24 | + // Approach: revert the course change required; revert 005deg to 355deg and check again with this reverted course change. |
|
| 25 | + Bearing revertedDiffToCourseInQuestion = new DegreeBearingImpl(-360 * Math.signum(diffToCourseInQuestion |
|
| 26 | + .getDegrees())+diffToCourseInQuestion.getDegrees()); |
|
| 27 | + result = (int) ((Math.abs(totalCourseChangeInDegrees) + 360. - Math.abs(revertedDiffToCourseInQuestion.getDegrees())) / 360.); |
|
| 28 | + } |
|
| 29 | + return result; |
|
| 30 | + } |
|
| 31 | + |
|
| 32 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/BoundsImpl.java
| ... | ... | @@ -0,0 +1,186 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Bounds; |
|
| 4 | +import com.sap.sse.common.Distance; |
|
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | + |
|
| 7 | +public class BoundsImpl implements Bounds { |
|
| 8 | + private final Position sw; |
|
| 9 | + private final Position ne; |
|
| 10 | + private final boolean crossesDateLine; |
|
| 11 | + |
|
| 12 | + public BoundsImpl(Position sw, Position ne) { |
|
| 13 | + super(); |
|
| 14 | + this.sw = sw; |
|
| 15 | + this.ne = ne; |
|
| 16 | + crossesDateLine = ne.getLngDeg() < sw.getLngDeg(); |
|
| 17 | + } |
|
| 18 | + |
|
| 19 | + public BoundsImpl(Position position) { |
|
| 20 | + this(position, position); |
|
| 21 | + } |
|
| 22 | + |
|
| 23 | + @Override |
|
| 24 | + public Position getNorthWest() { |
|
| 25 | + return new DegreePosition(getNorthEast().getLatDeg(), getSouthWest().getLngDeg()); |
|
| 26 | + } |
|
| 27 | + |
|
| 28 | + @Override |
|
| 29 | + public Position getSouthEast() { |
|
| 30 | + return new DegreePosition(getSouthWest().getLatDeg(), getNorthEast().getLngDeg()); |
|
| 31 | + } |
|
| 32 | + |
|
| 33 | + @Override |
|
| 34 | + public Position getNorthEast() { |
|
| 35 | + return ne; |
|
| 36 | + } |
|
| 37 | + |
|
| 38 | + @Override |
|
| 39 | + public Position getSouthWest() { |
|
| 40 | + return sw; |
|
| 41 | + } |
|
| 42 | + |
|
| 43 | + /** |
|
| 44 | + * Considering whether or not this bounds object crosses the date line, calculates the width in degrees longitude |
|
| 45 | + * going from <code>west</code> to <code>east</code>. The result is always a non-negative number. |
|
| 46 | + */ |
|
| 47 | + private double getDistanceDeg(final double west, final double east) { |
|
| 48 | + final double diff = east-west; |
|
| 49 | + final double result; |
|
| 50 | + if (isCrossingDateLine(west, east)) { |
|
| 51 | + result = 360+diff; // diff is negative in this case |
|
| 52 | + } else { |
|
| 53 | + result = diff; |
|
| 54 | + } |
|
| 55 | + return result; |
|
| 56 | + } |
|
| 57 | + |
|
| 58 | + @Override |
|
| 59 | + public Bounds intersect(Bounds other) { |
|
| 60 | + final double maxSouthLatDeg = Math.max(getSouthWest().getLatDeg(), other.getSouthWest().getLatDeg()); |
|
| 61 | + final double minNorthLatDeg = Math.min(getNorthEast().getLatDeg(), other.getNorthEast().getLatDeg()); |
|
| 62 | + final double westDeg; |
|
| 63 | + if (containsLngDeg(other.getSouthWest().getLngDeg())) { |
|
| 64 | + westDeg = other.getSouthWest().getLngDeg(); |
|
| 65 | + } else if (other.containsLngDeg(getSouthWest().getLngDeg())) { |
|
| 66 | + westDeg = getSouthWest().getLngDeg(); |
|
| 67 | + } else { |
|
| 68 | + // no intersection |
|
| 69 | + westDeg = getSouthWest().getLngDeg(); |
|
| 70 | + } |
|
| 71 | + final double eastDeg; |
|
| 72 | + if (containsLngDeg(other.getNorthEast().getLngDeg())) { |
|
| 73 | + eastDeg = other.getNorthEast().getLngDeg(); |
|
| 74 | + } else if (other.containsLngDeg(getNorthEast().getLngDeg())) { |
|
| 75 | + eastDeg = getNorthEast().getLngDeg(); |
|
| 76 | + } else { |
|
| 77 | + // no intersection |
|
| 78 | + eastDeg = getSouthWest().getLngDeg(); |
|
| 79 | + } |
|
| 80 | + return new BoundsImpl(new DegreePosition(maxSouthLatDeg, westDeg), new DegreePosition(minNorthLatDeg, eastDeg)); |
|
| 81 | + } |
|
| 82 | + |
|
| 83 | + @Override |
|
| 84 | + public Bounds union(Bounds other) { |
|
| 85 | + final double minLatDeg = Math.min(getSouthWest().getLatDeg(), other.getSouthWest().getLatDeg()); |
|
| 86 | + final double maxLatDeg = Math.max(getNorthEast().getLatDeg(), other.getNorthEast().getLatDeg()); |
|
| 87 | + // For lng, we can go left or right around the earth; which way results in the smaller bounds? We have four options: |
|
| 88 | + final double[] west = new double[] { getSouthWest().getLngDeg(), other.getSouthWest().getLngDeg() }; |
|
| 89 | + final double[] east = new double[] { getNorthEast().getLngDeg(), other.getNorthEast().getLngDeg() }; |
|
| 90 | + double minLngDegDistance = Double.MAX_VALUE; |
|
| 91 | + double bestWest = 0; |
|
| 92 | + double bestEast = 0; |
|
| 93 | + for (int w=0; w<2; w++) { |
|
| 94 | + for (int e=0; e<2; e++) { |
|
| 95 | + double currentLngDegDistance; |
|
| 96 | + if (spansLngDeg(west[w], east[e], west[1 - w]) && spansLngDeg(west[w], east[e], east[1 - e]) |
|
| 97 | + && (currentLngDegDistance = Math.abs(getDistanceDeg(west[w], east[e]))) < minLngDegDistance) { |
|
| 98 | + minLngDegDistance = currentLngDegDistance; |
|
| 99 | + bestWest = west[w]; |
|
| 100 | + bestEast = east[e]; |
|
| 101 | + } |
|
| 102 | + } |
|
| 103 | + } |
|
| 104 | + return new BoundsImpl(new DegreePosition(minLatDeg, bestWest), new DegreePosition(maxLatDeg, bestEast)); |
|
| 105 | + } |
|
| 106 | + |
|
| 107 | + @Override |
|
| 108 | + public Bounds extend(Bounds other) { |
|
| 109 | + return union(other); |
|
| 110 | + } |
|
| 111 | + |
|
| 112 | + @Override |
|
| 113 | + public Bounds extend(Position p) { |
|
| 114 | + return union(new BoundsImpl(p, p)); |
|
| 115 | + } |
|
| 116 | + |
|
| 117 | + private boolean spansLngDeg(double westLngDeg, double eastLngDeg, double lngDeg) { |
|
| 118 | + return isCrossingDateLine(westLngDeg, eastLngDeg) |
|
| 119 | + ? (lngDeg >= westLngDeg && lngDeg <= 180) || (lngDeg >= -180 && lngDeg <= eastLngDeg) |
|
| 120 | + : westLngDeg <= lngDeg && lngDeg <= eastLngDeg; |
|
| 121 | + } |
|
| 122 | + |
|
| 123 | + private boolean isCrossingDateLine(double westLngDeg, double eastLngDeg) { |
|
| 124 | + return westLngDeg > eastLngDeg; |
|
| 125 | + } |
|
| 126 | + |
|
| 127 | + @Override |
|
| 128 | + public boolean intersects(Bounds other) { |
|
| 129 | + return (containsLatDeg(other.getSouthWest().getLatDeg()) || containsLatDeg(other.getNorthEast().getLatDeg()) || |
|
| 130 | + other.containsLatDeg(getSouthWest().getLatDeg()) || other.containsLatDeg(getNorthEast().getLatDeg())) |
|
| 131 | + && (containsLngDeg(other.getSouthWest().getLngDeg()) || containsLngDeg(other.getNorthEast().getLngDeg()) || |
|
| 132 | + other.containsLngDeg(getSouthWest().getLngDeg()) || other.containsLngDeg(getNorthEast().getLngDeg())); |
|
| 133 | + } |
|
| 134 | + |
|
| 135 | + @Override |
|
| 136 | + public boolean containsLatDeg(double latDeg) { |
|
| 137 | + return latDeg >= getSouthWest().getLatDeg() && latDeg <= getNorthEast().getLatDeg(); |
|
| 138 | + } |
|
| 139 | + |
|
| 140 | + @Override |
|
| 141 | + public boolean containsLngDeg(double lngDeg) { |
|
| 142 | + return spansLngDeg(getSouthWest().getLngDeg(), getNorthEast().getLngDeg(), lngDeg); |
|
| 143 | + } |
|
| 144 | + |
|
| 145 | + @Override |
|
| 146 | + public boolean contains(Position other) { |
|
| 147 | + return |
|
| 148 | + // lat contained: |
|
| 149 | + other.getLatDeg() >= getSouthWest().getLatDeg() && other.getLatDeg() <= getNorthEast().getLatDeg() && |
|
| 150 | + // lng contained: |
|
| 151 | + (isCrossesDateLine() |
|
| 152 | + // between SW and date line... |
|
| 153 | + ? (other.getLngDeg() <= 180 && other.getLngDeg() >= getSouthWest().getLngDeg()) || |
|
| 154 | + // ...or between date line and NE |
|
| 155 | + (other.getLngDeg() >= -180 && other.getLngDeg() <= getNorthEast().getLngDeg()) |
|
| 156 | + // these bounds are not crossing the date line; simple numeric comparison |
|
| 157 | + : other.getLngDeg() >= getSouthWest().getLngDeg() && other.getLngDeg() <= getNorthEast().getLngDeg()) |
|
| 158 | + ; |
|
| 159 | + } |
|
| 160 | + |
|
| 161 | + @Override |
|
| 162 | + public boolean contains(Bounds other) { |
|
| 163 | + return isCrossesDateLine() == other.isCrossesDateLine() && contains(other.getNorthEast()) && contains(other.getSouthWest()); |
|
| 164 | + } |
|
| 165 | + |
|
| 166 | + @Override |
|
| 167 | + public boolean isCrossesDateLine() { |
|
| 168 | + return crossesDateLine; |
|
| 169 | + } |
|
| 170 | + |
|
| 171 | + @Override |
|
| 172 | + public boolean isEmpty() { |
|
| 173 | + return getSouthWest().getLatDeg() >= getNorthEast().getLatDeg() || |
|
| 174 | + getSouthWest().getLngDeg() == getNorthEast().getLngDeg(); |
|
| 175 | + } |
|
| 176 | + |
|
| 177 | + @Override |
|
| 178 | + public Distance getDiameter() { |
|
| 179 | + return getNorthWest().getDistance(getSouthEast()); |
|
| 180 | + } |
|
| 181 | + |
|
| 182 | + @Override |
|
| 183 | + public String toString() { |
|
| 184 | + return "{SW: "+getSouthWest().toString()+", NE: "+getNorthEast().toString()+"}"; |
|
| 185 | + } |
|
| 186 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/CentralAngleDistance.java
| ... | ... | @@ -0,0 +1,35 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.AbstractDistance; |
|
| 4 | +import com.sap.sse.common.Distance; |
|
| 5 | +import com.sap.sse.common.Mile; |
|
| 6 | + |
|
| 7 | +public class CentralAngleDistance extends AbstractDistance { |
|
| 8 | + private static final long serialVersionUID = -388639688376644968L; |
|
| 9 | + private final double centralAngleRad; |
|
| 10 | + |
|
| 11 | + public CentralAngleDistance(double centralAngleRad) { |
|
| 12 | + super(); |
|
| 13 | + this.centralAngleRad = centralAngleRad; |
|
| 14 | + } |
|
| 15 | + |
|
| 16 | + @Override |
|
| 17 | + public double getMeters() { |
|
| 18 | + return getGeographicalMiles() * Mile.METERS_PER_GEOGRAPHICAL_MILE; |
|
| 19 | + } |
|
| 20 | + |
|
| 21 | + @Override |
|
| 22 | + public double getCentralAngleRad() { |
|
| 23 | + return centralAngleRad; |
|
| 24 | + } |
|
| 25 | + |
|
| 26 | + @Override |
|
| 27 | + public double getGeographicalMiles() { |
|
| 28 | + return getCentralAngleDeg() * 60.; |
|
| 29 | + } |
|
| 30 | + |
|
| 31 | + @Override |
|
| 32 | + public Distance scale(double factor) { |
|
| 33 | + return new CentralAngleDistance(factor*getCentralAngleRad()); |
|
| 34 | + } |
|
| 35 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/CourseChangeImpl.java
| ... | ... | @@ -0,0 +1,28 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.CourseChange; |
|
| 4 | + |
|
| 5 | +public class CourseChangeImpl implements CourseChange { |
|
| 6 | + private final double courseChangeInDegrees; |
|
| 7 | + private final double speedChangeInKnots; |
|
| 8 | + |
|
| 9 | + public CourseChangeImpl(double courseChangeInDegrees, double speedChangeInKnots) { |
|
| 10 | + this.courseChangeInDegrees = courseChangeInDegrees; |
|
| 11 | + this.speedChangeInKnots = speedChangeInKnots; |
|
| 12 | + } |
|
| 13 | + |
|
| 14 | + @Override |
|
| 15 | + public double getCourseChangeInDegrees() { |
|
| 16 | + return courseChangeInDegrees; |
|
| 17 | + } |
|
| 18 | + |
|
| 19 | + @Override |
|
| 20 | + public double getSpeedChangeInKnots() { |
|
| 21 | + return speedChangeInKnots; |
|
| 22 | + } |
|
| 23 | + |
|
| 24 | + @Override |
|
| 25 | + public String toString() { |
|
| 26 | + return "changing course by "+getCourseChangeInDegrees()+"deg, "+getSpeedChangeInKnots()+"kn"; |
|
| 27 | + } |
|
| 28 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/DegreePosition.java
| ... | ... | @@ -0,0 +1,24 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.AbstractPosition; |
|
| 4 | + |
|
| 5 | +public class DegreePosition extends AbstractPosition { |
|
| 6 | + private static final long serialVersionUID = 2060676561122615530L; |
|
| 7 | + private final double lat; |
|
| 8 | + private final double lng; |
|
| 9 | + |
|
| 10 | + public DegreePosition(double lat, double lng) { |
|
| 11 | + this.lat = lat; |
|
| 12 | + this.lng = lng; |
|
| 13 | + } |
|
| 14 | + |
|
| 15 | + @Override |
|
| 16 | + public double getLatDeg() { |
|
| 17 | + return lat; |
|
| 18 | + } |
|
| 19 | + |
|
| 20 | + @Override |
|
| 21 | + public double getLngDeg() { |
|
| 22 | + return lng; |
|
| 23 | + } |
|
| 24 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/KilometersPerHourSpeedImpl.java
| ... | ... | @@ -0,0 +1,23 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.AbstractSpeedImpl; |
|
| 4 | +import com.sap.sse.common.Speed; |
|
| 5 | + |
|
| 6 | +public class KilometersPerHourSpeedImpl extends AbstractSpeedImpl implements Speed { |
|
| 7 | + private static final long serialVersionUID = -524654796500981303L; |
|
| 8 | + private final double speedInKilometersPerHour; |
|
| 9 | + |
|
| 10 | + public KilometersPerHourSpeedImpl(double speedInKilometersPerHour) { |
|
| 11 | + this.speedInKilometersPerHour = speedInKilometersPerHour; |
|
| 12 | + } |
|
| 13 | + |
|
| 14 | + @Override |
|
| 15 | + public double getMetersPerSecond() { |
|
| 16 | + return getKilometersPerHour() / 3.6; |
|
| 17 | + } |
|
| 18 | + |
|
| 19 | + @Override |
|
| 20 | + public double getKilometersPerHour() { |
|
| 21 | + return speedInKilometersPerHour; |
|
| 22 | + } |
|
| 23 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/KnotSpeedImpl.java
| ... | ... | @@ -0,0 +1,30 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.AbstractSpeedImpl; |
|
| 4 | +import com.sap.sse.common.Speed; |
|
| 5 | + |
|
| 6 | +public class KnotSpeedImpl extends AbstractSpeedImpl implements Speed { |
|
| 7 | + private static final long serialVersionUID = 5150851454271610069L; |
|
| 8 | + private final double knots; |
|
| 9 | + |
|
| 10 | + public KnotSpeedImpl(double knots) { |
|
| 11 | + this.knots = knots; |
|
| 12 | + } |
|
| 13 | + |
|
| 14 | + @Override |
|
| 15 | + public double getKnots() { |
|
| 16 | + return knots; |
|
| 17 | + } |
|
| 18 | + |
|
| 19 | + /** |
|
| 20 | + * Saves extra work by only converting the other object's speed to knots; useful in particular |
|
| 21 | + * if both speeds are knot-based speeds |
|
| 22 | + */ |
|
| 23 | + @Override |
|
| 24 | + public boolean equals(Object object) { |
|
| 25 | + if (object == null || !(object instanceof Speed)) { |
|
| 26 | + return false; |
|
| 27 | + } |
|
| 28 | + return getKnots() == ((Speed) object).getKnots(); |
|
| 29 | + } |
|
| 30 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/KnotSpeedWithBearingImpl.java
| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Bearing; |
|
| 4 | + |
|
| 5 | +public class KnotSpeedWithBearingImpl extends AbstractSpeedWithBearingImpl { |
|
| 6 | + private static final long serialVersionUID = -2300633070560631053L; |
|
| 7 | + private final double speedInKnots; |
|
| 8 | + |
|
| 9 | + public KnotSpeedWithBearingImpl(double speedInKnots, Bearing bearing) { |
|
| 10 | + super(bearing); |
|
| 11 | + this.speedInKnots = speedInKnots; |
|
| 12 | + } |
|
| 13 | + |
|
| 14 | + @Override |
|
| 15 | + public double getKnots() { |
|
| 16 | + return speedInKnots; |
|
| 17 | + } |
|
| 18 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/MeterDistance.java
| ... | ... | @@ -0,0 +1,29 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.AbstractDistance; |
|
| 4 | +import com.sap.sse.common.Distance; |
|
| 5 | + |
|
| 6 | +public class MeterDistance extends AbstractDistance { |
|
| 7 | + private static final long serialVersionUID = 1205385257141317881L; |
|
| 8 | + private final double meters; |
|
| 9 | + |
|
| 10 | + public MeterDistance(double meters) { |
|
| 11 | + this.meters = meters; |
|
| 12 | + } |
|
| 13 | + |
|
| 14 | + @Override |
|
| 15 | + public double getMeters() { |
|
| 16 | + return meters; |
|
| 17 | + } |
|
| 18 | + |
|
| 19 | + @Override |
|
| 20 | + public Distance scale(double factor) { |
|
| 21 | + return new MeterDistance(factor * meters); |
|
| 22 | + } |
|
| 23 | + |
|
| 24 | + @Override |
|
| 25 | + public double getCentralAngleDeg() { |
|
| 26 | + return getGeographicalMiles() / 60.; |
|
| 27 | + } |
|
| 28 | + |
|
| 29 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/MeterPerSecondSpeedImpl.java
| ... | ... | @@ -0,0 +1,23 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.AbstractSpeedImpl; |
|
| 4 | +import com.sap.sse.common.Speed; |
|
| 5 | + |
|
| 6 | +public class MeterPerSecondSpeedImpl extends AbstractSpeedImpl implements Speed { |
|
| 7 | + private static final long serialVersionUID = -524654796500981303L; |
|
| 8 | + private final double metersPerSecond; |
|
| 9 | + |
|
| 10 | + public MeterPerSecondSpeedImpl(double metersPerSecond) { |
|
| 11 | + this.metersPerSecond = metersPerSecond; |
|
| 12 | + } |
|
| 13 | + |
|
| 14 | + @Override |
|
| 15 | + public double getMetersPerSecond() { |
|
| 16 | + return metersPerSecond; |
|
| 17 | + } |
|
| 18 | + |
|
| 19 | + @Override |
|
| 20 | + public double getKilometersPerHour() { |
|
| 21 | + return metersPerSecond*3.6; |
|
| 22 | + } |
|
| 23 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/MeterPerSecondSpeedWithDegreeBearingImpl.java
| ... | ... | @@ -0,0 +1,29 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Bearing; |
|
| 4 | + |
|
| 5 | +public class MeterPerSecondSpeedWithDegreeBearingImpl extends AbstractSpeedWithAbstractBearingImpl { |
|
| 6 | + private static final long serialVersionUID = -524654796500981303L; |
|
| 7 | + private final double metersPerSecond; |
|
| 8 | + private final Bearing bearing; |
|
| 9 | + |
|
| 10 | + public MeterPerSecondSpeedWithDegreeBearingImpl(double metersPerSecond, Bearing bearing) { |
|
| 11 | + this.metersPerSecond = metersPerSecond; |
|
| 12 | + this.bearing = bearing; |
|
| 13 | + } |
|
| 14 | + |
|
| 15 | + @Override |
|
| 16 | + public double getMetersPerSecond() { |
|
| 17 | + return metersPerSecond; |
|
| 18 | + } |
|
| 19 | + |
|
| 20 | + @Override |
|
| 21 | + public double getKilometersPerHour() { |
|
| 22 | + return metersPerSecond*3.6; |
|
| 23 | + } |
|
| 24 | + |
|
| 25 | + @Override |
|
| 26 | + public Bearing getBearing() { |
|
| 27 | + return bearing; |
|
| 28 | + } |
|
| 29 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/NauticalMileDistance.java
| ... | ... | @@ -0,0 +1,30 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.AbstractDistance; |
|
| 4 | +import com.sap.sse.common.Distance; |
|
| 5 | + |
|
| 6 | +public class NauticalMileDistance extends AbstractDistance { |
|
| 7 | + private static final long serialVersionUID = 3771473789235934127L; |
|
| 8 | + private final double nauticalMiles; |
|
| 9 | + |
|
| 10 | + public NauticalMileDistance(double nauticalMiles) { |
|
| 11 | + super(); |
|
| 12 | + this.nauticalMiles = nauticalMiles; |
|
| 13 | + } |
|
| 14 | + |
|
| 15 | + @Override |
|
| 16 | + public double getNauticalMiles() { |
|
| 17 | + return nauticalMiles; |
|
| 18 | + } |
|
| 19 | + |
|
| 20 | + @Override |
|
| 21 | + public double getCentralAngleDeg() { |
|
| 22 | + return getGeographicalMiles() / 60.; |
|
| 23 | + } |
|
| 24 | + |
|
| 25 | + @Override |
|
| 26 | + public Distance scale(double factor) { |
|
| 27 | + return new NauticalMileDistance(factor * nauticalMiles); |
|
| 28 | + } |
|
| 29 | + |
|
| 30 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/RadianBearingImpl.java
| ... | ... | @@ -0,0 +1,25 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.AbstractBearing; |
|
| 4 | +import com.sap.sse.common.Bearing; |
|
| 5 | + |
|
| 6 | +public class RadianBearingImpl extends AbstractBearing implements Bearing { |
|
| 7 | + private static final long serialVersionUID = 5044142324540650696L; |
|
| 8 | + private final double bearingRad; |
|
| 9 | + |
|
| 10 | + public RadianBearingImpl(double bearingRad) { |
|
| 11 | + super(); |
|
| 12 | + this.bearingRad = bearingRad - 2*Math.PI * (int) (bearingRad/2./Math.PI); |
|
| 13 | + } |
|
| 14 | + |
|
| 15 | + @Override |
|
| 16 | + public double getDegrees() { |
|
| 17 | + return getRadians() / Math.PI * 180.; |
|
| 18 | + } |
|
| 19 | + |
|
| 20 | + @Override |
|
| 21 | + public double getRadians() { |
|
| 22 | + return bearingRad; |
|
| 23 | + } |
|
| 24 | + |
|
| 25 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/impl/RadianPosition.java
| ... | ... | @@ -0,0 +1,26 @@ |
| 1 | +package com.sap.sse.common.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.AbstractPosition; |
|
| 4 | + |
|
| 5 | +public class RadianPosition extends AbstractPosition { |
|
| 6 | + private static final long serialVersionUID = -8488453506845560385L; |
|
| 7 | + private final double latRad; |
|
| 8 | + private final double lngRad; |
|
| 9 | + |
|
| 10 | + public RadianPosition(double latRad, double lngRad) { |
|
| 11 | + super(); |
|
| 12 | + this.latRad = latRad; |
|
| 13 | + this.lngRad = lngRad; |
|
| 14 | + } |
|
| 15 | + |
|
| 16 | + @Override |
|
| 17 | + public double getLatRad() { |
|
| 18 | + return latRad; |
|
| 19 | + } |
|
| 20 | + |
|
| 21 | + @Override |
|
| 22 | + public double getLngRad() { |
|
| 23 | + return lngRad; |
|
| 24 | + } |
|
| 25 | + |
|
| 26 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/scalablevalue/HasConfidence.java
| ... | ... | @@ -1,90 +0,0 @@ |
| 1 | -package com.sap.sse.common.scalablevalue; |
|
| 2 | - |
|
| 3 | -import java.io.Serializable; |
|
| 4 | - |
|
| 5 | -import com.sap.sse.common.Distance; |
|
| 6 | -import com.sap.sse.common.TimePoint; |
|
| 7 | - |
|
| 8 | -/** |
|
| 9 | - * Some values, particularly those obtained from real-world measurements, are not always accurate. Some values are |
|
| 10 | - * derived by interpolating or extrapolating data series obtained through measurement or even estimation. Some values |
|
| 11 | - * are simply guessed by humans and entered into the system. |
|
| 12 | - * <p> |
|
| 13 | - * |
|
| 14 | - * All those values have a certain level of confidence. In case multiple sources of information about the same entity or |
|
| 15 | - * phenomenon are available, knowing the confidence of each value helps in weighing and averaging these values more |
|
| 16 | - * properly than would be possible without a confidence value. |
|
| 17 | - * <p> |
|
| 18 | - * |
|
| 19 | - * In simple cases, the type used to compute a weighed average over the things equipped with a confidence level is the |
|
| 20 | - * same as the type of the things themselves. In particular, this is the case for scalar types such as {@link Double} |
|
| 21 | - * and {@link Distance}. For non-scalar values, averaging may be non-trivial. For example, averaging a bearing cannot |
|
| 22 | - * simply happen by computing the arithmetic average of the bearing's angles. Instead, an intermediate structure |
|
| 23 | - * providing the sinus and cosinus values of the bearing's angle is used to compute the weighed average tangens. |
|
| 24 | - * <p> |
|
| 25 | - * |
|
| 26 | - * Generally, the relationship between the type implementing this interface, the <code>ValueType</code> and the |
|
| 27 | - * <code>AveragesTo</code> type is this: an instance of the implementing type can transform itself into a |
|
| 28 | - * {@link ScalableValue} which is then used for computing a weighed sum. The values' weight is their |
|
| 29 | - * {@link #getConfidence() confidence}. The sum (which is still a {@link ScalableValue} because |
|
| 30 | - * {@link ScalableValue#add(ScalableValue)} returns again a {@link ScalableValue}) is then |
|
| 31 | - * {@link ScalableValue#divide(double) divided} by the sum of the confidences. This "division" is expected to |
|
| 32 | - * produce an object of type <code>AveragesTo</code>. Usually, <code>AveragesTo</code> would be the same as the class |
|
| 33 | - * implementing this interface. |
|
| 34 | - * |
|
| 35 | - * @author Axel Uhl (d043530) |
|
| 36 | - * |
|
| 37 | - * @param <ValueType> |
|
| 38 | - * the type of the scalable value used for scalar operations during aggregation |
|
| 39 | - * @param <RelativeTo> |
|
| 40 | - * the type of the object relative to which the confidence applies; for example, if the |
|
| 41 | - * base type is a position and the <code>RelativeTo</code> type is {@link TimePoint}, |
|
| 42 | - * the confidence of the position is relative to a certain time point. Together with |
|
| 43 | - * a correspondingly-typed weigher, such a value with confidence can be aggregated with |
|
| 44 | - * other values, again relative to (maybe a different) time point. |
|
| 45 | - */ |
|
| 46 | -public interface HasConfidence<ValueType, BaseType, RelativeTo> extends Serializable { |
|
| 47 | - /** |
|
| 48 | - * A confidence is a number between 0.0 and 1.0 (inclusive) where 0.0 means that the value is randomly guessed while |
|
| 49 | - * 1.0 means the value is authoritatively known for a fact. It represents the weight with which a value is to be |
|
| 50 | - * considered by averaging, interpolation and extrapolation algorithms. |
|
| 51 | - * <p> |
|
| 52 | - * |
|
| 53 | - * An averaging algorithm for a sequence of <code>n</code> tuples <code>(v1, c1), ..., (vn, cn)</code> of a value |
|
| 54 | - * <code>vi</code> with a confidence <code>ci</code> each can for example look like this: |
|
| 55 | - * <code>a := (c1*v1 + ... + cn*vn) / (c1 + ... + cn)</code>. For a single value with a confidence this trivially |
|
| 56 | - * results in <code>c1*v1 / (c1)</code> which is equivalent to <code>v1</code>. As another example, consider two |
|
| 57 | - * values with equal confidence <code>0.8</code>. Then, <code>a := (0.8*v1 + 0.8*vn) / (0.8 + 0.8)</code> which |
|
| 58 | - * resolves to <code>0.5*v1 + 0.5*v2</code> which is obviously the arithmetic mean of the two values. If one value |
|
| 59 | - * has confidence <code>0.8</code> and the other <code>0.4</code>, then |
|
| 60 | - * <code>a := (0.8*v1 + 0.4*vn) / (0.8 + 0.4)</code> which resolves to <code>2/3*v1 + 1/3*v2</code> which is a |
|
| 61 | - * weighed average. |
|
| 62 | - * <p> |
|
| 63 | - * |
|
| 64 | - * Note, that this doesn't exactly take facts for facts. In other words, if one value is provided with a confidence |
|
| 65 | - * of <code>1.0</code>, the average may still be influenced by other values. However, this cleanly resolves otherwise |
|
| 66 | - * mutually contradictory "facts" such a <code>(v1, 1.0), (v2, 1.0)</code> with <code>v1 != v2</code>. It is |
|
| 67 | - * considered bad practice to claim a fact as soon as it results from any kind of measurement or estimation. All |
|
| 68 | - * measurement devices produce some statistical errors, no matter how small (cf. Heisenberg ;-) ). |
|
| 69 | - */ |
|
| 70 | - double getConfidence(); |
|
| 71 | - |
|
| 72 | - /** |
|
| 73 | - * The confidence attached to a value is usually relative to some reference point, such as a time point or |
|
| 74 | - * a position. For example, when a <code>GPSFixTrack</code> is asked to deliver an estimation for the tracked item's |
|
| 75 | - * {@link Position} at some given {@link TimePoint}, the track computes some average from a number of GPS fixes. The resulting |
|
| 76 | - * position has a certain confidence, depending on the time differences between the fixes and the time point for which |
|
| 77 | - * the position estimation was requested. The result therefore carries this reference time point for which the estimation |
|
| 78 | - * was requested so that when the result is to be used in further estimations it is clear relative to which time point the |
|
| 79 | - * confidence is to be interpreted.<p> |
|
| 80 | - * |
|
| 81 | - * In this context, a single GPS fix is a measurement whose values may also have a confidence attached. This confidence could be |
|
| 82 | - * regarded as relative to the fix's time point. |
|
| 83 | - */ |
|
| 84 | - RelativeTo getRelativeTo(); |
|
| 85 | - |
|
| 86 | - /** |
|
| 87 | - * The object annotated by a confidence |
|
| 88 | - */ |
|
| 89 | - BaseType getObject(); |
|
| 90 | -} |
java/com.sap.sse.common/src/com/sap/sse/common/scalablevalue/HasConfidenceAndIsScalable.java
| ... | ... | @@ -1,5 +1,7 @@ |
| 1 | 1 | package com.sap.sse.common.scalablevalue; |
| 2 | 2 | |
| 3 | +import com.sap.sse.common.confidence.HasConfidence; |
|
| 4 | + |
|
| 3 | 5 | public interface HasConfidenceAndIsScalable<ValueType, BaseType, RelativeTo> extends IsScalable<ValueType, BaseType>, |
| 4 | 6 | HasConfidence<ValueType, BaseType, RelativeTo> { |
| 5 | 7 | } |
java/com.sap.sse.common/src/com/sap/sse/common/scalablevalue/impl/ScalableBearing.java
| ... | ... | @@ -0,0 +1,87 @@ |
| 1 | +package com.sap.sse.common.scalablevalue.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Bearing; |
|
| 4 | +import com.sap.sse.common.DoublePair; |
|
| 5 | +import com.sap.sse.common.impl.RadianBearingImpl; |
|
| 6 | +import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 7 | +import com.sap.sse.common.scalablevalue.ScalableValueWithDistance; |
|
| 8 | + |
|
| 9 | +public class ScalableBearing implements ScalableValueWithDistance<DoublePair, Bearing> { |
|
| 10 | + private final double sin; |
|
| 11 | + private final double cos; |
|
| 12 | + |
|
| 13 | + public ScalableBearing(Bearing bearing) { |
|
| 14 | + this.sin = Math.sin(bearing.getRadians()); |
|
| 15 | + this.cos = Math.cos(bearing.getRadians()); |
|
| 16 | + } |
|
| 17 | + |
|
| 18 | + private ScalableBearing(double sin, double cos) { |
|
| 19 | + this.sin = sin; |
|
| 20 | + this.cos = cos; |
|
| 21 | + } |
|
| 22 | + |
|
| 23 | + @Override |
|
| 24 | + public ScalableBearing multiply(double factor) { |
|
| 25 | + DoublePair pair = getValue(); |
|
| 26 | + return new ScalableBearing(factor*pair.getA(), factor*pair.getB()); |
|
| 27 | + } |
|
| 28 | + |
|
| 29 | + @Override |
|
| 30 | + public ScalableBearing add(ScalableValue<DoublePair, Bearing> t) { |
|
| 31 | + DoublePair value = getValue(); |
|
| 32 | + DoublePair tValue = t.getValue(); |
|
| 33 | + return new ScalableBearing(value.getA()+tValue.getA(), value.getB()+tValue.getB()); |
|
| 34 | + } |
|
| 35 | + |
|
| 36 | + /** |
|
| 37 | + * If the combined confidence was 0.0, no {@link Bearing} object can reasonably be computed; hence, <code>null</code> |
|
| 38 | + * is returned in such cases. |
|
| 39 | + */ |
|
| 40 | + @Override |
|
| 41 | + public Bearing divide(double divisor) { |
|
| 42 | + Bearing result; |
|
| 43 | + if (sin == 0 && cos == 0) { |
|
| 44 | + result = null; |
|
| 45 | + } else { |
|
| 46 | + double angle; |
|
| 47 | + if (cos == 0) { |
|
| 48 | + angle = sin >= 0 ? Math.PI / 2 : -Math.PI / 2; |
|
| 49 | + } else { |
|
| 50 | + angle = Math.atan2(sin, cos); |
|
| 51 | + } |
|
| 52 | + result = new RadianBearingImpl(angle < 0 ? angle + 2 * Math.PI : angle); |
|
| 53 | + } |
|
| 54 | + return result; |
|
| 55 | + } |
|
| 56 | + |
|
| 57 | + @Override |
|
| 58 | + public DoublePair getValue() { |
|
| 59 | + return new DoublePair(sin, cos); |
|
| 60 | + } |
|
| 61 | + |
|
| 62 | + @Override |
|
| 63 | + public double getDistance(Bearing other) { |
|
| 64 | + return Math.abs(divide(1).getDifferenceTo(other).getDegrees()); |
|
| 65 | + } |
|
| 66 | + |
|
| 67 | + /** |
|
| 68 | + * Computing the difference to a {@link bearing}, as implemented by {@link #getDistance(Bearing)} is correct but |
|
| 69 | + * slow because the {@link Math#atan2(double)} function is used to {@link ScalableBearing#divide(double) bring the |
|
| 70 | + * scalable bearing down to a bearing}. A less precise, yet much faster to compute and still monotonous distance |
|
| 71 | + * measure computes the length of the line segment connecting this bearing's projection onto a circle with the |
|
| 72 | + * projection of the bearing <code>a</code> to the same circle. The distance returned by this method will provide |
|
| 73 | + * almost equal values for very small differences (below 1deg) but significantly smaller values for big differences. |
|
| 74 | + * |
|
| 75 | + * @return an approximate difference in degrees, fairly accurate for small differences, but returning 360.0/PI |
|
| 76 | + * (approximately 114) instead of 180 for the maximum difference |
|
| 77 | + */ |
|
| 78 | + public double getApproximateDegreeDistanceTo(Bearing a) { |
|
| 79 | + double scale = Math.sqrt(sin*sin + cos*cos); |
|
| 80 | + double x = cos/scale; |
|
| 81 | + double y = sin/scale; |
|
| 82 | + double ax = Math.cos(a.getRadians()); |
|
| 83 | + double ay = Math.sin(a.getRadians()); |
|
| 84 | + double normalDistance = Math.sqrt((x-ax)*(x-ax) + (y-ay)*(y-ay)); |
|
| 85 | + return normalDistance / Math.PI * 180.; |
|
| 86 | + } |
|
| 87 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/scalablevalue/impl/ScalableDistance.java
| ... | ... | @@ -0,0 +1,44 @@ |
| 1 | +package com.sap.sse.common.scalablevalue.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Distance; |
|
| 4 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 5 | +import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 6 | +import com.sap.sse.common.scalablevalue.ScalableValueWithDistance; |
|
| 7 | + |
|
| 8 | +public class ScalableDistance implements ScalableValueWithDistance<Double, Distance> { |
|
| 9 | + private final double meters; |
|
| 10 | + |
|
| 11 | + public ScalableDistance(Distance distance) { |
|
| 12 | + this.meters = distance.getMeters(); |
|
| 13 | + } |
|
| 14 | + |
|
| 15 | + private ScalableDistance(double meters) { |
|
| 16 | + this.meters = meters; |
|
| 17 | + } |
|
| 18 | + |
|
| 19 | + @Override |
|
| 20 | + public ScalableDistance multiply(double factor) { |
|
| 21 | + return new ScalableDistance(factor*meters); |
|
| 22 | + } |
|
| 23 | + |
|
| 24 | + @Override |
|
| 25 | + public ScalableDistance add(ScalableValue<Double, Distance> t) { |
|
| 26 | + return new ScalableDistance(meters+t.getValue()); |
|
| 27 | + } |
|
| 28 | + |
|
| 29 | + @Override |
|
| 30 | + public Distance divide(double divisor) { |
|
| 31 | + return new MeterDistance(meters / divisor); |
|
| 32 | + } |
|
| 33 | + |
|
| 34 | + @Override |
|
| 35 | + public Double getValue() { |
|
| 36 | + return meters; |
|
| 37 | + } |
|
| 38 | + |
|
| 39 | + @Override |
|
| 40 | + public double getDistance(Distance other) { |
|
| 41 | + return Math.abs(meters-other.getMeters()); |
|
| 42 | + } |
|
| 43 | + |
|
| 44 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/scalablevalue/impl/ScalableDuration.java
| ... | ... | @@ -0,0 +1,48 @@ |
| 1 | +package com.sap.sse.common.scalablevalue.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Duration; |
|
| 4 | +import com.sap.sse.common.impl.SecondsDurationImpl; |
|
| 5 | +import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 6 | +import com.sap.sse.common.scalablevalue.ScalableValueWithDistance; |
|
| 7 | + |
|
| 8 | +public class ScalableDuration implements ScalableValueWithDistance<Double, Duration> { |
|
| 9 | + private final double seconds; |
|
| 10 | + |
|
| 11 | + public ScalableDuration(Duration duration) { |
|
| 12 | + this.seconds = duration.asSeconds(); |
|
| 13 | + } |
|
| 14 | + |
|
| 15 | + private ScalableDuration(double seconds) { |
|
| 16 | + this.seconds = seconds; |
|
| 17 | + } |
|
| 18 | + |
|
| 19 | + @Override |
|
| 20 | + public ScalableDuration multiply(double factor) { |
|
| 21 | + return new ScalableDuration(factor*seconds); |
|
| 22 | + } |
|
| 23 | + |
|
| 24 | + @Override |
|
| 25 | + public ScalableDuration add(ScalableValue<Double, Duration> t) { |
|
| 26 | + return new ScalableDuration(seconds+t.getValue()); |
|
| 27 | + } |
|
| 28 | + |
|
| 29 | + @Override |
|
| 30 | + public Duration divide(double divisor) { |
|
| 31 | + return new SecondsDurationImpl(seconds / divisor); |
|
| 32 | + } |
|
| 33 | + |
|
| 34 | + @Override |
|
| 35 | + public Double getValue() { |
|
| 36 | + return seconds; |
|
| 37 | + } |
|
| 38 | + |
|
| 39 | + @Override |
|
| 40 | + public double getDistance(Duration other) { |
|
| 41 | + return Math.abs(seconds-other.asSeconds()); |
|
| 42 | + } |
|
| 43 | + |
|
| 44 | + @Override |
|
| 45 | + public String toString() { |
|
| 46 | + return divide(1).toString(); |
|
| 47 | + } |
|
| 48 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/scalablevalue/impl/ScalablePosition.java
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +package com.sap.sse.common.scalablevalue.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.DoubleTriple; |
|
| 4 | +import com.sap.sse.common.Position; |
|
| 5 | +import com.sap.sse.common.impl.RadianPosition; |
|
| 6 | +import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 7 | +import com.sap.sse.common.scalablevalue.ScalableValueWithDistance; |
|
| 8 | + |
|
| 9 | +public class ScalablePosition implements ScalableValueWithDistance<ScalablePosition, Position> { |
|
| 10 | + private final double x, y, z; |
|
| 11 | + |
|
| 12 | + public ScalablePosition(Position position) { |
|
| 13 | + this(Math.cos(position.getLatRad()) * Math.cos(position.getLngRad()), |
|
| 14 | + Math.cos(position.getLatRad()) * Math.sin(position.getLngRad()), |
|
| 15 | + Math.sin(position.getLatRad())); |
|
| 16 | + } |
|
| 17 | + |
|
| 18 | + /** |
|
| 19 | + * Use the three components obtained from {@link #getValueAsTriple()} |
|
| 20 | + */ |
|
| 21 | + public ScalablePosition(double x, double y, double z) { |
|
| 22 | + this.x = x; |
|
| 23 | + this.y = y; |
|
| 24 | + this.z = z; |
|
| 25 | + } |
|
| 26 | + |
|
| 27 | + @Override |
|
| 28 | + public ScalablePosition multiply(double factor) { |
|
| 29 | + return new ScalablePosition(factor*x, factor*y, factor*z); |
|
| 30 | + } |
|
| 31 | + |
|
| 32 | + @Override |
|
| 33 | + public ScalablePosition add(ScalableValue<ScalablePosition, Position> t) { |
|
| 34 | + ScalablePosition result; |
|
| 35 | + if (t == null) { |
|
| 36 | + result = this; |
|
| 37 | + } else { |
|
| 38 | + result = new ScalablePosition(x+t.getValue().x, y+t.getValue().y, z+t.getValue().z); |
|
| 39 | + } |
|
| 40 | + return result; |
|
| 41 | + } |
|
| 42 | + |
|
| 43 | + /** |
|
| 44 | + * If combined confidence is 0.0 (all coordinate components are 0.0), <code>null</code> is returned because no |
|
| 45 | + * position can reasonably be constructed out of nowhere. |
|
| 46 | + */ |
|
| 47 | + @Override |
|
| 48 | + public Position divide(double divisor) { |
|
| 49 | + Position result; |
|
| 50 | + if (x == 0 && y == 0 && z == 0) { |
|
| 51 | + result = null; |
|
| 52 | + } else { |
|
| 53 | + // don't need to scale down; atan2 is agnostic regarding scaling factors |
|
| 54 | + double hyp = Math.sqrt(x * x + y * y); |
|
| 55 | + double latRad = Math.atan2(z, hyp); |
|
| 56 | + double lngRad = Math.atan2(y, x); |
|
| 57 | + result = new RadianPosition(latRad, lngRad); |
|
| 58 | + } |
|
| 59 | + return result; |
|
| 60 | + } |
|
| 61 | + |
|
| 62 | + @Override |
|
| 63 | + public ScalablePosition getValue() { |
|
| 64 | + return this; |
|
| 65 | + } |
|
| 66 | + |
|
| 67 | + @Override |
|
| 68 | + public double getDistance(Position other) { |
|
| 69 | + return divide(1).getDistance(other).getCentralAngleDeg(); |
|
| 70 | + } |
|
| 71 | + |
|
| 72 | + public DoubleTriple getValueAsTriple() { |
|
| 73 | + return new DoubleTriple(x, y, z); |
|
| 74 | + } |
|
| 75 | +} |
|
| ... | ... | \ No newline at end of file |
java/com.sap.sse.common/src/com/sap/sse/common/scalablevalue/impl/ScalableSpeed.java
| ... | ... | @@ -0,0 +1,44 @@ |
| 1 | +package com.sap.sse.common.scalablevalue.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Speed; |
|
| 4 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 5 | +import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 6 | +import com.sap.sse.common.scalablevalue.ScalableValueWithDistance; |
|
| 7 | + |
|
| 8 | +public class ScalableSpeed implements ScalableValueWithDistance<Double, Speed> { |
|
| 9 | + private final double knots; |
|
| 10 | + |
|
| 11 | + public ScalableSpeed(Speed speed) { |
|
| 12 | + this.knots = speed.getKnots(); |
|
| 13 | + } |
|
| 14 | + |
|
| 15 | + private ScalableSpeed(double knots) { |
|
| 16 | + this.knots = knots; |
|
| 17 | + } |
|
| 18 | + |
|
| 19 | + @Override |
|
| 20 | + public ScalableSpeed multiply(double factor) { |
|
| 21 | + return new ScalableSpeed(factor*knots); |
|
| 22 | + } |
|
| 23 | + |
|
| 24 | + @Override |
|
| 25 | + public ScalableSpeed add(ScalableValue<Double, Speed> t) { |
|
| 26 | + return new ScalableSpeed(knots+t.getValue()); |
|
| 27 | + } |
|
| 28 | + |
|
| 29 | + @Override |
|
| 30 | + public Speed divide(double divisor) { |
|
| 31 | + return new KnotSpeedImpl(knots / divisor); |
|
| 32 | + } |
|
| 33 | + |
|
| 34 | + @Override |
|
| 35 | + public Double getValue() { |
|
| 36 | + return knots; |
|
| 37 | + } |
|
| 38 | + |
|
| 39 | + @Override |
|
| 40 | + public double getDistance(Speed other) { |
|
| 41 | + return Math.abs(knots-other.getKnots()); |
|
| 42 | + } |
|
| 43 | + |
|
| 44 | +} |
java/com.sap.sse.common/src/com/sap/sse/common/scalablevalue/impl/ScalableSpeedWithBearing.java
| ... | ... | @@ -0,0 +1,74 @@ |
| 1 | +package com.sap.sse.common.scalablevalue.impl; |
|
| 2 | + |
|
| 3 | +import com.sap.sse.common.Bearing; |
|
| 4 | +import com.sap.sse.common.DoubleTriple; |
|
| 5 | +import com.sap.sse.common.Speed; |
|
| 6 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 7 | +import com.sap.sse.common.impl.KnotSpeedImpl; |
|
| 8 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 9 | +import com.sap.sse.common.impl.RadianBearingImpl; |
|
| 10 | +import com.sap.sse.common.scalablevalue.ScalableValue; |
|
| 11 | + |
|
| 12 | +/** |
|
| 13 | + * Separately scales speed and bearing. Instead of considering speed and bearing a single vector that can be scaled, the |
|
| 14 | + * bearing is scaled separately, and the speed is scaled as a scalar value independently of the bearing. This is |
|
| 15 | + * particularly useful for {@link Wind} scaling where it makes more sense to average the wind speed independently of the |
|
| 16 | + * wind direction / bearing than adding up the "wind vectors" and averaging, which would reduce the resulting wind speed |
|
| 17 | + * for constant wind speeds across all fixes with different directions.<p> |
|
| 18 | + * |
|
| 19 | + * The triple used for scaling uses the speed in knots as the first component, the sine as the second and the |
|
| 20 | + * cosine as the third value. |
|
| 21 | + * |
|
| 22 | + * @author Axel Uhl (d043530) |
|
| 23 | + * |
|
| 24 | + */ |
|
| 25 | +public class ScalableSpeedWithBearing implements ScalableValue<DoubleTriple, SpeedWithBearing> { |
|
| 26 | + private final double speedInKnots; |
|
| 27 | + private final double sin; |
|
| 28 | + private final double cos; |
|
| 29 | + |
|
| 30 | + public ScalableSpeedWithBearing(SpeedWithBearing speedWithBearing) { |
|
| 31 | + this(speedWithBearing.getKnots(), Math.sin(speedWithBearing.getBearing() |
|
| 32 | + .getRadians()), Math.cos(speedWithBearing.getBearing().getRadians())); |
|
| 33 | + } |
|
| 34 | + |
|
| 35 | + public ScalableSpeedWithBearing(Speed speed, double sin, double cos) { |
|
| 36 | + this(speed.getKnots(), sin, cos); |
|
| 37 | + } |
|
| 38 | + |
|
| 39 | + public ScalableSpeedWithBearing(double speedInKnots, double sin, double cos) { |
|
| 40 | + this.speedInKnots = speedInKnots; |
|
| 41 | + this.sin = sin; |
|
| 42 | + this.cos = cos; |
|
| 43 | + } |
|
| 44 | + |
|
| 45 | + @Override |
|
| 46 | + public ScalableSpeedWithBearing multiply(double factor) { |
|
| 47 | + return new ScalableSpeedWithBearing(factor*speedInKnots, factor*sin, factor*cos); |
|
| 48 | + } |
|
| 49 | + |
|
| 50 | + @Override |
|
| 51 | + public ScalableSpeedWithBearing add(ScalableValue<DoubleTriple, SpeedWithBearing> t) { |
|
| 52 | + final DoubleTriple tValue = t.getValue(); |
|
| 53 | + return new ScalableSpeedWithBearing(speedInKnots + tValue.getA(), sin+tValue.getB(), cos+tValue.getC()); |
|
| 54 | + } |
|
| 55 | + |
|
| 56 | + @Override |
|
| 57 | + public SpeedWithBearing divide(double divisor) { |
|
| 58 | + Speed newSpeed = new KnotSpeedImpl(speedInKnots / divisor); |
|
| 59 | + double angle; |
|
| 60 | + if (cos == 0) { |
|
| 61 | + angle = sin >= 0 ? Math.PI / 2 : -Math.PI / 2; |
|
| 62 | + } else { |
|
| 63 | + angle = Math.atan2(sin, cos); |
|
| 64 | + } |
|
| 65 | + Bearing bearing = new RadianBearingImpl(angle < 0 ? angle + 2 * Math.PI : angle); |
|
| 66 | + return new KnotSpeedWithBearingImpl(newSpeed.getKnots(), bearing); |
|
| 67 | + } |
|
| 68 | + |
|
| 69 | + @Override |
|
| 70 | + public DoubleTriple getValue() { |
|
| 71 | + return new DoubleTriple(speedInKnots, sin, cos); |
|
| 72 | + } |
|
| 73 | + |
|
| 74 | +} |
|
| ... | ... | \ No newline at end of file |
mobile/com.sap.sailing.android.tracking.app/src/com/sap/sailing/android/tracking/app/services/TrackingService.java
| ... | ... | @@ -1,5 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.android.tracking.app.services; |
| 2 | 2 | |
| 3 | +import static android.os.Process.THREAD_PRIORITY_BACKGROUND; |
|
| 4 | + |
|
| 3 | 5 | import android.app.Service; |
| 4 | 6 | import android.content.Context; |
| 5 | 7 | import android.content.Intent; |
| ... | ... | @@ -24,7 +26,7 @@ import com.sap.sailing.android.tracking.app.R; |
| 24 | 26 | import com.sap.sailing.android.tracking.app.utils.AppPreferences; |
| 25 | 27 | import com.sap.sailing.android.tracking.app.utils.DatabaseHelper; |
| 26 | 28 | import com.sap.sailing.android.tracking.app.valueobjects.EventInfo; |
| 27 | -import com.sap.sailing.domain.common.impl.MeterPerSecondSpeedImpl; |
|
| 29 | +import com.sap.sse.common.impl.MeterPerSecondSpeedImpl; |
|
| 28 | 30 | import com.sap.sailing.domain.common.tracking.impl.FlatSmartphoneUuidAndGPSFixMovingJsonSerializer; |
| 29 | 31 | import com.sap.sse.common.Bearing; |
| 30 | 32 | import com.sap.sse.common.Duration; |
| ... | ... | @@ -43,8 +45,6 @@ import java.util.Timer; |
| 43 | 45 | import java.util.TimerTask; |
| 44 | 46 | import java.util.UUID; |
| 45 | 47 | |
| 46 | -import static android.os.Process.THREAD_PRIORITY_BACKGROUND; |
|
| 47 | - |
|
| 48 | 48 | public class TrackingService extends Service implements LocationListener { |
| 49 | 49 | |
| 50 | 50 | private static final String TAG = TrackingService.class.getName(); |
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/domain/coursedesign/AbstractCourseDesign.java
| ... | ... | @@ -3,7 +3,7 @@ package com.sap.sailing.racecommittee.app.domain.coursedesign; |
| 3 | 3 | import java.util.HashSet; |
| 4 | 4 | import java.util.Set; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | 7 | import com.sap.sse.common.Bearing; |
| 8 | 8 | |
| 9 | 9 | public abstract class AbstractCourseDesign implements CourseDesign { |
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/domain/coursedesign/AbstractCourseDesignFactory.java
| ... | ... | @@ -3,8 +3,8 @@ package com.sap.sailing.racecommittee.app.domain.coursedesign; |
| 3 | 3 | import java.text.DecimalFormat; |
| 4 | 4 | import java.util.Set; |
| 5 | 5 | |
| 6 | -import com.sap.sailing.domain.common.Position; |
|
| 7 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 6 | +import com.sap.sse.common.Position; |
|
| 7 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 8 | 8 | import com.sap.sailing.racecommittee.app.utils.GeoUtils; |
| 9 | 9 | import com.sap.sse.common.Bearing; |
| 10 | 10 | import com.sap.sse.common.Distance; |
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/domain/coursedesign/BoatClassType.java
| ... | ... | @@ -5,7 +5,7 @@ import java.util.HashMap; |
| 5 | 5 | import java.util.Map; |
| 6 | 6 | import java.util.TreeMap; |
| 7 | 7 | |
| 8 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 8 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 9 | 9 | import com.sap.sse.common.Distance; |
| 10 | 10 | |
| 11 | 11 | @SuppressWarnings("serial") |
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/domain/coursedesign/CourseDesign.java
| ... | ... | @@ -2,7 +2,7 @@ package com.sap.sailing.racecommittee.app.domain.coursedesign; |
| 2 | 2 | |
| 3 | 3 | import java.util.Set; |
| 4 | 4 | |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | 6 | import com.sap.sse.common.Bearing; |
| 7 | 7 | |
| 8 | 8 | public interface CourseDesign { |
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/domain/coursedesign/CourseDesignComputer.java
| ... | ... | @@ -1,6 +1,6 @@ |
| 1 | 1 | package com.sap.sailing.racecommittee.app.domain.coursedesign; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 3 | +import com.sap.sse.common.Position; |
|
| 4 | 4 | import com.sap.sse.common.Bearing; |
| 5 | 5 | |
| 6 | 6 | import android.util.Log; |
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/domain/coursedesign/CourseDesignFactory.java
| ... | ... | @@ -1,6 +1,6 @@ |
| 1 | 1 | package com.sap.sailing.racecommittee.app.domain.coursedesign; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 3 | +import com.sap.sse.common.Position; |
|
| 4 | 4 | import com.sap.sse.common.Bearing; |
| 5 | 5 | |
| 6 | 6 | public interface CourseDesignFactory { |
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/domain/coursedesign/Located.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.racecommittee.app.domain.coursedesign; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.Positioned; |
|
| 3 | +import com.sap.sse.common.Position; |
|
| 4 | +import com.sap.sse.common.Positioned; |
|
| 5 | 5 | import com.sap.sse.common.Bearing; |
| 6 | 6 | import com.sap.sse.common.Distance; |
| 7 | 7 |
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/domain/coursedesign/PositionedMark.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.racecommittee.app.domain.coursedesign; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.base.Mark; |
| 4 | -import com.sap.sailing.domain.common.Positioned; |
|
| 4 | +import com.sap.sse.common.Positioned; |
|
| 5 | 5 | |
| 6 | 6 | public interface PositionedMark extends Mark, Positioned, Located { |
| 7 | 7 |
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/domain/coursedesign/PositionedMarkImpl.java
| ... | ... | @@ -2,8 +2,8 @@ package com.sap.sailing.racecommittee.app.domain.coursedesign; |
| 2 | 2 | |
| 3 | 3 | import com.sap.sailing.domain.base.impl.MarkImpl; |
| 4 | 4 | import com.sap.sailing.domain.common.MarkType; |
| 5 | -import com.sap.sailing.domain.common.Position; |
|
| 6 | -import com.sap.sailing.domain.common.impl.MeterDistance; |
|
| 5 | +import com.sap.sse.common.Position; |
|
| 6 | +import com.sap.sse.common.impl.MeterDistance; |
|
| 7 | 7 | import com.sap.sse.common.Bearing; |
| 8 | 8 | import com.sap.sse.common.Distance; |
| 9 | 9 | import com.sap.sse.common.impl.DegreeBearingImpl; |
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/domain/coursedesign/TrapezoidCourseDesignFactoryImpl.java
| ... | ... | @@ -6,8 +6,8 @@ import java.util.Map.Entry; |
| 6 | 6 | import java.util.Set; |
| 7 | 7 | |
| 8 | 8 | import com.sap.sailing.domain.common.MarkType; |
| 9 | -import com.sap.sailing.domain.common.Position; |
|
| 10 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 9 | +import com.sap.sse.common.Position; |
|
| 10 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 11 | 11 | import com.sap.sailing.racecommittee.app.utils.GeoUtils; |
| 12 | 12 | import com.sap.sse.common.Bearing; |
| 13 | 13 | import com.sap.sse.common.Distance; |
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/domain/coursedesign/WindWardLeeWardCourseDesignFactoryImpl.java
| ... | ... | @@ -5,8 +5,8 @@ import java.util.Map; |
| 5 | 5 | import java.util.Map.Entry; |
| 6 | 6 | import java.util.Set; |
| 7 | 7 | |
| 8 | -import com.sap.sailing.domain.common.Position; |
|
| 9 | -import com.sap.sailing.domain.common.impl.NauticalMileDistance; |
|
| 8 | +import com.sap.sse.common.Position; |
|
| 9 | +import com.sap.sse.common.impl.NauticalMileDistance; |
|
| 10 | 10 | import com.sap.sailing.racecommittee.app.utils.GeoUtils; |
| 11 | 11 | import com.sap.sse.common.Bearing; |
| 12 | 12 | import com.sap.sse.common.Distance; |
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/ui/fragments/raceinfo/WindFragment.java
| ... | ... | @@ -59,11 +59,11 @@ import com.sap.sailing.domain.base.racegroup.CurrentRaceComparator; |
| 59 | 59 | import com.sap.sailing.domain.base.racegroup.CurrentRaceFilter; |
| 60 | 60 | import com.sap.sailing.domain.base.racegroup.RaceGroupSeriesFleet; |
| 61 | 61 | import com.sap.sailing.domain.base.racegroup.impl.CurrentRaceFilterImpl; |
| 62 | -import com.sap.sailing.domain.common.Position; |
|
| 63 | -import com.sap.sailing.domain.common.SpeedWithBearing; |
|
| 62 | +import com.sap.sse.common.Position; |
|
| 63 | +import com.sap.sse.common.SpeedWithBearing; |
|
| 64 | 64 | import com.sap.sailing.domain.common.Wind; |
| 65 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 66 | -import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl; |
|
| 65 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 66 | +import com.sap.sse.common.impl.KnotSpeedWithBearingImpl; |
|
| 67 | 67 | import com.sap.sailing.domain.common.impl.WindImpl; |
| 68 | 68 | import com.sap.sailing.racecommittee.app.AppConstants; |
| 69 | 69 | import com.sap.sailing.racecommittee.app.R; |
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/utils/GeoUtils.java
| ... | ... | @@ -1,7 +1,7 @@ |
| 1 | 1 | package com.sap.sailing.racecommittee.app.utils; |
| 2 | 2 | |
| 3 | -import com.sap.sailing.domain.common.Position; |
|
| 4 | -import com.sap.sailing.domain.common.impl.DegreePosition; |
|
| 3 | +import com.sap.sse.common.Position; |
|
| 4 | +import com.sap.sse.common.impl.DegreePosition; |
|
| 5 | 5 | import com.sap.sailing.racecommittee.app.R; |
| 6 | 6 | import com.sap.sse.common.Bearing; |
| 7 | 7 | import com.sap.sse.common.Distance; |