如何在JUNG中反转树的箭头方向(从树叶到树根)?

时间:2013-11-11 12:49:29

标签: java graph tree jung

我是JUNG的新手。我已经绘制了我的树,但是需要将箭头的方向从子节点反转到父节点。

    TreeLayout<VertexLiteral, EdgeLiteral> treeLayout=
            new TreeLayout<VertexLiteral, EdgeLiteral>(tree);
    VisualizationViewer<VertexLiteral, EdgeLiteral> vv =
            new VisualizationViewer<VertexLiteral,EdgeLiteral>(treeLayout, new Dimension(600,600));

任何解决方案?

干杯

2 个答案:

答案 0 :(得分:0)

您可以提供自己的边缘渲染器,或自定义BasicEdgeRenderer,以便在另一端绘制箭头。应该很容易,I.e。 drawSimpleEdge中的一行或两行更改。

答案 1 :(得分:0)

遵循 Joshua O'Madadhain 提出的想法,作为一个快速而肮脏的解决方案:

1)将BasicEdgeRenderer源代码复制到BasicEdgeRenderer_ReverseArrow类

2)在该课程中,在

中交换v1和v2
V v1 = endpoints.getFirst();
V v2 = endpoints.getSecond();

3)将此修改过的渲染器添加到您的代码中,如下所示:

vv.getRenderer().setEdgeRenderer(new BasicEdgeRenderer_ReverseArrow<State, String>());

尼古拉斯