mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-19 03:45:30 +08:00
Ref T111, normalize utility functions
This commit is contained in:
committed by
Mathew Sutcliffe
parent
4e45496431
commit
9445bd56a3
@@ -126,5 +126,18 @@ namespace BlackMisc
|
||||
{
|
||||
return std::tan(this->value(CAngleUnit::rad()));
|
||||
}
|
||||
|
||||
double CAngle::normalizeDegrees180(double degrees, int roundDigits)
|
||||
{
|
||||
double d = CMathUtils::normalizeDegrees360(degrees + 180.0) - 180.0;
|
||||
if (d <= -180.0) { d = 180.0; } // -180 -> 180
|
||||
return roundDigits < 0 ? d : CMathUtils::round(d, roundDigits);
|
||||
}
|
||||
|
||||
double CAngle::normalizeDegrees360(double degrees, int roundDigits)
|
||||
{
|
||||
const double d = CMathUtils::normalizeDegrees360(degrees);
|
||||
return roundDigits < 0 ? d : CMathUtils::round(d, roundDigits);
|
||||
}
|
||||
} // ns
|
||||
} // ns
|
||||
|
||||
@@ -96,6 +96,12 @@ namespace BlackMisc
|
||||
|
||||
//! Tangent of angle
|
||||
double tan() const;
|
||||
|
||||
//! Normalize: -180< degrees ≤180
|
||||
static double normalizeDegrees180(double degrees, int roundDigits = -1);
|
||||
|
||||
//! Normalize: 0≤ degrees <360
|
||||
static double normalizeDegrees360(double degrees, int roundDigits = -1);
|
||||
};
|
||||
} // ns
|
||||
} // ns
|
||||
|
||||
Reference in New Issue
Block a user