1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326
|
%表題 GRPH2 図形処理上位パッケージ
%
%履歴
%\Drireki{
% 91/12/10 林祥介
% 92/04/13 塩谷雅人
% 92/04/22 林祥介 (4.1版)
% 94/04/04 塩谷雅人
% 94/10/15 塩谷雅人
% 95/04/14 酒井敏 (5.z 版)
% }
%
% \Dchapter{GRPACK : 初期化制御ルーチン}
\Dchapterhead
\label{grpack}
\section{概要}
%\label{grpack.gaiyou}
GRPACK はGRPH2の各種パッケージを使って新しい図を描くとき,
これらのパッケージを初期化したり,
変換関数に関するパラメータを(実行時オプションの介入を許して)
設定するものである.
現在のところ SGPACK, UZPACK, UUPACK, USPACK, UMPACK の初期化をおこなっている.
%さらに, ユーザーが特に指定しなかった変換関数に関するパラメータを
%自動的に決める機能も持っている.
%直角直線座標系({\tt ITR}$=1 \sim 4$)と地図投影座標系
%({\tt ITR}$=10 \sim 15, 20 \sim 23, 30 \sim 33$)について,
%それぞれ {\tt USPFIT}, {\tt UMPFIT} を内部的に呼ぶことによって,
%設定されていない変換関数に関するパラメータを自動的に決める.
\vspace{1em}
GRPACK は基本的に GRPH1 の「コントロール」および「正規化変換」に
関するルーチンに相当するものを用意している.
たとえば GRPACK には, {\tt SGFRM} に相当する {\tt GRFRM} という
ルーチンがある.
これは内部的に {\tt SGFRM} などを呼ぶと同時に,
各種パッケージの初期化をおこなう.
初期化動作としては, GRPH2 でのサブパッケージが自動的に決める
可能性のあるパラメタに, 「未定義」の値を代入したりする.
(具体的には, \GLPGETSET が管理する内部変数
{\tt 'RUNDEF'}, {\tt 'IUNDEF'}が示す値を代入する. )
また {\tt SGSTRF} に相当する {\tt GRSTRF} というルーチンがある.
これは内部的には, 正規化変換に必要なパラメータがすべて設定されている
({\tt RUNDEF} でない) ことをチェックした上で {\tt SGSTRF} を呼ぶ.
%これは内部的には, 正規化変換に必要なパラメータのうち,
%設定されていないものを{\tt USPFIT}, {\tt UMPFIT}などによって
%適当に補った上で, {\tt SGSTRF} を呼ぶ.
\vspace{1em}
さらに GRPACK で設定するパラメータについては,
実行時オプションの介入がおこなわれる.
たとえば {\tt SGOPN} に相当する {\tt GROPN} というルーチンを使うと,
指定するワークステーション番号は実行時オプションで
変更できる.
\section{サブルーチンのリスト}
以下のリストでは, 対応する GRPH1/SGPACK のルーチン名を括弧内に示す.
\subsubsection{コントロール}
\begin{quote}
\begin{tabular}{lp{10cm}}
{\tt GROPN (SGOPN)} & 出力装置のオープン. \\
{\tt GRFRM (SGFRM)} & フレームの設定. \\
{\tt GRFIG} & 新たな図の設定. \\
{\tt GRCLS (SGCLS)} & 出力装置のクローズ.
\end{tabular}
\end{quote}
\subsubsection{\bf 正規化変換}
\begin{quote}
\begin{tabular}{lp{10cm}}
{\tt GRSVPT (SGSVPT)} & ビューポートの設定. \\
{\tt GRSWND (SGSWND)} & ウインドウの設定. \\
{\tt GRSSIM (SGSSIM)} & 相似変換の設定. \\
{\tt GRSMPL (SGSMPL)} & 地図投影の極の設定. \\
{\tt GRSTRN (SGSTRN)} & 変換関数の番号による設定.\\
{\tt GRSTRF (SGSTRF)} & 変換関数の確定.\\
{\tt GRSCWD (SGSCWD)} & 相似変換の設定.
\end{tabular}
\end{quote}
\vspace{1em}
%-----------------------------------------------------------------------
\section{サブルーチンの説明 : コントロール}
%\label{grpack.ref}
以下のルーチンは, 基本的には対応する GRPH1/SGPACK のコントロールに
関するルーチン({\tt GR}を{\tt SG}にかえたもの)と同等な動作をする
({\tt GRFIG}のみ対応するルーチンはない).
詳しくは「GRPH1」マニュアルを参照のこと.
\subsection{GROPN}
\begin{enumerate}
\item 機能
\begin{quote}
図形出力装置をオープンする(初期化処理をおこなう).
\end{quote}
\item 呼び出し方法
\begin{quote}
{\tt CALL GROPN(IWS)}
\end{quote}
\item パラメーターの説明
\begin{quote}
\begin{tabular}{llp{10cm}}
{\tt IWS} & {\tt (I)} & ワークステーション番号.
\end{tabular}
\end{quote}
\item 備考
\begin{enumerate}
\item {\tt GROPN} は 内部変数 {\tt 'IWS'} を {\tt SGISTX} で設定して
{\tt SGINIT} を実行する.
したがって \SGPGETSET の管理する内部変数 {\tt 'IWS'} は
実行時パラメータによる介入が可能である.
(以下, 単に「内部変数」というのは \SGPGETSET の
管理する内部変数のことを指す. )
\item また, {\tt GROPN} は \SGPSTX によって内部変数
{\tt 'LCNTL'}を {\tt .TRUE.}にする.
\end{enumerate}
\end{enumerate}
%----------------------------------------------------------------------
\subsection{GRFRM}
\begin{enumerate}
\item 機能
\begin{quote}
新しい作画領域を設定するとともに,
新しい図を描くために必要な初期化をする.
\end{quote}
\item 呼び出し方法
\begin{quote}
{\tt CALL GRFRM}
\end{quote}
\item パラメーターの説明
\begin{quote}
なし.
\end{quote}
\item 備考
\begin{enumerate}
\item このルーチンは変換関数に関する内部変数をすべて「未定義」に
するとともに, UZPACK, USPACK の初期化をおこなったのち,
{\tt SGFRM} を呼ぶ.
\end{enumerate}
\end{enumerate}
%----------------------------------------------------------------------
\subsection{GRFIG}
\begin{enumerate}
\item 機能
\begin{quote}
新しい図を描くために必要な初期化をする.
\end{quote}
\item 呼び出し方法
\begin{quote}
{\tt CALL GRFIG}
\end{quote}
\item パラメーターの説明
\begin{quote}
なし.
\end{quote}
\item 備考
\begin{enumerate}
\item このルーチンは変換関数に関する内部変数をすべて「未定義」に
するとともに, UZPACK, USPACK の初期化をおこなう.
一つのフレーム内に複数の図を描くとき, 2つ目以降の図を描き始める
前に, そのつど, このルーチンを呼ばなければならない.
\end{enumerate}
\end{enumerate}
%----------------------------------------------------------------------
\subsection{GRCLS}
\begin{enumerate}
\item 機能
\begin{quote}
図形出力装置をクローズする(終了処理をおこなう).
\end{quote}
\item 呼び出し方法
\begin{quote}
{\tt CALL GRCLS}
\end{quote}
\item パラメーターの説明
\begin{quote}
なし.
\end{quote}
\item 備考
\begin{enumerate}
\item 内部で {\tt SGCLS} を呼んでいる.
\end{enumerate}
\end{enumerate}
%----------------------------------------------------------------
\section{サブルーチンの説明 : 正規化変換}
以下のルーチンは, 基本的には対応する GRPH1/SGPACK の正規化変換に
関するルーチン({\tt GR}を{\tt SG}にかえたもの)と同等な動作をする.
詳しくは「GRPH1」マニュアル参照.
\vspace{1em}
以下にあらわれるパラメータは, すべて \SGPSTX を用いて設定される.
したがって, 実行時オプションによる介入が可能である.
\subsection{GRSVPT}
\begin{enumerate}
\item 機能
\begin{quote}
正規化変換のためのビューポートを設定する.
\end{quote}
\item 呼び出し方法
\begin{quote}
{\tt CALL GRSVPT(VXMIN,VXMAX,VYMIN,VYMAX)}
\end{quote}
\item パラメーターの説明
\begin{quote}
\begin{tabular}{llp{11cm}}
{\tt VXMIN,VXMAX,VYMIN,VYMAX} & {\tt (R)} & ビューポート.
\end{tabular}
\end{quote}
\item 備考
\begin{enumerate}
\item なし.
\end{enumerate}
\end{enumerate}
%----------------------------------------------------------------
\subsection{GRSWND/GRSSIM/GRSMPL}
\begin{enumerate}
\item 機能
\begin{quote}
正規化変換のためのパラメータを設定する.
\end{quote}
\item 呼び出し方法
\begin{quote}
{\tt CALL GRSWND(UXMIN,UXMAX,UYMIN,UYMAX)} \\
{\tt CALL GRSSIM(SIMFAC,VXOFF,VYOFF)} \\
{\tt CALL GRSMPL(PLX,PLY,PLROT)}
\end{quote}
\item パラメーターの説明
\begin{quote}
\begin{tabular}{llp{8cm}}
{\tt UXMIN,UXMAX,UYMIN,UYMAX} & {\tt (R)} & ウインドウ. \\
{\tt SIMFAC} & {\tt (R)} & 相似変換のスケーリングファクター. \\
{\tt VXOFF,VYOFF} & {\tt (R)} & 原点のオフセット. \\
{\tt PLX,PLY,PLROT} & {\tt (R)} & 地図投影の際の回転角.
\end{tabular}
\end{quote}
\item 備考
\begin{enumerate}
\item なし.
\end{enumerate}
\end{enumerate}
%----------------------------------------------------------------
\subsection{GRSTRN}
\begin{enumerate}
\item 機能
\begin{quote}
正規化変換の変換関数番号を指定する.
\end{quote}
\item 呼び出し方法
\begin{quote}
{\tt CALL GRSTRN(ITR)}
\end{quote}
\item パラメーターの説明
\begin{quote}
\begin{tabular}{llp{11cm}}
{\tt ITR} & {\tt (I)} & 変換関数番号.
\end{tabular}
\end{quote}
\item 備考
\begin{enumerate}
\item ITR は SGSTRN に与えられる。値と意味は GRPH1 マニュアル参照.
\end{enumerate}
\end{enumerate}
%----------------------------------------------------------------
\subsection{GRSTRF}
\begin{enumerate}
\item 機能
\begin{quote}
正規化変換を確定させる.
\end{quote}
\item 呼び出し方法
\begin{quote}
{\tt CALL GRSTRF}
\end{quote}
\item パラメーターの説明
\begin{quote}
なし.
\end{quote}
\item 備考
\begin{quote}
なし.
\end{quote}
% \begin{enumerate}
% \item このルーチンは, 設定されていない変換関数に関する
% パラメータを適当に決めた上で {\tt SGSTRF} を呼ぶ.
% 具体的には, 変換関数が直角直線座標系({\tt ITR}$=1 \sim 4$)の
% とき, USPACK の変換関数決定ルーチン {\tt USPFIT} を呼ぶ;
% 地図投影座標系({\tt ITR}$=10 \sim 15, 20 \sim 23, 30 \sim 33$)の
% とき, UMPACK の変換関数決定ルーチン {\tt UMPFIT} を呼ぶ;
% \end{enumerate}
\end{enumerate}
%----------------------------------------------------------------
\subsection{GRSCWD}
\begin{enumerate}
\item 機能
\begin{quote}
相似変換を設定する.GRPH1/SGPACKのSGSCWDに引数を渡して呼ぶ
だけである.
\end{quote}
\item 呼び出し方法
\begin{quote}
{\tt CALL GRSCWD(CXMIN,CXMAX,CYMIN,CYMAX)}
\end{quote}
\item パラメーターの説明
\begin{quote}
GRPH1/SGPACKのSGSCWDを参照のこと.
\end{quote}
\item 備考
\begin{quote}
GRPH1/SGPACKのSGSCWDを参照のこと.
\end{quote}
\end{enumerate}
|