Example #1
0
 protected void TestGenerateLargeDocument(int count, int countOfLinks)
 {
     ClearContent();
     log.Debug(() => "Now generating document: count of nodes: " + count + "; count of links: " + countOfLinks);
     var nodes = new List<NodeControl>(count);
     var random = new Random();
     for (int i = 0; i < count; ++i)
     {
         //log.Debug(() => "Node #" + i + "...");
         var node = new NodeControl(i.ToString());
         nodes.Add(node);
         Canvas.Children.Add(node);
         node.UpdateLayout();
         Canvas.SetLeft(node, random.NextDouble() * (Canvas.Width - node.ActualWidth));
         Canvas.SetTop(node, random.NextDouble() * (Canvas.Height - node.ActualHeight));
     }
     for (int i = 0; i < countOfLinks; ++i)
     {
         //log.Debug(() => "Link #" + i + "...");
         var index1 = random.Next(count);
         var index2 = random.Next(count);
         if (index1 != index2)
         {
             var link = new LinkControl().Create();
             var node1 = nodes[index1];
             var node2 = nodes[index2];
             Canvas.Children.Add(link.TheLine);
             link.BindNode1(node1);
             link.BindNode2(node2);
         }
     }
 }