描画ルーチンの分解

sample01.f90 で呼んだDclDrawScaledGraphサブルーチンがどのようなルーチンで構成されているか, 見ておきましょう.実は,

call DclDrawScaledGraph( x, y )
というサブルーチン・コールは,次の5つのサブルーチンを順に呼ぶことと同 じなのです.
call DclScalingPoint( x, y )
call DclFitScalingParm
call DclSetTransFunction
call DclDrawScaledAxis
call DclDrawLine( x, y )
データを自動的にスケーリングするためには,まず,描きたいデータすべての なかから最大値と最小値を見つける必要があります. サブルーチンDclScalingPointがこれを行ないます. つぎのDclFitScalingParmでは,これらのデータの 最大値・最小値を切りの良い数値に丸めて作画範囲を決め,ほかの「正規化変 換」のパラメータも「おまかせ」で決めます. そして,DclSetTransFunctionルーチンで「正規化変換」を確定します. ここで出てきた「正規化変換」については,次節で説明します. いまは,DclFitScalingParm DclSetTransFunctionの二つのサブルーチンで,これらの作業を行なっているとだけ認識しておいて下さい.

次のDclDrawScaledAxisルーチンは「おまかせ」で座標軸を描くルーチンです. まさに「おまかせ」ですから,引数はいりません. そして,DclDrawLineルーチンで折れ線を描いているのです.


関連リンク

DclScalingPoint
(USSPNT)
グラフの中に含めたい座標点を設定する.
DclFitScalingParm
(USPFIT)
すでに設定された情報から、適当なスケーリングで正規化変換パラメータを決める.
DclSetTransFunction
(GRSTRF)
変換関数を確定する.
DclDrawScaledAxis
(USDAXS, USXAXS, USYAXS)
おまかせ座標軸を描く.
DclDrawLine
(SGPLU,SGPLZU)
ユーザー座標系で折れ線を描く.

* 括弧の中は、対応するf77インターフェイス名.