コード例 #1
0
ファイル: Graph.py プロジェクト: thoys/mobdat
    net1 = Graph()
    net1.AddDecorationHandler(TestDecoration)
    net1.AddDecorationHandler(EdgeTypeDecoration)

    edges1 = Collection(name='type1edges')
    edges1.AddDecoration(EdgeTypeDecoration('type1', 25))
    net1.AddCollection(edges1)

    edges2 = Collection(name='type2edges')
    edges2.AddDecoration(EdgeTypeDecoration('type2', 5))
    net1.AddCollection(edges2)

    for x in range(0, 5):
        for y in range(0, 5):
            node = Node(GenNameFromCoordinates(x, y))
            node.AddDecoration(CoordDecoration(x, y))
            net1.AddNode(node)
            if x > 0:
                if y > 0:
                    edge = Edge(
                        node, net1.Nodes[GenNameFromCoordinates(x - 1, y - 1)])
                    edges1.AddMember(edge)
                    net1.AddEdge(edge)

            d = TestDecoration(x, y)
            node.AddDecoration(d)

    for edge in net1.Edges.itervalues():
        if edge.EndNode.Coord.X % 2 == 0:
            edges = edge.FindDecorationProvider('EdgeType')
            edges.DropMember(edge)