我一直在使用JUNG2图形显示AVL操作(没有任何动画)。
我也在使用OrderedKAryTree。但是渲染有一些问题。所有的边缘出现从根到左上角的框架。如本屏幕截图所示
这是我的可视化代码
vv = new VisualizationViewer<Integer, Integer>(
new TreeLayout<Integer, Integer>(graph),
new Dimension(500, 400));
vv.setBackground(Color.white);
vv.getRenderContext().setEdgeShapeTransformer(
new EdgeShape.Line<Integer, Integer>());
vv.getRenderContext().setVertexLabelTransformer(
new ToStringLabeller<Integer>());
frame.getContentPane().add(vv, BorderLayout.CENTER);
frame.getContentPane().validate();我一直无法弄清楚为什么会发生这种情况。此外,如果我使用DelegateTree,那么相同的代码可以很好地工作,尽管没有实现排序。
请帮帮忙。提前感谢!
发布于 2014-01-05 06:21:10
找到了解决办法。不要使用OrderedKAryTree,而要使用DelegateTree和DirectedOrderedSparceGraph
下面是如何初始化图形:
DelegateTree<V, E> graph = new DelegateTree<V, E>(
new DirectedOrderedSparseMultigraph<V, E>());V和E可以是任意Object。
这并不能解决OrderedKAryTree呈现错误的问题,但它确实可以帮助您显示二进制搜索树。
https://stackoverflow.com/questions/20925104
复制相似问题