戻る|進む
DCL:GRPH1:SGPACK : ユーザーインターフェイス
 
2.1 概要
SGPACK は GRPH1 の他のパッケージを統合し,
ユーザーに使いやすいインターフェイスを提供するものである.
SGPACK には, デバイスやページの制御などを行なうコントロールルーチン,
座標変換の設定ルーチン, 図形の基本要素 (出力プリミティブ) を作画する
ルーチンなどがある.
出力プリミティブとしては次のものがある.
- ポリライン(polyline) : 折れ線.
- ポリマーカー(polymarker) : マーカー列.
- テキスト(text) : 文字列.
- トーン(tone) : 多角形のぬりつぶし.
このほか, 補助的に次のプリミティブがある.
- ライン(line) : 線分.
- アロー(arrow) : 矢印.
これら6つのプリミティブのうち, トーンプリミティブ以外の5つは
すべて線分で構成される.
トーンプリミティブは出力装置の能力に応じて,
hard fillまたはsoft fillを切替えて多角形のぬりつぶしをおこなう;
soft fillは斜線を引くことによって実現される.
また, GRPH1では各プリミティブを
ユーザー座標系(U座標系), 仮想直角座標(V座標系),
および正規直角座標(R座標系)で定義できる
6つの出力プリミティブには次のような属性がある.
- 1.
- ポリラインプリミティブについては,
  
- 2.
- ポリマーカープリミティブについては,
  
- マーカーの種類.
- マーカーを描く線のラインインデクス.
- マーカーの大きさ.
  
 
- 3.
- テキストプリミティブについては,
  
- 文字の高さ.
- 文字列の回転角.
- 文字列のセンタリングオプション.
- 文字を描く線のラインインデクス.
  
 
- 4.
- トーンプリミティブについては,
    
- 5.
- ラインサブプリミティブについては,
    
- 6.
- アローサブプリミティブについては,
  
- 矢印の軸部分の線種.
- 矢印の軸部分のラインインデクス.
  
 
これらの属性は個別に指定することもできるし,
すべて同時に指定することもできる
(2.6, 2.7, 2.8,
2.9, 2.10節参照).
各プリミティブを定義するメソッド(元サブルーチン)名の命名規約は
以下のようになっている.
- 1.
- 先頭の2文字はすべてSGで始まる.
- 2.
- 属性を設定/参照する場合,
    3文字目はs (set)/ q (query)である.
  
- 3.
- 各プリミティブの名前がそれに続く. それぞれ,
    
- pl : ポリラインプリミティブ.
- pm : ポリマーカープリミティブ.
- tx : テキストプリミティブ.
- tn : トーンプリミティブ.
- ln : ラインサブプリミティブ.
- la : アローサブプリミティブ.
    
 
- 4.
- プリミティブを定義(出力)するルーチンについて, 属性を同時に指定する
    場合はzが続く.
  
- 5.
- さらにプリミティブをどこに定義するかによって,
    u (U座標系で定義する), v (V座標系で定義する)
    またはr (R座標系で定義する)が続く.
  
- 6.
- プリミティブの属性を定義/参照する場合,
    6文字目はその属性を示す.
    
- t : ラインタイプ, マーカータイプ.
- i : ラインインデクス.
- s : マーカーサイズ, 文字の高さ.
- r : 文字列の回転角.
- c : 文字列のセンタリングオプション.
- p : トーンパターン.