- // All three points have timestamps
- double seconds = point.getTimestamp().getSecondsSince(prevPrevPoint.getTimestamp());
- if (seconds > 0)
- {
- double distInRads = DataPoint.calculateRadiansBetween(prevPrevPoint, prevPoint)
- + DataPoint.calculateRadiansBetween(prevPoint, point);
- double dist = Distance.convertRadiansToDistance(distInRads, _metric?Units.KILOMETRES:Units.MILES);
- // Store the value and maintain max and min values
- double value = dist / seconds * 60.0 * 60.0;
- _pointValues[i-1] = value;
- if (value < _minValue || _minValue == 0.0) {_minValue = value;}
- if (value > _maxValue) {_maxValue = value;}
-
- _hasData = true;
- _pointHasData[i-1] = true;
- }
+ double speedValue = speed.getValue();
+ _pointValues[i] = speedValue;
+ if (speedValue < _minValue || !_hasData) {_minValue = speedValue;}
+ if (speedValue > _maxValue || !_hasData) {_maxValue = speedValue;}
+ _hasData = true;