GRPACK はGRPH2の各種パッケージを使って新しい図を描くとき, これらのパッケージを初期化したり, 変換関数に関するパラメータを(実行時オプションの介入を許して) 設定するものである.
GRPACK は以下のように, 基本的に GRPH1 の「コントロール」および 「正規化変換」に関するルーチンに相当するものを用意している (対応する GRPH1/SGPACK のルーチン名を括弧内に示す).
GROPN (SGOPN)
出力装置のオープン.
GRFRM (SGFRM)
フレームの設定.
GRFIG
新たな図の設定.
GRCLS (SGCLS)
出力装置のクローズ.
GRSVPT (SGSVPT)
ビューポートの設定.
GRSWND (SGSWND)
ウインドウの設定.
GRSSIM (SGSSIM)
相似変換の設定.
GRSMPL (SGSMPL)
地図投影の極の設定.
GRSTRN (SGSTRN)
変換関数の番号による設定.
SGOPN
などは電脳ライブラリの「下克上禁止令」により
GRPH2のルーチンを初期化できない.
しかし, GRPH2のサブパッケージの中には, 改ページ等のタイミングで
初期化が必要なものがある (UZPACK, USPACK 等;
初期化動作としては, GRPH2 でのサブパッケージが自動的に決める
可能性のあるパラメタに, 「未定義」の値を代入したりする).
GRPACK はこれらのサブパッケージを初期化するとともに,
内部で対応するSGPACKのルーチンを呼ぶ.
したがって, GRPACKを使って改ページなどをすれば,
そのたびに GRPH2 のライブラリの初期化ルーチンを呼ぶ必要はない.
さらに GRPACK の各ルーチンが設定するパラメータについては,
実行時オプションの介入が可能である.
たとえば SGOPN
に相当する GROPN
というルーチンを使うと,
指定するワークステーション番号は実行時オプションによって
変更できる.
また, GRPACKはGRPH1より高機能なGRPH2のライブラリを使うことを
前提にしているので,
GROPN
の中でSGLSET
を呼んで内部変数'LCNTL'
を
.TRUE.
とし, 上つき下つきなどの制御文字を有効にしている
('LCNTL'
の省略値は .FALSE.
である).