]> gitweb.fperrin.net Git - GpsPrune.git/blobdiff - tim/prune/correlate/PointPair.java
Version 12, December 2010
[GpsPrune.git] / tim / prune / correlate / PointPair.java
diff --git a/tim/prune/correlate/PointPair.java b/tim/prune/correlate/PointPair.java
deleted file mode 100644 (file)
index 9b27ff9..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-package tim.prune.correlate;
-
-import tim.prune.data.DataPoint;
-import tim.prune.data.Photo;
-
-/**
- * Class to hold a pair of points
- * used to hold the result of correlation of a photo
- */
-public class PointPair
-{
-       private Photo _photo = null;
-       private DataPoint _pointBefore = null;
-       private DataPoint _pointAfter = null;
-       private long _secondsBefore = 1L;
-       private long _secondsAfter = -1L;
-
-
-       /**
-        * Constructor
-        * @param inPhoto Photo object
-        */
-       public PointPair(Photo inPhoto)
-       {
-               _photo = inPhoto;
-       }
-
-
-       /**
-        * Add a point to the pair
-        * @param inPoint data point
-        * @param inSeconds number of seconds time difference, positive means point later
-        */
-       public void addPoint(DataPoint inPoint, long inSeconds)
-       {
-               // Check if point is closest point before
-               if (inSeconds <= 0)
-               {
-                       // point stamp is before photo stamp
-                       if (inSeconds > _secondsBefore || _secondsBefore > 0L)
-                       {
-                               // point stamp is nearer to photo
-                               _pointBefore = inPoint;
-                               _secondsBefore = inSeconds;
-                       }
-               }
-               // Check if point is closest point after
-               if (inSeconds >= 0)
-               {
-                       // point stamp is after photo stamp
-                       if (inSeconds < _secondsAfter || _secondsAfter < 0L)
-                       {
-                               // point stamp is nearer to photo
-                               _pointAfter = inPoint;
-                               _secondsAfter = inSeconds;
-                       }
-               }
-       }
-
-
-       /**
-        * @return Photo object
-        */
-       public Photo getPhoto()
-       {
-               return _photo;
-       }
-
-       /**
-        * @return the closest point before the photo
-        */
-       public DataPoint getPointBefore()
-       {
-               return _pointBefore;
-       }
-
-       /**
-        * @return number of seconds between photo and subsequent point
-        */
-       public long getSecondsBefore()
-       {
-               return _secondsBefore;
-       }
-
-       /**
-        * @return the closest point after the photo
-        */
-       public DataPoint getPointAfter()
-       {
-               return _pointAfter;
-       }
-
-       /**
-        * @return number of seconds between previous point and photo
-        */
-       public long getSecondsAfter()
-       {
-               return _secondsAfter;
-       }
-
-       /**
-        * @return true if both points found
-        */
-       public boolean isValid()
-       {
-               return getPointBefore() != null && getPointAfter() != null;
-       }
-
-       /**
-        * @return the fraction of the distance along the interpolated line
-        */
-       public double getFraction()
-       {
-               if (_secondsAfter == 0L) return 0.0;
-               return (-_secondsBefore * 1.0 / (-_secondsBefore + _secondsAfter));
-       }
-
-       /**
-        * @return the number of seconds to the nearest point
-        */
-       public long getMinSeconds()
-       {
-               return Math.min(_secondsAfter, -_secondsBefore);
-       }
-
-       /**
-        * @return angle from photo to nearest point in radians
-        */
-       public double getMinRadians()
-       {
-               double totalRadians = DataPoint.calculateRadiansBetween(_pointBefore, _pointAfter);
-               double frac = getFraction();
-               return totalRadians * Math.min(frac, 1-frac);
-       }
-}