我想知道如何改变与一个VisualizationViewer与jung关联的布局的大小?如何在使用采摘模式时使用Jung更新布局的大小?
我解释了目的:实际上,当使用SatelliteVisualizationViewer时,我们可以选择一个节点并将其移动到SatelliteVisualisationViewer未覆盖的区域。
我们可以在JUNG发行版的SatelliteViewDemo类中看到这一点。启动演示,选择一个节点并将其移出布局大小。该节点在VisualizationViewer中很好地显示,但不在卫星视图中显示。
因此,我尝试在PickingGraphMousePlugin的MouseListener中添加一些代码,特别是在mouseReleased(...)方法中,以便通过包含图的所有节点的矩形的大小来更新布局大小。为此,应该更新SatelliteView。 但如何做到这一点?
编辑:对不起,没有足够详细。实际上,改变布局大小并不会改变SatelliteView,因此位于布局外部的顶点(拾取和移动操作之后)仍然不被SatelliteView覆盖。
也许我错过了什么......
其实真正的问题是:如何改变由SatelliteVisualizationViewer覆盖的区域? !
对不起就够了。 实际上,改变布局大小并不会改变SatelliteView,因此位于布局外的顶点(在拾取和移动操作之后)仍然不被SatelliteView覆盖。 也许我错过了一些东西...... 其实真正的问题是:如何改变SatelliteVisualizationViewer覆盖的区域? ! – njames 2011-04-23 09:00:56
您将需要更改VV尺寸(使用setSize())以及布局尺寸。 (这可能有助于将布局和可视化坐标空间视为不同,因为它们是。)完成之后,您需要刷新可视化。 – 2011-04-25 21:28:05
我已经调查了这一点,但这并没有使解决方案更接近。 实际上,您仍然可以将顶点放置在由satellitevisualizationviewer覆盖的区域之外。考虑一个顶点可以被挑选并移动到“nord”并且扩展布局或者satellitevisualizationviewer的大小不会使顶点显示出来。另一件事:刷新SatelliteVisualizationViewer是不够的,我们不得不fireStateChange()。 – njames 2011-04-26 10:58:57