(57)【要約】【課題】３次元モデルの表示において、視点変更操作等の対話的な操作を行なう際、対話性を維持しつつ、形状理解に適した３次元表示を高速に行なうようにする。【解決手段】算出部１にて３次元形状を２次元領域に投影した際の描画領域の面積値を算出し、その算出した描画領域の面積値を格納部２に格納し、格納した面積値及び視点設定部４で設定された視点に従って、３次元形状を表示する際の表示の順番をソート部３にてソートし、表示部５でそのソートした順番に従って３次元形状を表示する。【選択図】　　　　図１
2004086276.tif 000002
【特許請求の範囲】
【請求項１】
３次元形状を表示する３次元形状表示方法において、３次元形状を２次元領域に投影した際の描画領域の面積値を算出し、該算出した前記描画領域の面積値を格納し、前記格納した面積値及び設定された視点に従って、３次元形状を表示する際の表示の順番をソートし、該ソートした順番に従って３次元形状を表示することを特徴とする３次元形状表示方法。
【請求項２】
前記３次元形状の２次元領域への投影は、指定した軸方向への投影であり、前記描画領域の面積値を算出する際に、投影面を領域分割し、該領域分割した個々の領域において最も視点に近い前記３次元形状に単位面積１を付与し、得られた単位面積を３次元形状毎に積算することにより、該３次元領域の描画領域の面積値を求めることを特徴とする請求項１に記載の３次元形状表示方法。
【請求項３】
前記指定する軸方向として、３次元形状が定義される世界座標系において、Ｘ軸、−Ｘ軸、Ｙ軸、−Ｙ軸、Ｚ軸、及び−Ｚ軸の６方向を指定し、各軸方向別に分類して各描画領域の面積値を格納することを特徴とする請求項２に記載の３次元形状表示方法。
【請求項４】
前記３次元形状の２次元領域への投影は、３次元形状を包含する球に対する該３次元形状の投影であり、前記描画領域の面積値を算出する際に、投影面を領域分割し、該領域分割した個々の領域において最も視点に近い前記３次元形状に単位面積１を付与し、得られた単位面積を３次元形状毎に積算することにより、該３次元領域の描画領域の面積値を求めることを特徴とする請求項１に記載の３次元形状表示方法。
【請求項５】
前記ソートは、前記格納された面積値を利用し、設定された視点の世界座標系の位置に従って、選択した描画領域の面積値のみを用いて降順にソートすることを特徴とする請求項１に記載の３次元形状表示方法。
【請求項６】
前記３次元形状の表示は、前記ソートされた順番にて３次元形状を描画して表示し、かつ描画開始から指定した時間が経過すると、描画処理を終了することを特徴とする請求項１に記載の３次元形状表示方法。
【請求項７】
３次元形状を表示する３次元形状表示装置において、３次元形状を２次元領域に投影し、描画領域の面積を算出する算出部と、該算出部で算出した前記描画領域の面積値を格納する格納部と、視点を設定する視点設定部と、該視点設定部で設定された視点に従って、３次元形状を表示する際の表示する順番をソートするソート部と、該ソートした順番に従って３次元形状を表示する表示部とを有することを特徴とする３次元形状表示装置。
【請求項８】
前記算出部における前記３次元形状の２次元領域への投影は、指定した軸方向への投影であり、該算出部は、前記描画領域の面積値を算出する際に、投影面を領域分割し、該領域分割した個々の領域において最も視点に近い前記３次元形状に単位面積１を付与し、得られた単位面積を３次元形状毎に積算することにより、該３次元領域の描画領域の面積値を求めることを特徴とする請求項７に記載の３次元形状表示装置。
【請求項９】
前記算出部は、前記指定する軸方向として、３次元形状が定義される世界座標系において、Ｘ軸、−Ｘ軸、Ｙ軸、−Ｙ軸、Ｚ軸、及び−Ｚ軸の６方向を指定し、前記格納部は、各軸方向別に分類して各描画領域の面積値を格納することを特徴とする請求項８に記載の３次元形状表示方法。
【請求項１０】
前記算出部における前記３次元形状の２次元領域への投影は、３次元形状を包含する球に対する該３次元形状の投影であり、該算出部は、前記描画領域の面積値を算出する際に、投影面を領域分割し、該領域分割した個々の領域において最も視点に近い前記３次元形状に単位面積１を付与し、得られた単位面積を３次元形状毎に積算することにより、該３次元領域の描画領域の面積値を求めることを特徴とする請求項７に記載の３次元形状表示装置。
【請求項１１】
前記ソート部は、前記格納された面積値を利用し、前記背点設定部で設定された視点の世界座標系の位置に従って、選択した描画領域の面積値のみを用いて降順にソートすることを特徴とする請求項７に記載の３次元形状表示装置。
【請求項１２】
前記表示部は、前記ソート部でソートされた順番にて３次元形状を描画して表示し、かつ描画開始から指定した時間が経過すると、描画処理を終了することを特徴とする請求項７に記載の３次元形状表示装置。
【請求項１３】
請求項１ないし６のいずれか１に記載の３次元表示方法を実行するためのプログラム。
【請求項１４】
請求項１３に記載のプログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、３次元形状の表示技術に関し、例えば、ＣＡＤによる形状設計の分野に応用可能な技術に関する。
【０００２】
【従来の技術】
３次元グラフィックス表示システムにおいて、大規模アセンブリのような大量の３次元モデルを表示し、視点変更などの操作者との対話的な操作を行なう際、対話性を維持するために、すべてのモデルを描画せず、一定のモデルを描画したところで、描画の更新を行なうことで、描画時間（フレームレート）を一定に保つ処理が行なわれる。
【０００３】
【発明が解決しようとする課題】
上記のごとくに、フレームレートを保つためにすべてのモデルを描画しないようにした場合、どのモデルを描画するかにより、対話操作中における走査者の形状理解が大きく左右される。
【０００４】
このようなモデル描画の表示順序としては、一般には、体積の大きい順や、表面積の大きい順などが考えられるが、かならずしもそれが好ましい表示とはならない。例えば、複雑な工業製品としてのアセンブリが組み上がっている状態では、モデルの一番外側のモデルから描画されるべきであり、実際、そのようなアセンブリの表示では、アセンブリ内部のモデルが存在しても、外側から見えることはないため、描画する必要はない。
【０００５】
本発明は、上述のごとき実情に鑑みてなされたもので、大規模アセンブリのような大量の３次元モデルの表示において、視点変更操作等の対話的な操作を行なう際、最も外側から見えるモデルから描画することで、対話性を維持しつつ、形状理解に適した３次元表示を高速に行なうようにした３次元表示方法、装置、該方法を実行するプログラム及び記録媒体を提供することを目的とするものである。
【０００６】
【課題を解決するための手段】
請求項１の発明は、３次元形状を表示する３次元形状表示方法において、３次元形状を２次元領域に投影した際の描画領域の面積値を算出し、該算出した前記描画領域の面積値を格納し、前記格納した面積値及び設定された視点に従って、３次元形状を表示する際の表示の順番をソートし、該ソートした順番に従って３次元形状を表示することを特徴としたものである。
【０００７】
請求項２の発明は、請求項１の発明において、前記３次元形状の２次元領域への投影は、指定した軸方向への投影であり、前記描画領域の面積値を算出する際に、投影面を領域分割し、該領域分割した個々の領域において最も視点に近い前記３次元形状に単位面積１を付与し、得られた単位面積を３次元形状毎に積算することにより、該３次元領域の描画領域の面積値を求めることを特徴としたものである。
【０００８】
請求項３の発明は、請求項２の発明において、前記指定する軸方向として、３次元形状が定義される世界座標系において、Ｘ軸、−Ｘ軸、Ｙ軸、−Ｙ軸、Ｚ軸、及び−Ｚ軸の６方向を指定し、各軸方向別に分類して各描画領域の面積値を格納することを特徴としたものである。
【０００９】
請求項４の発明は、請求項１の発明において、前記３次元形状の２次元領域への投影は、３次元形状を包含する球に対する該３次元形状の投影であり、前記描画領域の面積値を算出する際に、投影面を領域分割し、該領域分割した個々の領域において最も視点に近い前記３次元形状に単位面積１を付与し、得られた単位面積を３次元形状毎に積算することにより、該３次元領域の描画領域の面積値を求めることを特徴としたものである。
【００１０】
請求項５の発明は、請求項１の発明において、前記ソートは、前記格納された面積値を利用し、設定された視点の世界座標系の位置に従って、選択した描画領域の面積値のみを用いて降順にソートすることを特徴としたものである。
【００１１】
請求項６の発明は、請求項１の発明において、前記３次元形状の表示は、前記ソートされた順番にて３次元形状を描画して表示し、かつ描画開始から指定した時間が経過すると、描画処理を終了することを特徴としたものである。
【００１２】
請求項７の発明は、３次元形状を表示する３次元形状表示装置において、３次元形状を２次元領域に投影し、描画領域の面積を算出する算出部と、該算出部で算出した前記描画領域の面積値を格納する格納部と、視点を設定する視点設定部と、該視点設定部で設定された視点に従って、３次元形状を表示する際の表示する順番をソートするソート部と、該ソートした順番に従って３次元形状を表示する表示部とを有することを特徴としたものである。
【００１３】
請求項８の発明は、請求項７の発明において、前記算出部における前記３次元形状の２次元領域への投影は、指定した軸方向への投影であり、該算出部は、前記描画領域の面積値を算出する際に、投影面を領域分割し、該領域分割した個々の領域において最も視点に近い前記３次元形状に単位面積１を付与し、得られた単位面積を３次元形状毎に積算することにより、該３次元領域の描画領域の面積値を求めることを特徴としたものである。
【００１４】
請求項９の発明は、請求項８の発明において、前記算出部は、前記指定する軸方向として、３次元形状が定義される世界座標系において、Ｘ軸、−Ｘ軸、Ｙ軸、−Ｙ軸、Ｚ軸、及び−Ｚ軸の６方向を指定し、前記格納部は、各軸方向別に分類して各描画領域の面積値を格納することを特徴としたものである。
【００１５】
請求項１０の発明は、請求項７の発明において、前記算出部における前記３次元形状の２次元領域への投影は、３次元形状を包含する球に対する該３次元形状の投影であり、該算出部は、前記描画領域の面積値を算出する際に、投影面を領域分割し、該領域分割した個々の領域において最も視点に近い前記３次元形状に単位面積１を付与し、得られた単位面積を３次元形状毎に積算することにより、該３次元領域の描画領域の面積値を求めることを特徴としたものである。
【００１６】
請求項１１の発明は、請求項７の発明において、前記ソート部は、前記格納された面積値を利用し、前記背点設定部で設定された視点の世界座標系の位置に従って、選択した描画領域の面積値のみを用いて降順にソートすることを特徴としたものである。
【００１７】
請求項１２の発明は、請求項７の発明において、前記表示部は、前記ソート部でソートされた順番にて３次元形状を描画して表示し、かつ描画開始から指定した時間が経過すると、描画処理を終了することを特徴としたものである。
【００１８】
請求項１３の発明は、請求項１ないし６のいずれか１に記載の３次元表示方法を実行するためのプログラムである。
請求項１４の発明は、請求項１３に記載のプログラムを記録した記録媒体である
。
【００１９】
【発明の実施の形態】
図１は、本発明が適用される装置の構成例を示すブロック図である。
算出部１は、３次元形状を２次元領域に投影した際の各モデルの描画領域中の面積を算出する。投影方法として、以下のものがある。
【００２０】
（軸方向への投影）
モデルの世界座標系において、モデルを囲む直方体の外側で、＋Ｘ軸、−Ｘ軸、＋Ｙ軸、−Ｙ軸、＋Ｚ軸、−Ｚ軸の各々６方向上に視点を置いた場合に、平行投影により描画された結果の各モデルの描画領域を算出する。投影においては、通常のＺバッファによる隠面処理を行い、隠面処理の結果における各モデルの描画領域の面積を算出する。領域の算出を高速化するため、投影面を格子状に区切り分割領域を生成し、各格子（分割領域）内におけるもっとも視点方向に近い面を面積１として計算する。すなわち、格子１つ文の面積を１単位として、格子内で視点方向に最も近いモデルに対してその面積単位１を割り当て、全ての格子について各モデルの面積単位を積算することにより、各モデルの描画領域の面積を算出する。
【００２１】
（球面への投影）
モデルの世界座標系において、モデルを囲む球にモデルを投影した場合の描画領域の面積を算出する。球への投影としては、球の中心から球面へ伸ばしたベクトルと、モデルの各面の交点のうち、もっとも外側の点を求めることで、描画領域を求めることができる。領域の算出を高速化するため、実際には、投影用の球を立体角で表現される格子に区切り、各格子内においてもっとも投影面に近いモデルを面積１として、上記軸方向と同様にかくモデルの描画領域の面積を計算する。また、球をいくつかの領域（例えば北半球と南半球や、８方向の領域分割）に分けて投影してもよい。
【００２２】
上記のごとくの所定の投影方法によって投影され、算出部１で算出されたモデルの描画領域の面積値は、投影方向別に格納部２に格納される。
【００２３】
ソート部３は、格納部２に格納された各モデルの描画領域における面積値の降順にモデルをソートする。ソートの際に利用する面積値は、格納部２に投影方向別に分類され格納されているため、視点設定部４にて設定され視点の情報により、以下のようにして値を利用する。
【００２４】
算出部１において軸方向の投影が行なわれた場合は、世界座標系で規定されるモデル全体を囲む最小直方体において、該最小直方体の各面により分割された空間のうちどの空間に視点が設定されたかに従って、視点から見える直方体の面の法線方向に投影した面積を利用する。例えば、直方体のＸ軸方法、Ｙ軸方向、Ｚ軸方向の３面が見える位置に視点が設定された場合、単純に各々の方向に対応する面積値の和によりソートしたり、各軸と視線ベクトルの内積値を掛けた和にして、視点方向の向きを加味した値としてソートすることができる。
【００２５】
一方、算出部１において球面への投影が行なわれた場合、投影の球面が複数の領域に分割されている場合は、各領域のどこに視点が存在するかに従って、視点が存在する半球面に投影した面積値を使う。
【００２６】
図２は、本発明に係わる上記算出部における軸方向の投影の一例で、物体１１，１２をＹ軸方向に２次元の投影面１０に投影した状態を示す図である。また、図３は、本発明に係わる上記算出部における軸方向の投影における面積算出の例を示すもので、投影面１０における面積単位１の格子１３の例を示す。
【００２７】
表示部５は、描画用バッファとグラフィックディスプレイとを有し、ソート部３によりソートされたモデルを順番に描画用バッファに描画し、すべてのモデルを描画し終わるか、描画開始からの指定した時間が経過した時点で、描画用バッファの中身をグラフィックスディスプレイに表示する。描画においては、通常のＺバッファ法による描画を行なう。
【００２８】
図４は、本発明における形状表示処理の一例を説明するためのフローチャートで、表示部を中心とした形状表示の処理の流れを示すものである。視点の設定と再描画が終了したかどうかを判断し（ステップＳ１）、これらが終了していれば描画処理を終了し、終了していなければ視点を設定し（ステップＳ２）、さらに視点の位置に応じてモデルを描画領域の面積順にソートする（ステップＳ３）。そしてモデルが最後のモデルか、または予め指定した時間が経過しているか判断し（ステップＳ４）、最後のモデルでなく、かつ指定時間が経過していなければモデルの描画を行い（ステップＳ５）、ステップＳ４に戻る。ステップＳ４で最後のモデルまたは指定時間が経過していれば、画面を更新し（ステップＳ６）、ステップＳ２に戻る。
【００２９】
図５は、本発明における形状処理の流れの他の例を説明するためのフローチャートで、算出部を中心とした形状表示の前処理の流れを示すものである。まず、全ての投影方向で処理が終わっているかどうかを判断し（ステップＳ１１）、終わっていれば算出部における描画領域の算出処理を終了し、そうでなければ投影方向の設定を行う（ステップＳ１２）。そしてモデルが最後のモデルかどうかを判断し（ステップＳ１３）、最後のモデルでなければその投影方向にモデルを描画し（ステップＳ１４）、ステップＳ１３に戻る。ステップＳ１３で最後のモデルであれば、描画領域を算出し（ステップＳ１５）、算出した描画領域を格納部に格納して（ステップＳ１６）、ステップＳ１２に戻る。
【００３０】
【発明の効果】
以上の説明から明らかなように、本発明によると、大規模アセンブリのような大量の３次元モデルの表示において、視点変更操作等の対話的な操作を行なう際、対話性を維持しつつ、形状理解に適した３次元表示を、高速に行なうことができるようになる。
【図面の簡単な説明】
【図１】本発明が適用される装置の構成例を示すブロック図である。
【図２】本発明に係わる算出部における軸方向の投影の一例を示す図である。
【図３】本発明に係わる算出部における軸方向の投影における面積算出の例を示す図である。
【図４】本発明における形状表示処理の一例を説明するためのフローチャートである。
【図５】本発明における形状処理の流れの他の例を説明するためのフローチャートである。
【符号の説明】
１…算出部、２…格納部、３…ソート部、４…視点設定部、５…表示部、１０…投影面、１１，１２…物体、１３…面積単位１の格子。
【図１】
2004086276.tif 000003
【図２】
2004086276.tif 000004
【図３】
2004086276.tif 000005
【図４】
2004086276.tif 000006
【図５】
2004086276.tif 000007