DCL サブルーチンリファレンス
ここでは, DCL で用いられるさまざまなサブルーチンコマンドを本家の Web ページを参考に作成しました.
図の出力
- GROPN(IWS)
- 図への出力装置の宣言
- IWS = 1 - 4 まで指定可能. それぞれの番号が出力装置の種類に対応している
- 1 : X, 2 : PS, 3 : テクトロ端末, 4 : GTK
- 負号つきで渡すと, 画面が 90 度回転して表示される
- GRCLS
- 図の出力装置を閉じる宣言
- GROPN と対で宣言する
- GRFRM
- 作画領域を設定する宣言
- これ以下で作画領域の細かい設定をする
USGRPH
- USSTTL(CXTTL,CXUNIT,CYTTL,CYUNIT)
- 座標軸のタイトルおよび座標系の単位の設定宣言
- CXTTL (文字型) x 座標軸のタイトル
- CXUNIT (文字型) x 座標軸の単位
- CYTTL (文字型) y 座標軸のタイトル
- CYUNIT (文字型) y 座標軸の単位
- 座標軸のタイトルおよび座標系の単位の設定宣言
- USGRPH(N,X,Y)
- 自動スケーリング(何も細かい設定をせずに描画する)
- N (整数) 描画に用いるデータの個数
- X, Y (実数) 座標の各点の値
- もとの変数 X, Y はなんでもよいが, 配列で定義しなければならない
- 通常, X, Y の配列の個数は, N に一致させる必要あり
- このサブルーチンは以下のサブルーチンをその順で呼び出すもの 1 CALL USSPNT( NMAX, X, Y ) 2 CALL USPFIT 3 CALL GRSTRF 4 CALL USDAXS 5 CALL UULIN( NMAX, X, Y )
- 自動スケーリング(何も細かい設定をせずに描画する)
- USSPNT(N,X,Y)
- USGRPH と同じ
- ただし, このサブルーチンで設定できるのは, データの個数とデータの値の設定のみ
- USDAXS
- 実際に座標軸を書く
- USPFIT
- USSPNT の設定をもとに適切に正規化変換を行う
- 後ろに GRSTRF を宣言し, 正規化変換を確定しなければならない
- GRSTRF
- 正規化変換を確定する宣言.
折れ線
- UULIN(N,X,Y)
- 折れ線を描く
- 各変数はそれぞれデータの個数とそれに対応する各データ値
- 実際に線を描くときは, 先に線の太さや線種を設定してからこれを宣言する
- UUSLNT(ITYPE)
- 折れ線の線種の設定
- ITYPE (整数型) 折れ線の線種. 1:実線, 2:破線, 3:点線, 4:1点鎖線 (初期値は1)
- 折れ線の線種の設定
- UUSLNI(INDEX)
- 折れ線の太さの設定
- INDEX (整数型) 折れ線の太さ. 1から大きくなるにつれて太くなる. (初期値は1)
- 折れ線の太さの設定
- UULINZ(N,X,Y,ITYPE,INDEX)
- 上の線に関するすべての宣言をこれで行える
- 変数の種類は上に同じ
分布図
- UUMRK(N,X,Y)
- 分布図を描く宣言
- 各変数は描画に用いるデータの個数とデータの値
- この宣言をする前に点の種類に関する設定を行う必要あり
- UUSMKT(ITYPE)
- 点の種類の設定
- ITYPE (整数) マーカーの種類. 1: '.', 2:'+', 3:'*', 4:'。', など, フォントテーブル(付録)のDCL文字番号に 対応する文字・記号を描く. (初期値は1)
- 点の種類の設定
- UUSMKI(INDEX)
- 線の大きさ
- INDEX (整数) マーカーを描く線の太さ. 1から順に太くなる. (初期値は1)
- 線の大きさ
- UUSMKS(RSIZE)
- 点の大きさ
- RSIZE (実数) マーカーの大きさ. V-座標系での値で与える. (初期値は0.01)
- 点の大きさ
- UUMRKZ(N,X,Y,ITYPE,INDEX,RSIZE)
- 上の設定をすべて一括して行う
正規化変換
実際のデータの値と, 作画に用いられる座標系での値を対応付ける操作
- GRSWND(UXMIN,UXMAX,UYMIN,UYMAX)
- 描画する範囲の設定
- 実際にここで設定した値の範囲内のグラフが描画される
- UXMIN, UXMAX (実数型) ウインドウの x 座標の最小値と最大値.
- UYMIN, UYMAX (実数型) ウインドウの y 座標の最小値と最大値.
- GRSVPT(VXMIN,VXMAX,VYMIN,VYMAX)
- ビューポートの設定
- 実際に図に出力されるとき, 白紙の状態で [0,1]x[0,1] の領域をとる. ここでとられた座標系を V-座標系という
- V-座標系のどこからどこまでをとるかを設定する
- 実際にここで設定した値の領域内に GRSWND で設定した領域のグラフが描かれる
- GRSWND と GRSVPT の違いを Tex で表現するなら, GRSVPT は includegraphics で設定される, 挿入する図のどこを使うかという設定. GRSWND は挿入するもとの図を作るときの座標領域の設定に相当する(?).
- VXMIN, VXMAX (実数型) ビューポートの x 座標の最小値と最大値.(初期値は 0.2 と 0.8)
- VYMIN, VYMAX (実数型) ビューポートの y 座標の最小値と最大値.(初期値は 0.2
と 0.8)
- GRSTRN(ITR)
- 座標目盛の設定
- ITR (整数) 変換関数番号. 1:直角一様座標, 2:片対数(y軸)座標, 3:片対数(x軸)座標, 4:両対数座標. (初期値は1)
- 座標目盛の設定
- GRSTRF
- 上で設定した様々な正規化変換が確定したことを宣言
- これは正規化変換表現をすべて設定したのちに宣言する
- USPFIT
- USSPNT で設定したデータをもとにおまかせで正規化変換を行う
- この宣言のあとにも GRSTRF の宣言は必要
- GRFIG
- 新しい図を表現するための初期化を宣言する
- 必ず, 前の図を描画し終わったあとに宣言する必要がある
2 次元等高線
- UDCNTR(Z,MX,NX,NY)
- 2 次元等高線を描くためのデータの個数とデータの値を設定する
- Z (実数型) MX×NYの2次元配列. 作画には NX×NYの部分を使う.
- MX (整数型) 配列 Zの第1次元整合寸法.
- NX (整数型) 作画に使う配列 Zの第1次元寸法.(X 方向の配列個数)
- NY (整数型) 作画に使う配列 Zの第2次元寸法.(Y 方向の配列個数)
- MX は通常 NX に等しいが, 描画するデータの一部のみを使用したい場合に MX にその使用したい個数を表記する
- 2 次元等高線を描くためのデータの個数とデータの値を設定する
- UETONE(Z,MX,NX,NY)
- 等高線にトーンをつけてわかりやすく表記する
- 各変数は UDCNTR と同じ
- 何も設定しないままだと, 負の領域にトーンを一様に描画する
2 次元ベクトル場
- UGVECT(U,MU,V,MV,NX,NY)
- ベクトル場を表現する
- U,V は 2 次元配列とする
- 各変数は UDCNTR と同じで, U,V は実際の配列データ, MU,MV は U,V の 1 次元整合寸法, NX,NY は U,V の配列の個数
トーンの詳細設定
- UESTLV(TLEV1,TLEV2,IPAT)
- トーンの種類や濃度を設定する
- TLEV1 (実数型) 塗り分けるレベルの下限値.
- TLEV2 (実数型) 塗り分けるレベルの上限値.
- IPAT (整数型) トーンパターン番号.
- トーンパターン番号表 [3 桁の整数 ijk]
- i パターンの種類. 0:ドット, 1:横線, 2:斜線(右上がり), 3:縦線, 4:斜線(左上がり), 5:格子(縦横), 6:格子(斜め).
- j ドットの大きさや斜線の太さ. 0から5まで値が大きくなるにつれて, ドットは大きく, 線は太くなる.
- k ドットや斜線の密度. 0から5まで値が大きくなるにつれて密度が高くなる.
- トーンパターン番号表 [3 桁の整数 ijk]
- これを DO ループで何度も呼び出し, TLEV1, 2 を変化させ, IPAT をそれに対応させるように変化させると, グラデーションを持ったトーンの表現が可能である
- トーンの種類や濃度を設定する
フレームの分割
- SLDIV(CFORM,IX,IY)
- フレームの分割を行う
- CFORM (文字型) フレームを順に割り付けていく方向. 'T':縦方向, 'Y':横方向.
- IX, IY (整数型) x 方向, y 方向の分割数.
- フレームの分割を行う