2012-08-22 21 views
3

我正在与JUNG库一起创建Java图。我需要为其父框架拟合图形并设置视图,以便图形显示在视图的中心。如何在JUNG2中找到图形的绘制位置?

我已经设法使用此处的代码将缩放设置为正确的大小: How to manually set the zoom on a Jung visualisation?但是缩小的图保留在相同的位置。我还写了一个函数来使用这里的代码移动图形:How to programatically pan a VisualizationViewer with Jung (the java library)?

问题仍然存在,我该如何确定图形需要从当前位置移动到视图中心的位置。我怎样才能找到图形的当前位置?

感谢

回答

2

看来,要做到这一点的方法是使用ScalingControl。使用比例控制它很容易,以确保图表符合它的父框架,代码要做到这一点:

ScalingControl visualizationViewerScalingControl 
      = new CrossoverScalingControl(); 

visualizationViewer.scaleToLayout(visualizationViewerScalingControl); 

我发现通过查看该SatelliteViewDemo源代码,这样做的方法也实现一个SatelitteView;这允许缩放与全尺寸版本一起的图形视图。

+0

我不认为这是以图表为中心。 – sdasdadas