Esempio n. 1
0
 public abstract List <T> Search(DominoRectangle region, List <T> result);
Esempio n. 2
0
 public bool Intersects(DominoRectangle rect)
 {
     return(boundingbox.Intersects(rect));
 }
Esempio n. 3
0
        // erster Wert: Index, zweiter Wert gibt an, zu welcher Gruppe er gehören soll (false = Gruppe2, true=Gruppe1)
        private Tuple <int, bool> PickNext <A>(List <A> list, DominoRectangle bounding1, DominoRectangle bounding2) where A : Geometry
        {
            double preference = 0;
            int    preferred  = 0;
            bool   l          = false;

            for (int i = 0; i < list.Count; i++)
            {
                var result1 = bounding1.SizeOfCommonBoundingRectangle(list[i].getBoundingRectangle()) - bounding1.Size;
                var result2 = bounding2.SizeOfCommonBoundingRectangle(list[i].getBoundingRectangle()) - bounding2.Size;
                var pref    = result2 - result1;
                if (Math.Abs(pref) > preference)
                {
                    preferred  = i;
                    preference = Math.Abs(pref);
                    l          = pref > 0;
                }
            }
            return(new Tuple <int, bool>(preferred, l));
        }