2

私はFRLayoutでJUNGフレームワークを使用しています。このような:

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 に答える