예제 #1
0
void
AirspaceRoute::add_nearby_airspace(const RouteAirspaceIntersection &inx,
                                   const RouteLink &e)
{
  const SearchPointVector& fat = inx.first->get_clearance();
  const ClearingPair p = get_pairs(fat, e.first, e.second);
  const ClearingPair pb = get_backup_pairs(fat, e.first, inx.second);

  // process all options
  add_candidate(RouteLinkBase(e.first, p.first));
  add_candidate(RouteLinkBase(e.first, p.second));
  add_candidate(RouteLinkBase(e.first, pb.first));
  add_candidate(RouteLinkBase(e.first, pb.second));
}
예제 #2
0
void
AirspaceRoute::AddNearbyAirspace(const RouteAirspaceIntersection &inx,
                                   const RouteLink &e)
{
  const SearchPointVector& fat = inx.airspace->GetClearance();
  const ClearingPair p = GetPairs(fat, e.first, e.second);
  const ClearingPair pb = GetBackupPairs(fat, e.first, inx.point);

  // process all options
  AddCandidate(RouteLinkBase(e.first, p.first));
  AddCandidate(RouteLinkBase(e.first, p.second));
  AddCandidate(RouteLinkBase(e.first, pb.first));
  AddCandidate(RouteLinkBase(e.first, pb.second));
}