示例#1
0
        private void SetupWorkspaceRandom()
        {
            workspace = new Workspace(null, logger);

            Random rand = new Random();
            int    size = 10;

            for (int i = 0; i < size; ++i)
            {
                workspace.AddNode(new Node(rand.Next(Width), rand.Next(Height), 2 + rand.Next(19)));
            }

            //double power = 1.1;
            double power = 1 + rand.NextDouble();

            int maxRelationships = (int)Math.Pow(size, power);

            for (int i = 0; i < maxRelationships; ++i)
            {
                Relationship relationship = new Relationship(workspace.Nodes[rand.Next(size)], workspace.Nodes[rand.Next(size)]);

                if (workspace.Relationships.Contains(relationship) || workspace.Relationships.Contains(relationship.Reverse()))
                {
                    continue;
                }

                workspace.AddRelationship(relationship);
            }
        }
示例#2
0
        private void SetupWorkspaceSimple()
        {
            workspace = new Workspace(null, logger);

            workspace.AddNode(new Node(400, 400, 4));
            workspace.AddNode(new Node(500, 400, 4));
            workspace.AddRelationship(new Relationship(workspace.Nodes[0], workspace.Nodes[1]));
        }
示例#3
0
        public void WorkspaceTest_1()
        {
            ILogger   logger = new ConsoleLogger();
            Workspace ws     = new Workspace(logger);

            ws.AddNode(new Node(0, 90, 1));
            ws.AddNode(new Node(10, 20, 2));
            ws.AddNode(new Node(20, 40, 1));
            ws.AddNode(new Node(30, 60, 4));
            ws.AddNode(new Node(40, 100, 1));
            ws.AddNode(new Node(50, 80, 5));
            ws.AddNode(new Node(60, 0, 1));
            ws.AddNode(new Node(70, 50, 5));
            ws.AddNode(new Node(80, 10, 1));
            ws.AddNode(new Node(90, 30, 100));
            ws.AddNode(new Node(100, 70, 3));

            ws.AddRelationship(new Relationship(ws.Nodes[0], ws.Nodes[1]));
            ws.AddRelationship(new Relationship(ws.Nodes[0], ws.Nodes[2]));
            ws.AddRelationship(new Relationship(ws.Nodes[0], ws.Nodes[3]));
            ws.AddRelationship(new Relationship(ws.Nodes[0], ws.Nodes[7]));
            ws.AddRelationship(new Relationship(ws.Nodes[1], ws.Nodes[2]));
            ws.AddRelationship(new Relationship(ws.Nodes[1], ws.Nodes[5]));
            ws.AddRelationship(new Relationship(ws.Nodes[1], ws.Nodes[7]));
            ws.AddRelationship(new Relationship(ws.Nodes[2], ws.Nodes[3]));
            ws.AddRelationship(new Relationship(ws.Nodes[2], ws.Nodes[9]));
            ws.AddRelationship(new Relationship(ws.Nodes[2], ws.Nodes[10]));
            ws.AddRelationship(new Relationship(ws.Nodes[3], ws.Nodes[5]));
            ws.AddRelationship(new Relationship(ws.Nodes[3], ws.Nodes[6]));
            ws.AddRelationship(new Relationship(ws.Nodes[4], ws.Nodes[8]));
            ws.AddRelationship(new Relationship(ws.Nodes[4], ws.Nodes[9]));
            ws.AddRelationship(new Relationship(ws.Nodes[5], ws.Nodes[6]));
            ws.AddRelationship(new Relationship(ws.Nodes[5], ws.Nodes[10]));
            ws.AddRelationship(new Relationship(ws.Nodes[6], ws.Nodes[10]));
            ws.AddRelationship(new Relationship(ws.Nodes[7], ws.Nodes[8]));
            ws.AddRelationship(new Relationship(ws.Nodes[9], ws.Nodes[10]));

            ws.Iterate(500);
        }
示例#4
0
        private void SetupWorkspaceTree()
        {
            workspace = new Workspace(null, logger);

            SetupNodesStandard(workspace);

            workspace.AddRelationship(new Relationship(workspace.Nodes[0], workspace.Nodes[1]));
            workspace.AddRelationship(new Relationship(workspace.Nodes[0], workspace.Nodes[2]));
            workspace.AddRelationship(new Relationship(workspace.Nodes[0], workspace.Nodes[3]));
            workspace.AddRelationship(new Relationship(workspace.Nodes[0], workspace.Nodes[4]));
            workspace.AddRelationship(new Relationship(workspace.Nodes[0], workspace.Nodes[5]));
            workspace.AddRelationship(new Relationship(workspace.Nodes[0], workspace.Nodes[6]));
            workspace.AddRelationship(new Relationship(workspace.Nodes[0], workspace.Nodes[7]));
            workspace.AddRelationship(new Relationship(workspace.Nodes[0], workspace.Nodes[8]));
            workspace.AddRelationship(new Relationship(workspace.Nodes[0], workspace.Nodes[9]));
            workspace.AddRelationship(new Relationship(workspace.Nodes[0], workspace.Nodes[10]));
            workspace.AddRelationship(new Relationship(workspace.Nodes[0], workspace.Nodes[11]));
            workspace.AddRelationship(new Relationship(workspace.Nodes[0], workspace.Nodes[12]));
        }
示例#5
0
        static void Main(string[] args)
        {
            ILogger   logger = new ConsoleLogger();
            Workspace ws     = new Workspace(logger);

            ws.AddNode(new Node(0, 90, 1));
            ws.AddNode(new Node(10, 20, 2));
            ws.AddNode(new Node(20, 40, 1));
            ws.AddNode(new Node(30, 60, 4));
            ws.AddNode(new Node(40, 100, 1));
            ws.AddNode(new Node(50, 80, 5));
            ws.AddNode(new Node(60, 0, 1));
            ws.AddNode(new Node(70, 50, 5));
            ws.AddNode(new Node(80, 10, 1));
            ws.AddNode(new Node(90, 30, 100));
            ws.AddNode(new Node(100, 70, 3));

            ws.AddRelationship(new Relationship(ws.Nodes[0], ws.Nodes[1]));
            ws.AddRelationship(new Relationship(ws.Nodes[0], ws.Nodes[2]));
            ws.AddRelationship(new Relationship(ws.Nodes[0], ws.Nodes[3]));
            ws.AddRelationship(new Relationship(ws.Nodes[0], ws.Nodes[7]));
            ws.AddRelationship(new Relationship(ws.Nodes[1], ws.Nodes[2]));
            ws.AddRelationship(new Relationship(ws.Nodes[1], ws.Nodes[5]));
            ws.AddRelationship(new Relationship(ws.Nodes[1], ws.Nodes[7]));
            ws.AddRelationship(new Relationship(ws.Nodes[2], ws.Nodes[3]));
            ws.AddRelationship(new Relationship(ws.Nodes[2], ws.Nodes[9]));
            ws.AddRelationship(new Relationship(ws.Nodes[2], ws.Nodes[10]));
            ws.AddRelationship(new Relationship(ws.Nodes[3], ws.Nodes[5]));
            ws.AddRelationship(new Relationship(ws.Nodes[3], ws.Nodes[6]));
            ws.AddRelationship(new Relationship(ws.Nodes[4], ws.Nodes[8]));
            ws.AddRelationship(new Relationship(ws.Nodes[4], ws.Nodes[9]));
            ws.AddRelationship(new Relationship(ws.Nodes[5], ws.Nodes[6]));
            ws.AddRelationship(new Relationship(ws.Nodes[5], ws.Nodes[10]));
            ws.AddRelationship(new Relationship(ws.Nodes[6], ws.Nodes[10]));
            ws.AddRelationship(new Relationship(ws.Nodes[7], ws.Nodes[8]));
            ws.AddRelationship(new Relationship(ws.Nodes[9], ws.Nodes[10]));

            ws.Iterate(10000);

            Console.ReadLine();
        }