mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-04 16:56:53 +08:00
Ref T275, elevation plane improvements
* setRadiusOrMinimum * ASSERT if there is no radius
This commit is contained in:
@@ -31,13 +31,18 @@ namespace BlackMisc
|
||||
CElevationPlane::CElevationPlane(const ICoordinateGeodetic &coordinate, const ICoordinateGeodetic &rangeCoordinate) :
|
||||
CCoordinateGeodetic(coordinate)
|
||||
{
|
||||
m_radius = this->calculateGreatCircleDistance(rangeCoordinate);
|
||||
this->setRadiusOrMinimum(this->calculateGreatCircleDistance(rangeCoordinate));
|
||||
}
|
||||
|
||||
CElevationPlane::CElevationPlane(const ICoordinateGeodetic &coordinate, const CLength &radius) :
|
||||
CCoordinateGeodetic(coordinate), m_radius(radius)
|
||||
{ }
|
||||
|
||||
void CElevationPlane::setRadiusOrMinimum(const CLength &radius)
|
||||
{
|
||||
m_radius = ((radius.isNull() || radius < CElevationPlane::singlePointRadius())) ? CElevationPlane::singlePointRadius() : radius;
|
||||
}
|
||||
|
||||
void CElevationPlane::addAltitudeOffset(const CLength &offset)
|
||||
{
|
||||
if (offset.isNull() || offset.isZeroEpsilonConsidered()) { return; }
|
||||
|
||||
Reference in New Issue
Block a user