(57)【要約】【目的】従来の３次元図形モデリングシステムと比べると、より容易で、かつ３次元形状が把握しやすい３次元コンピュータ・グラフィックス・モデリング・システムを提供すること。【構成】（１）多面体オブジェクトの前面を決定し、（２）ディスプレイの描画画面上で、上記多面体オブジェクトを前面から見たときの全ての頂点と辺を描画し、多面体オブジェクトの前面の２次元形状を決定し、（３）前面から見たときの全ての頂点の奥行き方向情報を決定し、（４）必要に応じて前面の各頂点間、裏面の各頂点間をつなぐ辺を編集し、（５）次いで、上記３次元多面体図形イメージデータを、２次元スクリーン座標系データへ変換して、コンピュータディスプレイ上で立体的な図形を表示する。【選択図】図４０
2005208867.tif 000002
【特許請求の範囲】
【請求項１】
（１）多面体オブジェクトの前面を決定し、
（２）ディスプレイの描画画面上で、上記多面体オブジェクトを前面から見たときの全ての頂点と辺を描画し、多面体オブジェクトの前面の２次元形状を決定し、
（３）前面から見たときの全ての頂点の奥行き方向情報を決定し、
（４）必要に応じて前面の各頂点間、裏面の各頂点間をつなぐ辺を編集し、
（５）次いで、上記３次元多面体図形イメージデータを、２次元スクリーン座標系データへ変換して、コンピュータディスプレイ上で立体的な図形を表示することからなる多面体図形の３次元コンピュータ・グラフィックス・モデリング・システム。
【請求項２】
（１）円柱または円錐オブジェクトの前面と裏面を決定し、
（２）入力画面上において、上記オブジェクトを前面から見たときのｘ軸方向の半径（横半径）、及びｙ軸方向の半径(縦半径)を決定し、
（３）次いで裏面におけるｘ軸方向の半径（横半径）、及びｙ軸方向の半径(縦半径)を決定し、
（４）円柱の長さ、円柱の内径を決定し、
（５）前面と裏面との相対的位置関係を決定し、
（６）得られた３次元円柱または円錐図形イメージデータを、２次元スクリーン座標系データに変換して、コンピュータディスプレイ上で立体的な図形を表示することからなる円柱状図形の３次元コンピュータ・グラフィックス・モデリング・システム。
【請求項３】
（１）球オブジェクトのカット数を決定し
（２）ｘ軸に対する半径、
（３）ｙ軸に対する半径、
（４）ｚ軸に対する半径を決定し、
（５）得られた３次元球図形イメージデータを、２次元スクリーン座標系データに変換して、コンピュータディスプレイ上で立体的な図形を表示することからなる球状体図形の３次元コンピュータ・グラフィックス・モデリング・システム。
【請求項４】
２次元スクリーン座標系データが、遠近法により表示される２次元スクリーン座標系データであることを特徴とする請求項１〜３に記載の３次元コンピュータ・グラフィックス・モデリング・システム。
【請求項５】
遠近法により表示される３次元図形が、回転可能であることを特徴とする請求項４に記載の３次元コンピュータ・グラフィックス・モデリング・システム。
【請求項６】
遠近法により表示される３次元図形が、スケール変形可能であることを特徴とする請求項４〜５に記載の３次元コンピュータ・グラフィックス・モデリング・システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２次元図形形状から３次元モデルを入力・生成する３次元コンピュータ・グラフィックス・モデリング・システムに関する。
【背景技術】
【０００２】
近年、製品の３次元モデルをコンピュータ上で仮想的に作成し、この３次元モデルに基づいて製品モデルをイメージング、あるいは試作する方法が提案されている。
【０００３】
このような３次元モデルには、ワイヤーフレームモデルが最も多く使用されている。一般に、図１のようなワイヤー画面モデルは、そのオブジェクトの各面の情報によって表される。
【０００４】
従来のモデリング手法によると、ワイヤーフレームモデルは、まず、図２に示すような各面における全ての頂点（ｘ，ｙ，ｚ）、全ての辺、及び面リストを３次元ワールド座標系によって定義し、これらのデータを描画プログラムやデータファイルに取りこみ、次に３次元ワールド座標系のデータを２次元スクリーン座標系のデータに変換してコンピュータディスプレイ上に立体的に物体を表現していた。
【０００５】
しかし、このような方法では、表現する物体の形状が複雑になるにつれ、３次元ワールド座標系によってオブジェクトの各頂点の定義、及びそのデータを入力することは極めて困難になってしまい、３次元コンピュータグラフィックについての知識のない人にとっては実現することが難しい。
【０００６】
上記ワイヤーフレームモデルを用いた３次元描画方法を簡便にした方法については、いくつかの提案がなされている。例えば、特許文献１には画面上に構想図や図面を表示し、これらをなぞって断面形状を定義すると共に寸法値や拘束条件、更に奥行き量を定義し、これら定義をもとに３次元形状を生成する方法が提案されている。この方法は簡便ではあるが、要素の１つ１つの値を求める必要があるため、そのデータ収集は容易ではない。
【特許文献１】特開平７−７８２７１号公報
【特許文献２】特開２００１−６００４号公報
【０００７】
特許文献２では、相互に異なる複数の座標平面からの２次元画像データ、具体的には正面図と側面図を利用して３次元画面を生成する方法に係わるシステムであるが、入力すべきデータ数が多く、かつ安価なシステムであるとは言いがたい。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明の目的は、従来の３次元図形モデリングシステムと比べると、より容易で、かつ３次元形状が把握しやすい３次元コンピュータ・グラフィックス・モデリング・システムを提供することにある。
【課題を解決するための手段】
【０００９】
すなわち本発明は、
（１）多面体オブジェクトの前面を決定し、
（２）ディスプレイの描画画面上で、上記多面体オブジェクトを前面から見たときの全ての頂点と辺を描画し、多面体オブジェクトの前面の２次元形状を決定し、
（３）前面から見たときの全ての頂点の奥行き方向情報を決定し、
（４）必要に応じて前面の各頂点間、裏面の各頂点間をつなぐ辺を編集し、
（５）次いで、上記３次元多面体図形イメージデータを、２次元スクリーン座標系データへ変換して、コンピュータディスプレイ上で立体的な図形を表示することからなる多面体図形の３次元コンピュータ・グラフィックス・モデリング・システムである。
【００１０】
本発明は、また、
（１）円柱または円錐オブジェクトの前面と裏面を決定し、
（２）入力画面上において、上記オブジェクトを前面から見たときのｘ軸方向の半径（横半径）、及びｙ軸方向の半径(縦半径)を決定し、
（３）問いで裏面におけるｘ軸方向の半径（横半径）、及びｙ軸方向の半径(縦半径)を決定し、
（４）円柱の長さ、円柱の内径を決定し、
（５）前面と裏面との相対的位置関係を決定し、
（６）得られた３次元円柱または円錐図形イメージデータを、２次元スクリーン座標系データに変換して、コンピュータディスプレイ上で立体的な図形を表示することからなる円柱状図形の３次元コンピュータ・グラフィックス・モデリング・システムである。
【００１１】
本発明は、また、
（１）球オブジェクトのカット数を決定し
（２）ｘ軸に対する半径、
（３）ｙ軸に対する半径、
（４）ｚ軸に対する半径を決定し、
（５）得られた３次元球図形イメージデータを、２次元スクリーン座標系データに変換して、コンピュータディスプレイ上で立体的な図形を表示することからなる球状体図形の３次元コンピュータ・グラフィックス・モデリング・システムである。
【００１２】
２次元スクリーン座標系データは、遠近法で表現された２次元スクリーン座標系データであることが好ましい。
【００１３】
遠近法により表示される３次元図形は、回転させうることが好ましい。
【００１４】
遠近法により表示される３次元図形は、スケール変形させうることが好ましい。
【発明の効果】
【００１５】
本発明の３次元コンピュータ・グラフィックス・モデリング・システムによれば、従来の三次元アニメーションの方法では立体が変化する度に各頂点の座標を計算する必要があり、多くの手間を要していたのに比べて、簡単な手法で３次元オブジェクトを得ることができる。また、遠近法を用いることにより、３次元モデルを容易に取得でき、しかも、行列Vのρ、φ、θ及び視点Ｅとスクリーンとの間の距離変数ｄを変化させるだけでアニメーション化における計算手間が短縮される。また、ディスプレイ画面にアニメーションを円滑に表示することができる。
【発明を実施するための最良の形態】
【００１６】
本発明の実施の形態につき詳しく説明する。本発明のシステムを実施するためのハードウエアとしては、好ましくはパーソナルコンピュータ（パソコン）を用いる。パソコンは、データや図を表示するためのディスプレイ、データを入力するためのキーボード、及びマウス、格納されたプログラムを立ち上げて入力したデータを演算し、出力し、記憶するための本体、及び必要に応じてプログラムやデータを格納するためのコンピュータディスク、サーバー等の追加の記憶装置とからなっている。
【００１７】
本発明では、パソコンのマウスを用いて入力することにより３次元図形オブジェクトを形成する。本発明の３次元コンピュータ・グラフィックス・モデリング・システムでは、ディスプレイ上の画面としては、前面の２次元形状の描画画面、描画画面と連動したシステム制御画面、奥行きデータ入力画面、前面辺編集画面、裏面辺編集画面、遠近法による３次元オブジェクト表現および回転画面、円柱及び球データ入力画面、データ表示画面等の複数の画面が用意されている。これらの画面は１つ１つ切り替わるようになっていてもよいし、１つの画面にいくつものフレームとして表示されていてもよい。
【００１８】
なお、本明細書において、オブジェクトとは、３次元化の対象とする物体、あるいは、物体を本発明の方法により描かれた３次元化された画面上の物体のいずれをも含む。
【００１９】
本発明の３次元コンピュータ・グラフィックス・モデリング・システムでは、前面から見たときの全頂点と辺を直接にシステムの描画入力画面上で描画することによりオブジェクトの前面と裏面の形状を定義することと、前面の全頂点の奥行き方向の情報をシステムの奥行きデータ入力画面上で入力することにより前面と裏面間の辺即ちオブジェクトの奥行き方向の形状を定義することと、前面の辺リスト及び裏面の辺リストをシステムの辺編集画面上で編集することにより前面に同一位置を持ち奥行き方向の位置が異なった複数の辺と複数の頂点が表現できることから３次元オブジェクトを形成する。
【００２０】
本発明のシステムでは、まずオブジェクトの前面に着目し、前面から見たオブジェクトにおける全ての頂点及び辺の位置を描画により定義する。このオブジェクトの前面としてどの面を選ぶかは特に限定されないが、好ましくは、描画が容易で、かつ前面から見たとき裏面の各頂点の重なりが多い面を選択すると、本発明の効果が得られやすいため好ましい。円柱や円錐等、円が構成面の一部となっているオブジェクトの場合は、円の部分を前面や裏面とすることが、描きやすいため好ましい。
【００２１】
図３は、本発明のシステムにおけるオブジェクトの前面の２次元形状を描画するためのディスプレイ上の描画画面である。画面上には、好ましくはグリッドを併せて表示し、断面形状の定義をし易くする。描画画面サイズの目安として、中心は(0,0)、x軸は（-10,10）、y軸は(-10,10)とする。この画面に連動して、データリセット、データ保存・表示、次へ進む、システム終了等システム制御機能を設けておいてもよい。
【００２２】
本発明の３次元コンピュータ・グラフィックス・モデリング・システムにより３次元ワイヤーモデルを得るには、オペレータは、まず、マウスを使って、上記画面上に作成したいオブジェクトの前面の描画を行う。
【００２３】
本発明の好ましい実施態様では、オペレータは、直線を引く場合、画面上の任意の点から左クリックの状態でドラッグする。目的の点に到着したときマウスボタンを開放すると、両点間に直線が描かれる。同時にこの直線の始点頂点と終点頂点の番号が表示される。このような操作を繰り返すことにより、前面の２次元形状モデルを作成することができる。
【００２４】
実施例として図１のオブジェクトを表現する。本発明における前面頂点入力画面の実施例を、図４に示す。図４では、前面から見た２次元描画画面の左上の頂点を番号0としてスタートし、例えば時計まわりの方向に順次数値が増加された頂点の番号が表示される。
【００２５】
上記入力操作において、頂点の番号は自動的に割振られるようになっていることが好ましい。また、頂点、直線の描画位置や描画順番は自由である。
【００２６】
前面において同じ位置に複数の頂点がある場合を考える。頂点が２個の場合、前面以外の頂点は裏面の頂点として自動的に表示されるようになっていることが好ましい。また、３個以上の複数の頂点があった場合は、マウスをその頂点の数だけクリックする。そのクリック回数に応じて頂点番号が一列に並べて表示される。次に奥行きデータ入力画面を利用してこれら複数の頂点の奥行き方向における位置を別々に決めるようになっていることが好ましい。
【００２７】
一方、前面の辺に重なって複数の辺があった場合は、一つの辺だけ描いて、この辺の上で適当な頂点をマウスをクリックすることによって描画し、次に前面エッジ（辺）編集画面あるいは裏面エッジ編集画面を利用してこれら複数の辺を区別して描画されることが好ましい。
【００２８】
前面の２次元図形の形状を確定したら、次に、前面の各頂点の奥行き方向における情報を入力する。図５は、頂点の奥行き方向のデータを決定するための画面である。ある頂点は前面から見たときは一つの頂点だが、実際にこの頂点は奥行き方向で見ると一つの点ではなく、２つの点、あるいは一つの辺である場合がある。記述と入力の便利のために、前面の各頂点の奥行き方向における座標値をDFと呼ぶ。裏面におけるその頂点の奥行き方向の座標値をDBと呼ぶ。この頂点が表前面、裏面で二つの異なった奥行き位置をもつことを、この前面の頂点が裏面にマップされるという。図５の実施例では前面の全頂点がマップされており、一つの頂点番号に対して、左側の数値は、その頂点のDFの値で、右側の数値はその頂点に対応したDBの値である。また、各頂点のDF とDBの値の初期値は（10，−10）とし、それぞれのチョイスメニューから選択により変更出来るようになっている。
【００２９】
図５に示した奥行きデータ入力画面において、ある頂点のDFとDBの数値が一致していないならば、その頂点が実際に前面と裏面それぞれの２次元画面上に同じ２次元の位置を持つ二つの頂点があり、この二つの頂点を繋ぐ前面と裏面の間の辺が存在していることを意味している。ただし、状況によってその頂点の前面と裏面間の結ぶ辺を引くかどうか選択できるようになっている。選択を省略した場合はこの辺が自動的に引かれる。一方、図５に示した奥行きデータ入力画面において、ある頂点に対して、DFはDBと等しければ、その頂点が前面と裏面の間の頂点を繋ぐ辺が存在しないことを意味している。この場合には線引きチェックボックスは入力しなくてよい。
【００３０】
本発明の実施例におけるシステムでは、前面の２次元形状の描画による定義が完了した時点で、自動的に前面と同一の投影面が裏面に存在するとして裏面の辺が定義される。また、奥行き情報では、前面の頂点は10、裏面の頂点は−10として予め自動的に入力されており、前面と裏面の形状が同一で平行な関係が得られたと同時に、奥行き方向の辺も自動的に定義されている。従って、前記前面の２次元形状の描画による定義を完了しただけで、３次元オブジェクトのデータ入力が終了できるため、直に２次元形状の描画画面上のOKボタンを押して、遠近法による３次元オブジェクト表現・回転画面へ切り替えることによりこのオブジェクトを表現・回転できるようになっている。奥行き情報の修正が必要であれば、２次元形状の描画画面上のEDITボタンを押して図５の奥行き情報入力画面に切り替え、前面頂点のDFあるいはDB値を改めた後、図５の描画ボタンを押すと遠近法による３次元オブジェクト表現・回転画面へ切り替えることもできる。
【００３１】
本発明のシステムでは、次に辺の編集を行う。前面において同一の位置に一つの辺だけ見えても、実際には奥行き方向の異なった位置に複数の辺が存在している場合、あるいは前面２次元形状の描画による定義した辺を変更したい場合、画面を編集画面にして作業を行う。画面の切換えは、図５の画面で編集ボタンを押すことにより前面エッジ編集画面へ切り替わるようになっていてもよい。
【００３２】
前面エッジ編集画面には、上記の前面２次元形状の描画により定義した辺が自動的に提示される。前面における辺の編集は、例えば、図６に示した前面エッジ編集画面において行う。図６の画面では、左側の始点から、右側の複数のチョイスメニューで表示される複数の終点までを繋ぐ辺が存在するかどうかを選択し特定し、あるいは未入力の新しい辺を入力する。図６における数字の意味は、最上段は、頂点０から頂点1、頂点５に辺が引かれていることを、２段目は、頂点１から頂点２に辺が引かれていることを示す。このような辺の作成は、図４と図５で確認しつつ行なうことが好ましい。空白は辺がないことを示す。前面エッジ編集を完了した時点で、OKボタンを押して裏面エッジ編集画面に切換える。
【００３３】
前面と同様に裏面における頂点間の辺は、図７に示した画面において、チョイスメニューで数値を選択し入力し、確定する。裏面エッジ編集を完了した時点で、OKボタンで３次元オブジェクト表現・回転画面に切換えられる。
【００３４】
以上述べたように、本発明の実施例においては、３次元モデルを作成するためのデータ入力画面（フレーム）は、好ましくは５フレーム以上存在する。図３の描画による前面２次元形状入力を終了後、あるいは図５の奥行きデータの入力を終了したら、直ちに図８の３次元オブジェクト表現・回転画面に切換えられるようになっていてもよい。また、以上の入力完了後、前面の同じ位置に重ね合わされた頂点や辺を編集するため行われる前面エッジ編集と裏面エッジ編集のあとに、図８の３次元オブジェクト表現・回転画面に切換えられるようになっていてもよい。図８は上記入力した図１のオブジェクトを表現・回転する様子を示している。
【００３５】
入力したデータが描画したい図形と一致しているか否かを確認するため、データ入力の任意の段階で３次元オブジェクト表現・回転画面に切換えられるようになっていることが好ましい。また、入力データの表示は図９のように、各データを１フレームに集合させ、一覧で確認できるようにしておくことが好ましい。これらのデータ保存・読み出しなどを利用して図形を保存・再描画を行うことが好ましい。
【００３６】
上記実施例においては、断面定義位置は、オブジェクトの前面と、最裏面の２面としたが、オブジェクトにおいて、前面と裏面との間に凹凸が多く存在する場合は、２面に限定されず、前面と裏面との間の要素が変化する断面を断面定義位置として、上記２次元形状と奥行きの情報入力方法を用いて複数の裏面を設けてその面における各頂点、または辺の座標を定義してもよい。
【００３７】
上記３次元オブジェクト作成の手順を別の実施例により説明する。描画したい３次元オブジェクトは、図１０に示した右上部に三角形の欠損部のある直方体である。このオブジェクトを得るには、まず図１１の描画画面において、0→1→2→3→0の順にカーソルをマウスでドラッグ、クリックを繰り返すことにより４角形を描画する。次に、頂点４と頂点５間の辺をマウスでクリック、ドラッグすることにより引く。これでオブジェクト前面の２次形状の定義が終わる。
【００３８】
次に奥行き方向決定画面で奥行き方向のデータを決定する。奥行き方向決定画面では、初期画面では図１２に図示したように頂点０〜５に対して予めＤＦは全て10、ＤＢは−10が定義され、入力されている。そこで、初期値が目的の画面と異なる値になっている頂点のＤＦ，ＤＢを修正する。図１０の図形では、図１３に示すように、頂点１〜３に対しては修正する必要がないので、そのまましておく。頂点０は奥行き方向における位置が頂点１、２、３、４、５で形成される面より奥まった位置にあるので、頂点０のＤＦを０に修正する。頂点０のＤＢの値−１０はそのままにしておく。また、頂点４、５は、前面の頂点であるため、ＤＦとＤＢともに10に改める。  
【００３９】
次に、前面辺関係決定画面で辺関係を修正する。上記の入力した２次元形状のデータに従って、前面辺決定画面における辺は予め自動的に図１４のように表示されている。すなわち、初期状態では、前面には、頂点0から頂点１、頂点３との間、頂点１から頂点２との間、頂点２から頂点３との間、頂点４から頂点５との間に辺が存在すると仮定している。次に、図１５のように前面における辺を図１０に図示された図形の辺関係になるよう編集する。すなわち、これらのうち、実体と異なる辺関係を修正する。頂点１、２、３の辺および頂点４，５の辺関係も予め入力されているデータの通りで修正する必要はない。一方、頂点０から頂点４、頂点５との間にも辺があるため、始点を０、終点を４、５とする新たな辺を入れる。また、頂点０と頂点１、及び頂点０と頂点３との間の辺は存在しないので、１と３を削除する。また、始点を１、終点を５とする辺、及び始点を３、終点を４とする辺を新たに加える。
【００４０】
次に、裏面辺の修正を裏面辺（エッジ）編集画面において同様にして行う。図１０に図示された図形では、辺関係は予め入力されているデータの通りで修正する必要はない。最後に３次元オブジェクト描画画面に切換えると図１０のオブジェクトが得られる。
【００４１】
オブジェクトが円筒、円錐、球、楕円球のような場合、頂点は存在しない。このようなときは、拘束条件モードを用いて円や楕円を用いた図形データ入力により図形を作成する。  
【００４２】
本発明において、拘束条件とは円で拘束される図形における条件、例えば特定形状、半径等をいい、これらの拘束条件のみで円で構成される３次元図形を描くことができる。特にオブジェクトが円柱、円錐、球などの場合、円柱あるいは円錐の前面と裏面の円の横半径、縦半径などのデータ、球のx軸における半径、y軸における半径、z軸における半径などのデータ、すなわち拘束条件を定義して図形の形状を決めることができる。
【００４３】
円柱のワイヤーフレームモデルを作成する場合、図１６の画面においてデータ入力ポケットの第１段に、前面における円のデータ、左から前面円の縦半径、横半径、第２段に、裏面における円のデータ、左から裏面円の縦半径、横半径を入力する。第３段の左に、円柱の長さを入力する。これらのデータは予め10とした初期値を定義しており、長さの入力を省略してもシリンダーＯＫボタンを押すことにより、直ちに図１７に示した円筒の画面が描けるようになっている。横半径を縦半径と異なった値とすれば楕円が描かれ、長さを0に指定すれば円柱ではなく、円が描かれる。また、前面または裏面、２つの円面のうちのいずれかの半径を0と指定すれば、図１８のような円錐が描かれる。さらに、第３段の真中には円柱の内径を入力するためのチョイスメニューがある。内径を指定すると、図１９のようなドーナツ状の円柱が描かれる。
【００４４】
円柱の３次元モデルを作成する場合、更にシリンダーの種類選択メニュー内の数を選択して前面と裏面の位置関係を特定することにより、多様な図形が描けるようになっていることが好ましい。例えば、１は、図２０のように前面と裏面が平行でかつ直線からなる包絡線で結ばれ、前面と裏面が逆回転している位置関係を示す。２は、前面と裏面が平行でかつ凹状曲線からなる包絡線で結ばれている位置関係を示す。３は、前面と裏面が平行でかつ凸状曲線からなる包絡線で結ばれている位置関係を示す。４は、図２１のように楕円の前面と楕円の裏面とが４５°の角度を持った位置関係であることを示す。
【００４５】
一方、球状のワイヤーフレームモデルを作成する場合は、図１６の入力画面の最下段に、球のカット数、Ｘ軸の半径、Ｙ軸の半径、Ｚ軸の半径等の拘束条件をチョイスメニューで指定する。これらの半径に関するデータは予め10とした初期値が定義されており、入力を省略してスフェアー（球状）ＯＫボタンを押すと、図２２に示したような球が描かれる。ｘ軸半径、y軸半径で異なった値を入力すれば、図２３に示したような楕円球が描かれる。
【００４６】
同様に自由曲線、円弧、自由曲面の場合も、円弧の始点と終了、および半径等を定義することにより円弧を描くプログラムが具備されていることが好ましい。また、正方形、長方形、台形、その他星型等もシステム制御画面オブジェをクリックするとそれぞれ定義された図形が画面に描かれるようになっていることが好ましい。
【００４７】
上記の要領で入力された各種データは、修正することができるようになっていることが好ましい。また、修正操作により、辺の削除や追加が可能となっていることが好ましい。具体的には、前記図４〜図７の入力画面の数値を置換し、あるいは削除し、「確定」ボタンを押すことによりデータが変換、あるいは取り消しできるようになっていることが好ましい。
【００４８】
本発明の３次元コンピュータ・グラフィックス・モデリング・システムでは、更に別々に入力した形が異なった図形を同時に複数の３次元オブジェクト描画画面に並行的に表現され、それぞれの図形のデータを用いた複数の図形により必要に応じてもっと複雑な新しい図形を組み立てるようになっていることが好ましい。
【００４９】
次ぎに、本発明の３次元コンピュータ・グラフィックス・モデリング・システムでは、上記システムで得られた３次元モデルを、好ましくは、ディスプレイ上で、遠近法を用いた２次元画像で表現する。
【００５０】
上記方法で求めた３次元モデルを、ディスプレイ上で、遠近法を用い２次元画像で表現する方法について説明する。前提として、3次元座標を（x,y,z）、２次元座標を（X,Y）とする。また、上記３次元モデルでの座標をワールド座標と呼ぶ。３次元モデルをディスプレイ上で２次元で表現するには、下記図２４に示した手順でワールド座標Ｐ（x,y,z）の一つ一つの頂点を写像し、写像点であるスクリーン座標P’（X,Y）へマッピングする作業を行う。
【００５１】
本発明のコンピュータ・グラフィックス・モデリング・システムにおいては、ワールド座標系をスクリーン座標に変換するには、ワールド座標系を一旦アイ座標系に変換した後に、アイ座標系をスクリーン座標系に変換するという手法をとる。ワールド座標系をアイ座標系に変換するには、ビューイングトランスフォーメーション（視点の変換）を行う。このビューイングトランスフォーメーションでは、まず、オブジェクトが位置するワールド座標系の原点Ｏを視点Ｅに移動させることで、同時に物体を移動させ、物体の中点がアイ座標系の原点Ｅとなるようにする。
【００５２】
視点の変換を行うためには、オブジェクトだけでなくビューポイント（視点）Eも必要となる。そして、原点Oをオブジェクトの中心に置き、EからOへオブジェクトを見る。ワールド座標系において、極座標（ρ：物体と目の間の距離、ψ：縦回転のための値、θ：横回転のための値）が与えられると、Eのワールド座標（xＥ,yＥ,zＥ）は、下記（１）式で表すことができ、グラフ化すると、図２５のようになる。
【００５３】
【数１】
2005208867.tif 000003
【００５４】
ベクトルＥＯ（−ＥＯ）方向はビューイング‐ディレクション（視線の方向）と呼ばれる。原点がEであるアイ座標系は図２６のようになる。
【００５５】
ところで、ワールド座標系（xｗ,yｗ, zｗ）をアイ座標系（xｅ,yｅ,zｅ）に変換するためにはビューイングマトリックスＶが必要で、下記（２）式が成り立つ。
【００５６】
【数２】
2005208867.tif 000004
【００５７】
従って、ワールド座標（xｗ,yｗ, zｗ）が与えられ、行列Ｖが求められれば、アイ座標（xｅ,yｅ,zｅ）が獲得できる。ところで、原点をＯからＥに移動させた場合、行列Ｔは下記（３）式のようになる。また、そのときの座標系は図２７のようになる。
【００５８】
【数３】
2005208867.tif 000005
【００５９】
ここで、図を回転させる場合の座標の処理方法について説明する。まずＺ軸を中心に回転する、すなわち、像が横回転する場合を考える。
【００６０】
座標系を、ｚ軸の回りをθだけ回転させると、この回転による行列Ｒｚは下記（４）式のようになる。また、座標系は図２８のようになる。なお、図２８では、原点を移動した後にθ＋９０°だけｚ軸について座標系を回転させている。
【００６１】
【数４】
2005208867.tif 000006
【００６２】
次ぎにｘ軸の回りを回転する、すなわち、オブジェクトが縦回転する場合を考える。座標系を、ｘ軸の回りをφだけ回転させると、この回転による行列Ｒｘは下記（５）式のようになる。また、座標系は図２９のようになる。なお、図２９では、原点を移動した後にφだけｘ軸について座標系を回転させている。
【００６３】
【数５】
2005208867.tif 000007
【００６４】
オブジェクトに対し、ｚ軸とｘ軸、すなわち、前後左右複合の回転を加える場合は、ｚ軸の回転後に、ｘ軸について回転させる。その結果、前記の図２６のようなxｅ,yｅ,zｅをもつアイ座標系が出来上がる。以上の行列Ｔ,Ｒz,Ｒxの乗算で、下記（６）式のようなビューイングマトリックスＶを得る。この行列Ｖを式（２）に代入することでワールド座標（xｗ,yｗ, zｗ）からアイ座標（xｅ,yｅ,zｅ）を獲得することができる。
【００６５】
【数６】
2005208867.tif 000008
【００６６】
次ぎに、本発明の３次元コンピュータグラフィックモデリング手法において、２次元表示に遠近法を取り入れる手法について説明する。上記アイ座標系へ変換を行った後、パースペクティブトランスフォーメーション（遠近法による変換）を行う。
【００６７】
遠近法の効果は、物体と目との間の距離に反比例する。目と物体が近ければ、遠近法の効果は強くなり、物体は大きく見える。物体が遠くにある場合、物体は小さく見える。
【００６８】
遠近法によりスクリーン座標を求める原理について、図３０により説明する。図３０で、まずアイ座標が（0,0,-d）である点Qを選ぶ。ただし、ｄは正である。
【００６９】
視点からみると、アイ座標系におけるスクリーンはｚ＝−ｄ平面にある。すなわち、その平面はＱを通り、ｚ軸に垂直である。そのとき、スクリーン座標系は原点がＱとなり、スクリーン座標系のＸ軸、Ｙ軸はアイ座標系のｘ、ｙ軸と平行となる。図３０でｘを求めるために、ｙの値が０である点Pを新たに置く。
【００７０】
図３０において、三角形ＥＰＲとＥＰ‘Ｑは相似であることを利用して下記（７）式、（８）式を得る。
【００７１】
【数７】
2005208867.tif 000009
【００７２】
【数８】
2005208867.tif 000010
【００７３】
同様にして下記（９）式を得る。
【００７４】
【数９】
2005208867.tif 000011
【００７５】
スクリーン座標系（Ｘ，Ｙ）の原点Ｑがスクリーンの中心に置かれれば、式（８）、式（９）が使われる。視点Ｅとスクリーン、およびスクリーンに投影されるオブジェクトの関係を図３１に示す。
【００７６】
視点Ｅとスクリーンとの間の距離ｄと、三角形EP’１P’２とEP１P２の相似から下記式（１０）を得る。
【００７７】
【数１０】
2005208867.tif 000012
【００７８】
上記式において、視点とスクリーンとの間の距離ρは既知であり、かつ３次元モデルから、オブジェクトのサイズと奥行きが既に求められているから、これらの値を式（１０）に代入して、スクリーン上のイメージの座標を求めることができる。
【００７９】
具体的には、次の手順で行う。
（１）立体の前面の各頂点Pに番号をつけ、各頂点の座標(DF,DB,Tx,Ty)を指定する。
（２）DFとDBと同じ値を持つ場合は、（DF,Tx,Ty）あるいは(DB,Tx,Ty)一回だけ変換する。
（３）DFとDBが異なった場合、（DF,Tx,Ty）と(DB,Tx,Ty)それぞれを変換する。
（４）最後に、前面エッジリスト及び裏面エッジリストに従って、各エッジ（辺）の始点番号と終点番号を指定した頂点同士を線で結んで物体を描画する。
（５）円、円柱、円錐の場合は、円の位置座標と円周を分割した座標（FD,Tｘ,Tｙ）を以上の手順で変換と線引きを行う。球の場合は、球のカット数と三つの軸半径に従って球座標系における三つの座標値(x,y,z)を計算し、以上の手順で変換と線引きを行う。  
【００８０】
以上の変換によって、３次元アイ座標を２次元スクリーン座標へ変換し、遠近法による変換が完了する。また、３次元ワールド座標は２次元スクリーン座標へ変換され、３次元オブジェクトを２次元で表現することができる。
【００８１】
本発明のシステムでは、好ましくは、図形を回転させることができる。回転は、図８に示したように、横回転、縦回転、横縦同時回転、指定された任意直線軸の回りを回転する任意軸回転、回転の一時停止等を行うためのボタンが設けられていてもよい。具体的には、φを増加すると上向きに回転し、減少すると下向きに回転する。また、θを増加すると左向きに回転し、減少すると右向きに回転する。また、回転速度も調整できるよう、回転速度可変ボタンが設けられていてもよい。
【００８２】
本発明のシステムでは、好ましくは、図形のスケールを拡大し、あるいは縮小させることができる。３次元図形回転画面上にスケールボタンとスケール調節画面が設けられていてもよい。図形のスケール調節に従って得られた３次元図形は回転しながら、拡大されたり、縮小されたりして遠近法の効果を一層高めることが好ましい。視点Ｅとスクリーンとの間の距離変数ｄの変化により、図形のスケール変形、即ち図形の拡大及び縮小を回転とともに実行できる。調節値が小さければ、ｄが増加して図形が拡大され、逆に、調節値が大きければ、ｄが減少し図形が縮小される。
【００８３】
本発明のシステムは３次元コンピュータ・グラフィックス教育用でもありうるため、得られた３次元モデルの図形の画面は、ディスプレイの全画面に拡大させ、あるいはディスプレイの４分の１に縮小させるためのボタンが設けられていてもよい。
【００８４】
また、得られた３次元モデル画面の、オブジェクト全体、面、線の色、背景色等の色を自由に設定することができる色調整ボタンが設けられていてもよい。例えば、３つのスクロールバーを設けて赤、緑、青の度合いを調整することもできる。更に輝度ボタンを設けることにより、画面全体、背景、あるいはオブジェクト明るさ、暗さを変えることができる。
【００８５】
以上の方法で作成した絵データは、保存することができる。保存は周知の如く、例えば、パソコンのＲＯＭ，ＣＤ−ＲＯＭ、ＭＯ，フレキシブルディスク、フラッシュメモリー、サーバー等のハードウエアで行うことができる。
また、保存した図形ファイルを開いて図形を再び表示することもできる。
【００８６】
本発明のシステムには、他の一般的なシステムと同様、システム開始、データリセット、システム終了等の機能が具備されている。
【実施例】
【００８７】
次ぎに、本発明の３次元コンピュータ・グラフィックス・モデリング・システムを用いて得た立体的図形を例示するが、本発明はこれらの実施例になんら制約されるものではない。なお、これらはいずれも本システム用いて作図し、描画した３次元図形である。
【００８８】
（実施例１／直方体）
上述の図３の入力画面を用いて直方形を作図し、図５の奥行きデータ入力画面上の初期値をそのまま利用して、表現されたワイヤーフレームモデルを図３２に示す。
【００８９】
（実施例２／一部が欠けた立方体）
図３の入力画面を用いて直方形と三角形を作図し、奥行きデータ入力画面、前面エッジと裏面エッジ決定画面の値を修正した。得られたワイヤーフレームモデルを図３３に示す。
【００９０】
（実施例３／三角錐）
図３４の２次元前面形状を描画し、 図３５に示したように奥行きデータを指定した。得られた三角錐のワイヤーフレームモデルを図３６に示す。
【００９１】
（実施例４／四角錐）
図３７の２次元前面形状を描画し、 図３８に示したように奥行きデータを指定した。得られた四角錐のワイヤーフレームモデルを図３９に示す。
【００９２】
（実施例５／８つの稜の一部が欠けている立方体）
図１０〜図１５と同様の手順で、前面２次元形状の描画、奥行きデータ入力、前面エッジの編集、裏面エッジの編集を行った。得られた８つの稜の一部が欠けている立方体のワイヤーフレームモデルを図４０に示す。
【００９３】
（実施例６／多面体）
この例は、前面の同一位置に複数の頂点がある多面体の例である。まず、前面２次元形状の描画入力画面において、一つの正方形を作図した。次に、正方形のそれぞれの頂点において、一回クリックをすることにより前面から見て同じ位置に３個の頂点を発生させる。さらに、上記実施例と同様にして各頂点の奥行きデータを入力し、前面エッジの編集、裏面エッジの編集を行った。得られた奥行き方向複数辺と面を持つ多面体のワイヤーフレームモデルを図４１に示す。
【００９４】
（実施例７／星型角柱）
図３の入力画面を用いて星形を作図した。図５の奥行きデータ入力画面上の初期値をそのまま利用した。得られた星型角柱のワイヤーフレームモデルを図４２に示す。
【００９５】
（実施例８／楕円柱）
図１６の円入力画面上において、前面の円の横半径を１０、縦半径を５、裏面の円の横半径を５、縦半径を１０としてチョイスメニューで指定した。得られた楕円柱のワイヤーフレームモデルを図４３に示す。
【００９６】
（実施例９／ドーナツ状円筒）
図１６の円入力画面上において、円柱の長さを５に改め、内径を５に指定する以外、前面の円の横半径と縦半径と、裏面の円の横半径と縦半径とは、チョイスメニュー上の初期値をそのまま利用した。得られたドーナツ状円筒のワイヤーフレームモデルを図４４に示す。
【００９７】
（実施例１０／カット数を１２とする球）
図１６の円入力画面上において、球のx軸半径、y軸半径、z軸半径はチョイスメニュー上の初期値をそのままに利用し、球のカット数を１２に指定した。得られたカット数を１２とする球のワイヤーフレームモデルを図４５に示す。
【００９８】
（実施例１１／立方体と四角錐の合成）
図３の入力画面を用いて正方形と三角形を作図し、図５の奥行きデータ入力画面上において三角形の上の頂点のDFとDB値をともに0に修正し、ほかの頂点のDFとDBの初期値はそのままにした。得られた立方体と四角錐の合成物のワイヤーフレームモデルを図４６に示す。
【００９９】
（実施例１２／ハウス型）
図３の入力画面を用いてハウス型の前面を作図し、図５の奥行きデータ入力画面上の初期値はそのまま利用した。得られたハウス型のワイヤーフレームモデルを図４７に示す。
【０１００】
（実施例１３／複数の四角錘の合成）
上記と同様の手順で、長方形を描画入力し、更に辺の編集を行って複数の四角錐を作成した。得られたワイヤーフレームモデルを図４８に示す。
【０１０１】
（実施例１４／複数の直方体の合成）
上記と同様の手順で、複数の正方形の描画入力し、更に辺の編集を行った。得られたワイヤーフレームモデルを図４９に示す。
【０１０２】
（実施例１５／複数の直方体の合成）
上記と同様の手順で、台形四辺形と長方形を描画入力し、更に奥行き情報入力と辺の編集を行った。得られたワイヤーフレームモデルを図５０に示す。
【産業上の利用可能性】
【０１０３】
本発明の３次元コンピュータ・グラフィックス・モデリング・システムは、構成が簡単なため、安価な製作が可能で、かつその操作が簡単で容易に理解できるため、簡単な図形のイメージ把握のため、一般のコンピュータ・グラフィックス愛好者向け、あるいは、立体図形を簡単に描かれることで、３次元コンピュータ・グラフィックスの教育用ソフトとして有用であり、とりわけ小中高学生が簡便に使用する絵描きソフトとしても有用である。
【図面の簡単な説明】
【０１０４】
【図１】図１は、多面体のワイヤーフレームモデルの１例である。
【図２】図２は、図1の多面体について従来のモデリングシステムで用いられるデータリストの１例である。
【図３】図３は、前面の２次元形状を描画入力するための画面の１例である。
【図４】図４は、図１に示したオブジェクトの前面２次元形状の描画入力画面である。
【図５】図５は、奥行き決定方向データ決定画面の１例である。
【図６】図６は、前面エッジ編集画面の１例である。
【図７】図７は、裏面エッジ編集画面の１例である。
【図８】図８は、図１の多面体の３次元オブジェクト表現・回転画面の１例である。
【図９】図９は、図１に示した多面体の入力データ一覧表示画面の１例である。
【図１０】図１０は、多面体の３次元オブジェクトの１例である。
【図１１】図１１は、図１０の３次元オブジェクトを得るための２次元描画画面である。
【図１２】図１２は、図１０の３次元オブジェクトを得るための奥行き方向決定画面の初期画面である。
【図１３】図１３は、図１０の３次元オブジェクトを得るための奥行き方向決定画面の修正画面である。
【図１４】図１４は、図１０の３次元オブジェクトを得るための前面辺編集画面の初期画面である。
【図１５】図１５は、図１０の３次元オブジェクトを得るための前面辺編集画面の修正画面である。
【図１６】図１６は、円、円柱拘束条件入力画面の１例である。
【図１７】図１７は、本発明のシステムで作成された円筒の３次元オブジェクトである。
【図１８】図１８は、本発明のシステムで作成された円錐の３次元オブジェクトである。
【図１９】図１９は、本発明のシステムで作成されたドーナツ状円柱の３次元オブジェクトである。
【図２０】図２０は、変形させた円柱の３次元モデルの１例である。
【図２１】図２１は、変形させた円柱の３次元モデルの１例である。
【図２２】図２２は、本発明のシステムで作成された球の３次元オブジェクトの１例である。
【図２３】図２３は、本発明のシステムで作成された楕円球の３次元オブジェクトの１例である。
【図２４】図２４は、ワールド座標のスクリーン座標へのマッピングの手順を示した工程表である。
【図２５】図２５は、ワールド座標でビューポイントを示したグラフである。
【図２６】図２６は、原点がEであるアイ座標を示したグラフである。
【図２７】図２７は、アイ座標を示したグラフである。
【図２８】図２８は、ｚ軸を中心にθ＋９０°回転させたときの座標系を示すグラフである。
【図２９】図２９は、ｘ軸を中心にψ＋９０°回転させたときの座標系を示すグラフである。
【図３０】図３０は遠近法によりスクリーン座標を求める原理を説明するための説明図である。
【図３１】図３１は、視点とスクリーンに投影されるオブジェクトとスクリーンとの関係を示した図である。
【図３２】図３２は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図３３】図３３は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図３４】図３４は、図３６の３次元ワイヤーフレームモデルを得るための前面描画画面である。
【図３５】図３５は、図３６の３次元ワイヤーフレームモデルを得るための奥行き方向決定画面である。
【図３６】図３６は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図３７】図３７は、図３９の３次元ワイヤーフレームモデルを得るための前面描画画面である。
【図３８】図３８は、図３９の３次元ワイヤーフレームモデルを得るための奥行き方向決定画面である。
【図３９】図３９は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図４０】図４０は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図４１】図４１は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図４２】図４２は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図４３】図４３は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図４４】図４４は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図４５】図４５は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図４６】図４６は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図４７】図４７は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図４８】図４８は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図４９】図４９は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図５０】図５０は、本発明のシステムで作成した３次元ワイヤーフレームモデルの１例である。
【図１】
2005208867.tif 000013
【図２】
2005208867.tif 000014
【図３】
2005208867.tif 000015
【図４】
2005208867.tif 000016
【図５】
2005208867.tif 000017
【図６】
2005208867.tif 000018
【図７】
2005208867.tif 000019
【図８】
2005208867.tif 000020
【図９】
2005208867.tif 000021
【図１０】
2005208867.tif 000022
【図１１】
2005208867.tif 000023
【図１２】
2005208867.tif 000024
【図１３】
2005208867.tif 000025
【図１４】
2005208867.tif 000026
【図１５】
2005208867.tif 000027
【図１６】
2005208867.tif 000028
【図１７】
2005208867.tif 000029
【図１８】
2005208867.tif 000030
【図１９】
2005208867.tif 000031
【図２０】
2005208867.tif 000032
【図２１】
2005208867.tif 000033
【図２２】
2005208867.tif 000034
【図２３】
2005208867.tif 000035
【図２４】
2005208867.tif 000036
【図２５】
2005208867.tif 000037
【図２６】
2005208867.tif 000038
【図２７】
2005208867.tif 000039
【図２８】
2005208867.tif 000040
【図２９】
2005208867.tif 000041
【図３０】
2005208867.tif 000042
【図３１】
2005208867.tif 000043
【図３２】
2005208867.tif 000044
【図３３】
2005208867.tif 000045
【図３４】
2005208867.tif 000046
【図３５】
2005208867.tif 000047
【図３６】
2005208867.tif 000048
【図３７】
2005208867.tif 000049
【図３８】
2005208867.tif 000050
【図３９】
2005208867.tif 000051
【図４０】
2005208867.tif 000052
【図４１】
2005208867.tif 000053
【図４２】
2005208867.tif 000054
【図４３】
2005208867.tif 000055
【図４４】
2005208867.tif 000056
【図４５】
2005208867.tif 000057
【図４６】
2005208867.tif 000058
【図４７】
2005208867.tif 000059
【図４８】
2005208867.tif 000060
【図４９】
2005208867.tif 000061
【図５０】
2005208867.tif 000062
【手続補正書】
【提出日】平成16年1月29日(2004.1.29)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００５３
【補正方法】変更
【補正の内容】
【００５３】
【数１】
2005208867.tif 000063
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００５８
【補正方法】変更
【補正の内容】
【００５８】
【数３】
2005208867.tif 000064
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００６１
【補正方法】変更
【補正の内容】
【００６１】
【数４】
2005208867.tif 000065
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００６３
【補正方法】変更
【補正の内容】
【００６３】
【数５】
2005208867.tif 000066
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００６５
【補正方法】変更
【補正の内容】
【００６５】
【数６】
2005208867.tif 000067
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００７１
【補正方法】変更
【補正の内容】
【００７１】
【数７】
2005208867.tif 000068
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００７２
【補正方法】変更
【補正の内容】
【００７２】
【数８】
2005208867.tif 000069
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００７４
【補正方法】変更
【補正の内容】
【００７４】
【数９】
2005208867.tif 000070