org.simBio.sim.analyzer.graph
クラス AbstractGraph

java.lang.Object
  上位を拡張 org.simBio.core.Component
      上位を拡張 org.simBio.core.Parameter
          上位を拡張 org.simBio.core.Composite
              上位を拡張 org.simBio.core.Analyzer
                  上位を拡張 org.simBio.sim.analyzer.VisualizeAnalyzer
                      上位を拡張 org.simBio.sim.analyzer.graph.AbstractGraph
すべての実装されたインタフェース:
Node
直系の既知のサブクラス:
BasicGraph

public abstract class AbstractGraph
extends VisualizeAnalyzer

Graphのフレームワークを提供する. 本クラスでは、画面の再描画機能などは提供せずに、継承したGraph系クラスを シンプルに実装できるようにフレームワークを構成する。

Notice

バージョン:
$Id: AbstractGraph.java,v 1.4 2007/04/07 08:44:07 nsarai Exp $
作成者:
Misaki

フィールドの概要
protected  AxisX axisX
           座標軸オブジェクト(横方向)
protected  AxisY axisY
           座標軸オブジェクト(縦方向)
 double interval
           計算結果の処理間隔
protected static org.apache.commons.logging.Log log
           
protected  double maxTime
          これまでの最大時刻
protected  double nextTime
           次に処理する時刻
protected  int nTarget
           管理対象となるNodeの数 (target X, base)
protected  int nTargetOrigin
           nTargetの基点. Graphの場合:0、RelationGraphの場合:1、setLinks() で、super.setLinks() を行う前に設定すること.
protected  Viewer page
           このGraphが配置されるViewer
protected  IPlot plotDisplay
           画面描画処理インスタンス
protected  IPlot plotPrinter
           印刷描画処理インスタンス
protected  Node[] target
           描画対象となるNode (target X)
protected  java.lang.String[] targetName
           描画対象となるNode名 (page.Graph.target X)
protected  double[] targetScale
           描画対象となるNodeの拡大倍率 (target X scale)
protected  java.lang.String[] targetShortName
           描画対象となる短いNode名 (target X)
protected  AbstractGraph thisGraph
           サブクラスから、このGraphにアクセスするための情報
protected  double[] valuesBuffer
           計算結果を一時格納するバッファ
 
クラス org.simBio.core.Parameter から継承されたフィールド
value
 
コンストラクタの概要
AbstractGraph()
           
 
メソッドの概要
protected  void analyze(double t)
           デフォルトの analyze処理
protected abstract  void analyzeSub(double t, double[] valuesBuffer, IPlot plot)
           サブクラスに記述するための analyze処理
 void changeScale()
           表示位置/表示範囲が更新された際に、再描画に必要な準備を行う. 現在は、Viewerの同名メソッドを呼び出している。
 void doRepaint()
          再描画を行う.
 void drawLine(IPlot plot, java.awt.Graphics2D graphics2d, double x1, double y1, double x2, double y2, int nGraph)
           グラフに点を打つ. Graph4Stateにて点の代わりに線を引く際に、継承しやすいように分離しています。
 void drawPoint(IPlot plot, java.awt.Graphics2D graphics2d, double x, double y, int nGraph)
           グラフに線を引く. Graph4Stateにて点の代わりに線を引く際に、継承しやすいように分離しています。
protected  void paintAxises(java.awt.Graphics2D graphics2d, IPlot plot)
          Initialize graph area, and draw axes and grids.
protected  void paintBackground(java.awt.Graphics2D graphics2d, IPlot plot)
          Draw background.
 void paintComponent(java.awt.Graphics graphic)
           Graphの画面用描画を行う.
protected abstract  void paintGraph(java.awt.Graphics2D graphics2d, IPlot plot)
          Draw graph.
protected  void paintLegend(java.awt.Graphics2D graphics2d, IPlot plot)
          Draw legend.
protected  void prepare()
          Set link to the targets.
 void prepareRepaint()
          再描画を準備する.
protected  void printAxises(java.awt.Graphics2D graphics2d, IPlot plot)
          Initialize graph area, and draw axes and grids.
protected  void printBackground(java.awt.Graphics2D graphics2d, IPlot plot)
          Draw background.
 void printComponent(java.awt.Graphics graphic)
           Graphの印刷用描画を行う.
protected  void printGraph(java.awt.Graphics2D graphics2d, IPlot plot)
          Draw graph.
protected  void printLegend(java.awt.Graphics2D graphics2d, IPlot plot)
          Draw legend.
protected  void resize(IPlot plot)
           現在の親ウィンドウの大きさに応じて、Graphサイズを再計算する.
 void setAreaChanged()
           表示されているデータ範囲が変化したことを知らせる. Graph等、計算データを加工してキャッシュしている場合、表示範囲がスクロールした場合や、 解像度が変わった場合等で、キャッシュを破棄する必要のある場合がある。
protected  void setLinks()
          Link to the Viewer, AxisX, AxisY and count number of the target, get array.
 
クラス org.simBio.sim.analyzer.VisualizeAnalyzer から継承されたメソッド
getColorParameter, getDouble, getFontParameter, getNodeHierarchically, getNodeRecursive, repaint, resetBuffer
 
クラス org.simBio.core.Composite から継承されたメソッド
accept, getLink, getNode, getNodesIterator, getNodesSize
 
クラス org.simBio.core.Parameter から継承されたメソッド
addValue, getValue, getValueString, setInitializer, setValue, setValueString, setValueToField
 
クラス org.simBio.core.Component から継承されたメソッド
addDydt, end, getIndent, getIndentedShortName, getName, getName, getParent, getRoot, getShortName, getUnits, isNamed, isPrefixed, logIndented, quit
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
インタフェース org.simBio.core.Node から継承されたメソッド
addDydt, addValue, getValue, setValue
 

フィールドの詳細

log

protected static org.apache.commons.logging.Log log

interval

public double interval
計算結果の処理間隔


axisX

protected AxisX axisX
座標軸オブジェクト(横方向)


axisY

protected AxisY axisY
座標軸オブジェクト(縦方向)


nextTime

protected double nextTime
次に処理する時刻


maxTime

protected double maxTime
これまでの最大時刻


valuesBuffer

protected double[] valuesBuffer
計算結果を一時格納するバッファ


thisGraph

protected AbstractGraph thisGraph
サブクラスから、このGraphにアクセスするための情報


page

protected Viewer page
このGraphが配置されるViewer


plotDisplay

protected IPlot plotDisplay
画面描画処理インスタンス


plotPrinter

protected IPlot plotPrinter
印刷描画処理インスタンス


target

protected Node[] target
描画対象となるNode (target X)


targetName

protected java.lang.String[] targetName
描画対象となるNode名 (page.Graph.target X)


targetShortName

protected java.lang.String[] targetShortName
描画対象となる短いNode名 (target X)


targetScale

protected double[] targetScale
描画対象となるNodeの拡大倍率 (target X scale)


nTarget

protected int nTarget
管理対象となるNodeの数 (target X, base)


nTargetOrigin

protected int nTargetOrigin
nTargetの基点. Graphの場合:0、RelationGraphの場合:1、setLinks() で、super.setLinks() を行う前に設定すること.

コンストラクタの詳細

AbstractGraph

public AbstractGraph()
メソッドの詳細

setLinks

protected void setLinks()
Link to the Viewer, AxisX, AxisY and count number of the target, get array.

オーバーライド:
クラス Component 内の setLinks
関連項目:
Component.setLinks()

prepare

protected void prepare()
Set link to the targets.

オーバーライド:
クラス Parameter 内の prepare
関連項目:
Component.prepare()

paintComponent

public void paintComponent(java.awt.Graphics graphic)
Graphの画面用描画を行う.

パラメータ:
graphic - 描画対象のGraphics

printComponent

public void printComponent(java.awt.Graphics graphic)
Graphの印刷用描画を行う.

パラメータ:
graphic - 描画対象のGraphics

prepareRepaint

public void prepareRepaint()
クラス VisualizeAnalyzer の記述:
再描画を準備する. 指定したNodeおよび配下のNodeについて、再描画の準備を行います。 GUIからグラフ領域を更新する際、必ず、doRepaint() メソッドの前に呼び出すこと。
クラス実装上の扱い

オーバーライド:
クラス VisualizeAnalyzer 内の prepareRepaint

doRepaint

public void doRepaint()
クラス VisualizeAnalyzer の記述:
再描画を行う. 指定したNodeおよび配下のNodeについて、再描画を行います。 GUIからグラフ領域を更新する際、prepareRepaint() メソッドの後に呼び出すこと。
クラス実装上の扱い

オーバーライド:
クラス VisualizeAnalyzer 内の doRepaint

changeScale

public void changeScale()
表示位置/表示範囲が更新された際に、再描画に必要な準備を行う. 現在は、Viewerの同名メソッドを呼び出している。


analyze

protected final void analyze(double t)
デフォルトの analyze処理

定義:
クラス VisualizeAnalyzer 内の analyze
パラメータ:
t - time
関連項目:
Conductor.integrate()

analyzeSub

protected abstract void analyzeSub(double t,
                                   double[] valuesBuffer,
                                   IPlot plot)
サブクラスに記述するための analyze処理

パラメータ:
t - 時刻
valuesBuffer - 計算結果の配列
plot - 描画処理オブジェクト

paintBackground

protected void paintBackground(java.awt.Graphics2D graphics2d,
                               IPlot plot)
Draw background.

パラメータ:
graphics2d - 描画されるGraphics
plot - 描画処理オブジェクト

paintGraph

protected abstract void paintGraph(java.awt.Graphics2D graphics2d,
                                   IPlot plot)
Draw graph.

パラメータ:
graphics2d - 描画されるGraphics
plot - 描画処理オブジェクト

paintAxises

protected void paintAxises(java.awt.Graphics2D graphics2d,
                           IPlot plot)
Initialize graph area, and draw axes and grids.

パラメータ:
graphics2d - 描画されるGraphics
plot - 描画処理オブジェクト

paintLegend

protected void paintLegend(java.awt.Graphics2D graphics2d,
                           IPlot plot)
Draw legend.

パラメータ:
graphics2d - 描画されるGraphics
plot - 描画処理オブジェクト

printBackground

protected void printBackground(java.awt.Graphics2D graphics2d,
                               IPlot plot)
Draw background.

パラメータ:
graphics2d - 描画されるGraphics
plot - 描画処理オブジェクト

printGraph

protected void printGraph(java.awt.Graphics2D graphics2d,
                          IPlot plot)
Draw graph. Called by JPanel#printComponent() on Event thread.

パラメータ:
graphics2d - 描画されるGraphics
plot - 描画処理オブジェクト

printAxises

protected void printAxises(java.awt.Graphics2D graphics2d,
                           IPlot plot)
Initialize graph area, and draw axes and grids.

パラメータ:
graphics2d - 描画されるGraphics
plot - 描画処理オブジェクト

printLegend

protected void printLegend(java.awt.Graphics2D graphics2d,
                           IPlot plot)
Draw legend.

パラメータ:
graphics2d - 描画されるGraphics
plot - 描画処理オブジェクト

resize

protected void resize(IPlot plot)
現在の親ウィンドウの大きさに応じて、Graphサイズを再計算する.

パラメータ:
plot - 描画処理オブジェクト

drawLine

public void drawLine(IPlot plot,
                     java.awt.Graphics2D graphics2d,
                     double x1,
                     double y1,
                     double x2,
                     double y2,
                     int nGraph)
グラフに点を打つ. Graph4Stateにて点の代わりに線を引く際に、継承しやすいように分離しています。

パラメータ:
plot - 描画処理オブジェクト
graphics2d - 描画されるGraphics
x1 - 始点X座標
y1 - 始点Y座標
x2 - 終点X座標
y2 - 終点Y座標
nGraph - グラフの系列番号(0..n)

drawPoint

public void drawPoint(IPlot plot,
                      java.awt.Graphics2D graphics2d,
                      double x,
                      double y,
                      int nGraph)
グラフに線を引く. Graph4Stateにて点の代わりに線を引く際に、継承しやすいように分離しています。

パラメータ:
plot - 描画処理オブジェクト
graphics2d - 描画されるGraphics
x - X座標
y - Y座標
nGraph - グラフの系列番号(0..n)

setAreaChanged

public void setAreaChanged()
表示されているデータ範囲が変化したことを知らせる. Graph等、計算データを加工してキャッシュしている場合、表示範囲がスクロールした場合や、 解像度が変わった場合等で、キャッシュを破棄する必要のある場合がある。 その場合に、本メソッドが呼び出された時にキャッシュを破棄するようにコーディングすること。



???(C) 2002-2007 ?????????????????????