def build(cls, tree, separate=False): DiagramNode.clear() DiagramEdge.clear() NodeGroup.clear() diagram = DiagramTreeBuilder().build(tree) DiagramLayoutManager(diagram).run() diagram.fixiate(True) if diagram.orientation == 'portrait': cls.rotate_diagram(diagram) return diagram