]> gitweb.fperrin.net Git - GpsPrune.git/blobdiff - tim/prune/data/Speed.java
Moved source into separate src directory due to popular request
[GpsPrune.git] / tim / prune / data / Speed.java
diff --git a/tim/prune/data/Speed.java b/tim/prune/data/Speed.java
deleted file mode 100644 (file)
index 80cb7df..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-package tim.prune.data;
-
-/**
- * Class to hold either a horizontal speed or a vertical speed
- * including the units
- */
-public class Speed
-{
-       private double _value = 0.0;
-       private Unit   _unit  = null;
-       private boolean _valid = false;
-
-       /**
-        * Constructor
-        * @param inValue value
-        * @param inUnit unit, such as m/s or km/h
-        */
-       public Speed(double inValue, Unit inUnit)
-       {
-               _value = inValue;
-               _unit  = inUnit;
-               _valid = isValidUnit(inUnit);
-       }
-
-       /**
-        * Constructor
-        * @param inValue value as string
-        * @param inUnit unit, such as m/s or km/h
-        */
-       public Speed(String inValue, Unit inUnit)
-       {
-               try {
-                       _value = Double.parseDouble(inValue);
-                       _unit  = inUnit;
-                       _valid = isValidUnit(inUnit);
-               }
-               catch (Exception e)
-               {
-                       _valid = false;
-               }
-       }
-
-       /**
-        * Check if the given unit is valid for a speed
-        * @param inUnit unit
-        * @return true if it's valid
-        */
-       private static boolean isValidUnit(Unit inUnit)
-       {
-               return inUnit != null && (inUnit == UnitSetLibrary.SPEED_UNITS_METRESPERSEC
-                               || inUnit == UnitSetLibrary.SPEED_UNITS_KMPERHOUR
-                               || inUnit == UnitSetLibrary.SPEED_UNITS_FEETPERSEC
-                               || inUnit == UnitSetLibrary.SPEED_UNITS_MILESPERHOUR
-                               || inUnit == UnitSetLibrary.SPEED_UNITS_KNOTS);
-       }
-
-       /**
-        * Invert the speed value, for example when vertical speeds are positive downwards
-        */
-       public void invert() {
-               if (_valid) _value = -_value;
-       }
-
-       /** @return the numerical value in whatever units they're in */
-       public double getValue() {return _value;}
-
-       /** @return the units they're in */
-       public Unit getUnit() {return _unit;}
-
-       /**
-        * @return speed value in metres per second
-        */
-       public double getValueInMetresPerSec()
-       {
-               if (!_valid) return 0.0;
-               return _value / _unit.getMultFactorFromStd();
-       }
-
-       /**
-        * @param inUnit specified speed units
-        * @return speed value in the specified units
-        */
-       public double getValue(Unit inUnit)
-       {
-               if (!_valid || !isValidUnit(inUnit)) return 0.0;
-               return getValueInMetresPerSec() * inUnit.getMultFactorFromStd();
-       }
-
-       /** @return true if this is valid */
-       public boolean isValid() {return _valid;}
-
-       /**
-        * Copy the values from the other object into this one, to make this one a clone
-        * @param inOther other speed object
-        */
-       public void copyFrom(Speed inOther)
-       {
-               _value = inOther._value;
-               _unit  = inOther._unit;
-               _valid = inOther._valid;
-       }
-}