【发布时间】:2012-08-06 08:45:48
【问题描述】:
我在 Prefuse 中使用 SpecifiedLayout 时遇到问题。我想在已经预定义的位置设置一些节点。我尝试过使用 AxisLayout。节点设置在正确的位置,但是我不能真正使用 DragControl 或 ZoomControl 的选项。 所以我尝试使用SpecifiedLayout。这里的问题是所有节点都设置在同一个位置,而不是我一开始指定的位置。 希望有人能帮我解决这个问题。
代码如下:
private static Visualization vis;
graph = new Graph();
graph.addColumn("positionx", Integer.class);
graph.addColumn("positiony", Integer.class);
然后我将预定义的位置添加到“positionx”和“positiony”。之后:
ActionList layout = new ActionList(ActionList.INFINITY);
SpecifiedLayout l = new SpecifiedLayout("graph.nodes","positionx","positiony");
layout.add(l);
layout.add(new RepaintAction());
vis.putAction("layout", layout);
如我所说,如果我使用 AxisLayout 而不是 SpecifiedLayout:
layout.add(new AxisLayout("graph.nodes","positionx",Constants.X_AXIS));
layout.add(new AxisLayout("graph.nodes","positiony",Constants.Y_AXIS));
节点设置正确,但无法拖动和缩放。
非常感谢任何帮助。
谢谢
【问题讨论】: