bool CanCalibrate(CalibrationAxes calibrationAxes) { bool result = false; lock (sampleBuffer) { if (DeviceStable) { double accelerationMagnitude = 0; if (calibrationAxes == CalibrationAxes.XAxis) { accelerationMagnitude += averageAcceleration.X * averageAcceleration.X; } if (calibrationAxes == CalibrationAxes.YAxis) { accelerationMagnitude += averageAcceleration.Y * averageAcceleration.Y; } accelerationMagnitude = Math.Sqrt(accelerationMagnitude); if (accelerationMagnitude <= maximumCalibrationOffset) { /* Inclination is not out of bounds * to consider it a calibration offset. */ result = true; } } } return(result); }
bool Calibrate(CalibrationAxes calibrationAxes) { bool result = false; lock (sampleBuffer) { if (CanCalibrate(calibrationAxes)) { CalibrationOffset = new ThreeDimensionalVector( calibrationAxes == CalibrationAxes.XAxis ? -averageAcceleration.X : CalibrationOffset.X, calibrationAxes == CalibrationAxes.YAxis ? -averageAcceleration.Y : CalibrationOffset.Y, 0); /* Persist data. */ SetCalibrationSetting(CalibrationOffset); result = true; } } return(result); }
bool CanCalibrate(CalibrationAxes calibrationAxes) { bool result = false; lock (sampleBuffer) { if (DeviceStable) { double accelerationMagnitude = 0; if (calibrationAxes == CalibrationAxes.XAxis) { accelerationMagnitude += averageAcceleration.X * averageAcceleration.X; } if (calibrationAxes == CalibrationAxes.YAxis) { accelerationMagnitude += averageAcceleration.Y * averageAcceleration.Y; } accelerationMagnitude = Math.Sqrt(accelerationMagnitude); if (accelerationMagnitude <= maximumCalibrationOffset) { /* Inclination is not out of bounds * to consider it a calibration offset. */ result = true; } } } return result; }
bool Calibrate(CalibrationAxes calibrationAxes) { bool result = false; lock (sampleBuffer) { if (CanCalibrate(calibrationAxes)) { CalibrationOffset = new ThreeDimensionalVector( calibrationAxes == CalibrationAxes.XAxis ? -averageAcceleration.X : CalibrationOffset.X, calibrationAxes == CalibrationAxes.YAxis ? -averageAcceleration.Y : CalibrationOffset.Y, 0); /* Persist data. */ SetCalibrationSetting(CalibrationOffset); result = true; } } return result; }