Exemple #1
0
 public Node GetBestNode()
 {
     if (IsFinalNode)
     {
         return(BestNode);
     }
     else
     {
         //recursiveCall
         var bestNodes = (Descendency.Where(k => k.BestNode != null).Select(k => k.BestNode));
         return(bestNodes.Min());
     }
 }
Exemple #2
0
        public Node GetBestNodeFromMostUndenseArea()
        {
            var areas = Descendency.Where(a => a.IsFinalNode && a.Density > 0.0).OrderBy(a => a.Density).ThenBy(a => a.BestNode);

            QuadTreeArea bestArea = areas.FirstOrDefault();

            if (bestArea == null)
            {
                return(GetBestNode());
            }
            else
            {
                return(bestArea.GetBestNode());
            }
        }