]> git.mxchange.org Git - flightgear.git/blobdiff - src/Autopilot/inputvalue.cxx
Remove hard-coded values wherever possible;
[flightgear.git] / src / Autopilot / inputvalue.cxx
index fb80263c19ee59faf71d9e68f6d71c63f570989d..cbda6651f77e12a5e3c447e9ee1b3674cf9a887b 100644 (file)
@@ -36,23 +36,7 @@ PeriodicalValue::PeriodicalValue( SGPropertyNode_ptr root )
 
 double PeriodicalValue::normalize( double value )
 {
-  if( !(minPeriod && maxPeriod )) return value;
-
-  double p1 = minPeriod->get_value();
-  double p2 = maxPeriod->get_value();
-
-  double min = std::min<double>(p1,p2);
-  double max = std::max<double>(p1,p2);
-  double phase = fabs(max - min);
-
-  if( phase > SGLimitsd::min() ) {
-    while( value < min )  value += phase;
-    while( value >= max ) value -= phase;
-  } else {
-    value = min; // phase is zero
-  }
-
-  return value;
+  return SGMiscd::normalizePeriodic( minPeriod->get_value(), maxPeriod->get_value(), value );
 }
 
 InputValue::InputValue( SGPropertyNode_ptr node, double value, double offset, double scale) :