private XVector3 GetFurthestVertFrom(XVector3 o)
        {
            MaxHeap <XVector3> sorter = new MaxHeap <XVector3>((XVector3 a, XVector3 b) =>
            {
                return((XVector3.Distance(o, a) <= XVector3.Distance(o, b)) ? -1 : 1);
            });

            foreach (XVector3 vert in _verts)
            {
                sorter.Add(vert);
            }

            return(sorter.Remove());
        }
Beispiel #2
0
 public bool Add(T0 key, T1 value)
 {
     try
     {
         if (MemberCondition != null && !MemberCondition(value))
         {
             return(false);
         }
         _map.Add(key, value);
         _maxSorter.Add(value);
         _minSorter.Add(value);
         CollectionChanged?.Invoke(value);
         ItemAddition?.Invoke(value);
         return(true);
     }
     catch
     {
         return(false);
     }
 }