(57)【特許請求の範囲】
【請求項１】
三次元図形入力装置の描画手段が、既存の基準面にスイープ線を設定するステップと、
三次元図形入力装置のスイープ面設定手段が、前記スイープ線上の一点をスイープガイドとして選択し、前記スイープ線を法線とし、且つ前記スイープガイドを含むスイープ面を定義するステップと、
三次元図形入力装置の描画手段が、前記スイープ面上にスイープガイドを保持しつつ前記スイープ線をシフトさせ当該スイープ線の軌跡から三次元図形としての面を作成するステップと、からなる画面上の位置を指定して既存の三次元空間に三次元図形を入力する方法であって、
三次元図形入力装置の基準面設定手段が、前記スイープ線の軌跡を前記既存の三次元空間における二軸三次元座標系のローカル基準面として定義し、前記二軸三次元座標系を前記三次元図形を編集するための三次元ローカル座標系とするステップと、
三次元図形入力装置の座標変換手段が、前記編集の際に前記三次元ローカル座標系で指定された座標を前記既存の三次元空間における三軸三次元座標系の座標に変換するステップと、を有することを特徴とする三次元図形入力方法。
【請求項２】
既存の基準面にスイープ線を設定する描画手段と、
前記スイープ線上の一点をスイープガイドとして選択し、前記スイープ線を法線とし、且つ前記スイープガイドを含むスイープ面を定義するスイープ面設定手段と、
前記スイープ面上にスイープガイドを保持しつつ前記スイープ線をシフトさせ当該スイープ線の軌跡から三次元図形としての面を作成する描画手段と、
前記スイープ線の軌跡を既存の三次元空間における二軸三次元座標系のローカル基準面として定義し、前記二軸三次元座標系を前記三次元図形を編集するための三次元ローカル座標系とする基準面設定手段と、
前記編集の際に前記三次元ローカル座標系で指定された座標を前記既存の三次元空間における三軸三次元座標系の座標に変換する座標変換手段と、
を備えることを特徴とする画面上の位置を指定して三次元図形を入力する三次元図形入力装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面上の位置を指定して所望の三次元図形を入力する方法及びその装置に関する。
【背景技術】
【０００２】
従来、三次元図形入力装置における立体図形の編集作業は、前後左右上下から単数又は複数の立体図形を目視し、又は透し図を目視しつつ、ダイヤログにおいて正確な三次元の位置座標を入力する方式が採られ（例えば下記特許文献１参照）、個々の図形の寸法を設定する際にもダイヤログにおいて正確な寸法を入力する作業が必要であった。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許３３６１６５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
この様に、前記従来の技術では、常に三次元空間を意識せねばならず、個々の立体図形要素の位置、寸法、形状、或いは角度の編集や変更に際して、極めて困難で煩雑な作業が伴うものであった。
【０００５】
本発明は上記実情に鑑みて成されたものであって、三次元空間意識を極力排し、任意に定義した基準面に基づく二次元的な位置感覚を以って立体図形の編集を実現する三次元図形入力方法及びその装置の提供を目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために成された本発明による三次元図形の入力方法は、画面上の位置を指定して三次元図形を入力する方法において、既存の三次元空間に、二軸三次元座標系のローカル基準面を定義し当該ローカル基準面を具備する三次元ローカル座標系を定義するステップと、当該三次元ローカル座標系で編集する図形に三軸三次元座標系の座標を適用するステップとを経ることを特徴とする。ここで、点、線、面、又は空間について定義するとは、当該面又は空間の位置、方向（法線）、目盛、又は範囲等を確定することを言う。
【０００７】
尚、前記ローカル基準面は、相交差する二軸による座標系として定義される面であり、相直交する直線からなる二次元座標系の平面とは限らず三次元座標系の立体を表現する場合もある。よって、各軸は、直線又は屈曲線で構成された凹凸面であっても良い。
【０００８】
前記三次元ローカル座標系を定義するステップは、既存の基準面にスイープ線を設定する（定義し表示する）と共に、当該スイープ線上の一点をスイープガイドとして選択し、前記スイープ線を法線とし、且つ前記スイープガイドを含むスイープ面を得るステップと、当該スイープ面上にスイープガイドを保持しつつ前記スイープ線をシフト（平行移動）させ当該スイープ線の軌跡（通過領域）を前記二軸座標系のローカル基準面として定義するステップを経る方法としても良い。
【０００９】
上記課題を解決するために成された本発明による三次元図形入力装置は、画面上の位置を指定して三次元図形を入力する装置において、既存の三次元空間に、二軸三次元座標系のローカル基準面を定義し当該ローカル基準面を具備する三次元ローカル座標系を定義する基準面設定手段と、当該三次元ローカル座標系で編集する図形に当該三軸三次元ローカル座標系のローカル座標を適用する座標変換手段とを備えることを特徴とする。
【００１０】
前記基準面設定手段は、三軸三次元座標空間又は既存の基準面（初期状態において与えられる基準面を含む）にスイープ線を設定する描画手段と、当該スイープ線上の一点をスイープガイドとして選択し、前記スイープ線を法線とし、且つ前記スイープガイドを含むスイープ面を定義するスイープ面設定手段と、当該スイープ面上にスイープガイドを保持しつつ前記スイープ線をシフトさせ当該スイープ線の通過領域を前記二軸三次元座標系のローカル基準面として定義する軌道面設定手段を備える構造としても良い。
【発明の効果】
【００１１】
本発明によれば、既存の三次元座標系、例えば、共通座標系に対して傾斜若しくは変形した二軸座標系のローカル基準面を用いて図形の編集が行えるので、編集する図形に対して個々に共通座標系に対する傾斜を与えるなどの煩雑な作業を回避し二軸からなる座標のみを意識して編集作業を行うことができる。しかも、当該ローカル基準面は、連続した二つの軸が、各軸を直線に限定することなく相互に交差した二軸座標系として定義されているので、三次元的な構造を持つ屈曲面を連続した二つの座標のみで表現し、平面の如く扱うことができるというメリットがある。
仮に、ローカル基準面を平面に限定すれば、三次元的な構造を持った屈曲面を表現するに当たって、三次元座標系で表現するか、相分離した複数の二次元座標系の組み合わせで表現することが要請され、従来手段と同様な図形編集時における便宜に欠けるものとなる。
【図面の簡単な説明】
【００１２】
【図１】本発明による三次元図形入力装置の一例を示すブロック図である。
【図２】本発明による三次元図形入力装置の編集画面の例を示す写真である。
【図３】本発明による三次元図形入力装置の編集画面の例を示す写真である。
【図４】本発明による三次元図形入力装置の二次元化処理の態様の一例を示す説明図である。
【図５】本発明による三次元図形入力装置のユーザ視線に基づく処理の態様の一例を示す説明図である。
【図６】本発明による三次元図形入力装置の編集画面の例を示す写真である。
【図７】本発明による三次元図形入力装置の二次元化処理の態様の一例を示す説明図である。
【図８】本発明による三次元図形入力装置の二次元化処理の態様の一例を示す説明図である。
【図９】本発明による三次元図形入力装置の（Ａ）：伸縮処理、（Ｂ）：平行移動及び基準面のｏｎ／ｏｆｆ処理の態様の一例を示す説明図である。
【図１０】本発明による三次元図形入力装置の（Ａ）：伸縮処理及び平行移動処理に用いる矢印、（Ｂ）回転処理の態様、（Ｃ）：回転処理に用いる矢印の一例を示す説明図である。
【発明を実施するための形態】
【００１３】
以下、本発明による三次元図形の入力方法及びその装置の実施の形態を図面に基づき説明する。
図１（各種具体的手段のブロック図）に示す例は、画面上の位置を指定して三次元図形を入力する三次元図形入力装置である。
【００１４】
当該例は、既存の三次元空間（当該例では三次元絶対座標系）に、二軸三次元座標系のローカル基準面を定義し当該ローカル基準面を具備する三次元ローカル座標系を定義する基準面設定手段１と、当該三次元ローカル座標系で編集する図形に当該三次元ローカル座標系のローカル座標を適用する座標変換手段２と、幾何学的な演算等を行う演算手段３と、線や面や立体等の図形を作成する描画手段４と、当該図形を保存しその図形の保存に際し三次元絶対座標系の絶対座標を適用する保存手段５を備える。
【００１５】
前記基準面設定手段１、座標変換手段２、描画手段４、及び保存手段５の具体例を説明する。
当該例における基準面設定手段１は、編集画面上の座標（以下視線座標と記す）を取り扱う画面モジュール６と、基準面上のローカル座標を取り扱う入力面モジュール７を備え、当該例における座標変換手段２は、視線座標を基準面の座標系におけるローカル座標に変換するアフィン変換手段８、三次元表現を二軸表現に変換する３−２変換手段９と、二軸表現を三次元表現に変換する２−３変換手段１０を備える。
【００１６】
[基準面の定義]
前記基準面設定手段１は、既存の基準面（例えば絶対座標系のＸ−Ｙ平面）にスイープ線を設定する描画手段（線入力手段）４と、当該スイープ線上の一点をスイープガイド点として選択し、前記スイープ線を法線とし、且つ前記スイープガイド点を含むスイープ面を定義するステップを行うスイープ面設定手段１１と、当該スイープ面上にスイープガイドを保持しつつ前記スイープ線をシフトさせ当該スイープ線の軌道（スイープ軌道）が描く面をローカル基準面と定義するステップを行う軌道面設定手段１２を用いる。
【００１７】
＜スイープ線の作成＞
前記描画手段４は、マウス操作等（クリック操作等）によるスイープ線の両端点の編集画面上での位置指定操作を受けて、画面モジュール６により、視線座標を取得すると共に、両端点の視線座標について、アフィン変換手段８による既存の基準面（選択された基準面）へのアフィン変換を行い当該既存の基準面の上にスイープ線を設定する（図２（Ａ）参照）。
【００１８】
＜スイープ面の作成＞
前記描画手段（面入力手段）４は、マウス操作等（クリック操作等）によるスイープガイドとなる点の位置指定操作を受けて、画面モジュール６により当該点の視線座標を検出すると共に、当該視線座標について、アフィン変換手段８による既存の基準面に対するスイープ線上へのアフィン変換を行うことでスイープガイドを導き、演算手段３により当該スイープガイドを通るスイープ線の方向を導く。
前記スイープガイドを中心とし、スイープ線の長さを一辺とし、且つスイープ線を法線とする正方形の面をスイープ面（スイープ軌道作成面）として設定する（図２（Ｂ）参照）。
【００１９】
＜ローカル基準面の作成＞
更に、描画手段４で、前記スイープ線がその移動によって描く長方形について、その始点たる一辺からその対辺に連続する直線（スイープガイドの通過点を結ぶ線）を軌道線（スイープ軌道）とし、前記の如くシフトすることにより得られる長方形を新規なローカル基準面（入力面）として設定する（図２（Ｃ）参照）。
【００２０】
＜軌道線の描画＞
前記軌道線は、以下の如く描画される。
前記描画手段（線入力手段）４は、上記の如く、マウス操作等（ドラッグ操作等）によるスイープ操作の際におけるグリップ点の位置指定操作を受けて、画面モジュール６により当該グリップ点の視線座標を取得すると共に、アフィン変換手段８により前記マウス操作等で描いたスイープ線のアフィン変換を行い、シフト過程にあるスイープ線を設定する。
【００２１】
更に、入力面モジュール７で当該スイープ線とスイープ面との交点のローカル座標を検出し、描画手段４でシフト過程にある当該交点を追加する。
以上の処理をエスケープ操作が行われるまで繰り返し、エスケープ操作を受けて、入力面モジュール７は、スイープ面を入力面から削除すると共に、追加されたスイープ線及び軌道線（スイープ線とスイープ面との交点の集合）を入力面（新たに造られた基準面）に追加する（図２（Ｃ）参照）。
【００２２】
前記描画手段（面入力手段）４は、前記スイープ線の軌道から面を作成する（図３（Ａ）参照）。
面は、実座標三角形群からなる（図４（Ａ）参照）。
【００２３】
＜実座標三角形群（面）の作成＞
実座標三角形群の作成方法の具体例を示すと、先ず、スイープ線を構成する点を、仮にａ１，ｂ１，ｃ１，・・・とし、軌道線の始点から終点に向かって軌道線を構成する点を１，２，３，・・・とする。
【００２４】
仮に、点１で掴んだａ１，ｂ１，ｃ１，・・・を、点２の位置に平行移動した各点をａ２，ｂ２，ｃ２，・・・とし、点３の位置に平行移動した各点をａ３，ｂ３，ｃ３，・・・とする場合、例えば、それに伴って造られる四角形平面ａ１ｂ１ｂ２ａ２を三角形２個ａ１ｂ１ａ２とｂ２ａ２ｂ１に分割する。以降、これを繰り返すことによって、一の四角形平面が連結する毎に、それを一の対角線に沿って二分割して得られる二つの三角形平面が加わる作業を経て、複数の三角形群（基準面）が作成される（図４（Ａ）参照）。
【００２５】
＜二次元表現（二軸化）処理＞
［実座標三角形から二軸三次元座標系三角形（以下二軸三角形と記す）への座標変換］
以下、編集画面に立体表示されるローカル基準面の三角形平面を二次元表現の三角形平面として表現する基本的な変換処理について説明する。
この処理は、３−２変換手段９によって、編集画面の立体表示に副った実座標を、入力時及び内部処理において便宜上用いられる二軸三次元座標に変換するものである。
【００２６】
以下、当該変換処理を実座標三角形上にある点ｐ(x、y、z)を、対応する二軸三角形の点ｐ’(w,l)に変換する例に基づいて詳述する。
ここで、実座標三角形をａ１ｂ１ａ２とし、二軸三角形をａ１’ｂ１’ａ２’とする。
点ａ１(x0,y0,z0)から点ｐ(x、y、z)に向かう直線ａ１ｐと、点ｂ１(x1,y1,z1)から点ａ２(x2,y2,z2)に向かう線分ｂ１ａ２の交点ｋ(x3,y3,z3)を求めることとする。
先ず、線分ａ１ｐの長さを線分ａ１ｋの長さで割って率ａｔを求め、線分ｂ１ｋの長さを線分ｂ１ａ２の長さで割って率ｂｔを求める。
点ｂ１’(w1,l1)から点ａ２’ (w2,l2)に向かう線分ｂ１’ａ２’上にｂ１’(w1,l1)からｂｔ率の点ｋ’(w3,l3)を求め、線分ａ１’ｋ’上に点ａ１’(w0,l0)からａｔ率の点ｐ’(w,l)を求める（図４（Ａ）（Ｂ）参照）。
【００２７】
［二軸三角形から実座標三角形への座標変換］
この処理は、２−３変換手段１０により、入力時及び内部処理において便宜上用いられる二軸三角形の二次元表現の座標を、編集画面の立体表示に副った実座標に変換するものである。
これは、上記変換の逆の処理を行うものである。
即ち、先ず、点ａ１’ (w0,l0)から点ｐ’(w,l)に向かう線分ａ１’ｐ’の長さを線分ａ１’ｋの長さで割って率ａｔを求め、線分ｂ１’ｋ’の長さを線分ｂ１’ａ２’の長さで割って率ｂｔを求める。
線分ｂ１ａ２ 上に点ｂ１(x1,y1,z1)からｂｔ率の点ｋ(x3,y3,z3)を求め、線分ａ１ｋ上に点ａ１(x0,y0,z0)からａｔ率の点ｐ(x、y、z)を求める（図４（Ａ）（Ｂ）参照）。
【００２８】
＜基準面上における図形の作成＞
以下、ローカル基準面上に描かれた図形を構成する点を二次元表現で取り扱う際の具体的な処理を説明する。
実際の使用では、図７（Ａ）の様に複雑なローカル基準面となる場合があるが、この様なローカル基準面にあっても、実際には三次元座標系で表現されるべき立体を、当該例では、二軸座標系として表現する手法を採る（図７（Ｂ）参照）。この手法によって、前記三次元ローカル座標系でそのローカル基準面に基いて編集された複雑な立体図形であっても、ローカル基準面と同様に、簡易な二次元表現で定義することができ、しかも、各軸毎に等間隔で切れ目なく連続した二軸による位置座標として表現することができる。
【００２９】
［点の位置座標の求め方］
この処理では、図７の如く、三次元ローカル座標系で指定した点Ａ（図７（Ａ）及び図８参照）が、二軸座標系における点Ａ’ （図７（Ｂ）参照）として取り扱われ、三次元ローカル座標系で指定した点Ｂ（図７（Ａ）参照）が二軸座標系における点Ｂ’（図７（Ｂ）参照）として取り扱われる。
二軸座標系における点Ａ’，点Ｂ’が定まれば、線分Ａ’Ｂ’と二軸三角形群との交点ｐ０’，ｐ１’,ｐ２’が決まる。最後に、連続する点Ａ’，ｐ０’，ｐ１’,ｐ２’,Ｂ’を三次元ローカル座標系の点Ａ，ｐ０，ｐ１,ｐ２,Ｂに変換する（図７参照）。
【００３０】
［座標軸の方向の求め方］
二次元ローカル座標系において点Ａ’を通り縦方向（列方向）に延びる直線を描画し、当該直線と横方向（行方向）に延びる線分ａ’ｂ’，ｂ’ｃ’，ｃ’ｄ’，ｄ’ｅ’，ｅ’ｆ’，・・・・，ｗ’ｘ’，ｘ’ｙ’との交点を導く。当該交点のうちでＡ’を挟んで最も近い二点ｐａ’，ｐｂ’を導き、当該二点ｐａ’，ｐｂ’から三次元ローカル座標系の二点ｐａ、ｐｂを導く（図８参照）。
【００３１】
三次元ローカル座標系のスイープ線ａｂ，ｂｃ，ｃｄ，ｄｅ，ｅｆ，・・・・，ｗｘ，ｘｙのうちで点Ａから最も近い線分の最も近い点ｐａ，ｐｂを導き、当該線分の点ｐａ，ｐｂを始点とする線分の方向Ｖａ，Ｖｂを導く。
点Ａと点ｐａ間の距離と、点Ａと点ｐｂ間の距離の比からＶａ及びＶｂに基づいて点Ａを始点とするＶの大きさを導き、点Ａと点ｐａ間の距離と、点Ａと点ｐｂ間の距離の比からＶａ及びＶｂの方向に基づいて点Ａを始点とするＶの方向を導く（図８参照）。
【００３２】
＜アフィン変換について＞
ここで、アフィン変換とは、アフィン変換手段８によって行われ、点単体、又は図形を構成する各点の位置座標（視線座標：ｑ０ (X,Y,0)）に対し、その処理に応じたｍ×ｎの行列を使う演算を施す事を言う。
ユーザ視線（編集画面X-Yの法線ベクトル（視線ベクトル））Ｚの端点を各々ｑ０(X,Y,0),ｑ１(X,Y,L)とすると、視線ベクトルＺは、(0,0,L)である（図５参照）。
【００３３】
よって、視線座標系の座標をローカル座標に変換する場合は、
ｑ０’=ｑ０＊Ｍａｔｒｉｘ，ｑ１’=ｑ１＊Ｍａｔｒｉｘ
で求めることが出来る（逆変換に対しては逆行列を用いる）。
Ｍａｔｒｉｘの要素を変更することによって、絶対座標系にある図形を構成する各点の位置関係を、回転、拡大、縮小、又は変形させることができ、その結果、行列に対応する基準面（又は実座標三角形）への座標変換も可能となる。また、当該変換には可逆性があることから、当該変換の逆変換も可能となる。
【００３４】
当該例では、編集画面においてマウス操作等（クリック操作等）により指定された画面上の視線座標を、編集を行う基準面の法線を手掛かりに当該基準面上の三次元ローカル座標系の座標に変換すること、即ち、視線座標系と各三次元ローカル座標系を、各々対応する行列データによって関連付けることを一つの処理形態とし、ユーザ視線（編集画面の表から裏へ向かうベクトル（図５（Ｂ）参照））と、目的とする基準面との交点のローカル座標を導く。
尚、交点が複数の基準面（又は実座標三角形）に接する場合には、各基準面についてそれぞれ法線が存在することから、各法線の方向についての平均を採りそれら基準面群の法線とする。
【００３５】
更に、当該例では、アフィン変換手段８によるアフィン変換で、例えば、図形としての基準面の拡大縮小、回転、平行移動（図６（Ａ）参照）を行い、所望のサイズ及び傾きを持った基準面を自由に変形複製することができることとなる（図６（Ｃ）参照）。その際、同アフィン変換により、基準面や基準面に描かれた図形を、絶対座標系の他の位置に複製することができる。
【００３６】
以下、基準面に対する前記各種処理を説明する。
＜クリック操作の検知処理＞
当該例において各種処理を起動するスイッチは、一つは、矢印を形作る立体形状であって、Ｏ0を起点としＯ1を終点とした軸を中心とし、軸の半径をＲとした回転体である（図１０（Ａ）参照）。その位置、方向、及び体積は三次元絶対座標系で設定し、描画手段４で設定する。
当該スイッチ（矢印スイッチ１３）へのクリック操作の検知は、演算手段３により、前記視線ベクトル（図５（Ｂ）（Ｃ）参照）の延長線が直線Ｏ0Ｏ1から半径Ｒ以内を通過することを検出することを以てクリック操作を受け付けることとする。
当該例において各種処理を起動するスイッチは、もう一つは、プレート状の立体形状（プレートスイッチ１４，１５）であって、前記視線ベクトルの延長線が当該プレートの範囲内を横切ることによって、演算手段３により、クリック操作を受け付けることとする。
これらのスイッチ１３，１４，１５は、基準面が設定された後、描画手段４により、当該基準面の各種処理所定の位置に表示する（図６又は図９参照）。
【００３７】
＜基準面の拡大・縮小処理＞
マウス等のドラッグ操作、又は入力ダイヤログ（図示せず）からの拡大（縮小）率の入力によって、指示ポイント（基準面と視線ベクトルとの交点）を原点として指示した面についての拡大又は縮小を行うものである。
この伸縮は、長さを固定した上で尺度を拡大又は縮小させる処理でもよいし、尺度を固定した上で長さを拡大又は縮小させる処理でもよい。
演算手段３により、ドラッグ量、又は入力ダイヤログから拡大率又は縮小率を確定し、確定した倍率の拡大縮小行列を作成し、アフィン変換手段８により指示ポイントを原点（重心）としてその全体を拡大又は縮小した当該基準面を前記説明の通り描画手段４で再設定する。
ドラッグ量及び入力ダイヤログへ記入した数値は、スイープ線又はスイープ軌道に沿った方向である。
【００３８】
＜基準面の伸縮処理＞
マウス等による矢印スイッチ１３のドラッグ操作、若しくはクリック操作、又は入力ダイヤログからの伸縮率の入力によって、指示ポイントを含む一連の平面、及び伸縮方向と直交する方向に連なる他の平面についての伸縮を行うものである（図３又は図９参照）。
この伸縮は、長さを固定した上で尺度を伸縮させる処理でもよいし、尺度を固定した上で長さを伸縮させる処理でもよい。
【００３９】
伸縮方向の決定は、二軸三次元座標系のｗ軸とｌ軸の正負方向の四方について行い、当該四方に向けて、二軸三次元座標系の左右縁の中央、及び上下縁の中央を基端とした矢印の回転軸を設定する。当該回転軸について、三次元絶対座標系の位置座標から２−３変換手段１０により座標変換を行い、描画手段４で三次元絶対座標系に矢印スイッチ１３を作成表示する。
演算手段３により、前記ドラッグ量、又は入力ダイヤログから移動量を確定し、スイープ線Ｐ0Ｐ1Ｐ2又はスイープ軌道ＰａＰｂＰｃを各々のベクトルを維持して伸縮し、描画手段４により、伸縮後のスイープ線Ｐ0’Ｐ1Ｐ2’又はスイープ軌道Ｐａ’ＰｂＰｃ’に基づいて当該基準面を前記説明の通り再設定する。
ドラッグ量及び入力ダイヤログへ記入した数値は、スイープ線Ｐ0Ｐ1Ｐ2又はスイープ軌道ＰａＰｂＰｃに沿った方向である（図９（Ａ）参照）。
【００４０】
＜平行移動処理＞
演算手段３により、ドラッグ量、又は入力ダイヤログからスイープ線及びスイープ軌道に沿った方向各々への移動量を確定し、アフィン変換手段８により、確定した倍率の平行移動行列を作成し、全体として拡大又は縮小した当該基準面を前記説明の通り指定ポイントを原点として再設定する。
矢印スイッチ１３の向きは、基準面の表裏法線方向、及び上下左右の六方向である。矢印スイッチ１３へのクリック操作の検知は、演算手段３により、前記視線ベクトルの延長線が直線Ｏ0Ｏ1から半径Ｒ以内を通過することを以てクリック操作を受け付けることとする。
【００４１】
＜回転移動処理＞
演算手段３により、ドラッグ量、又は入力ダイヤログからスイープ線及びスイープ軌道を軸とした方向各々への回転量を確定し、確定した回転量の回転行列を作成し、アフィン変換手段８により指定した軸を中心として確定した回転量だけ回転した当該基準面を前記説明の通り再設定する。
回転軸は、当該基準面を含む二軸三次元座標系に基いて決定し、基準面を構成する指定した平面の法線、及び当該法線を含む基準面の二軸たるｗ軸及びｌ軸のいずれかを回転軸として表示し（図１０（Ｂ）参照）、そのなかから適宜選択する。矢印スイッチ１３は、それらの軸を中心とした円弧上に湾曲して表示され、矢印スイッチ１３へのクリック操作の検知は、演算手段３により、前記視線ベクトルの延長線が直線Ｏ0Ｏ1から半径Ｒ以内を通過することを検出することを以てクリック操作を受け付けることとする。
【００４２】
＜基準面のｏｎ／ｏｆｆ処理＞
この機能は、二軸三次元座標系の基準面を複数有する場合に、マウスのクリック操作等によって、有効な（図形の編集に用いることができること）単数又は複数の基準面を既存の基準面のなかから決定するものである。
当該例では、マウスのクリック操作等で指定した視線ベクトルと交差する基準面の延長線上右上に、当該基準面と法線ベクトルが共通するプレートスイッチ１４を表示する（図６（Ｂ）又は図９（Ｂ）参照）と共に、演算手段３により、前記視線ベクトルの延長線と当該プレートスイッチ１４との交差を検出することを以てクリック操作を受け付けることとする。
受け付けたクリック操作等は、保存手段５により、当該基準面のトグルスイッチ操作フラグとして保存する。
【００４３】
＜基準面の消去＞
この機能は、二軸三次元座標系の基準面を複数有する場合に、マウスのクリック操作等によって、既存の基準面のうちから、不要となった単数又は複数の基準面を選択するものである。
当該例では、描画手段４で、マウスのクリック操作等で指定した視線ベクトルと交差する基準面の延長線上右上に、当該基準面と法線ベクトルが共通するプレートスイッチ１５を表示すると共に、演算手段３により、前記視線ベクトルの延長線が当該プレートスイッチ１５と交差することを以てクリック操作を受け付けることとする。
受け付けたクリック操作等の検知を以て、保存手段５により、当該基準面の保存情報を削除する。
【００４４】
＜ローカル座標系における作図＞
各入力面における図形の入力は、前記描画手段４で行う。
描画手段４は、前記スイープ線やスイープ面と同様に、選択した基準面及びそのローカル座標系に図形を描画する。
その際、描画の基準となる基準面を、各基準面の有効・無効設定するスイッチで選択する（図６（Ｂ）及び図９（Ｂ）参照）。
前記座標変換処理は、マウスクリックから編集画面における視線座標を取得し、当該視線座標から視線ベクトル方向への投影点を含む既存の基準面のうち、前記スイッチがオンとなっている有効な基準面への前記アフィン変換手段８により、当該有効な基準面に対する描画として取り扱うものである（図３参照）。
【００４５】
[線入力]
以下、線の描画を目的とした具体例を挙げる。
先ず、前記描画手段（線入力手段）４は、マウス操作等（クリック操作等）による位置指定操作を受けて、画面モジュールにより、マウスクリックから編集画面におけるスイープ線の端点座標を取得し、アフィン変換手段８により、両端点の視線座標からローカル座標系の座標に変換し、両端点を結ぶ直線を、選択した基準面上に描画する（図３（Ｂ）参照）。
その際、基準面に置かれる点は、編集画面の視線座標の前記アフィン変換によって選択した基準面のローカル座標に変換され、選択した基準面のローカル座標系における描画作業として取り扱われる。
【００４６】
[壁入力]
面は、前記描画手段（線入力手段）４によって描かれた点を連結して描かれる面を閉じることによって決定し、壁は、当該面をアフィン変換手段８によりダイヤログで指定した厚みを隔ててシフトした位置を導いて、当該位置に、描画手段（面入力手段）４によって対向面として複製し、当該一対の相対抗する面、及びその間隙を封じる側面に囲まれた空間とで定義する（図３（Ｃ）参照）。
【００４７】
[その他の図形の入力]
更に、描画手段４は、断面形状、又は立体を作図するエディタを備える。
当該エディタにあっても、その座標変換処理は、マウスクリックから編集画面における視線座標を取得し、当該視線座標から視線ベクトル方向への投影点を含む既存のローカル基準面のうち、前記スイッチがオンとなっている有効な基準面への前記アフィン変換手段８により、当該有効な基準面に対する描画として取り扱う。
【００４８】
具体的には、有効な基準面の指定された面、及び当該面の法線がエディタに表示され、当該エディタで得られた図形は、編集画面に配置する際に、当該基準面の指定された面、及び当該面の法線の位置関係が維持される。断面を配置する際には、編集した断面を持つ立体の始端と終端を選択することによって、前記基準面と法線の位置関係を維持しつつ、始端から終端へ最短距離で移動させた際に生じる軌道空間が、立体として作図・定義され描画されることとなる。
【００４９】
上記ローカル基準面及び図形の入力操作の履歴及び内容は、逐次、保存手段５により保存する。
図形の保存に際し座標に関する情報は、共通座標系の三次元絶対座標系を適用する（複数の座標系を適用してもよい）。
【符号の説明】
【００５０】
１  基準面設定手段、２  座標変換手段、３  演算手段、４  描画手段、
５  保存手段、
６  画面モジュール、７  入力面モジュール、
８  アフィン変換手段、９  ３−２変換手段、１０  ２−３変換手段、
１１  スイープ面設定手段、１２  軌道面設定手段、
１３  矢印スイッチ、１４  プレートスイッチ、１５  プレートスイッチ、
【図１】
0005555681.tif 000002
【図４】
0005555681.tif 000003
【図５】
0005555681.tif 000004
【図７】
0005555681.tif 000005
【図８】
0005555681.tif 000006
【図９】
0005555681.tif 000007
【図１０】
0005555681.tif 000008
【図２】
0005555681.tif 000009
【図３】
0005555681.tif 000010
【図６】
0005555681.tif 000011