本ライブラリで使用する座標系には 4 つのレベルがある. それぞれのレベルには上位レベルから順に U, V, R, W という記号が付けられ, 「U座標系」, 「V座標系」, 「R座標系」, 「W座標系」と いうように呼ばれる (図 1.3 参照). この U, V, R, W という文字は, それぞれ次のような名前に由来するが, これらの名前が長いので, 以後は単に 「U座標系」などの用語を使うことにする (さらに UC などとも略記する).
U | ユーザ座標系 | User coordinate |
V | 仮想直角座標系 | Virtual rectangular coordinate |
R | 正規直角座標系 | normalized Rectangular coordinate |
W | 装置座標系 | Workstation coordinate |
レファレンスマニュアルの引数の説明でも,
U座標系の座標値は (UX,UY) というように,
座標系を表す文字をつけて記述してある.
(正規直角座標系を N 座標系でなく R 座標系と呼ぶのは,
実変数に関する FORTRAN の規則による.)
最も上位の U座標系は普通のX-Y座標から地図投影座標まで多くの座標系を含む.
その一つ下位のV座標系には2次元, 3次元のそれぞれ1つずつの直角座標系が
定義されており,
多様なU系の座標はすべてこの2種類の座標系に変換される.
この変換のことを「正規化変換」 と呼ぶ.
一方, 最も下位の座標系である W 座標系はデバイス固有の座標系で,
デバイスによって異なる.
これを統一するために, その一つ上位に R 座標系を定義して,
すべてこの R 座標系を経由して W座標系に変換される.
この変換を「ワークステーション変換」と呼ぶ.
R座標系は2次元の直角座標系で,
x軸, y軸 ともに定義域は[0,1] である.
これらの上位2つと下位2つの座標系を結ぶ V座標系から R 座標系への変換は
「透視変換」 と呼ばれる.
透視変換はその名の通り, 透視図法すなわち遠近法による変換で,
基本的に3次元のV座標系から 2次元のR座標系への変換である.
2次元のV座標系は, 一旦, 3次元のV座標系に割り付けられてから透視変換
される.
この時2次元のV座標系を割り付ける位置は,
3次元座標の x軸, y軸 または z軸に垂直な任意の平面にとることができる.
これにより, 2次元的に描いた1枚の図を斜めから眺めたような描写が可能にな
る.
初期状態では, 2次元V座標系からの透視変換は恒等変換となっているため,
2次元の座標系を普通に使う限り, 透視変換を意識する必要はないが,
あとで透視変換を使いたくなることも考えて,
V座標系とR座標系は使い分けておいた方が良い.
すなわち, 座標軸などの「図に付随した情報」は,
透視図法で図とともに変換すべき情報なので V 座標系で描画し,
SLPACK の描くページ数やパラメタの数値などのように「紙に付随した情報」
は R 座標系で描画すべきである.
なお, 地図座標系の正規化変換は,
座標の「回転」と「投影」の2段階で行なわれ,
その中間の座標 (U座標系を回転した座標) を T 座標
(Terrestrial coordinate) という.
T 座標はx軸の定義域が
[-180, 180], y軸の定義域が[-90, 90]の座標系で,
この座標系から各地図投影の定義式に従って変換される.
任意の経線を中央経線としたり, 横軸法や斜軸法の投影をするためには
投影の前に回転操作が必要となる.
T座標系は正規化変換の際の一時的な作業座標系であるので, これを意識しなければならないことは少いが, 地図座標のクリッピングだけは U座標系ではなくT座標系で行なわれるので, この座標系を意識する必要がある.