Example #1
0
bool
AirspaceRoute::CheckClearance(const RouteLink &e, RoutePoint& inp) const
{
  // attempt terrain clearance first

  if (!CheckClearanceTerrain(e, inp)) {
    m_inx.airspace = NULL;
    m_inx.point = inp;
    return false;
  }

  if (!rpolars_route.IsAirspaceEnabled())
    return true; // trivial

  // passes terrain, so now check airspace clearance

  m_inx = FirstIntersecting(e);
  if (m_inx.airspace != NULL)  {
    inp = m_inx.point;
    return false;
  }

  // made it this far!
  return true;
}
Example #2
0
bool
TerrainRoute::CheckClearance(const RouteLink &e, RoutePoint& inp) const
{
  if (CheckClearanceTerrain(e, inp))
    return true;
  m_inx_terrain = inp;
  return false;
}