サブルーチンのリスト

インターフェイスルーチン

インターフェイスルーチンは各プリミティブをオープン,描画,クローズの 3つの手続きに分割したものである. 複数の点の座標などを指定するポリラインなどは,座標値を配列で指定する.

                                                                       
  SZPLOP(ITYPE,INDEX)               ポリラインプリミティブの初期化.   
                                                                       
  SZPLZc(N,PX,PY)                   ポリラインプリミティブの描画.     
                                                                       
  SZPLCL                            ポリラインプリミティブの終了.     
                                                                       
                                                                       
                                                                       
  SZPMOP(ITYPE,INDEX,RSIZE)         ポリマーカープリミティブの初期化   
                                    .                                 
                                                                       
  SZPMZc(N,PX,PY)                   ポリマーカープリミティブの描画.   
                                                                       
  SZPMCL                            ポリマーカープリミティブの終了.   
                                                                       
                                                                       
                                                                       
  SZTNOP(ITPAT)                     トーンプリミティブの初期化.       
                                                                       
  SZTNZc(N,PX,PY)                   トーンプリミティブの描画.         
                                                                       
  SZTNCL                            トーンプリミティブの終了.         
                                                                       
                                                                       
                                                                       
  SZTXOP(RSIZE,IROTA,ICENT,INDEX)   テキストプリミティブの初期化.     
                                                                       
  SZTXZc(X,Y,CHARS)                 テキストプリミティブの描画.       
                                                                       
  SZTXCL                            テキストプリミティブの終了.       
                                                                       
                                                                       
                                                                       
  SZLNOP(INDEX)                     ラインサブプリミティブの初期化.   
                                                                       
  SZLNZc(X1,Y1,X2,Y2)               ラインサブプリミティブの描画.     
                                                                       

ここで cは描く座標系に応じてU: UC, V: VC, R: RC の 3種類がある.

基本描画ルーチン

基本描画ルーチンには折れ線ルーチンとトーンルーチンがあり, それぞれ座標値を配列ではなく1点ずつ指定するようになっている. 折れ線やトーンの属性に関してはあらかじめ設定ルーチンで設定して おかなければならない.

折れ線ルーチン

                                                                    
           入力座標   処理内容                                      
                                                                    
  SZxxLU   U          回転/正規化変換, 線形補間                    
                                                                    
  SZxxLT   T          地図投影,大円補間,地図境界でのクリッピング  
                                                                    
  SZxxLV   V          View Port でのクリッピング                    
                                                                    
  SZxxLC   V          ラベルつき線分への展開                        
                                                                    
  SZxxLD   V          点線の展開                                    
                                                                    
  SZxxLP   V          透視変換                                      
                                                                    
  SZxxLR   R          WS View Port でのクリッピング                 
                                                                    
  SZxxLZ   R          WS 変換,直線描画                             
                                                                    

ここで xxは動作に応じてOP: OPEN, MV: MOVE, PL: PLOT, CL: CLOSE の4種類がある.

これらのルーチンは,インターフェイスルーチンのSZPLZc(N,PX,PY) を展開したものと思えばよい. 基本ルーチンを使って折れ線を描くプログラムは次のようになる.

      CALL SZPLOP(ITYPE,INDEX)
        CALL SZOPLc
          CALL SZMVLc(UXX,UYY)
          CALL SZPLLc(UXX,UYY)
           ........
        CALL SZCLLc
      CALL SZPLCL

SZPLOP ではラインタイプやラインインデクスの設定の他, 必要な情報をSGRGET などによって取得するので, 頻繁に呼ぶと動作速度に影響する場合がある.

トーンルーチン

                                                                    
           入力座標   処理内容                                      
                                                                    
  SZxxTU   U          回転/正規化変換,線形補間                     
                                                                    
  SZxxTT   T          地図投影,大円補間,地図境界でのクリッピング  
                                                                    
  SZxxTV   V          View Port でのクリッピング                    
                                                                    
  SZxxTP   V          投影変換,soft/hard fill の switching         
                                                                    
  SZxxTR   R          WS View Port でのクリッピング                 
                                                                    
  SZxxTZ   R          WS 変換,バッファリング                       
                                                                    
  SZxxTS   V          バッファリング(ソフトフィル)                
                                                                    
  SZTNSV   V          ソフトフィル                                  
                                                                    

これらのルーチンは,インターフェイスルーチンのSZTNZc(N,PX,PY) を展開したものと思えばよい. 基本ルーチンを使ってトーンをかけるプログラムは次のようになる.

      CALL SZTNOP(ITPAT)
        CALL SZOPTc
          CALL SZSTTc(UXX,UYY)
          ........
        CALL SZCLTc
      CALL SZTNCL

SZTNOP ではトーンパターンの設定, および境界線の向きに関する処理などを行う他, 必要な情報をSGRGET などによって取得するので, 頻繁に呼ぶと動作速度に影響する場合がある.


Back to Main


Latex Source


地球流体電脳倶楽部 : 95/6/9 (Version 5.0)

NUMAGUTI Atusi <a1n@gfdl.gov>
Last Modified: Thu Aug 31 13:07:01 EDT 1995