2

我正在使用 JUNG 框架和 FRLayout。像这样:

layout = new FRLayout<String, Number>(graph);
preferredSize = new Dimension(600, 600);

final VisualizationModel<String, Number> visualizationModel = 
new DefaultVisualizationModel<String, Number>(layout, preferredSize);
vv = new VisualizationViewer<String, Number>(visualizationModel, preferredSize);

我把它放在了 GraphZoomScrollPane 中。我可以放大、缩小、四处移动图形,直到它看起来像我想要的那样,但我希望在我启动我的 Swing 应用程序时它是这样的。

我真正想要的是图形的 PreferredSize 根据图形大小动态调整,这样当我加载大图形时,我不必在顶点不再重叠之前放大十亿倍。

不适合我的面板的内容通常应该在滚动条后面“消失”。

4

1 回答 1

0

您可以使用以下方式以编程方式对其进行缩放:

double amount = 1.0;    // Or negative to zoom out.
ScalingControl scaler = new CrossoverScalingControl();
scaler.scale(vv, amount > 0 ? 1.1f : 1 / 1.1f, vv.getCenter());

注意:我之前从 StackOverflow 得到了这个(所以这段代码的功劳不是我的),但我似乎找不到原始问题。

编辑:

我找到了:

如何手动设置 Jung 可视化的缩放比例?

于 2012-10-22T22:37:00.900 回答