JUNG: porządkowanie węzłów drzew
Podczas dodawania węzłów do mojegoDelegateTree
, nie pojawiają się wizualnie w kolejności, w jakiej je dodałem. Szukałem rozwiązania, ale jeszcze nic nie znalazłem. Czy jest ktoś, kto może wiedzieć, jak to zmienić?
Z góry dziękuję!
EDYTOWAĆ: Mój kod
<code>/** * Generate a visualization of the decision tree. * * @param tree * The decision tree * @return A component to be placed inside a JPanel */ public static GraphZoomScrollPane generateTree(Tree tree, GraphicalUserInterface gui) { /* Create a new tree */ DelegateTree<Node, Edge> graphTree = new DelegateTree<Node, Edge>(); /* Add all nodes and vertices to the tree */ graphTree.addVertex(tree.getRoot()); addChildren(tree.getRoot(), graphTree); /* Create the visualization */ DynamicTreeLayout<Node, Edge> treeLayout = new DynamicTreeLayout<Node, Edge>(graphTree, 100, 100); VisualizationViewer<Node, Edge> vv = new VisualizationViewer<Node, Edge>( treeLayout); vv.setDoubleBuffered(true); vv.setBackground(Color.WHITE); vv.getRenderContext().setEdgeLabelTransformer( new ToStringLabeller<Edge>()); vv.getRenderContext().setEdgeShapeTransformer( new EdgeShape.Line<Node, Edge>()); vv.getRenderContext().setVertexLabelTransformer( new ToStringLabeller<Node>()); vv.getRenderer().getVertexLabelRenderer() .setPosition(Renderer.VertexLabel.Position.S); vv.addGraphMouseListener(new ClickNode(gui, vv)); final DefaultModalGraphMouse<Node, Edge> graphMouse = new DefaultModalGraphMouse<Node, Edge>(); graphMouse.setMode(ModalGraphMouse.Mode.TRANSFORMING); vv.setGraphMouse(graphMouse); final GraphZoomScrollPane gzsp = new GraphZoomScrollPane(vv); return gzsp; } /** * Recursively add all nodes and edges to the tree. * * @param node * The parent node * @param tree * The tree visualization */ private static void addChildren(Node node, DelegateTree<Node, Edge> tree) { for (int i = 0; i < node.getChildren().size(); i++) { tree.addChild(new Edge(node.getChildren().get(i).getEdgeLabel()), node, node .getChildren().get(i)); addChildren(node.getChildren().get(i), tree); } } </code>