SZPACK ではポリラインやテキストといった各図形要素をすべて 折れ線とトーンに分解する. したがって SZPACK には, 折れ線とトーン描画の2系統の基本描画ルーチンがあり, その上位にSGPACK の各プリミティブに対応するインターフェイスルーチンが ある.
折れ線とトーンの基本描画ルーチンは両方とも, オープンとクローズの間で必要な座標点を指定する構造になっており, 最上位の U 座標系のルーチンから最下位の R 座標系のルーチンまで, 座標変換やクリッピングの処理単位ごとのルーチンが用意されている.
上位のインターフェイスルーチンも, オープンとクローズのルーチンがあって, その間で呼ばれる描画ルーチン (基本描画ルーチンのオープンからクローズまでをひとまとめにしたもので, SGPACK の各プリミティブに対応する.) が用意されている. この上位インターフェイスのオープンのタイミングで, 各プリミティブの属性設定などの初期化が行なわれ, SWPACK の SWOOPN(オブジェクトのオープン)が呼ばれる. クローズのタイミングでは SWOCLS(オブジェクトのクローズ) が呼ばれる.
SGPACK の各ルーチンは, 基本的に1つのプリミティブ毎にオープンとクローズを行なうが, 同じ属性のプリミティブを多数描画する際には, このオープンとクローズの処理にかかる時間が無視できなくなる場合がある. そのような場合には,SZPACK の上位インターフェイスルーチンを使って, 1回のオープンとクローズの間に, 複数のプリミティブを描画するようにすることで高速化が図れる.
NUMAGUTI Atusi <a1n@gfdl.gov> Last Modified: Thu Aug 31 13:06:58 EDT 1995