在拾取模式下,我想限制用户拖动定义的布局边界之外的顶点。我已将ISOMLayout,VisualizationModel和VisualizationViewer设置为相同的大小。但是如果我缩小(我使用CrossoverScalingControl),我可以将顶点拖到布局/ vv的界限之外。这导致我的GraphZoomScrollPane的滚动条不能按预期工作:可以有浮动的顶点,你可以滚动到它,你必须缩小才能看到它们。
当然有办法将用户锁定在某个边界?
Dimension preferredDimension = new Dimension(1200, 800);
Layout<CNode,CEdge> layout = new ISOMLayout<>(graph);
layout.setSize(preferredDimension);
VisualizationModel<CNode, CEdge> visualizationModel = new DefaultVisualizationModel<>(layout, preferredDimension);
vv = new VisualizationViewer<>(visualizationModel, preferredDimension);
答案 0 :(得分:0)
如果要设置一个无法手动移动顶点的边界,可以在代码中执行此操作(特别是在响应拖动选定顶点的部分中;您可以在其中指定限制你可以拖远一个顶点)。 JUNG没有责任阻止你将顶点位置设置为布局不会使用的东西;就JUNG而言,如果你愿意,你可以这样做。 :)