private void Page_Loaded(object sender, RoutedEventArgs e)
        {
            DuelList Dlist = DuelMaker.duelDispose(DuelMaker.createDuels(Selist));
            int      step  = 70;

            for (int i = 0; i < Dlist.getSize(); i++)
            {
                WrapPanel p1 = Duel_Create(step * i, 0, 1, Dlist.getDuel(i));
                grid.Children.Add(p1);
                grid.Children.Add(Fork_Create(step * i + 15, 36 * 6, 30));
            }


            int top = 15;

            for (int s = steps; s > 0; s--)
            {
                int left = (36 * 6 + 40) * (steps - s + 1);
                int k    = (int)Math.Pow(2, s - 1);

                for (int n = 0; n < k; n++)
                {
                    grid.Children.Add(AlonePanel_Create(top + 70 * (int)Math.Pow(2, steps - s) * n, left, n, ""));
                }

                for (int n = 0; n < k / 2; n++)
                {
                    grid.Children.Add(Fork_Create((top + 15) + 70 * (int)Math.Pow(2, steps - s + 1) * n, left + 36 * 6, 70 * (int)Math.Pow(2, steps - s)));
                }

                top += 35 * (int)Math.Pow(2, steps - s);
            }
        }
예제 #2
0
        public static DuelList duelDispose(DuelList dlist)
        {
            int      counter = dlist.getSize();
            DuelList sort    = new DuelList(counter);

            for (int i = 0; i < counter - 1; i += 2)
            {
                sort.setDuel(dlist.getDuel(i), i);
                sort.setDuel(dlist.getDuel(counter - (i + 1)), i + 1);
            }
            return(sort);
        }
예제 #3
0
 public static DuelList createDuels(CompetitorsList compList, int dNum = 0)   //create new duel list
 {
     if (dNum >= 0)
     {
         int      compNum = compList.getSize();
         DuelList myList  = new DuelList(compNum / 2);
         for (int i = 0; i < myList.getSize(); i++)
         {
             Duel newDuel = new Duel(compList.getCompetitor(i), compList.getCompetitor(compNum - (i + 1)), dNum);
             myList.setDuel(newDuel, dNum);
             dNum++;
         }
         return(myList);
     }
     else
     {
         throw new ArgumentException("Parameter cannot be smaller then zero", "dNum");
     }
 }