fix problem at the source
This commit is contained in:
committed by
Patrick Niklaus
parent
1b51163b1d
commit
67ce19cb14
@@ -56,7 +56,7 @@ DiscreteBearing BearingClass::getDiscreteBearing(const double bearing)
|
||||
{
|
||||
BOOST_ASSERT(0. <= bearing && bearing <= 360.);
|
||||
auto shifted_bearing = (bearing + 0.5 * discrete_step_size);
|
||||
if (shifted_bearing > 360.)
|
||||
if (shifted_bearing >= 360.)
|
||||
shifted_bearing -= 360;
|
||||
return static_cast<DiscreteBearing>(shifted_bearing / discrete_step_size);
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@ constexpr double bearing_scale = 360.0 / 256.0;
|
||||
// discretizes a bearing into distinct units of 1.4 degrees
|
||||
TurnBearing::TurnBearing(const double value) : bearing(value / bearing_scale)
|
||||
{
|
||||
BOOST_ASSERT_MSG(value >= 0 && value <= 360.0, "Bearing value needs to be between 0 and 360");
|
||||
BOOST_ASSERT_MSG(value >= 0 && value < 360.0, "Bearing value needs to be between 0 and 360 (exclusive)");
|
||||
}
|
||||
|
||||
double TurnBearing::Get() const { return bearing * bearing_scale; }
|
||||
|
||||
Reference in New Issue
Block a user