アニメーション
アクションリストを一本化して、アニメーションさせる例。
キモは、RepaintAction と ForceDirectedLayout。
private Visualization makeVisualization(Graph g){
Visualization m_vis;
ColorAction nodeDraw;
ColorAction edgeDraw;
ActionList animate;
/*
Visualization クラスのインスタンスを作り、Graph データを与える。
*/
m_vis = new Visualization();
m_vis.addGraph(GRAPH, g);
nodeDraw=new ColorAction(NODES,
VisualItem.FILLCOLOR, ColorLib.rgb(200,200,255));
nodeDraw.add(VisualItem.FIXED, ColorLib.rgb(250,100,100));
nodeDraw.add(VisualItem.HIGHLIGHT, ColorLib.rgb(250,200,100));
edgeDraw=new ColorAction(EDGES,
VisualItem.STROKECOLOR, ColorLib.rgb(100,100,100));
/*
アクション
*/
animate = new ActionList(Activity.INFINITY);
animate.add(new ColorAction(GRAPH,
VisualItem.STROKECOLOR,ColorLib.rgb(200,200,200)));
animate.add(nodeDraw);
animate.add(edgeDraw);
animate.add(new RepaintAction());
animate.add(new ForceDirectedLayout(GRAPH));
/*
アクションの登録
*/
m_vis.putAction("animate", animate);
m_vis.run("animate");
return m_vis;
}
最終更新:2009年02月01日 22:21