(57)【特許請求の範囲】
【請求項１】
三次元モデルの組立てに必要な前記部品モデルを複数格納した部品格納部と、
他の部品モデルに接合するための接合基準データを有する三次元の部品モデルを作成する部品モデル作成部と、
前記部品格納部から少なくとも２つの部品モデルを選択して作業座標空間に配置し、前記接合基準データに基づいて各部品モデル同士を接合して前記三次元モデルを組み立てる組立処理部とを備え、
前記部品モデル作成部は、前記部品モデルの三次元形状データに三点以上の三次元座標値を前記接合基準データとして付加すると共に、前記複数の接合基準点データの回転方向を決める順位情報を付加し、
前記組立処理部は、各部品モデルの複数の接合基準データにおける三次元座標値と回転方向の順位情報が各々一致するように各部品モデルを接合させることを特徴とする三次元モデル作成装置。
【請求項２】
請求項１記載の三次元モデル作成装置に於いて、
三点以上の三次元座標は正多角形データとし、
前記組立処理部は、各部品モデルの正多角形データが一致するように各部品モデルの三次元形状データを変更して各部品モデルを接合させることを特徴とする三次元モデル作成装置。
【請求項３】
請求項２記載の三次元モデル作成装置に於いて、前記組立処理部は、前記正多角形データの角数で決まる回転角単位に回転方向でオフセットさせて各部品モデル同士を接合させることを特徴とする三次元モデル作成装置。
【請求項４】
三次元モデルの組立てに必要な部品モデルとして、他の部品モデルに接合するための接合基準データを有する三次元の部品モデルを複数格納した部品格納部と、
前記部品格納部から少なくとも２つの部品モデルを選択して作業座標空間に配置し、前記接合基準データに基づいて各部品モデル同士を接合して前記三次元モデルを組み立てる組立処理部とを備え、
前記部品収納部の部品モデルは、部品モデルの三次元形状データに三点以上の三次元座標値を前記接合基準データとして付加すると共に、前記複数の接合基準点データの回転方向を決める順位情報を付加しており、
前記組立処理部は、各部品モデルの複数の接合基準データにおける三次元座標値と回転方向の順位情報が各々一致するように各部品モデルを接合させることを特徴とする三次元モデル作成装置。
【請求項５】
請求項４記載の三次元モデル作成装置に於いて、
三点以上の三次元座標は正多角形データとし、
前記組立処理部は、各部品モデルの正多角形データが一致するように各部品モデルの三次元形状データを変更して各部品モデルを接合させることを特徴とする三次元モデル作成装置。
【請求項６】
請求項５記載の三次元モデル作成装置に於いて、
前記組立処理部は、前記正多角形データの角数で決まる回転角単位に回転方向でオフセットさせて各部品モデル同士を接合させることを特徴とする三次元モデル作成装置。
【請求項７】
部品格納部に、三次元モデルの組立てに必要な前記部品モデルを複数格納し、
部品モデル作成部により、部品モデルの三次元形状データに三点以上の三次元座標値を他の部品モデルに接合するための接合基準データとして付加すると共に、前記接合基準点データの回転方向を決める順位情報を付加して三次元の部品モデルを作成し、
組立処理部により、前記部品格納部から少なくとも２つの部品モデルを選択して作業座標空間に配置し、各部品モデルの複数の接合基準データにおける三次元座標値と回転方向の順位情報が各々一致するように各部品モデル同士を接合することを特徴とする三次元モデル作成方法。
【請求項８】
請求項７記載の三次元モデル作成方法に於いて、
三点以上の三次元座標は正多角形データとし、
前記組立処理部により、各部品モデルの正多角形データが一致するように各部品モデルの三次元形状データを変更して各部品モデルを接合させることを特徴とする三次元モデル作成方法。
【請求項９】
請求項８記載の三次元モデル作成方法に於いて、
前記組立処理部により、前記正多角形データの角数で決まる回転角単位に回転方向でオフセットさせて各部品モデル同士を接合させることを特徴とする三次元モデル作成方法。
【請求項１０】
部品格納部により、三次元モデルの組立てに必要な部品モデルの三次元形状データに三点以上の三次元座標値を他の部品モデルに接合するための接合基準データとして付加すると共に、前記複数の接合基準点データの回転方向を決める順位情報を付加した三次元の部品モデルを複数格納し、
組立処理部により前記部品格納部から少なくとも２つの部品モデルを選択して作業座標空間に配置し、各部品モデルの複数の接合基準データにおける三次元座標値と回転方向の順位情報が各々一致するように各部品モデル同士を接合して前記三次元モデルを組み立ることを特徴とする三次元モデル作成方法。
【請求項１１】
請求項１０記載の三次元モデル作成方法に於いて、
三点以上の三次元座標は正多角形データとし、
前記組立処理部は、各部品モデルの正多角形データが一致するように各部品モデルの三次元形状データを変更して各部品モデルを接合させることを特徴とする三次元モデル作成方法。
【請求項１２】
請求項１１記載の三次元モデル作成方法に於いて、
前記組立処理部は、前記正多角形データの角数で決まる回転角単位に回転方向でオフセットさせて各部品モデル同士を接合させることを特徴とする三次元モデル作成方法。
【請求項１３】
コンピュータに、
三次元モデルの組立てに必要な前記部品モデルを複数格納する部品格納手順と、
部品モデルの三次元形状データに三点以上の三次元座標値を他の部品モデルに接合するための接合基準データとして付加すると共に、前記接合基準点データの回転方向を決める順位情報を付加して三次元の部品モデルを作成する部品モデル作成手順と、
前記部品格納部から少なくとも２つの部品モデルを選択して作業座標空間に配置し、各部品モデルの複数の接合基準データにおける三次元座標値と回転方向の順位情報が各々一致するように各部品モデル同士を接合する組立処理手順と、
を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１４】
請求項１３記載の三次元モデル作成媒体に於いて、
三点以上の三次元座標は正多角形データとし、
前記組立処理手順は、各部品モデルの正多角形データが一致するように各部品モデルの三次元形状データを変更して各部品モデルを接合させることを特徴とする三次元モデル作成媒体。
【請求項１５】
請求項１４記載の三次元モデル作成媒体に於いて、
前記組立処理手順は、前記正多角形データの角数で決まる回転角単位に回転方向でオフセットさせて各部品モデル同士を接合させることを特徴とする三次元モデル作成媒体。
【請求項１６】
コンピュータに、
三次元モデルの組立てに必要な部品モデルの三次元形状データに三点以上の三次元座標値を他の部品モデルに接合するための接合基準データとして付加すると共に、前記複数の接合基準点データの回転方向を決める順位情報を付加した三次元の部品モデルを複数格納する部品格納手順と、
前記部品格納部から少なくとも２つの部品モデルを選択して作業座標空間に配置し、各部品モデルの複数の接合基準データにおける三次元座標値と回転方向の順位情報が各々一致するように各部品モデル同士を接合して前記三次元モデルを組み立る組立処理手順と、を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１７】
請求項１６記載の三次元モデル作成媒体に於いて、
三点以上の三次元座標は正多角形データとし、
前記組立処理手順は、各部品モデルの正多角形データが一致するように各部品モデルの三次元形状データを変更して各部品モデルを接合させることを特徴とする三次元モデル作成媒体。
【請求項１８】
請求項１７記載の三次元モデル作成媒体に於いて、
前記組立処理手順は、前記正多角形データの角数で決まる回転角単位に回転方向でオフセットさせて各部品モデル同士を接合させることを特徴とする三次元モデル作成媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータ・グラフィックス（ＣＧ）により三次元モデルを作成する三次元モデル作成装置及び方法並びに三次元モデル作成プログラムを記録したコンピュータ読み取り可能な記録媒体に関し、特に、部品モデルの組立てにより三次元モデルを作成する三次元モデル作成装置及び方法並びに三次元モデル作成プログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【０００２】
【従来の技術】
近年、コンピュータシステムのマルチメディア化によりポリゴン等を使用した三次元コンピュータ・グラフィックスが一般化し、コンピュータ・グラフィックスに関する深い知識と経験がなくとも、簡単に品質の高い三次元モデルが作成できるシステムが要求されている。
【０００３】
このように三次元モデルを容易に生成する従来方法として例えば特開平７−１７５９４４号の「三次元モデルの配置方法」が知られている。
この三次元モデルの配置方法は、まず生成すべき三次元モデルの側面図、正面図、平面図等の二次元多面図を表示し、二次元多面図上で各図に共通する基準点をオペレータが指定すると共に、指定した基準点の三次元空間上での位置をオペレータが座標値の入力または画面上てのカーソルセット等により指定する。これにより三次元空間の指定した基準点に合わせて二次元の側面図、正面図、平面図が順次表示され、それぞれ横方向、奥行き方向及び上方向に掃引して立体に肉付けされ、３つの立体の論理積処理により三次元モデルを作成している。
【０００４】
また作成した三次元モデルに別の部品モデルを組み付ける場合には、部品モデルの側面図、正面図、平面図等の二次元多面図を表示し、オペレータが二次元多面図上で各図に共通する基準点を指定すると共に、指定した基準点の三次元空間上でのモデルへの組付け位置をオペレータが目視等により検出して指定する。
これにより三次元空間の指定した基準点に合わせて組付け部品の側面図、正面図、平面図が順次表示され、それぞれ横方向、奥行き方向及び上方向に掃引して立体に肉付けされ、３つの立体の論理積処理により三次元部品モデルを作成して組み付けている。
【０００５】
【発明が解決しようとする課題】
しかしながら、このような従来の三次元モデルの作成処理にあっては、三次元の座標空間に二次元多面図を表示した状態での掃引により立体を生成して論理積をとるという三次元モデルの生成と組付けの同時操作の繰り返しによって三次元モデルを組み立てていため、部品数が多くなると三次元モデルの作成に非常に時間がかかるとい問題がある。
【０００６】
また部品モデルの組付け位置は、組立途中にある三次元モデルについてオペレータがその都度組付け位置を目視で判断しながら基準点の三次元座標値として指定しており、位置ずれ誤差が比較的大きく、正確な三次元モデルの組立てが期待できない。そのため組付け後にオペレータが組付け部品の位置ずれを調整する作業が必要であり、このために更に多くの手間と時間がかかっている。
【０００７】
本発明は、このような従来の問題点に鑑みてなされたもので、部品モデルの組立てによって三次元モデルを簡単且つ正確に作成できるようにした三次元モデル作成装置及び方法並びに三次元モデル作成プログラムを記録したコンピュータ読取可能な記録媒体を提供することを目的とする。
【０００８】
【課題を解決するための手段】
図１は本発明の原理説明図である。本発明の三次元モデル作成装置は、図１（Ａ）のように、他の部品モデルに接合するための接合基準データを有する三次元の部品モデルを作成する部品モデル作成部１０と、三次元モデルの組立てに必要な部品モデルを複数格納した部品格納部１４と、部品格納部１４から図１（Ｂ）のように、少なくとも２つの部品モデル３０，４６を選択して作業座標空間に配置し、接合基準データで指定される接合基準点３２，４８に基づいて各部品モデル３０，４６同士を図１（Ｃ）のように接合して三次元モデルを組み立てる組立処理部１８とを備える。
【０００９】
このように本発明の三次元モデル作成装置は、部品となるモデルを予め用意し、部品モデルを画面上で組み立てることで最終的なモデルを完成させており、部品の作成と部品の組立てが完全に分離されているため、オペレータの作業負担が低減し、作業時間が短縮できる。
また用意される部品モデルには、三次元形状データ以外に部品同士の接合位置を定義した接合基準データを付加しており、この接合基準データの指定による接合基準点で位置合せするように部品同士が接合するため、オペレータは基本的に部品を選択して作業空間に配置するだけで、正確な部品モデルの組付けが正確且つ容易にできる。
【００１０】
部品モデル作成部１０は、基本的には、部品モデルの三次元形状データに一点の三次元座標値を接合基準データとして追加し、組立処理部１８は、各部品モデルの接合基準の三次元座標値が一致するように各部品モデルの三次元形状データを変更して各部品モデルを接合させる。
また部品モデル作成部１０は、部品モデルの三次元形状データに二点の三次元座標値を前記接合基準データとして追加し、この場合、組立処理部は、各部品モデルの二点の接合基準の三次元座標値が各々一致するように各部品モデルの三次元形状データを変更して各部品モデルを接合させる。
【００１１】
更に、部品モデル作成部１０は、部品モデルの三次元形状データに三点の三次元座標値を接合基準データとして追加し、この場合、組立処理部１８は、各部品モデルの三点の接合基準の三次元座標値が各々一致するように各部品モデルの三次元形状データを変更して各部品モデルを接合させる。
ここで部品モデル作成部１０は、接合基準データを三次元部品モデルの表面、内部又は外部に必要に応じて設けることができる。即ち、接合基準データは、部品モデルの三次元形状データから独立して持つことができるため、部品モデルの表面のみならず、モデル内部に設定することで部品同士が重なるように位置合せしたり、またモデル外部に設定することでモデル同士が僅かに離れているように位置合せもできる。
【００１２】
部品モデル作成部１０は、部品モデル毎に固有のＩＤを設定し、この場合、組立処理部１８は、部品モデルのＩＤを使用して部品モデルの接合関係を定義したＩＤテーブルを作成し、このＩＤテーブルで定義された部品モデル同士を選択して接合させることにより三次元モデルを自動組立てする。
部品モデル作成部１０は、部品モデルの三次元形状データに三点以上の三次元座標値を接合基準データとして追加すると共に、前数の接合基準データの回転方向を決める順位情報を追加する。この場合、組立処理部１８は、各部品モデルの複数の接合基準データにおける三次元座標値と回転方向の順位情報が各々一致するように各部品モデルを接合させる。
【００１３】
部品モデル作成部１０は、部品モデルの三次元形状データに正多角形データを前記接合基準データとして追加し、この場合、組立処理部１８は、各部品モデルの正多角形データが一致するように各部品モデルの三次元形状データを変更して各部品モデルを接合させる。また組立処理部１８は、正多角形データの角数で決まる回転角単位に回転方向でオフセットさせて各部品モデル同士を接合させることができる。
【００１４】
部品モデル作成部１０は、部品モデルの三次元形状データに、接合基準データとして接合面データを追加し、この場合、組立処理部１８は、各部品モデルの接合面データが一致するように部品モデルの三次元形状データを変更して各部品モデルを接合させる。
即ち、部品モデル作成部１０は、接合面データとして三次元形状データの指定したポリゴン面情報を使用し、組立処理部１８は、各部品モデルの指定したポリゴセン面が一致するように部品モデルの三次元形状データを変更して各部品モデルを接合させる。このように接合基準データとして部品モデルの接合面データ（ポリゴン面情報）を使用した場合には、新たに接合基準データを生成する必要がない分、簡単にできる。
【００１５】
部品モデル作成部１０は、接合面データに加えて他の部品モデルに接合した際の接合角度のオフセット情報を追加し、組立処理部１８は、各部品モデルを接合した際に接合角度のオフセット情報に基づいて部品モデル同士の接合角度を設定する。
部品モデル作成部１０は、接合面データに加えて他の部品モデルに接合する際の接合方向を示す接合方向情報を追加し、組立処理部１８は、各部品モデルを接合する際に接合方向情報に基づいて部品モデル同士を接合させる。
【００１６】
組立処理部１８は、作業用座標空間に組立対象とする少なくとも２つの部品モデルを配置した状態で、いずれか一方の部品モデルを移動して基準接合点同士を位置合せすることで部品モデルを接合する。
部品モデル作成部１０は、接合基準データ毎に他の部品モデルとの自動接合を許容する接合許容領域を設定し、この場合、組立処理部１８は、作業用座標空間に組立対象とする少なくとも２つの部品モデルを配置した状態で、いずれか一方の部品モデルを移動して他方の部品モデルの接合許容領域に近づいた際に、部品モデルを接合させる。
【００１７】
本発明による三次元モデル作成装置の変形にあっては、図１（Ａ）の部品モデル作成部１０を除き、部品モデル格納部１４と組立処理部１８で構成する。部品格納部１４に格納された三次元の部品モデルは、他の部品モデルに接合するための接合基準データを有し、その詳細は部品モデル作成部１０を設けた場合と基本的に同じである。
【００１８】
また本発明は三次元モデル組立方法を提供するもので、
三次元モデルの組立に必要な部品モデルとして、他の部品モデルに接合するための接合基準データを有する三次元の部品モデルを作成して部品格納部１４に格納する部品作成過程；
部品格納部１４から少なくとも２つの部品モデルを選択して作業座標空間に配置し、接合基準データに基づいて各部品モデル同士を接合して三次元モデルを組み立てる組立処理過程；
を備える。
【００１９】
本発明の三次元モデル組立方法の変形にあっては、三次元モデルの組立てに必要な部品モデルとして、他の部品モデルに接合するための接合基準データを有する三次元の部品モデルを格納した部品格納部から、少なくとも２つの部品モデルを選択して作業座標空間に配置し、接合基準データに基づいて各部品モデル同士を接合して前記三次元モデルを組み立てることを特徴とする。
【００２０】
更に、本発明は、三次元モデル作成プログラムを記録したコンピュータ読み取り可能な記録媒体を提供するもので、三次元モデルの組立てに必要な部品モデルとして、他の部品モデルに接合するための接合基準データを有する三次元の部品モデルを作成して部品格納部１４に格納する部品作成モジュールと、部品格納部１４から少なくとも２つの部品モデルを選択して作業座標空間に配置し、接合基準データに基づいて各部品モデル同士を接合して三次元モデルを組み立てる組立処理モジュールとを備えたことを特徴とする。
【００２１】
三次元モデル作成プログラムを記録したコンピュータ読み取り可能な記録媒体の変形にあっては、三次元モデルの組立てに必要な部品モデルとして、他の部品モデルに接合するための接合基準データを有する三次元の部品モデルを格納した部品格納部から少なくとも２つの部品モデルを選択して作業座標空間に配置し、接合基準データに基づいて各部品モデル同士を接合して三次元モデルを組み立てることを特徴とする。
【００２２】
【発明の実施の形態】
＜目  次＞
１．基本構成
２．一点接合
３．複数点の接合
４．具体的な三次元モデルの作成
１．基本構成
図２は本発明による三次元モデル作成装置の機能構成を示したブロック図である。図２において、本発明の三次元モデル作成装置は、部品モデル作成部１０、部品モデル群１６を格納した部品格納部１４、組立処理部１８、組立途中または組立済みの組立モデル２４を格納する組立モデル格納部２２で構成される。
【００２３】
部品モデル作成部１０は任意の三次元モデルの組立てに必要な部品モデルを作成して、部品モデル群１６として部品格納部１４に格納する。部品モデル作成部１０で部品モデルを作成する際には、作業画面１２を使用した部品座標空間において、ＣＡＤで知られた手法に従ってコンピュータ・グラフィックスにより表示可能な三次元形状データを作成する。
【００２４】
この部品モデルの作成において、本発明にあっては、部品モデルごとに他の部品モデルに接合するための接合基準データを持たせる。部品モデルに持たせる接合基準データは、後の説明で明らかにするように、一点、二点、三点、三点以上、正多角形、接合面等が使用される。
また部品モデルに持たせる接合基準データは、部品モデルの三次元形状データとは切り離して独立に設定される。このため部品モデル同士の接合は、部品モデルの表面のみならず、部品モデルの内部の任意の位置や部品モデルの外側となる外部の位置に、必要に応じて任意に設定することができる。
【００２５】
組立処理部１８は、部品収納部１４に三次元モデルの組立てに必要な全ての部品モデルが部品モデル群１６として格納された状態で起動し、作業画面２０上に部品モデル群１６の中から組立てを必要とする部品を選択して配置することで、各部品モデルの持っている接合基準データに基づく組付け処理を行わせる。
この作業画面２０は、部品モデル作成部１０の作業画面１２で部品モデルを作成した際の部品座標空間とは異なる部品モデル組立てのための共通座標空間となるワールド座標空間を使用している。このため、組立処理部１８で部品格納部１４から任意の部品モデルを選択して作業画面２０のワールド座標空間に配置した場合には、部品座標空間の値を持っている部品モデルの三次元形状データはワールド座標空間の三次元形状データに変換される。
【００２６】
組立処理部１８によりワールド座標空間の作業画面２０を使用して部品モデルの組立てを行って三次元モデルが完成すると、組立モデル格納部２２に組立モデル２４として格納することができる。もちろん、組立途中の組立モデルについても組立モデル格納部２４に一時的に格納し、その後に再び組立処理部１８により作業画面２０に呼び出して、残りの部品モデルの組立てを継続することができる。
【００２７】
更に組立処理部１８は、作業画面２０に組立モデル２４を配置した状態で部品モデルを取り外す分解処理を行うこともできる。分解処理は組立処理とは逆の操作を行うことになる。もちろん、分解済みの部品モデルは部品収納部１４の部品モデル群１６に戻す必要はない。
このような部品モデル作成部１０、部品格納部１４、組立処理部１８及び組立モデル格納部２２が本発明の三次元モデル作成装置の基本的な構成であるが、組立モデル格納部２２に収納された作成済みの三次元組立モデル２４は、通常コンピュータ・グラフィックスの素材としてユーザーが利用することから、組立モデル格納部２２に対しては組立モデル利用部２６が設けられ、組立モデル格納部２２に収納された組立済みの組立モデル２４を使用して利用画面２８上でコンピュータ・グラフィックスを使用したアプリケーションによる表示処理を行うことができる。
【００２８】
また本発明の三次元モデル作成装置をユーザーに提供する場合には、部品モデル群１６を格納した部品格納部１４、組立処理部１８及び組立モデル格納部２２側となり、部品モデル作成部１０はアプリケーション提供者のソフトウェア工場側で使用する部分となる。
即ち本発明の三次元モデル作成装置の提供者は、部品モデル作成部１０を使用して三次元モデルの作成に必要な接合基準データを有する部品モデル群１６を作成して部品格納部１４に格納し、この作成済みの部品モデル群１６を格納した部品格納部１４と共に組立処理部１８の機能を持つアプリケーションをユーザーに提供することになる。
【００２９】
このためユーザーサイドにあっては、部品モデル作成部１０によるコンピュータ・グラフィックスの深い知識に基づいた部品モデルの作成作業を必要とすることなく、アプリケーションにより提供される部品モデル群１６を使用して組立処理部１８で部品モデルの作業画面２０における組立作業を通じて、通常のコンピュータ・グラフィックスの技術で作成したと同等の品質の高い三次元モデルを作成することができる。
【００３０】
図３は図２の三次元モデル作成処理のフローチャートである。まずステップＳ１で、三次元部品モデルを部品モデル作成部１０で作成して部品格納部１４に格納する準備処理を行う。この三次元モデルの準備処理は、通常アプリケーション提供者が準備し、ユーザーに提供することになる。
続いてステップＳ２で、組立処理部１８を起動することにより組立用の作業画面２０を設定し、ステップＳ３で部品モデル群１６に中から組立ての基本となる基本部品モデルを選択して作業画面２０のワールド座標空間に配置する。続いてステップＳ４で、基本部品モデルに対する組付け部品モデルを部品モデル群１６から選択して作業画面２０のワールド座標空間に配置する。
【００３１】
このように作業画面２０のワールド座標空間に２つの部品モデルを配置したならば、ステップＳ５で、予め準備された組付け処理の実行コマンドを操作することで、各部品モデルの持っている接合基準データに基づいて組付け部品モデルを基本部品モデルに組み付ける組付け処理を行う。
組付けが済むと、ステップＳ６で組立終了指示の有無をチェックし、組立終了指示があるまで、ステップＳ４，Ｓ５の組付け処理を繰り返す。組立終了指示があれば、ステップＳ７で組立済みまたは組立途中の三次元組立モデルを組立モデル格納部２２に格納して一連の処理を終了する。
【００３２】
図４は図３のステップＳ１における部品モデル作成部１０による三次元部品モデル準備処理のフローチャートである。まずステップＳ１で、三次元モデルの組立に必要な三次元部品モデルを例えばＣＡＤにおける三次元物体の作成手法を利用して作成する。続いてステップＳ２で、作成した三次元部品モデルに対し予め準備された組立手順に基づいて接合基準データを設定する。接合基準データの設定が済んだならば、ステップＳ３で三次元部品モデル群をディスクファイル等の部品格納部１４に格納する。
２．一点接合
図５は接合基準データを一点として持った部品モデルの説明図である。部品モデル３０は例えば直方体の三次元形状を持っており、図２の部品モデル作成部１０により三次元の部品座標空間において三次元形状データとして作成されている。この部品モデル３０には一点の接合基準データ３２がモデル表面に設定されている。
【００３３】
図６は図５の部品モデル３０を組み付ける基準側（固定側）としての部品モデル４６であり、同じく図２の部品モデル作成部１０により三次元の部品座標空間で作成された三次元形状データに基づいて表示され、モデル表面に一点の接合基準点４８を持っている。
図７は図５の部品モデル３０または図６の部品モデル４６を作業画面に表示するための三次元形状データのデータ構造である。この三次元形状データはポリゴンデータ３４で構成され、この例にあってポリゴンＰ０〜Ｐｎを格納している。ポリゴンＰ０〜Ｐｎは、先頭のポリゴンＰ０に代表して示すように、頂点データ３８で構成される。
【００３４】
例えば、この実施形態にあっては三角形ポリゴンを使用しており、このため頂点データ３８は頂点Ａ０１，Ａ０２，Ａ０３の３頂点で構成される。頂点Ａ０１〜Ａ０３は頂点Ａ０１に代表して右側に示すように、頂点座標４０と色情報４２で構成される。頂点座標４０は三次元座標値（ｘ０１，ｙ０１，ｚ０１）を持つ。また色情報４２は例えばＲＧＢ色空間を例に取ると、（Ｒ０１，Ｇ０１，Ｂ０１）であり、更に光沢情報として（α０１）を設けている。
【００３５】
このようなコンピュータ・グラフィックスにより三次元モデルの表現を可能とする三次元形状データに対し、本発明にあっては、更にポリゴンデータ３４に加えて接合基準データ３６を設けている。図５の部品モデル３０および図６の部品モデル４６にあっては、接合基準データ３６は１つの接合基準点３２，４８であることから、接合基準データ３６の内容は右側に取り出して示すように接合基準点座標値４４であり、座標値（ｘｒ１，ｙｒ２，ｚｒ３）が格納されている。この接合基準点座標値４４は、ポリゴンデータ３４側の頂点座標値４０から切り離されて独立に設定されている。
【００３６】
図８は図２の組立処理部１８によって作業画面２０のワールド座標空間に図５の部品モデル３０と図６の部品モデル４６を選択して配置した組付け前の状態である。この三次元ワールド座標空間に部品座標空間を持った部品モデル３０，４６を配置する際には、部品モデル３０，４６の部品座標空間を作業画面の三次元ワールド座標空間に座標変換して配置している。
【００３７】
図９は図８のように部品モデル３０，４６を三次元ワールド座標空間に配置した際の部品モデルの三次元形状データのデータ構造である。図９（Ａ）が基準側（固定側）となる部品モデル４６の三次元形状データであり、ポリゴンデータ３４−１及び接合基準データ３６−１に加えてワールド座標空間オフセット５０−１を新たに設けている。
【００３８】
このワールド座標空間オフセット５０−１は、図８の三次元ワールド座標空間の原点Ｏに対する部品モデル４６の部品座標空間の原点との差となる三次元座標値であり、例えば右側に取り出して示すように、オフセット座標値５２−１として（ｘｏ１，ｙｏ１，ｚｏ１）を設定している。ポリゴンデータ３４−１におけるポリゴンＰ１０〜Ｐ１ｎのそれぞれの頂点座標値は、ワールド座標空間オフセット５０−１で与えられるオフセット座標値５２−１の（ｘｏ１，ｙｏ１，ｚｏ１）のオフセット値を用いてワールド座標空間の座標値に変換されている。具体的には
（部品座標空間の座標値）＋（オフセット座標値）
となる変換処理を行えばよい。
【００３９】
図９（Ｂ）は図８の組付け側となる部品モデル３０のワールド座標空間における三次元形状データのデータ構造であり、図９（Ａ）の部品モデル４６の場合と同様、ポリゴンデータ３４−２、接合基準データ３６−２及びワールド座標空間オフセット５０−２で構成され、ワールド座標空間オフセット５０−２のオフセット座標値５２−２は、例えば（（ｘｏ２，ｙｏ２，ｚｏ２）となっている。
【００４０】
図１０は図８のように、三次元ワールド座標空間の作業画面に部品モデル３０と部品モデル４６を配置した状態で図２の組立処理部１８により組付け処理を実行した場合の接合状態である。この場合、部品モデル３０を基準側（固定側）の部品モデル４６に組み付ける。この部品モデル４６に対する部品モデル３０の組付けは、図８における部品モデル４６の持つ接合基準点４８に部品モデル３０の持つ接合基準点３２が位置合せするように、組付け側となる部品モデル３０を再配置する。
【００４１】
具体的には、図８の配置状態で部品モデル３０の接合基準点３２と部品モデル４６の接合基準点４８の三次元的な差を、図９（Ａ）の接合基準データ３６−１の接合基準点座標値４４−１と図９（Ｂ）の接合基準データ３６−２の接合基準点座標値４４−２から算出する。即ち、ワールド座標空間における２つの接合基準点３２，４８の差（Ｌｘ，Ｌｙ，Ｌｚ）は、
Ｌｘ＝ｘｒ２−ｘｒ１
Ｌｙ＝ｙｒ２−ｙｒ１
Ｌｚ＝ｚｒ２−ｚｒ１
として求まる。
【００４２】
そして、このようにして算出された２つの接合基準点３２，４８の差（Ｌｘ，Ｌｙ，Ｌｚ）だけ部品モデル３０の三次元座標データの座標値が部品モデル４６側に移動するように座標値を修正することで、図１０のように部品モデル４６の接合基準点４８に部品モデル３０の接合基準点３２を一致させた組付け状態の再配置ができる。即ち、部品モデル４６の接合基準点４８に部品モデル３０の接合基準点３２が一致するように部品モデル３０の三次元形状データの座標値を変換して再配置することで、組付けができる。
【００４３】
尚、図８にあっては、部品モデル３０，３６の接合基準点３２，４８の間隔を三次元ワールド座標空間の原点からの絶対座標で処理しているが、部品モデル３０，４６を作成している部品座標空間での相対座標で処理して接合基準点３２，４８を一致するように再配置した後に、図１０のように再びワールド座標空間に変換するようにしてもよい。
図１１は１点の接合基準データを持つ部品モデルの組付け処理の他の実施形態である。図１１（Ａ）はワールド座標空間に部品モデル３０，４６を配置した組付け前の状態であり、この部品モデル３０，４６にあっては、接合基準点３２，４８をそれぞれモデル内部に設定している。図１１（Ｂ）は部品モデル４６の内部の接合基準点４８に部品モデル３０の内部の接合基準点３２を位置合せするように組付け処理を行ったもので、モデル内部に持たせた接合基準点３２，４８の位置合せによって部品モデル４６に対し部品モデル３０が重なり合うように組み付けることができる。
【００４４】
図１２は接合基準点を部品モデルの外側に設定した場合の組付け処理である。即ち図１２（Ａ）は組付け前のワールド座標空間に部品モデル３０，４６を配置した状態であり、部品モデル４６はモデル正面に接合基準点４８を設定しているが、部品モデル３０にあってはモデル外部の近接した位置に接合基準点３２を設定している。
【００４５】
このようなモデル３０，４６の組付けを行うと、図１２（Ｂ）のように、部品モデル４６の接合基準点４８に部品モデル３０の外側に配置した接合基準点３２が位置合わせするように組付け処理が行われ、その結果、部品モデル４６に所定の間隔を離して部品モデル３０を配置する組付けができる。
図１３は１点の接合基準データを持つ部品モデル同士の組付け処理の他の実施形態であり、三次元ワールド座標空間に基本側（固定側）の部品モデル５４が配置され、部品モデル５４は接合基準点５８を上面に持っている。これに対し六角柱の部品モデル５６が組付け側として選択されて配置され、部品モデル５６は底面に接合基準点６０を持っている。
【００４６】
このようなワールド座標空間に対する部品モデル５４と５６の配置状態で組付け処理を実行すると、部品モデル５４の接合基準点５８に部品モデル５６の接合基準点６０が位置合せするように組付けが行われる。しかしながら、部品モデル５６の接合基準点６０を持つ底面は、部品モデル５４の接合基準点５８を持つ上面に対し傾いており、１つの接合基準点５８，６０の位置合せだけでは傾きが特定されない。
【００４７】
そこで部品モデル５６側の接合基準データに相手部品モデルの接合面に接合した際の接合角度オフセット情報を持たせておき、接合した際にオフセット情報で与えられる角度となるように配置する。例えば図１３の部品モデル５６の接合基準データの接合角度オフセット情報としてθ０＝０°であった場合には、図１４のように、部品モデル５４の接合基準点５８に部品モデル５６の接合基準点６０を位置合せした状態で接合面の成すオフセット角度がθ０＝０°となるように再配置されることで、部品モデル５４の上面に部品モデル５６の底面をそれぞれの接合基準点５８，６０を位置合わせした状態で組み付けることができる。
【００４８】
図１５は図１３の部品モデル５６の三次元形状データであり、ポリゴンデータ３４に続いて設けられた接合基準データ３６の中に、右側に取り出して示すように接合基準点座標値４４に加えて接合角度オフセット情報６２として角度情報  θ０  を持たせている。このように接合基準データ３６に接合角度オフセット情報６２を持たせておくことで、組付け処理を行った際の部品接合開度を任意に決めることができる。
【００４９】
逆に図７のように、接合基準データ３６に図１５のような接合角度オフセット情報６２を持っていない場合には、部品モデルはモデル同士を接合基準点で位置合せした後に、位置合せした接合基準点を中心に三次元の自由度を持つことを意味する。即ち、接合の際に規定の接合角度で接合するか三次元の自由度を持たせるかは、組み付ける部品モデル同士の機械的な関係によって任意に設定することができる。
【００５０】
図１６は図２の組立処理部１８における作業画面２０のワールド座標空間に少なくとも２つの部品モデルを配置して組み付ける際の他の組付け処理の実施形態である。既に説明したワールド座標空間における２つの部品モデルの組付け処理にあっては、部品モデルを２つワールド座標空間に配置した状態で組付けコマンドの実行操作を行うことで、例えば図１０のように、部品モデル４６に対し部品モデル３０がそれぞれの接合基準点４８，３２を位置合せするように再配置される組付け処理を行っている。
【００５１】
これに対し図１６の実施形態にあっては、ワールド座標空間に固定配置されている基本部品モデルに対し、組付け対象となる部品モデルを移動させて組み付ける組付け処理を可能とする。  図１６において、ワールド座標空間には基準側（固定側）となる部品モデル６４が配置され、部品モデル６４はその上面に接合基準点７０，７２の２つを持っており、ここに接合基準点７８，８０を持った２つの部品モデル６６，６８を組み付けようとしている。
【００５２】
ここで、組付け先となる部品モデル６４の接合基準点７０，７２に対しては、接合基準点７０，７２を中心に半径Ｒ１１，Ｒ１２を持った球状の組付け許容領域７４，７６がそれぞれ設定されている。組付け許容領域７４，７６は、この領域内に他の部品モデルの接合基準点が位置すると自動的に接合基準点７０，７２に位置合せする組付け処理を実行する。
【００５３】
例えば部品モデル６６を破線の矢印のように部品モデル６４に近付け、部品モデル６６の接合基準点７８が接合基準点７０を中心に設定した球状の組付け許容領域７４に入ると、接合基準点７０に対し接合基準点７８を位置合せするような部品モデル６６の再配置による組付けが行われる。即ち図１７のように、部品モデル６４の接合基準点７０に接合基準点７８が位置合せするように部品モデル６６の組付けが行われる。
【００５４】
同様に部品モデル６８を部品モデル６４に近付け、接合基準点７２を中心に設定した組付け許容領域７６に部品モデル６８の接合基準点８０が入ると、接合基準点７２に位置合せする部品モデル６８の組付けが行われる。
このように組付け先となる部品モデル６４の接合基準点７０，７２に対し、他の部品モデルの自動組付けを許容する組付け許容領域７４，７６を設定しておくことで、特定の部品モデルに複数の部品モデルを移動しながら組み付ける場合の組付け操作を容易にする。即ち、ある部品モデルを組付け先の部品モデルの組み付けようとする位置に移動しながら近付けていくと、ある程度近付いた時に自動的にそれぞれの接合基準点の位置合せによる自動組付けができる。
【００５５】
図１９は図１６，図１７に示した組付け許容領域を持った部品モデル６４の三次元形状データであり、ポリゴンデータ３４に続いて接合基準点７０，７２に対応した接合基準データ３６−１，３６−２を持っている。この接合基準データ３６−１，３６−２は、右側に取り出して示すように、接合基準点座標値４４−１，４４−２に加えて、図１６の球状の組付け許容領域を設定するための組付け許容半径８２−１，８２−２としてＲ１１，Ｒ１２の値が格納されている。
【００５６】
図１９は図２の組立処理部１８による組付け処理の概略のフローチャートである。本発明の組付け処理にあっては、組付けコマンドの実行操作による一方の部品モデルの接合基準点に他方の部品モデルの接合基準点をジャンプ的に位置合せするモード１の組付け処理と、図１６，図１７に示したように、組付け先の接合基準点に組付け許容領域を設定して組み付けようとする部品モデルを移動しながら組み付けるモード２の組付け処理がある。
【００５７】
そこで図１９の組付け処理にあっては、ステップＳ１で作業画面のコマンド操作からモード１か否か判別し、モード１であればステップＳ２のモード１の組付け処理を行う。モード２であればステップＳ３の組付け処理を行う。
図２０は図１９のステップＳ２におけるモード１の組付け処理の詳細である。モード１の組付け処理にあっては、例えば図１３のように、作業画面となるワールド座標空間に２つの部品モデル５４，５６を配置し、もし部品モデルの移動があれば、ステップＳ１で部品モデルの移動を判別し、ステップＳ２で部品モデルの移動表示を行っている。
【００５８】
一方、モード１における組付け処理のコマンド実行操作があると、ステップＳ３で組付け実行を判別し、ステップＳ４で組付け先となる基本部品モデル５４と組み付けようとする部品モデル５６の接合基準点５８，６０の間の距離（Ｌｘ，Ｌｙ，Ｌｚ）を算出する。
次にステップＳ５で、算出した距離（Ｌｘ，Ｌｙ，Ｌｚ）を零とするように組付け側の部品モデル５６の三次元形状データを修正して移動することによる再配置で、図１４のようにモデル同士を接合する。続いてステップＳ６で接合角度の指定の有無をチェックし、もし図１５の三次元形状データのように接合角度オフセット情報６２による接合角度の指定があれば、ステップＳ７で、指定された接合角度に組み付けた部品モデル５６の位置を回転し、図１４の組付け状態とする。
【００５９】
図２１は図１９のステップＳ３におけるモード２の組付け処理の詳細である。モード２の組付け処理にあっては、例えば図１６のように、ワールド座標空間に組付け先となる基本部品モデル６４と組み付けようとする部品モデル６６，６８を配置した状態で組付け部品モデルの移動をチェックしている。
組付け部品モデルの移動があれば、ステップＳ２で組付け部品モデルの移動表示を行う。組付け部品モデルが移動すると、ステップＳ３で、移動位置ごとに基本部品モデル６４の２つの接合基準点７０，７２と移動した組付け部品モデル６６の接合基準点７８の間の各距離（Ｌｘ，Ｌｙ，Ｌｚ）を算出する。そしてステップＳ４で、基本部品モデル６４の接合基準点７０，７２を中心に自動組付けのために設定した組付け許容距離Ｒ１１，Ｒ１２以内か、即ち組付け許容領域７４，７６以内か否かチェックしている。
【００６０】
図１６で部品モデル６６が部品モデル６４に近付いて、接合基準点７８が接合基準点７０を中心に設定した組付け許容領域７４の組付け許容半径Ｒ１１以内に入ると、ステップＳ５に進み、そのときの算出距離（Ｌｘ，Ｌｙ，Ｌｚ）を零とするように組付け部品モデル６６の三次元形状データの座標値を修正することにより移動して、図１７のように部品モデル６４の接合基準点７０に部品モデル６６の接合基準点７８が位置合せするようにモデル同士を接合する。
【００６１】
この場合にも、ステップＳ６で接合角度の指定の有無をチェックし、もし接合角度の指定があれば、ステップＳ７で指定された接合角度に組付け部品モデル６６の位置を回転することになる。
３．複数点の接合
図２２は部品モデルに二点の接合基準データを設けた場合の組付け処理であり、例えばワールド座標空間にドア枠の部品モデル１１２とドアの部品モデル１１４が配置されている。ドア枠の部品モデル１１２のヒンジ部分には２つの接合基準点１１６，１１８が設定され、これに対応してドアの部品モデル１１４にも２つの接合基準点１２０，１２２が割り当てられている。
【００６２】
このような部品モデル１１２，１１４について組付け処理を実行すると、接合基準点１１６と１２０が位置合せされ、同時に接合基準点１１８に接合基準点１２８が位置合せされるように部品モデル１１４の再配置が行われる。
図２４は図２２の２つの接合基準点を持った部品モデルの形状データであり、ポリゴンデータ３４に続いて２つの接合基準点に対応した接合基準データ３６−１，３６−２を持たせており、それぞれ右側に取り出して示すように、接合基準点座標値４４−１，４４−２を格納している。
【００６３】
図２５はドア枠の部品モデル１１２にドアの部品モデル１１４を２つの接合基準点に基づいて取り付けた後の組立モデルであり、接合基準点１１６，１１８の二点による接合であることから、二点１１６，１１８を結ぶ線を軸とする回転は制限されない。これによってドアのヒンジ等を再現し、ドアの部品モデル１１４を２つの接合基準点１１６，１１８を結んだ線を軸として開閉するような表示処理ができる。
【００６４】
図２６は部品モデルに３点の接合基準データを持たせた場合である。図２６の部品座標空間には部品モデル１２４が配置されており、部品モデル１２４は例えば直方体であり、その１つの面に３つの接合基準点１２６，１２８，１３０が設定されている。
図２７は図２６の部品モデル１２４に組み付けられる他の部品モデル１３２であり、その組付け部分に３つの接合基準点１３４，１３６，１３８を持たせている。ここで図２６，図２７の３つの接合基準点１２６，１２８，１３０及び接合基準点１３４，１３６，１３８で形成される三角形は、例えば直角三角形となっている。
【００６５】
図２８は図２６または図２７の３点の接合基準データを持った部品モデルの三次元形状データである。この三次元形状データは、ポリゴンデータ３４に続いて３つの接合基準点に対応して接合基準データ３６−１，３６−２，３６−３を備え、それぞれ接合基準点座標値４４−１，４４−２，４４−３を格納している。図２９は図２６の部品モデル１２４と図２７の部品モデル１３２を組付けのためにワールド座標空間に配置した状態である。この状態で組付け処理を実行すると、接合基準点１３４が接合基準点１２６に、接合基準点１３６が接合基準点１２８に、更に接合基準点１３８が接合基準点１３０に位置合せするように、部品モデル１３２の移動による再配置が行われ、図３０のような接合結果を得ることができる。
【００６６】
この場合、３つの接合基準点を結ぶ三角形の形状が正三角形や二等辺三角形以外ならば、３つの接合基準点の合わせ方は一通りしかないため、２つの部品モデルの位置と方向を正確に設定した位置合せが実現できる。
次に部品モデルの接合基準データにＩＤ情報を持たせることにより自動組立を可能とする実施形態を説明する。図３１は図２の部品格納部１４に格納された部品モデル群１６であり、異なった三次元形状を持った部品モデル１４０，１４２，１４４，１４６，１４８，１５０が格納されている。これらの部品モデル１４０〜１５０については、それぞれ固有のＩＤ情報として例えばＩＤ＝１，２，３，４，５，６等の数値あるいは符号情報が設定されている。
【００６７】
図３２は図３１の固有のＩＤ情報を持った部品モデルの自動組立を定義する管理用テーブル１５２である。この管理用テーブル１５２は、例えば組立てを行う部品モデル同士が予め定義されている。
図３３は図３１に示した各部品モデルの三次元形状データであり、ポリゴンデータ３４に続いて設けられた接合基準データ３６の中には、右側に取り出して示すように接合基準点座標値４４に加えてＩＤ情報１５４が設けられている。
【００６８】
図３４は図３２の管理用テーブル１５２に基づいた自動組立て結果であり、「ＩＤ１＝ＩＤ３」の指定によって部品モデル１４０と部品モデル１４４がその接合基準点を一致させるように組み付けられ、「ＩＤ２＝ＩＤ５」により部品モデル１４８と部品モデル１４２がそれぞれの接合基準点を一致させるように組み合わされ、更に「ＩＤ４＝ＩＤ６」により部品モデル１４６と部品モデル１５０がその接合基準点を一致させるように組み立てられる。
【００６９】
図３５は部品モデルに３点以上の接合基準データを持たせ且つ３点以上の接合基準点に時計回りまたは反時計回りの順番を示す情報を設けるようにした実施形態である。図３５は部品座標空間で例えば厚みのない薄い板の部品モデル１５６を作成し、その上に３つの接合基準点１５８−１，１５８−２，１５８−３を持たせている。
【００７０】
図３６は図３５の部品モデル１５６と組み合わされる他の部品モデル１６０であり、同じく部品座標空間に設定され、接合面に３つの接合基準点１６２−１，１６２−２，１６２−３を持たせている。
図３７は、図３５または図３６の部品モデル１５６，１６０に使用される三次元形状データであり、ポリゴンデータ３４に続いて、３つの接合基準点に対応した接合基準データ３６−１，３６−２，３６−３を持っている。各接合基準データ３６−１〜３６−３は、右側に取り出して示すように、接合基準点座標値４４−１，４４−２，４４−３に加えて、それぞれ接合基準点の順番を示す順位情報１６４−１，１６４−２及び１６４−３を持っている。
【００７１】
このような接合基準データの中の順位情報により、例えば図３５の部品モデル１５６にあっては、３つの接合基準点１５８−１〜１５８−３が平面から見て時計回り（右回り）に並べられており、また図３６の部品モデル６０にあっては、正面から見て反時計回り（左回り）に３つの接合基準点１６２−１〜１６２−３が並べられている。
【００７２】
順位情報を持った３つ以上の接合基準点を持つ部品モデルについては、３つ以上の接合基準点同士を位置合せして組み合わせる際に、順位情報で決まる３つ以上の接合基準点の回転方向が一致するように組付けを行う。
図３８は、図３５と図３６の部品モデル１５６，１６０をワールド座標空間に配置し、順位情報を無視して組み付けた場合である。この場合、部品モデル１５６は３つの接合基準点１５８−１〜１５８−３の右回りの順位情報を持っており、これに対し部品モデル１６０を下側に配置すると３つの接合基準点１６２−１〜１６２−３は逆の左回りの順位情報を持っている。しかしながら、部品モデル１５６，１６０の順位情報を無視しているため、図３９のように部品モデル１５６の下側に部品モデル１６０が組み付けられる。この組付け状態は、本来の３つの接合基準点の回転方向を決める順位情報から見ると誤った組付けとなる。
【００７３】
これに対し３つの接合基準点の回転方向を決める順位情報に従った組付けを行うと、図４０のようになる。図４０の部品モデル１５６の３つの接合基準点１５８−１〜１５８−３は、その順位情報により右回りであり、この右回りに合わせるように部品モデル１６０を組み付けるためには、３つの接合基準点１６２−１〜１６２−３をもつ面が下向きとなるように配置して組み付ける。このため、３つ以上の接合基準点に順位情報を持たせて回転方向を決め、部品同士の回転方向を一致させるように組み付けることで、例えば薄板等の部品モデルの特定の面に対し他の部品モデルを組み付ける組付け関係の指定が実現できる。
【００７４】
図４１は正多角形の接合基準データを部品モデルに持たせた実施形態である。図４１の部品モデル１６４は、正多角形接合基準面として例えば正六角形接合基準面１６６を持っている。この正六角形接合基準面１６６は、６つの頂点１６８−１〜１６８−６の三次元座標値で定義することができる。
図４２は図４１の部品モデル１６４と組み合わされる他の部品モデル１７０、例えば回転軸を構成する円柱体であり、端面に図４１の部品モデル１６４の正多角形接合基準面１６６に対応する正多角形接合基準面１７２を持っている。この正多角形接合基準面１７２も６つの頂点１７４−１〜１７４−６の三次元座標値で定義することができる。
【００７５】
図４３は、図４１及び図４２に示した部品モデルを表現した三次元形状データであり、ポリゴンデータ３４に続いて正多角形接合基準面データ１７６を持っており、この実施形態にあっては、右側に取り出して示すように頂点座標値１７８−１〜１７８−６の６つを設けている。
図４４は、図４１の部品モデル１６４と図４２の部品モデル１７０をワールド座標空間に配置して、それぞれの正六角形接合基準面１６６，１７２の位置合せにより取り付けた状態である。この部品モデル１６４と部品モデル１７０の正六角形接合基準面１６６，１７２の位置合せによる接合にあっては、それぞれ６つの頂点の位置合せによることから、正六角形の中心に対する頂点との対角線の角度６０°間隔で、例えば部品モデル１７０に対し部品モデル１６４側の回転位置を切り替えることができる。
【００７６】
尚、図４１，４２にあっては、正多角形接合基準面データとして六角形接合基準面データを例に取っているが、正三角形、正四角形、正五角形、正七角形、正八角形等、適宜の正多角形について同様に適用できる。
図４５は部品モデルに接合基準面データを持たせて部品モデルを組み立てる実施例であり、図４５にあっては部品座標空間の部品モデル１８０において、斜線で示す面、即ちポリゴン面情報を接合基準面１８２とする接合基準データを持たせている。
【００７７】
この接合基準面１８２を指定する接合基準データとしては、立方体である部品モデル１８０が８つの頂点１８４−１〜１８４−８をモデルの三次元形状データに持っていることから、この内の接合基準データとして接合基準面１８２のポリゴン面情報を定義することで４つの頂点１８４−２，１８４−４，１８４−６，１８４−８が頂点座標値として利用でき、別途、接合基準データを作成する必要がない。
【００７８】
図４６は、図４５の部品モデル１８０と組み合わされる他の部品モデル１８６であり、同じく立方体であって８つの頂点１９０−１〜１９０−８を持っている。この部品モデル１８６については、頂点１９０−１，１９０−３，１９０−５，１９０−７をもつ斜線部で示す面１８８を接合基準面としている。
図４７は図４５及び図４６に示した接合基準面を接合基準面データとして持つ部品モデルの三次元形状データである。この三次元形状データにあっては、ポリゴンデータ３４に続いて、部品モデルの接合基準面を定義する接合基準データ１９２を持っており、接合基準データ１９２は、右側に取り出して示すように、例えば図４５，図４６の部品モデル１８０，１８６の場合には、面１８２，１８８のポリゴン面情報１９４を設定している。
【００７９】
更に接合基準データ１９２の中には法線方向情報１９６も加えられている。この法線方向情報１９６は、例えば図４５の部品モデル１８０の接合基準面１８２に対する他の部品モデルの接合面の接合方向が外側からか内側からかを定義する。この法線方向情報１９６の設定により、部品モデル１８０の外側に他の部品モデルを組み付けるか部品モデル１８０の内側に他の部品モデルを組み付けるかが指定できる。
【００８０】
図４８は図４５の部品モデル１８０と図４６の部品モデル１８６をワールド座標空間に配置した状態であり、部品モデル１８０の基準結合面１８２に対する部品モデル１８６の基準結合面１８８の法線方向は、矢印１９８のように外側からを指定している。
したがって、図４８の部品モデル１８０と部品モデル１８６の組付け処理を実行すると、図４９のように、固定配置された部品モデル１８０の接合基準面１８２に部品モデル１８６の接合基準面１８８が位置合せされる組付け処理ができる。
４．具体的な三次元モデルの作成
次に本発明の三次元モデル作成処理に基づいて、三次元自動車モデルを作成する処理の具体例を説明する。図５０は図２の組立処理部１８によるワールド座標空間としての作業画面２０であり、組立途中にある車体側の組立モデル１０８とシャシ側の組立モデル１１０が表示されており、この状態でタイヤモデル１０４を部品モデルとして選択して配置し、シャシモデル１１０の車軸１０５に対しタイヤモデル１０４を組み付ける前の状態である。
【００８１】
この図５０の作業画面２０に配置して組み付けられる部品モデルは、例えば図５１の部品モデルの三次元形状データとして図２に示した部品格納部１４に格納されている。図５１は図５０の作業画面で使用する部品モデルの主なものを示しており、例えば部品モデル８４、モータモデル８６、ヘッドライトモデル８８、シャシモデル９０、フロントガラスモデル９２、サイドガラスモデル９４、リアガラスモデル９６、ステアリングモデル９８、フロントシートモデル１００、リアシートモデル１０２、タイヤモデル１０４，１０６等がある。
【００８２】
図５０の作業画面２０の左側の枠内には、組み込み処理のために必要な各種のコマンドキーが設けられている。このコマンドキーは、画面操作用として拡大キー２０２，全体表示キー２０４及び視点移動キー２０６を備える。
更に部品操作用として移動キー２０８、回転キー２１０、組付け処理を行うための接着キー２１２、ＩＤ情報を利用した起動接着を行う起動接着キー２１４、組付け部品モデルを分離する分離キー２１６、部品モデルを消去するための削除キー２１６、更に選択した部品を取り消すための取消キー２２０を備えている。図５０にあっては、現在、移動キー２０８を操作した選択状態にあり、これに対応して左上隅の操作表示部２００に「移動」が表示されている。
【００８３】
図５２は図５０の作業画面２０について、視点移動キー２０６を操作することで視点位置を変えて組立モデル１０８，１１０を表示している。更に図５３は、視点移動キー２０６により車両を斜め上方から見た画像表示に切り替えている。例えば図５０の作業画面２０でタイヤモデル１０４を組立モデル１１０の車軸１０５に組み付ける場合には、カーソルによりタイヤモデル１０４を選択して移動キー２０８により車軸１０５の部分に近付け、予め設定した組付け許容範囲に近付くと、タイヤモデル１０４の接合基準点が車軸１０５の接合基準点に位置合せする組付けによるタイヤモデル１０４の再配置が行われる。
【００８４】
また自動接着キー２１４を操作すると、組付け先と組付け元の指定メッセージが表示され、組付け先に車軸１０５を指定し組付け元をタイヤモデル１０４に指定することで、自動的に車軸１０５にタイヤモデル１０４がそれぞれの接合基準データに基づいて組み付けられる自動組付けができる。
このようにして作業画面２０に例えば図５１の部品モデルの中から必要とする部品モデルを選択して配置し、部品モデルの移動または自動接着に基づく組付けを行い、最終的に三次元自動車モデルを作成することができる。
【００８５】
図５４は本発明の三次元モデル作成プログラムを記録したコンピュータ読み取り可能な記録媒体の実施形態であり、この記録媒体にはＣＤ−ＲＯＭやフロッピディスク等のリムーバルな可搬型記録媒体、回線によりプログラムを提供するプログラム提供者の記憶装置、更にプログラムをインストールした処理装置のＲＡＭやハードディスク等の記憶装置がある。また記録媒体によって提供されたプログラムは処理装置にローディングされ、その主記憶上で実行される。
【００８６】
尚、上記の実施例は、部品モデルの三次元形状データとしてＣＡＤで作成できるポリゴンデータを例にとっているが、ポリゴンデータに限定されず、コンピュータ・グラフィックスで使用されている適宜の三次元形状データを利用し、本発明によって新たに接合基準データを付加することで部品モデルの組付けによる三次元モデルの作成ができる。また本発明は、上記の実施形態に示された数値による限定は受けない。更に本発明は、その目的を逸脱しない範囲で適宜の変形が可能である。
【００８７】
【発明の効果】
以上説明してきたように本発明によれば、予め部品となる部品モデルを用意して組み立てることで最終的な三次元モデルを完成させており、部品の作成と部品の組立てが完全に分離されているため、例えば部品の作成をメーカ側で行い、部品の組立をユーザ側で行うようにすることで、ユーザがコンピュータ・グラフィックスに対する深い知識や経験を持たなくとも、高品質なコンピュータ・グラフィックスによる三次元モデルを簡単且つ容易に作成することができる。
【００８８】
即ち、メーカ側から三次元モデルの作成に必要な部品モデルをパッケージ化した本発明による三次元モデル車両のアプリケーションをユーザに提供することで、ユーザ側において簡単且つ容易に高品質なコンピュータ・グラフィックスによる三次元モデルが作成できる。
また本発明にあっては、用意される部品モデルが三次元形状データ以外に部品組立時の接合位置を定義した接合基準データを持っており、作業用の座標空間に少なくとも２つの部品モデルを配置して取付処理を行うことで、各部品モデルの持つ接合基準データに基づいて正確な部品モデルの組付けが極めて容易にできる。したがって、ユーザサイドにおける部品モデルの組立てによる三次元モデルの作成作業の負担が少なく、部品点数の多い、相当複雑な三次元モデルであっても、ユーザは組立作業を楽しみながら三次元モデルを作成することができる。
【図面の簡単な説明】
【図１】本発明の原理説明図
【図２】本発明の装置構成の機能ブロック図
【図３】本発明の三次元モデル作成処理のフローチャート
【図４】図３の三次元部品モデル準備処理のフローチャート
【図５】一点の接合基準データをもった部品モデルの説明図
【図６】一点の接合基準データをもった他の部品モデルの説明図
【図７】図５，図６の三次元部品モデルのデータ構造の説明図
【図８】図５，６の部品モデルを作業用のワールド座標空間に配置した説明図
【図９】図８のワールド座標空間に配置した部品モデルのデータ構造の説明図
【図１０】接合基準データに基づく部品モデルの組付け処理の説明図
【図１１】接合基準データをモデル内部に設定した場合の部品モデルの組付け処理の説明図
【図１２】接合基準データをモデル外部に設定した場合の部品モデルの組付け処理の説明図
【図１３】接合角度のオフセット情報をもつ部品モデルの組付け前の説明図
【図１４】接合角度のオフセット情報に基づく組付け後の部品モデルの説明図
【図１５】接合角度のオフセット情報をもつ部品モデルのデータ構造の説明図
【図１６】接合基準に対し接合許容領域を設定した部品モデルの組付け前の説明図
【図１７】接合基準点に対し接合許容領域を設定した部品モデルの組付け処理の説明図
【図１８】接合許容領域を設定した部品モデルのデータ構造の説明図
【図１９】図３の部品モデル組付け処理の概略のフローチャート
【図２０】図１９のモード１の組付け処理のフローチャート
【図２１】図１９のモード２の組付け処理のフローチャート
【図２２】２点の接合基準データをもった部品モデルの組付け前の説明図
【図２３】２点の接合基準データをもった部品モデルの組付け処理の説明図
【図２４】２点の接合基準データをもった部品モデルのデータ構造の説明図
【図２５】２点の接合基準データをもった組付け部品モデル間の自由度の説明図
【図２６】３点の接合基準データをもった部品モデルの説明図
【図２７】３点の接合基準データをもった他の部品モデルの説明図
【図２８】３点の接合基準データをもった部品モデルのデータ構造の説明図
【図２９】３点の接合基準データをもった部品モデルの組付け前の説明図
【図３０】３点の接合基準データをもったもった部品モデルの組付け処理の説明図
【図３１】ＩＤを設定した部品モデルの説明図
【図３２】図３１の部品モデルの自動組立てに使用する管理用テーブルの説明図
【図３３】ＩＤを設定した部品モデルのデータ構造の説明図
【図３４】図３１の部品モデルを図３２の管理用テーブルに基づいて自動組立てした説明図
【図３５】３点の接合基準データに回転方向の順位情報を含む部品モデルの説明図
【図３６】３点の接合基準データに回転方向の順位情報を含む他の部品モデルの説明図
【図３７】３点の接合基準データに回転方向の順位情報を含む部品モデルのデータ構造の説明図
【図３８】接合基準データに回転方向の順位情報を含む部品モデルの組付け前の説明図
【図３９】接合基準データの回転方向の順位情報を無視した場合の部品モデルの誤った組付け処理の説明図
【図４０】接合基準データの回転方向の順位情報に基づく部品モデルの正しい組付け処理の説明図
【図４１】正多角形の接合基準データをもつ部品モデルの説明図
【図４２】正多角形の接合基準データをもつ他の部品モデルの説明図
【図４３】正多角形の接合基準データをもつ部品モデルのデータ構造の説明図
【図４４】正多角形の接合基準データをもつ部品モデルの組付け処理とオフセット回転の説明図
【図４５】接合基準データとしてポリゴン面情報をもつ部品モデルの説明図
【図４６】接合基準データとしてポリゴン面情報をもつ他の部品モデルの説明図
【図４７】接合基準データとしてポリゴン面情報をもつ部品モデルのデータ構造の説明図
【図４８】接合基準データとしてポリゴン面情報をもつ部品モデルの組付け前の説明図
【図４９】接合基準データとしてポリゴン面情報をもつ部品モデルの組付け処理の説明図
【図５０】本発明による具体的な三次元モデル作成処理の作業画面の説明図
【図５１】図５０の作業画面で使用する部品モデルの説明図
【図５２】図５０の組立モデルに対し視点移動を行って側面から見た作業画面の説明図
【図５３】図５０の組立モデルに対し視点移動を行って斜め上方から見た作業画面の説明図
【図５４】本発明の三次元モデル組立プログラムを記録したコンピュータ読み取り可能な記録媒体の実施形態の説明図
【符号の説明】
１０：部品モデル作成部
１２，２０：作業画面
１４：部品格納部
１６：部品モデル群
１８：組立処理部
２２：モデル格納部
２４：組立モデル
２６：組立モデル利用部
２８：利用画面
３０，４６，５４，５６，６４，６６，６８，１１２，１１４，１２４，１３２，１４０，１４２，１４４，１４６，１４８，１５０，１５６，１６０，  １６４，１７０，１８０，１８６  ：部品モデル
３２，４８，５８，６０，７０，７２，７８，８０，１１６，１１８，１２０，１２２，１２６，１２８，１３０，１３４，１３６，１３８，１５８−１  〜１５８−３，１６２−１  〜１６２−３，１６８−１  〜１６８−６，１７４−１  〜１７４−６  ：接合基準点
３４：ポリゴンデータ
３６，３６−１，３６−２：接合基準データ
３８：頂点データ
４０：頂点座標値
４２：情報
４４：接合基準点座標値
５０−１，５０−２：ワールド座標空間オフセット
５２−１，５２−２：オフセット座標値
６２：接合角度オフセット情報
７４，７６：接合許容領域
８２−１，８２−２：接合許容半径
８４：ボティモデル
８６：ワイパーモデル
８８：ヘッドライトモデル
９０：シャシモデル
９２：フロントガラスモデル
９４：サイドガラスモデル
９６：リアガラスモデル
９８：ステアリングモデル
１００：フロントシートモデル
１０２：リアシートモデル
１０４，１０６：タイヤモデル
１０８，１１０：組立モデル
１５２：管理用テーブル（ＩＤ関連テーブル）
１５４：ＩＤ情報
１６４−１〜１６４−３：順位情報
１７６：正多角形接合基準データ
１７８−１〜１７８−６：正多角形頂点座標値
１８２，１８８：接合基準面
１８４−１〜１８４−８，１９０−１〜１９０−８：頂点
１８８：ポリゴン面情報
１９２：接合基準データ
１９６：法線方向情報
【図１】
0003559154.tif 000002
【図２】
0003559154.tif 000003
【図３】
0003559154.tif 000004
【図４】
0003559154.tif 000005
【図５】
0003559154.tif 000006
【図６】
0003559154.tif 000007
【図７】
0003559154.tif 000008
【図８】
0003559154.tif 000009
【図９】
0003559154.tif 000010
【図１０】
0003559154.tif 000011
【図１１】
0003559154.tif 000012
【図１２】
0003559154.tif 000013
【図１３】
0003559154.tif 000014
【図１４】
0003559154.tif 000015
【図１５】
0003559154.tif 000016
【図１６】
0003559154.tif 000017
【図１７】
0003559154.tif 000018
【図１８】
0003559154.tif 000019
【図１９】
0003559154.tif 000020
【図２０】
0003559154.tif 000021
【図２１】
0003559154.tif 000022
【図２２】
0003559154.tif 000023
【図２３】
0003559154.tif 000024
【図２４】
0003559154.tif 000025
【図２５】
0003559154.tif 000026
【図２６】
0003559154.tif 000027
【図２７】
0003559154.tif 000028
【図２８】
0003559154.tif 000029
【図２９】
0003559154.tif 000030
【図３０】
0003559154.tif 000031
【図３１】
0003559154.tif 000032
【図３２】
0003559154.tif 000033
【図３３】
0003559154.tif 000034
【図３４】
0003559154.tif 000035
【図３５】
0003559154.tif 000036
【図３６】
0003559154.tif 000037
【図３７】
0003559154.tif 000038
【図３８】
0003559154.tif 000039
【図３９】
0003559154.tif 000040
【図４０】
0003559154.tif 000041
【図４１】
0003559154.tif 000042
【図４２】
0003559154.tif 000043
【図４３】
0003559154.tif 000044
【図４４】
0003559154.tif 000045
【図４５】
0003559154.tif 000046
【図４６】
0003559154.tif 000047
【図４７】
0003559154.tif 000048
【図４８】
0003559154.tif 000049
【図４９】
0003559154.tif 000050
【図５０】
0003559154.tif 000051
【図５１】
0003559154.tif 000052
【図５２】
0003559154.tif 000053
【図５３】
0003559154.tif 000054
【図５４】
0003559154.tif 000055