(57)【特許請求の範囲】
【請求項１】
入れ子構造的に複数層の表面形状を有する表面形状モデルのポリゴンデータをその最外層の表面形状から順次的に表示手段の画面に表示しながら、各層の表面形状についてポリゴンデータを順次的にＢ−ｒｅｐｓデータ化することで、前記ポリゴンデータのＢ−ｒｅｐｓデータへの変換を行う立体形状データ変換方法において、
ポリゴンを画面上に表示するか否かを示す属性である表示属性をポリゴンごとに記述したデータ構成で前記ポリゴンデータを構成するものとし、そして前記表面形状の順次表示は、前の表面形状の表示におけるＢ−ｒｅｐｓデータ化で生成されたＢ−ｒｅｐｓデータに記述されているサーフェスに含まれるポリゴンかまたは含まれないポリゴンのいずれかを前記ポリゴンデータから検索し、その検索に基づいて前記ポリゴンの表示属性を設定して更新したポリゴンデータにより次の表面形状の表示を行うことでなすようにされ、前記ポリゴンデータの更新は、前記複数層の表面形状の一つについて前記Ｂ−ｒｅｐｓデータ化がなされるごとに行うようにされていることを特徴とする立体形状データ変換方法。
【請求項２】
ポリゴンの表示属性を「非表示」とするサーフェスを選択することができるようにされている請求項１に記載の立体形状データ変換方法。
【請求項３】
請求項１または請求項２に記載の立体形状データ変換方法を実行するための手順を記述したコンピュータプログラム。
【請求項４】
入れ子構造的に複数層の表面形状を有する表面形状モデルのポリゴンデータをその最外層の表面形状から順次的に表示手段の画面に表示しながら、各層の表面形状についてポリゴンデータを順次的にＢ−ｒｅｐｓデータ化することで、前記ポリゴンデータのＢ−ｒｅｐｓデータへの変換を行うようにされた立体形状データ変換装置において、
ポリゴンを画面上に表示するか否かを示す属性である表示属性をポリゴンごとに記述したデータ構成で前記ポリゴンデータを構成するようにされ、また前記表面形状の順次表示は、前の表面形状の表示におけるＢ−ｒｅｐｓデータ化で生成されたＢ−ｒｅｐｓデータに記述されているサーフェスに含まれるポリゴンの表示属性を「非表示」にして更新したポリゴンデータにより次の表面形状の表示を行うことでなすようにされ、さらに前記ポリゴンデータの更新は、前記複数層の表面形状の一つについて前記Ｂ−ｒｅｐｓデータ化がなされるごとに行うようにされ、そしてそのために、前記サーフェスに含まれるポリゴンかまたは含まれないポリゴンのいずれかを前記ポリゴンデータから検索し、その検索に基づいて前記ポリゴンの表示属性を設定して前記ポリゴンデータの更新を行うポリゴンデータ更新手段を備えていることを特徴とする立体形状データ変換装置。
【請求項５】
ポリゴンの表示属性を「非表示」とするサーフェスを選択するためのサーフェス選択手段を備えている請求項４に記載の立体形状データ変換装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対象物の表面形状を表す表面形状モデルの作成技術に関し、特に表面形状モデルを記述しているポリゴンデータを操作性や利用性の高いＢ−ｒｅｐｓデータに変換する立体形状データ変換技術に関する。
【背景技術】
【０００２】
対象物の立体形状を計測してその表面形状を記述するデータ（表面形状モデル）を生成するには、Ｘ線ＣＴ装置、表面計測プローブ、レーザ計測機、ＣＣＤカメラなどの３次元計測装置（３次元ディジタイザ）が用いられる。これらの３次元計測装置のなかで、Ｘ線ＣＴ装置は局所的なセルの集合であるビットマップデータを出力し、それ以外の装置は局所的な点の集合である点群データを出力する。これらビットマップデータや点群データは、表面形状についての局所的な情報を持つだけで大域的な情報（位相幾何学的な情報）を持っていない。一方、表面形状を記述するデータ形式として、一般の３次元ＣＡＤにおけるデータ形式がある。このＣＡＤにおけるデータ形式は、「Ｂ−ｒｅｐｓ」（Boundary-representations：境界表現）と呼ばれ、大域的な情報を持っており、操作性や利用性においてビットマップデータや点群データよりも優れている。こうしたことから、３次元計測装置による計測で得られたビットマップデータや点群データをＢ−ｒｅｐｓデータに変換して操作性や利用性を高めることが広く行われている。
【０００３】
ビットマップデータや点群データをＢ−ｒｅｐｓデータに変換する方法としては、ビットマップデータや点群データが表している立体形状の表面から幾何学的な特徴面（平面や円筒面などといった幾何学的に定義された面）を抽出した後、残りの表面上に自由曲面を作成する方法がある（例えば特許文献１）。この方法で例えばビットマップデータの表面形状モデルをＢ−ｒｅｐｓデータによる表面形状モデルに変換するには、表示装置の画面上にビットマップデータの表面形状モデルを表示し、これを利用者が見ながら対話的に操作を行ってＢ−ｒｅｐｓデータを作成するのが一般的である。
【０００４】
ここで、画面上にビットマップデータなどによる表面形状モデルを表示する際には「ポリゴンデータ」と呼ばれるデータ形式を用いるのが一般的である。したがってビットマップデータや点群データのＢ−ｒｅｐｓデータへの変換は、ポリゴンデータのＢ−ｒｅｐｓデータへの変換としてなされるのが通常である。ポリゴンデータは、表面形状モデルを記述する代表的なデータ形式のであり、微小な３角形面の集合として構成される。ビットマップデータからポリゴンデータを作成する手法としては例えば特許文献２に開示の例などがあり、点群データからポリゴンデータを作成する手法としては例えば非特許文献１に記載の例などがある。
【０００５】
ところで、Ｘ線ＣＴ装置は、対象物が内部構造を有するつまり入れ子構造的に複数層の表面形状を有する場合に、その内部構造についても立体形状を計測して表面形状データを得ることができ、対象物について、より有効な表面形状モデルを得ることができる。こうしたＸ線ＣＴ装置による表面形状モデルでは、それを画面上に表示しての対話的操作の際に内部構造の表面形状（以下、これを仮に「内部表面形状」と呼ぶ）が外部構造の表面形状（以下、これを仮に「外部表面形状」と呼ぶ）により隠された状態にある。このためＸ線ＣＴ装置による表面形状モデルについて、その表面形状モデルを画面上に表示した対話的操作で内部表面形状もＢ−ｒｅｐｓデータに変換するには、外部表面形状で隠されている内部表面形状を画面上に順次表示できるようにする必要がある。
【０００６】
内部表面形状の表示については、これまで２つの手法が主なものとして知られている。第１の方法では、画面上に表示されている外部表面形状のうちから切断する面を利用者が指定し、またそこにおける切断方向を利用者が指定し、これにより表面形状モデルつまりポリゴンデータを切断して内部表面形状を露出させることで表示する。図７に、第１の方法で内部表面形状を表示する例を示す。図７の（ａ）は、表示されているポリゴンデータに切断面とその切断方向を指定する状態を示しており、図中に黒線で示した矩形領域が指定面の切断方向を表わしている。図７の（ｂ）、（ｃ）は、（ａ）の条件で内部表面形状を露出させて表示した例を示している。
【０００７】
第２の方法は、画面上に表示されているポリゴンデータの部分領域を利用者が選択し、その選択された部分領域を非表示にして内部表面形状を表示する方法である。図８に、第２の方法で内部表面形状を表示する例を示す。図８の（ａ）は、表示されているポリゴンデータに非表示とする部分領域を指定する状態を示しており、図中に示す黒線が選択された非表示部分領域を表わしている。図８の（ｂ）、（ｃ）は、（ａ）の条件で内部表面形状を露出させて表示した例を示している。
【０００８】
【特許文献１】特開２００２−２３００５６号公報
【特許文献２】特開昭６２−３７７８２号公報
【非特許文献１】「Modeling scattered function data on curved surfaces」（C.Bajaj/G.Xu）
【発明の開示】
【発明が解決しようとする課題】
【０００９】
上述した幾何学的な特徴面に着目してポリゴンデータをＢ−ｒｅｐｓデータに変換する手法は有効性が高い。しかし、Ｘ線ＣＴ装置による表面形状モデルのように内部表面形状を含む表面形状モデルについてそのポリゴンデータをＢ−ｒｅｐｓデータに変換する場合に課題を残している。すなわち内部表面形状を含む表面形状モデルについては、表示装置の画面上に表面形状モデルを表示して対話的に変換処理を行う場合に、上述のように外部表面形状で隠されている内部表面形状を表示させる必要があり、この内部表面形状表示処理に関して課題を残している。
【００１０】
具体的にいうと、上記第１の方法は、利用者の簡単な操作で内部表面形状を画面上に表示することを可能とするものの、対象物の構造が複雑になると内部表面形状の全体を画面上に表示することが困難になって内部表面形状のＢ−ｒｅｐｓデータを作成できない場合が起こり得るという問題を抱えている。一方、上記第２の方法は、対象物の構造が複雑であっても非表示部分領域を適切に選択すれば、内部表面形状の全体を画面上に表示することが可能である。しかし、内部構造が複雑でかつ大容量であるポリゴンデータの場合に、非表示部分領域の選択操作が非常に煩雑なものとなり、現実的には実行不可能になるという問題を抱えている。すなわち、構造が複雑でかつ大容量のポリゴンデータに対しては、内部表面形状を簡単に画面上に表示することができなくなり、内部表面形状のＢ−ｒｅｐｓデータを作成できない場合が起こり得るという問題である。
【００１１】
本発明は、上記のような事情を背景になされたものであり、内部表面形状を含む表面形状モデルのポリゴンデータのＢ−ｒｅｐｓデータへの変換について、ポリゴンデータが記述する対象物の構造が複雑でしかもポリゴンデータが大容量である場合でも、簡単な操作で内部表面形状を画面上に表示することができるようにし、このことにより内部表面形状も含む表面形状モデルを効率的にＢ−ｒｅｐｓデータに変換することができるようにすることを目的としている。
【課題を解決するための手段】
【００１２】
本発明では上記目的のために、入れ子構造的に複数層の表面形状を有する表面形状モデルのポリゴンデータをその最外層の表面形状から順次的に表示装置の画面に表示しながら、各層の表面形状についてポリゴンデータを順次的にＢ−ｒｅｐｓデータ化することで、前記ポリゴンデータのＢ−ｒｅｐｓデータへの変換を行う立体形状データ変換方法において、ポリゴンを画面上に表示するか否かを示す属性である表示属性をポリゴンごとに記述したデータ構成で前記ポリゴンデータを構成するものとし、そして前記表面形状の順次表示は、前の表面形状の表示におけるＢ−ｒｅｐｓデータ化で生成されたＢ−ｒｅｐｓデータに記述されているサーフェスに含まれるポリゴンかまたは含まれないポリゴンのいずれかを前記ポリゴンデータから検索し、その検索に基づいて前記ポリゴンの表示属性を設定して更新したポリゴンデータにより次の表面形状の表示を行うことでなすようにされていることを特徴としている。
【００１３】
また本発明では上記のような立体形状データ変換方法について、ポリゴンの表示属性を「非表示」とするサーフェスを選択することができるようにしている。
【００１４】
また本発明では、上記のような立体形状データ変換方法を実行するについて、当該方法を実行するための手順が記述されているコンピュータプログラムを介在させるものとしている。
【００１５】
本発明では上記目的のために、入れ子構造的に複数層の表面形状を有する表面形状モデルのポリゴンデータをその最外層の表面形状から順次的に表示装置の画面に表示しながら、各層の表面形状についてポリゴンデータを順次的にＢ−ｒｅｐｓデータ化することで、前記ポリゴンデータのＢ−ｒｅｐｓデータへの変換を行うようにされた立体形状データ変換装置において、ポリゴンを画面上に表示するか否かを示す属性である表示属性をポリゴンごとに記述したデータ構成で前記ポリゴンデータを構成するようにされ、また前記表面形状の順次表示は、前の表面形状の表示におけるＢ−ｒｅｐｓデータ化で生成されたＢ−ｒｅｐｓデータに記述されているサーフェスに含まれるポリゴンの表示属性を「非表示」にして更新したポリゴンデータにより次の表面形状の表示を行うことでなすようにされ、そしてそのために、前記サーフェスに含まれるポリゴンかまたは含まれないポリゴンのいずれかを前記ポリゴンデータから検索し、その検索に基づいて前記ポリゴンの表示属性を設定して前記ポリゴンデータの更新を行うポリゴンデータ更新手段を備えていることを特徴としている。
【００１６】
また本発明では上記のような立体形状データ変換装置について、ポリゴンの表示属性を「非表示」とするサーフェスを選択するためのサーフェス選択手段を備えるものとしている。
【発明の効果】
【００１７】
本発明では、前の表面形状の表示におけるＢ−ｒｅｐｓデータ化で生成されたＢ−ｒｅｐｓデータに記述されているサーフェスに含まれるポリゴンまたは含まれないポリゴンのいずれかをポリゴンデータから検索し、その検索に基づいてポリゴンの表示属性を設定して更新したポリゴンデータにより次の表面形状の表示を行うことで表面形状の順次表示をなすようにしている。このため表面形状の順次表示について、利用者はサーフェスに含まれるポリゴンまたは含まれないポリゴンの検索条件を入力する操作を行うだけで済ませることができる。したがって本発明によれば、ポリゴンデータが記述する対象物の構造が複雑でしかもポリゴンデータが大容量である場合でも、簡単な操作で入れ子構造における各層の内部表面形状を画面上に順次表示することを可能となり、このことにより内部表面形状を含む表面形状モデルを効率的にＢ−ｒｅｐｓデータに変換することが可能となる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明を実施するための形態について説明する。図１に第１の実施形態による立体形状データ変換装置のシステム構成を示す。本実施形態における立体形状データ変換装置は、入力されたポリゴンデータＰＤからＢ−ｒｅｐｓデータＢＤを作成して、これを出力する。そのために、ポリゴン記憶手段１、入力手段２、Ｂ−ｒｅｐｓ生成手段３、Ｂ−ｒｅｐｓ記憶手段４、ポリゴンデータ更新手段５、および表示手段６を備えている。
【００１９】
ポリゴン記憶手段１は、メモリやハードディスクで構成され、入力されたデータを記憶し、必要時に出力する機能を持つ。ポリゴン記憶手段１が記憶するポリゴンデータＰＤは、対象物の表面形状モデルを微小な３角形面（ポリゴン）の集合として記述するデータである。このようなポリゴンデータＰＤは、上記の従来におけるポリゴンデータ作成手法によりビットマップデータや点群データから作成されるのが通常である。
【００２０】
ポリゴンデータＰＤは、各ポリゴンの頂点座標や各ポリゴンの表示属性つまり当該ポリゴンを画面上に表示するかどうかを示す属性を記述したデータ構成とされている。すなわちポリゴンデータＰＤは、例えば次のようなデータ構成となる。
ポリゴン１＝（頂点１の座標（Ｘ１,Ｙ１,Ｚ１），頂点２の座標（Ｘ２,Ｙ２,Ｚ２），
頂点３の座標（Ｘ３,Ｙ３,Ｚ３），表示属性）
ポリゴン２＝（頂点１の座標（Ｘ１,Ｙ１,Ｚ１），頂点２の座標（Ｘ２,Ｙ２,Ｚ２），
頂点３の座標（Ｘ３,Ｙ３,Ｚ３），表示属性）
：
ポリゴンｎ＝（頂点１の座標（Ｘ１,Ｙ１,Ｚ１），頂点２の座標（Ｘ２,Ｙ２,Ｚ２），
頂点３の座標（Ｘ３,Ｙ３,Ｚ３），表示属性）
表示属性に関しては、例えば、ポリゴンを画面上に表示する場合（「表示」とする場合）に表示属性＝１、画面上に表示しない場合（「非表示」とする場合）に表示属性＝０とする。
【００２１】
入力手段２は、キーボードやマウスなどで構成され、ポリゴンデータＰＤからＢ−ｒｅｐｓデータＢＤを作成して出力するまでの処理に必要なコマンドなどを利用者が入力するのに機能する。すなわち利用者は、この入力手段２を介してＢ−ｒｅｐｓ生成コマンドＣＤ１やポリゴンデータ更新コマンドＣＤ２などのコマンドを入力する。
【００２２】
Ｂ−ｒｅｐｓ生成手段３は、ポリゴンデータＰＤとＢ−ｒｅｐｓ生成コマンドＣＤ１を受け、Ｂ−ｒｅｐｓデータＢＤを作成してＢ−ｒｅｐｓ記憶手段４に送る機能を持つ。Ｂ−ｒｅｐｓデータＢＤは、上記の従来におけるＢ−ｒｅｐｓデータ作成手法により作成されるのが通常である。
【００２３】
Ｂ−ｒｅｐｓ記憶手段４は、メモリやハードディスクで構成されており、Ｂ−ｒｅｐｓデータＢＤを記憶し、また必要なときに出力する機能を持つ。
【００２４】
ポリゴンデータ更新手段５は、後述するようにして順次更新されて行くポリゴンデータＰＤの表示ごとになされるＢ−ｒｅｐｓデータ化で生成されたＢ−ｒｅｐｓデータＢＤに記述されているサーフェスに含まれるポリゴンかまたは含まれないポリゴンのいずれかをポリゴンデータＰＤから検索し、その検索に基づいてポリゴンデータＰＤを更新する機能を持つ。具体的には、ポリゴンデータ更新コマンドＣＤ２とポリゴンデータＰＤとＢ−ｒｅｐｓデータＢＤを受けて、ポリゴンデータＰＤにおけるポリゴンからサーフェスに含まれるポリゴンかまたは含まれないポリゴンのいずれかを検索し、その検索に基づいて表示属性を変更してポリゴンデータＰＤを更新する。
【００２５】
こうしたポリゴンデータの更新は、ポリゴンデータＰＤから内部表面形状に属するポリゴンを検索し、その検索に基づいてポリゴンデータＰＤを更新する、つまりポリゴンデータＰＤにおけるポリゴンから内部表面形状に属するポリゴンを内部ポリゴンとして検索し、その検索に基づいて表示属性を変更してポリゴンデータＰＤを更新する、と言い換えることもできる。なお、後の説明から分かるように、内部表面形状は、Ｂ−ｒｅｐｓデータへの変換処理の進行にしたがって順次交代して行くものであり、あるパスで内部表面形状であった表面形状は次のパスでは外部表面形状となる。ここで、「パス」とは、後述するように、入れ子構造で複数層の表面形状を含むポリゴンデータＰＤに対してステップＰ４からステップＰ６までの処理を１つの層の表面形状ごと適用する過程を意味している。
【００２６】
表示手段６は、ポリゴン記憶手段１からポリゴンデータＰＤを、Ｂ−ｒｅｐｓ記憶手段４からＢ−ｒｅｐｓデータＢＤを、それぞれ取り出して(入力して)、利用者に視覚的に表示する機能を持つ。ポリゴンデータＰＤについては、表示属性の値が１であるポリゴンのみを選択的に表示する。すなわち表示属性＝１のポリゴンによる表面形状だけが表示手段６の画面に表示され得る。ただし、外部表面形状で隠されている内部表面形状は、そのポリゴンの表示属性が１であっても実際には表示されない（画面上に現れない）ことになる。
【００２７】
以上が立体形状データ変換装置の構成である。次に、立体形状データ変換装置で実行される立体形状データ変換方法の実施形態について説明する。本実施形態の立体形状データ変換方法における処理は、図２にその流れを示すように、ステップＰ１〜ステップＰ７の７つの処理過程を含む。
【００２８】
ステップＰ１（ポリゴンデータ読み込み過程）では、ポリゴン記憶手段１を用いてポリゴンデータＰＤを読み込む。このポリゴンデータＰＤの読込みでは、ポリゴンデータＰＤにおける全てのポリゴンの表示属性を１に設定して初期化することで初期化ポリゴンデータＰＤ１を生成する。ここで、後の説明からわかるように、ポリゴンデータＰＤは処理の進行にしたがって順次更新されて行く。すなわちポリゴンデータＰＤ１は、これで記述される表面形状モデルが有する内部構造の多層性における層数ｎに応じて繰り返されるパスごとにポリゴンデータＰＤ２、ポリゴンデータＰＤ３、…、ポリゴンデータＰＤｉ、…、ポリゴンデータＰＤｎというように順次更新されて行く。したがってポリゴンデータＰＤはポリゴンデータＰＤｉということになる。
【００２９】
ステップＰ２（初期化ポリゴンデータ表示過程）では、表示手段６を用いてポリゴンデータＰＤを画面上に表示する。この表示では、ポリゴンデータＰＤにおけるポリゴンのうちの表示属性＝１のポリゴンが選択的に表示される。ただ、上述のように、外部表面形状で隠されている内部表面形状は、そのポリゴンが表示属性＝１であっても実際には表示されない。
【００３０】
ステップＰ３（初期化ポリゴンデータからのＢ−ｒｅｐｓデータ生成過程）では、Ｂ−ｒｅｐｓ生成手段３を用いてポリゴンデータＰＤからＢ−ｒｅｐｓデータＢＤを作成する。Ｂ−ｒｅｐｓデータＢＤの作成は上述の手法で行なわれる。具体的には、表示手段６の画面上に表示されているポリゴンデータＰＤつまり表面形状モデルを見ながら利用者が対話的な操作で幾何学的特徴面の抽出などを行ってＢ−ｒｅｐｓデータを作成する。したがってＢ−ｒｅｐｓデータＢＤの作成では、表面形状モデルにおける表面形状のうちで画面上に表示されている表面形状つまり外部表面形状についてのみ行われ、この時点で外部表面形状である面についてのみＢ−ｒｅｐｓデータが作成される。このためＢ−ｒｅｐｓデータＢＤは、ポリゴンデータＰＤの更新にしたがって順次更新されて行く。すなわちＢ−ｒｅｐｓデータＢＤは、ポリゴンデータＰＤ１に基づくＢ−ｒｅｐｓデータＢＤ１、ポリゴンデータＰＤ２に基づくＢ−ｒｅｐｓデータＢＤ２、ポリゴンデータＰＤ３に基づくＢ−ｒｅｐｓデータＢＤ３、…、ポリゴンデータＰＤｉに基づくＢ−ｒｅｐｓデータＢＤｉ、…、ポリゴンデータＰＤｎに基づくＢ−ｒｅｐｓデータＢＤｎというように順次更新されて行く。したがってＢ−ｒｅｐｓデータＢＤはＢ−ｒｅｐｓデータＢＤｉということになる。
【００３１】
ステップＰ４（ポリゴンデータ更新過程）では、ポリゴンデータ更新手段５がポリゴンデータ更新処理を行う。ポリゴンデータ更新処理における処理の流れを図３に示す。この処理は、ステップＰ８〜ステップＰ１４の７つの処理過程を含む。
【００３２】
ステップＰ８(サーフェス登録過程)では、Ｂ−ｒｅｐｓデータＢＤに記述されているサーフェスをサーフェスリストに登録する。
【００３３】
ステップＰ９（ポリゴン選択パラメータ設定過程）では、入力手段２を用いて、ポリゴン選択パラメータを決定するための入力を行う。ポリゴン選択パラメータは、ポリゴンデータＰＤから非表示ポリゴンを選択するために必要となるパラメータであり、ポリゴンとサーフェスの内包関係を判定するために用いる後述のような距離しきい値が記述されている。
【００３４】
ステップＰ１０（ポリゴン表示属性初期化過程）では、ポリゴンデータＰＤにおける全てのポリゴンの表示属性を１に設定する。なお、このポリゴン表示属性初期化過程は、ステップＰ１のポリゴンデータ読み込み過程でポリゴンデータＰＤにおける全てのポリゴンの表示属性を１に設定してあることから、省略することもできる。
【００３５】
ステップＰ１１（ポリゴン内包関係判定過程）では、ポリゴンとサーフェスの内包関係をポリゴンデータＰＤにおける全てのポリゴンについて判定する。ポリゴンとサーフェスの内包関係の判定は、ポリゴンのサーフェスに対する距離がポリゴン選択パラメータに記述の距離しきい値以下か否かで行われる。ポリゴンがサーフェスに内包される、すなわち当該ポリゴンのサーフェスに対する距離が距離しきい値以下であり、サーフェスの近傍にあると判定されれば、ステップＰ１２（ポリゴン表示属性設定過程）において、当該ポリゴンの表示属性を０に設定し、ステップＰ１４（内部ポリゴン検索処理済判定過程）に進む。一方、当該ポリゴンがサーフェスに内包されない、すなわち当該ポリゴンのサーフェスに対する距離が距離しきい値より大きく、サーフェスの近傍にないと判定されれば、ステップＰ１３（内包関係判定処理済判定過程）に進み、サーフェスリストに含まれる全てのサーフェスに対して内包関係を判定したか否かを判断し、その判断結果が否定的であれば、ステップＰ１１に戻ってステップＰ１２までを残りのサーフェスについて繰り返し、その判断結果が肯定的になればステップＰ１４に進む。
【００３６】
ステップＰ１４では、ポリゴンデータＰＤに記述されている全てのポリゴンに対して、サーフェスリストに含まれるサーフェスとの内包関係を判定したか否かを判断し、その判断結果が否定的であれば、ステップＰ１０に戻ってステップＰ１３までを残りのポリゴンについて繰り返し、その判断結果が肯定的となれば処理を終了する。
【００３７】
以上のようなポリゴンデータ更新処理により、Ｂ−ｒｅｐｓデータＢＤに記述されているサーフェスの近傍にあるポリゴンつまりサーフェスに含まれるポリゴンはその表示属性が０とされ、サーフェスの近傍にないポリゴンつまりサーフェスに含まれないポリゴンはその表示属性が１のままとされてポリゴンデータＰＤの更新がなされる。
【００３８】
図２に戻る。ステップＰ５（ポリゴンデータ表示更新過程）では、表示手段６によりポリゴンデータＰＤの表示の更新がなされる。すなわちポリゴンデータ更新過程を経て更新されたポリゴンデータＰＤの表示を行う。この更新表示では、ポリゴンデータＰＤで記述される表面形状モデルの多層構造（表面形状の入れ子構造）における１つの層の表面形状が表示される。すなわち表面形状モデルが第１層の内部に第２層、第３層、…、第ｉ層、…、第ｎ層というように複数の層を含む多層構造であれば、表示更新ごとに第２層、第３層、…、第ｉ層、…、第ｎ層それぞれの表面形状が順に外部表面形状として表示されることになる。例えば図７の表面形状モデルの場合、（ｃ）に見られるように、筒状の構造体Ｐａの内部に筒状の構造体Ｐｂが設けられており、構造体Ｐａ、Ｐｂはそれぞれある厚みを持ち、それぞれ表面と裏面を持っている。この表面形状モデルの場合は、構造体Ｐａと構造体Ｐｂにだけ着目すると、構造体Ｐａの表面が第１層の表面形状となり、構造体Ｐａの裏面が第２層の表面形状となり、構造体Ｐｂの表面が第３層の表面形状となり、構造体Ｐｂの裏面が第４層の表面形状となる。
【００３９】
ステップＰ６（更新ポリゴンデータからのＢ−ｒｅｐｓデータ生成過程）では、ポリゴンデータ更新過程で更新されたポリゴンデータＰＤからＢ−ｒｅｐｓ生成手段３を用いてＢ−ｒｅｐｓデータＢＤを作成する。すなわちステップＰ５で更新表示されたポリゴンデータＰＤを見ながら利用者が対話的な操作で幾何学的特徴面の抽出などを行ってＢ−ｒｅｐｓデータを作成する。上述のように、ステップＰ５の更新表示では第ｉ層の表面形状だけが外部表面形状（これは第ｉ層の上の層の表面形状に対しては内部表面形状となる）として表示されているので、この第ｉ層の表面形状に対してＢ−ｒｅｐｓデータが作成され、Ｂ−ｒｅｐｓデータＢＤｉが生成される。
【００４０】
ステップＰ７（Ｂ−ｒｅｐｓデータ生成済み判定過程）では、ポリゴンデータＰＤに含まれる全ての表面形状つまり第１層〜第ｎ層の全ての表面形状に対してＢ−ｒｅｐｓデータを生成する処理を終えたか否かを判定する。その判定が否定的な場合はステップＰ４からステップＰ６までの処理を繰り返す。一方、ステップＰ６で判定が肯定的になった場合、もしくは判定が否定的であっても利用者がＢ−ｒｅｐｓデータＢＤを生成する処理を打ち切ると判断した場合は処理を終了する。
【００４１】
以上が、立体形状データ変換装置による立体形状データ変換処理である。図４に、内部構造を有するポリゴンデータに対して、本実施形態による処理を施す場合の表面形状の表示の例を示す。図４の（ａ）は、内部構造を有するポリゴンデータがその第１層の表面形状について表示されている例である。このようなポリゴンデータに対して、本実施形態による対象物内部の表面形状表示方法を適用した。具体的には、まずステップＰ２で表示されるポリゴンデータ（（ａ）の表示状態）に対してＢ−ｒｅｐｓデータを作成した。図４の（ｂ）がその結果である。次に、図４の（ａ）のポリゴンデータと、図４の（ｂ）のＢ−ｒｅｐｓデータを用いて内部ポリゴンを検索することでポリゴンデータの更新を行い、その更新後のポリゴンデータを表示させた。図４の（ｃ）と（ｄ）がその結果である。
【００４２】
以上のようなに、立体形状データ変換装置では、入れ子構造で複数層の表面形状を含むポリゴンデータをＢ−ｒｅｐｓデータに変換するために各層の表面形状を順次表示させる処理について、利用者はポリゴン選択パラメータの入力操作を行うだけで済ませることができる。すなわちポリゴンデータが記述する対象物の構造が複雑でしかもポリゴンデータが大容量である場合でも、簡単な操作で入れ子構造における各層の表面形状（内部表面形状）を画面上に順次表示することを可能とし、このことにより内部表面形状も含む表面形状モデルを効率的にＢ−ｒｅｐｓデータに変換することが可能となる。
【００４３】
以下では、第２の実施形態について説明する。図５に、第２の実施形態による立体形状データ変換装置のシステム構成を示す。本実施形態における立体形状データ変換装置は、ポリゴン記憶手段１、入力手段２、Ｂ−ｒｅｐｓ生成手段３、Ｂ−ｒｅｐｓ記憶手段４、ポリゴンデータ更新手段５、表示手段６、サーフェス選択手段７、選択サーフェス記憶手段８を備えている。これらの機能手段の内のポリゴン記憶手段１、入力手段２、Ｂ−ｒｅｐｓ生成手段３、Ｂ−ｒｅｐｓ記憶手段４、ポリゴンデータ更新手段５、表示手段６は、第１の実施形態による立体形状データ変換装置におけるそれらと同一である。すなわち本実施形態の立体形状データ変換装置は、第１の実施形態による立体形状データ変換装置に、サーフェス選択手段７と選択サーフェス記憶手段８を付加した構成となっている。
【００４４】
第１の実施形態による立体形状データ変換装置では、ポリゴンデータ更新過程における内部ポリゴンの選択においてＢ−ｒｅｐｓデータＢＤに記述されている全てのサーフェスを対象とている。すなわちポリゴンデータ表示更新過程では、全てのサーフェスついてそれに含まれるポリゴンを表示させないものとしている。しかしながら、表面形状モデルの内部構造の状態によっては、Ｂ−ｒｅｐｓデータＢＤに記述されているサーフェスのうち、利用者が指定したサーフェスに含まれるポリゴンのみを非表示にし、それ以外のポリゴンを画面上に表示した状態で内部表面形状のＢ−ｒｅｐｓデータを作成するようにした方が都合のよい場合もある。例えば、外部表面形状と内部表面形状が近接するような領域では、外部表面形状と内部表面形状を同時に表示した方が、それらの構造関係をより適切に把握することができ、そうすることで内部表面形状に対してより簡単にＢ−ｒｅｐｓデータを作成することができるようになる場合がある。このような場合には、必要に応じて特定のサーフェスについてはその近傍にあるポリゴンを表示できるようにする、つまりサーフェスについてポリゴンの表示と非表示を選択できるようにする必要がある。こうした機能要求に応えるのが本実施形態の立体形状データ変換装置におけるサーフェス選択手段７と選択サーフェス記憶手段８である。
【００４５】
サーフェス選択手段７は、サーフェス選択コマンドＣＤ３とＢ−ｒｅｐｓデータＢＤを受けて、選択サーフェスデータＳＤを生成し、これを選択サーフェス記憶手段８に送る。選択サーフェスデータＳＤは、ポリゴンを非表示とするものとして利用者が選択したサーフェスを記述するデータである。
【００４６】
選択サーフェス記憶手段８は、メモリやハードディスクで構成されており、選択サーフェスデータＳＤを記憶し、また必要時に出力する機能を持つ。
【００４７】
図６に、ポリゴンデータ更新手段５でなされるポリゴンデータ更新処理の流れを示す。この処理は、ステップＰ８ａ〜ステップＰ１４ａの７つの処理過程を含む。ステップＰ８ａ (選択サーフェス登録過程)では、選択サーフェスデータＳＤに記述されているサーフェスをサーフェスリストに登録する。ステップＰ８ａに続くステップＰ９ａ〜ステップＰ１４ａは、第１の実施形態におけるステップＰ９〜ステップＰ１４に対応しており、それらついて説明したのと同一の処理を行う。
【００４８】
本実施形態では、第１の実施形態と同様な効果が得られるのに加えて、表面形状モデルの内部構造の状態に応じて、より適した処理を行えるようになるという効果が得られる。
【産業上の利用可能性】
【００４９】
本発明は、大容量かつ複雑な内部表面形状を有するポリゴンデータについても簡単な操作でＢ−ｒｅｐｓデータへの変換を可能とするものであり、Ｂ−ｒｅｐｓデータが利用される設計や解析の分野などにおいて有用なものとして広く利用することができる。
【図面の簡単な説明】
【００５０】
【図１】第１の実施形態による立体形状データ変換装置の構成を示す図である。
【図２】第１の実施形態による立体形状データ変換装置で実行される立体形状データ変換処理の流れを示す図である。
【図３】第１の実施形態による立体形状データ変換装置におけるポリゴンデータ更新処理の流れを示す図である。
【図４】第１の実施形態による立体形状データ変換装置で内部表面形状を表示する具体的な例を示す図である。
【図５】第２の実施形態による立体形状データ変換装置の構成を示す図である。
【図６】第２の実施形態による立体形状データ変換装置におけるポリゴンデータ更新処理の流れを示す図である。
【図７】ポリゴンデータで記述された表面形状モデルも内部表面形状を従来の手法の一つで表示する例を示す図である。
【図８】ポリゴンデータで記述された表面形状モデルも内部表面形状を従来の手法の他の一つで表示する例を示す図である。
【符号の説明】
【００５１】
５    ポリゴンデータ更新手段
７    サーフェス選択手段
ＢＤ    Ｂ−ｒｅｐｓデータ
Ｐ４    ポリゴンデータ更新過程
Ｐ５    ポリゴンデータ表示更新過程
Ｐ６    更新ポリゴンデータからのＢ−ｒｅｐｓデータ生成過程
ＰＤ    ポリゴンデータ
ＳＤ    選択サーフェスデータ
【図１】
0004707543.tif 000002
【図２】
0004707543.tif 000003
【図３】
0004707543.tif 000004
【図４】
0004707543.tif 000005
【図５】
0004707543.tif 000006
【図６】
0004707543.tif 000007
【図７】
0004707543.tif 000008
【図８】
0004707543.tif 000009