(57)【要約】【課題】  ３次元ビットマップデータからアスペクト比の小さい３角形面で構成される３次元表面形状モデルを生成する。【解決手段】  ３次元物体を含む３次元空間内に配置した直交格子点における３次元物体に関連する少なくとも１種類の物理的な性質の値を表す信号データの３次元配列を貯蔵し、信号データと予定の閾値と比較し、閾値以上の格子点を検索し、検索した格子点から、少なくとも１つの閾値未満の信号データを持つ格子点に最近接する格子点を検索し、それらの間に長方形状の境界面を発生させ、境界面の頂点とそれを囲む８つの格子点における信号データを使用して、頂点を一定方向に移動させ、そこでの８つの格子点における信号データを線形補間して得られる信号データが、閾値と一致する位置を頂点移動手段により検索し、その頂点移動手段にて移動させた境界面の４つの頂点を連結させ、２つの３角形面を発生させ、その発生させた３角形面の情報を保存する。【選択図】図１
2005352926.tif 000002
【特許請求の範囲】
【請求項１】
３次元物体の表面形状を３角形面から成る多様体としてモデル化する３次元表面形状モデル作成装置において、
前記３次元物体を含む３次元空間内に配置した直交格子点における前記３次元物体に関連する少なくとも１種類の物理的な性質の値を表わす信号データの３次元配列を貯蔵する信号データ貯蔵手段と、
前記信号データと予定の閾値と比較し、前記閾値以上の格子点を検索する格子点検索手段と、
前記検索した格子点から、少なくとも１つの閾値未満の信号データを持つ格子点に最近接する格子点を検索し、それらの間に長方形状の境界面を発生させる境界面発生手段と、
前記境界面の頂点とそれを囲む８つの格子点における前記信号データを使用して、前記頂点を一定方向に移動させ、そこでの前記８つの格子点における信号データを線形補間して得られる信号データが、前記閾値と一致する位置を検索する頂点移動手段と、
前記頂点移動手段にて移動させた前記境界面の４つの頂点を連結させ、２つの３角形面を発生させる３角形面発生手段と、
前記３角形面発生手段にて発生させた３角形面の情報を保存する３角形面保存手段を有することを特徴とする前記３次元表面形状モデル作成装置。
【請求項２】
請求項１の３次元表面形状モデル作成装置であって、前記信号検索手段の前処理手段として、
１つの格子点、及びそれを囲む２６個の格子点の信号データと予定のしきい値を比較して、２７桁の２進数データを発生させる２進数データ発生手段と、
前記２進数データと予め定めたパターンと照合して、多様体にならない不良な境界面を発生させる前記２進数データを検索する不良パターン検索手段と、
前記不良パターン検索手段にて検索した格子点における信号データを修正する信号データ修正手段と、
前記信号データ修正手段にて修正した信号データを貯蔵する修正信号データ貯蔵手段を
有することを特徴とする前記３次元表面形状モデル作成装置。
【請求項３】
請求項２の３次元表面形状モデル作成装置であって、
前記頂点移動手段にて移動させた前記境界面の４つの頂点からなる４角形面保存手段を
有することを特徴とする前記３次元表面形状モデル作成装置。
【請求項４】
請求項２の３次元表面形状モデル作成装置であって、前記境界面発生手段の後処理手段として、
前記境界面発生手段にて発生させた境界面を貯蔵する境界面貯蔵手段と、
前記境界面貯蔵手段から、同一平面上にあってかつ辺を共有する境界面を検索して、それらを合併させ１つの多角形とすることにより、境界面の数を縮減させる境界面縮減手段と、
前記多角形の頂点を前記頂点移動手段にて移動させた後、前記多角形を複数の３角形面に分割する多角形分割手段を有することを特徴とする前記３次元表面形状モデル作成装置。
【請求項５】
３次元物体の表面形状を３角形面から成る多様体としてモデル化する３次元表面形状モデル作成方法において、
前記３次元物体を含む３次元空間内に配置した直交格子点における前記３次元物体に関連する少なくとも１種類の物理的な性質の値を表わす信号データの３次元配列を貯蔵し、
前記信号データと予定の閾値と比較し、前記閾値以上の格子点を検索し、
前記検索した格子点から、少なくとも１つの閾値未満の信号データを持つ格子点に最近接する格子点を検索し、それらの間に長方形状の境界面を発生させ、
前記境界面の頂点とそれを囲む８つの格子点における前記信号データを使用して、前記頂点を一定方向に移動させ、そこでの前記８つの格子点における信号データを線形補間して得られる信号データが、前記閾値と一致する位置を頂点移動手段により検索し、
前記頂点移動手段にて移動させた前記境界面の４つの頂点を連結させ、２つの３角形面を発生させ、
その発生させた３角形面の情報を保存することを特徴とする前記３次元表面形状モデル作成方法。
【請求項６】
３次元物体の表面形状を３角形面から成る多様体としてモデル化する機能を実現するための３次元表面形状モデル作成プログラムであって、
前記３次元物体を含む３次元空間内に配置した直交格子点における前記３次元物体に関連する少なくとも１種類の物理的な性質の値を表わす信号データの３次元配列を貯蔵する信号データ貯蔵機能と、
前記信号データと予定の閾値と比較し、前記閾値以上の格子点を検索する格子点検索機能と、
前記検索した格子点から、少なくとも１つの閾値未満の信号データを持つ格子点に最近接する格子点を検索し、それらの間に長方形状の境界面を発生させる境界面発生機能と、
前記境界面の頂点とそれを囲む８つの格子点における前記信号データを使用して、前記頂点を一定方向に移動させ、そこでの前記８つの格子点における信号データを線形補間して得られる信号データが、前記閾値と一致する位置を検索する頂点移動機能と、
前記頂点移動手段にて移動させた前記境界面の４つの頂点を連結させ、２つの３角形面を発生させる３角形面発生機能と、
前記３角形面発生手段にて発生させた３角形面の情報を保存する３角形面保存機能を実現するための３次元表面形状モデル作成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元表面形状モデル作成装置，３次元表面形状モデル作成方法及び３次元表面形状モデル作成プログラムに関する。
【背景技術】
【０００２】
設計製造プロセスの効率化手段の１つとして、実体物から作成したデジタルデータに基づいて、熱，振動，応力，流体解析などを行うリバースエンジニアリングに対するニーズが高まっている。このニーズを満たすには、Ｘ線ＣＴ装置などから得られる実体物の３次元ビットマップデータを３次元表面形状へ精度良くモデル化する技術が不可欠である。これらのニーズ・課題については、特開２００４−６２７７７号公報に説明されている。ここで、３次元ビットマップデータとは、３次元空間内に配置した直交格子点において、３次元物体に関連する少なくとも１種類の物理的な性質の値を表わす信号データの３次元配列集合として記述されるデータのことである。課題である３次元ビットマップデータから３次元表面形状モデルを作成することを可能とする従来技術として、マーティング・キューブ法が特開昭６２−３７７８２号公報に述べられている。
【０００３】
【特許文献１】特開２００４−６２７７７号公報
【特許文献２】特開昭６２−３７７８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献２の３次元表面形状モデルでは、モデルを構成する３角形面のゆがみ具合（アスペクト比）が大きく、３次元表面形状モデルから数値解析用のメッシュを生成する際には、３角形面のアスペクト比が小さくなるよう、一旦、モデルを修正する必要がある。その際に、３次元表面形状モデルの形状が、元の形状から変形するという課題が残る。３次元表面形状モデルを修正することなく、あるいは修正するとしてもわずかな修正で数値解析用のメッシュとして使用できるように、３次元ビットマップデータからアスペクト比の小さい３角形面で構成される３次元表面形状モデルを生成する技術が望まれる。
【０００５】
本発明の目的は、３次元ビットマップデータからアスペクト比の小さい３角形面で構成される３次元表面形状モデルを生成することにある。
【課題を解決するための手段】
【０００６】
３次元物体の表面形状を３角形面から成る多様体としてモデル化する３次元表面形状モデル作成装置において、前記３次元物体を含む３次元空間内に配置した直交格子点における前記３次元物体に関連する少なくとも１種類の物理的な性質の値を表わす信号データの３次元配列を貯蔵する信号データ貯蔵手段と、前記信号データと予定の閾値と比較し、前記閾値以上の格子点を検索する格子点検索手段と、前記検索した格子点から、少なくとも１つの閾値未満の信号データを持つ格子点に最近接する格子点を検索し、それらの間に長方形状の境界面を発生させる境界面発生手段と、前記境界面の頂点とそれを囲む８つの格子点における前記信号データを使用して、前記頂点を一定方向に移動させ、そこでの前記８つの格子点における信号データを線形補間して得られる信号データが、前記閾値と一致する位置を検索する頂点移動手段と、前記頂点移動手段にて移動させた前記境界面の４つの頂点を連結させ、２つの３角形面を発生させる３角形面発生手段と、前記３角形面発生手段にて発生させた３角形面の情報を保存する３角形面保存手段を有することを特徴とする。
【発明の効果】
【０００７】
３次元ビットマップデータからアスペクト比の小さい３角形面で構成される３次元表面形状モデルを生成することにある。
【発明を実施するための最良の形態】
【０００８】
３次元物体の表面形状を３角形面から成る多様体としてモデル化する３次元表面形状モデル作成装置において、前記３次元物体を含む３次元空間内に配置した直交格子点における前記３次元物体に関連する少なくとも１種類の物理的な性質の値を表わす信号データの３次元配列を貯蔵する信号データ貯蔵手段と、前記信号データと予定の閾値と比較し、前記閾値以上の格子点を検索する格子点検索手段と、前記検索した格子点から、少なくとも１つの閾値未満の信号データを持つ格子点に最近接する格子点を検索し、それらの間に長方形状の境界面を発生させる境界面発生手段と、前記境界面の頂点とそれを囲む８つの格子点における前記信号データを使用して、前記頂点を一定方向に移動させ、そこでの前記８つの格子点における信号データを線形補間して得られる信号データが、前記閾値と一致する位置を検索する頂点移動手段と、前記頂点移動手段にて移動させた前記境界面の４つの頂点を連結させ、２つの３角形面を発生させる３角形面発生手段と、前記３角形面発生手段にて発生させた３角形面の情報を保存する３角形面保存手段を有し、３次元ビットマップデータからアスペクト比の小さい３角形面で構成される３次元表面形状モデルを生成する。
【実施例１】
【０００９】
本発明による３次元表面形状モデル生成装置の第１実施例の構成を図１に示す。３次元表面形状モデル生成装置Ｃは、３次元ビットマップデータＤ１から３角形面で構成される３次元表面形状モデルＤ２を生成する機能を備え、信号データ貯蔵手段Ｃ１１，格子点検索手段Ｃ１２，境界面発生手段Ｃ１３，頂点移動手段Ｃ１４，３角形面発生手段Ｃ１５，３角形面貯蔵手段Ｃ１６を備えている。
【００１０】
信号データ貯蔵手段Ｃ１１は、メモリやハードディスクで構成されており、入力された３次元ビットマップデータＤ１を記憶して、必要な時に出力する機能を持つ。信号データ貯蔵手段Ｃ１１が記憶する３次元ビットマップデータＤ１とは、３次元空間内に配置した直交格子点において、３次元物体に関連する少なくとも１種類の物理的な性質の値を表わす信号データの３次元配列集合として記述されるデータである。具体的な例として、Ｘ線ＣＴ装置を用いて３次元物体を測定することで信号データを取得する場合には、信号データは各格子点における物体の密度情報を表し、３次元ビットマップデータＤ１は物体の密度情報の３次元配列集合として記述される。
【００１１】
格子点検索手段Ｃ１２は、３次元ビットマップデータＤ１の各格子点における信号データと、あらかじめ定められた閾値を比較し、閾値以上の信号データを持つ格子点を検索する機能を持つ。ここでいう閾値とは、物体中のある特定の部材、構造物を識別するために、３次元ビットマップデータＤ１の各格子点と、これらの部材、構造物との内包関係を判別できるように設定される値である。例えば、密度情報を保持する３次元ビットマップデータから、鉄部材を識別し、鉄部材の３次元表面形状モデルを生成する場合には、格子点と鉄部材との内包関係が判別できるように閾値が設定される。閾値は、単純な場合では３次元空間内で一定値をとるが、空間位置ごとに異なる値をとっても構わない。
【００１２】
境界面発生手段Ｃ１３は、格子点検索手段Ｃ１２で検索した格子点から、少なくとも１つの閾値未満の信号データを持つ「格子点に最近接する格子点」を検索し、それらの間に長方形状の境界面Ｄ３を発生させる機能を持つ。「格子点に最近接する格子点」とは、図２に示すように、着目する格子点から見てｘ軸，ｙ軸，ｚ軸方向に隣接する６個の格子点のうちのいずれかである。次に、図３を用いて境界面Ｄ３を説明する。図３には、閾値以上の信号データを持つ格子点（格子点Ａ）と、それに最近接する閾値未満の信号データを持つ格子点（格子点Ｂ）とを結ぶ線に対して、この線を稜線として持つ４つの直方体が示されている。境界面Ｄ３とは、この４つの直方体の重心点を頂点とするような長方形面のことである。図３では、境界面Ｄ３がハッチングを付けた面として示されている。
【００１３】
頂点移動手段Ｃ１４は、境界面発生手段Ｃ１３で発生した境界面Ｄ３の頂点を、頂点における信号データが閾値と一致するように一定方向に移動させる機能を持つ。頂点移動手段Ｃ１４の詳しい動作については、図４を用いて後述する。
【００１４】
３角形面発生手段Ｃ１５は、頂点移動手段Ｃ１４にて移動させた境界面Ｄ３の４つの頂点を連結させ、２つの３角形面を発生させる機能を持つ。図５に示すように、４角形面を２つの３角形面に分割するパターンには２通りのパターンが考えられるが、生成される２つの３角形面のアスペクト比の和が小さくなる方のパターンを選択する。図５に示す例では、図５（ｂ）に示される分割パターンを選択する。
【００１５】
３角形面貯蔵手段Ｃ１６は、メモリやハードディスクで構成されており、３角形面発生手段Ｃ１５で生成された３角形面を記憶して、必要な時に３次元表面形状モデルＤ２を出力する機能を持つ。３次元表面形状モデルＤ２とは、３角形面発生手段Ｃ１５で生成された３角形面の集合で構成される、３次元表面形状を表現するモデルデータのことである。
【００１６】
次に、図４を用いて、頂点移動手段Ｃ１４の詳しい動作について説明する。ステップ
Ｐ１では、境界面Ｄ３の各頂点を囲む８つの格子点における信号データを取得する。図６には、境界面Ｄ３の１つの頂点Ｖｇに対して、頂点Ｖｇを囲む８つの格子点が示されている。
【００１７】
ステップＰ２では、ステップＰ１で取得した格子点における信号データＸ１〜Ｘ８に対して、最大値（Ｘｍａｘ）とそれを与える格子点Ｖｍａｘ、及び最小値（Ｘｍｉｎ）とそれを与える格子点Ｖｍｉｎを検索する。
【００１８】
ステップＰ３では、頂点Ｖｇにおける信号データＸｇを、信号データＸ１〜Ｘ８を線形補間することにより計算する。
【００１９】
ステップＰ４では、Ｘｇと格子点検索手段Ｃ１２で用いる閾値Ｘｔｈとの大小関係を比較する。
【００２０】
ステップＰ４でＸｇが閾値Ｘｔｈより大きい場合、ステップＰ５において、頂点Ｖｇと格子点Ｖｍｉｎとを結ぶ線分に沿って頂点Ｖｇを移動させ、移動後の信号データが閾値
Ｘｔｈと一致する位置を検索する。ＶｇからＶｍｉｎに向かうベクトルをＬvectorとすると、Ｖｇからの移動量Δｒvectorは次の（式１）様にあらわされる。
【００２１】
Δｒvector＝（Ｘｔｈ−Ｘｇ）／（Ｘｍｉｎ−Ｘｇ）・Ｌvector        …（式１）
ステップＰ４でＸｇが閾値Ｘｔｈ未満の場合、ステップＰ６において、頂点Ｖｇと格子点Ｖｍａｘとを結ぶ線分に沿って頂点Ｖｇを移動させ、移動後の信号データが閾値Ｘｔｈと一致する位置を検索する。Ｖｇからの移動量ΔｒvectorはステップＰ５と同様に計算できるので、ここでは省略する。
【００２２】
ステップＰ７では、境界面Ｄ３の全ての頂点を移動させるまで、上記ステップＰ１〜
Ｐ６を行う。以上が、頂点移動手段Ｃ１４による、境界面Ｄ３の頂点の移動方法である。本実施例では、境界面発生手段Ｃ１３において生成される境界面Ｄ３は長方形面に等しい。また、頂点移動手段Ｃ１４において、頂点を囲む８つの格子点のうち、信号データの最大値あるいは最小値を与える格子点方向に頂点を移動させている。この移動方向は、信号データの変化量が最大となる方向とほぼ一致している。このことは、頂点の移動量がほぼ最小となること、従って、長方形面から頂点移動後の４角形面への変形量もほぼ最小となることを意味する。これにより、４角形面を分割して得られる３角形面のアスペクト比を小さく抑えることが可能である。
【００２３】
以上が、３次元表面形状モデル生成装置Ｃの構成である。図７には、比較技術であるマーティング・キューブ法と本実施例を用いて得られた３次元表面形状モデルの比較結果が示されている。図７（ａ）がマーティング・キューブ法を用いて得られた３次元表面形状モデル、および図７（ｂ）がその拡大図であり、図７（ｃ）が本実施例を用いて得られた３次元表面形状モデル、および図７（ｄ）がその拡大図である。本実施例を用いることにより、従来技術と比較してアスペクト比の小さな３角形面から成る３次元表面形状モデルが生成されている。
【００２４】
本実施例によれば、３次元ビットマップデータからアスペクト比の小さな３角形面から成る３次元表面形状モデルを作成することができる。
【実施例２】
【００２５】
次に、本発明による３次元表面形状モデル生成装置の実施例２を説明する。
【００２６】
実施例１においては、格子点における信号データがある特定の空間分布を持つ場合に、多様体にならない不良な３角形面を含む３次元表面形状モデルが生成されてしまう。この課題を解決するために、実施例２では、格子点における信号データに対して、不良な３角形面を発生するパターンを検索し、このようなパターンを持つ信号データを修正する機能を備える。
【００２７】
本発明による、他の構成の３次元表面形状モデル生成装置Ｃａの構成を図８に示す。３次元表面形状モデル生成装置Ｃａが、図１の実施例１と異なる点は、２進数データ発生手段Ｃ２１，不良パターン検索手段Ｃ２２，信号データ修正手段Ｃ２３，修正信号データ貯蔵手段Ｃ２４が追加されていることである。その他の構成は、基本的に実施例１と同様であるので、ここでは説明を省略する。
【００２８】
２進数データ発生手段Ｃ２１は、３次元ビットマップデータＤ１の各格子点に対して、格子点、及び「格子点を囲む２６個の格子点」の信号データと、あらかじめ定められた閾値を比較して、２７桁の２進数データＤ４を発生させる機能を持つ。「格子点を囲む２６個の格子点」とは、図９に示すように、着目する格子点を頂点として含む８つの立方体に対して、これらの立方体の頂点を構成する格子点の集合である。本実施例では、図９に示すように、着目する格子点、および格子点を囲む２６個の格子点に対して、Ｖ１〜Ｖ２７という名前付けを行う。２７桁の２進数データＤ４は、各ビット値が、そのビット位置に対応する格子点の信号データが閾値以上であれば１、閾値未満であれば０の値をとる。例えば、格子点Ｖ１とＶ３の信号データが閾値以上で、その他の格子点の信号データが閾値未満の場合、２進数データＤ４の１ビットと３ビット目のビット値が１となり、その他のビット位置のビット値が０となるので、２進数データＤ４は「００００００００００００００００００００００００１０１」という値をとる。
【００２９】
不良パターン検索手段Ｃ２２は、２進数データ発生手段Ｃ２１で生成した２進数データＤ４と、あらかじめ定めた不良ビットパターンＤ５とを照合して、多様体にならない不良な境界面を発生させる２進数データＤ４を検索し、その格子点位置を記憶する機能を持つ。不良ビットパターンＤ５の詳細については図１０と表１を用いて後述する。また、および不良パターン検索手段Ｃ２２の詳しい動作については、図１１を用いて後述する。
【００３０】
信号データ修正手段Ｃ２３は、不良パターン検索手段Ｃ２２で検索した格子点に対して、多様体にならない不良な境界面を発生させないように、信号データを修正する機能を持つ。信号データ修正手段Ｃ２３の詳しい動作については、図１２を用いて後述する。
【００３１】
修正信号データ貯蔵手段Ｃ２４は、メモリやハードディスクで構成されており、入力された修正３次元ビットマップデータＤ１ａを記憶して、必要な時に出力する機能を持つ。修正信号データ貯蔵手段Ｃ２４が記憶する修正３次元ビットマップデータＤ１ａは、信号データ修正手段Ｃ２３で修正した信号データの３次元配列集合として記述されるデータである。
【００３２】
次に、図１０と表１を用いて、不良ビットパターンＤ５の詳細について説明する。図
１０には、多様体にならない不良な境界面が発生する１例が示されている。図１０において、黒丸の点は信号データが閾値以上の値を持つ格子点、白丸の点は信号データが閾値未満の値を持つ格子点であることを示している。また、この例では、不良な境界面が発生するのは、Ｖ１２とＶ１４が閾値以上の信号データ値を持ち、Ｖ１１とＶ１５が閾値未満の信号データ値を持つことに起因しており、他の格子点の信号データ値には関連がないので、Ｖ１１，Ｖ１２，Ｖ１４，Ｖ１５以外の格子点については省略して、ｚ軸正方向から見た格子点の配置を示している。
【００３３】
境界面発生手段Ｃ１３によれば、閾値以上の信号データを持つ格子点と、それに最近接する閾値未満の信号データを持つ格子点の間には、必ず１つの境界面が生成される。図
１０に示した例では、Ｖ１１とＶ１２，Ｖ１１とＶ１４,Ｖ１２とＶ１５,Ｖ１４とＶ１５の間に、それぞれ１つの境界面が生成されることになり、これらの境界面は１つの稜線Ｅを共有する。物体の表面形状が多様体であるためには、１つの稜線が常に２つの境界面を共有している必要があるが、図１０に示した例では、稜線Ｅは４つの境界面を共有している。従って、３次元ビットマップデータＤ１が、図１０に示す信号データの分布を含む場合には、多様体にならない不良な３角形を含む３次元表面形状が生成されてしまう。
【００３４】
図１０に示す信号データの分布を、２進数データＤ４を用いて表すと、Ｖ１２とＶ１４が閾値以上の信号データ値を持つことから、１２，１４ビット目のビット値が１となり、Ｖ１１とＶ１５が閾値未満の信号データ値を持つことから、１１，１５ビット目のビット値が０となるので、「＊＊＊＊＊＊＊＊＊＊＊＊０１＊１０＊＊＊＊＊＊＊＊＊＊」となる。ここで、＊は０または１どちらの値もとりうることを表しており、このビット位置に対応する格子点の信号データ値は、不良な境界面の発生と関連がないことを意味している。多様体にならない不良な境界面が発生するような信号データ分布のパターンは、図１０のパターンを含めて１２パターン存在し、それらのパターンを、図１０のパターンと同様に２進数データＤ４で表すと、表１が得られる。表１は、多様体にならない不良な境界面が発生する１２パターンの信号データ分布を、２７桁の２進数データで示した表である。
【００３５】
【表１】
2005352926.tif 000003
【００３６】
不良ビットパターンＤ５とは、表１に示す１２パターンの２７桁の２進数データのことである。２進数データＤ４が、不良ビットパターンＤ５のいずれかと合致する場合（かつその場合に限って）、その２進数データＤ４と対応する格子点位置で、多様体にならない不良な境界面が発生する。以上が、不良ビットパターンＤ５の説明である。
【００３７】
次に、図１１を用いて、不良パターン検索手段Ｃ２２の詳しい動作について説明する。ステップＰ１１では、２進数データＤ４と、不良ビットパターンＤ５のうちのいずれか１つの２進数データＤ６とを比較する。その際、表１において、＊で示されているビット位置の比較は行わない。
【００３８】
ステップＰ１１で、２進数データＤ４と２進数データＤ６が一致した場合、ステップ
Ｐ１２において、２進数データＤ４に対応する格子点位置を記録して、処理をステップ
Ｐ１４に移す。
【００３９】
ステップＰ１１で、２進数データＤ４と２進数データＤ６が一致しなかった場合、ステップＰ１３において、不良ビットパターンＤ５の全ての２進数データＤ６と２進数データＤ４を比較するまで、ステップＰ１１が繰り返される。
【００４０】
ステップＰ１４において、全ての格子点に対して、２進数データＤ４と不良ビットパターンＤ５を比較するまで、ステップＰ１１〜Ｐ１３が繰り返される。以上が、不良パターン検索手段Ｃ２２の詳細な動作内容である。
【００４１】
次に、図１２を用いて、信号データ修正手段Ｃ２３の詳しい動作について説明する。ステップＰ１５では、不良格子点リストＤ７が作成される。不良格子点リストＤ７には、不良パターン検索手段Ｃ２２で検索した、多様体にならない不良な境界面が発生する格子点位置のリストが記載されている。
【００４２】
ステップＰ１６において、３次元ビットマップデータＤ１に対して、不良格子点リストＤ７に記載の格子点位置の信号データを平滑化する。平滑化の方法としては、例えば、格子点、及び格子点を囲む２６個の格子点の信号データの平均値を用いる。
【００４３】
ステップＰ１７において、不良格子点リストＤ７に記載の格子点、および格子点を囲む２６個の格子点に対して、不良パターン検索手段Ｃ２２により、多様体にならない不良な境界面が発生する格子点を検索する。
【００４４】
ステップＰ１８において、多様体にならない不良な境界面が発生する格子点が存在しなくなるまで、ステップＰ１５〜Ｐ１７が繰り返される。以上が、信号データ修正手段Ｃ23による、信号データ修正方法である。
【００４５】
本実施例でも、実施例１と同様な効果が得られる。さらに、本実施例によれば、格子点における信号データに対して、不良な３角形面を発生するパターンを検索し、このようなパターンを持つ信号データを修正することにより、多様体にならない不良な３角形面を含まない３次元表面形状モデルを作成することができる。
【実施例３】
【００４６】
次に、本発明による３次元表面形状モデル生成装置の実施例３を説明する。
【００４７】
実施例２では、頂点移動手段Ｃ１４で得られる４角形面を、３角形面発生手段Ｃ１５で２つの３角形面に分割することで、３角形面から成る３次元表面形状モデルを作成していた。一方で、境界要素法に代表される、物体の表面に張られたメッシュのみを用いる解析手法においては、一般に３角形面より４角形面の方が解析精度が良いので、３角形面から成る３次元表面形状モデルよりも、４角形面から成る３次元表面形状モデルを作成し、これを数値解析用のメッシュとして使用した方が都合が良い。この課題を解決するために、第３実施例では、３次元表面形状モデル生成装置が４角形面で構成される３次元表面形状モデルＤ２ａを生成する機能を備える。
【００４８】
本発明による、他の構成の３次元表面形状モデル生成装置Ｃｂの構成を図１３に示す。３次元表面形状モデル生成装置Ｃｂが、図８の実施例２と異なる点は、３角形面発生手段Ｃ１５と３角形面貯蔵手段Ｃ１６の代わりに、４角形面貯蔵手段Ｃ３１が追加されていることである。その他の構成は、基本的に実施例２と同様であるので、ここでは説明を省略する。
【００４９】
４角形面貯蔵手段Ｃ３１は、メモリやハードディスクで構成されており、頂点移動手段Ｃ１４にて移動させた境界面Ｄ３の４つの頂点からなる４角形面を記憶して、必要な時に３次元表面形状モデルＤ２ａを出力する機能を持つ。３次元表面形状モデルＤ２ａは、４角形面の集合で構成される、３次元表面形状を表現するモデルデータのことである。
【００５０】
本実施例でも、実施例２と同様な効果が得られる。さらに、一般に、複雑な物体の表面上に４角形面のメッシュを張ることは困難である場合が多いが、本実施例によれば、４角形面の集合で構成される３次元表面形状モデルを生成し、これを数値解析用のメッシュとして使用することにより、複雑な物体の表面上にも確実に４角形面のメッシュを張ることが可能となる。また、頂点移動手段Ｃ１４において、長方形面からの変形量がほぼ最小となるように頂点を移動していることにより、長方形に近い４角形面から成る３次元表面形状モデルを作成することができる。
【実施例４】
【００５１】
次に、本発明による３次元表面形状モデル生成装置の実施例４を説明する。
【００５２】
実施例２によると、アスペクト比の小さな３角形面から成る３次元表面形状モデルを作成することが可能であるが、一方で、データサイズを可能な限り小さくした形で、３次元表面形状モデルデータを作成することが要求される場合もある。特に、３次元ビットマップデータを用いて、サイズの大きい物体形状を高精度に記述しようとすると、そのデータサイズは飛躍的に巨大なものとなり、それに従い３次元表面形状モデルのデータサイズも巨大になる。このような場合には、データサイズを小さくすることが強く要求される。この課題を解決するために、実施例４では、３次元表面形状モデルを構成する３角形面の数を縮減する機能を備える。
【００５３】
本発明による、他の構成の３次元表面形状モデル生成装置Ｃｃの構成を図１４に示す。３次元表面形状モデル生成装置Ｃｃが、図８の実施例２と異なる点は、境界面データ貯蔵手段Ｃ４１，境界面縮減手段Ｃ４２が追加され、これに伴って、頂点移動手段Ｃ１４ａ，３角形面発生手段Ｃ１５ａの機能が変更されていることである。その他の構成は、基本的に実施例２と同様であるので、ここでは説明を省略する。
【００５４】
境界面データ貯蔵手段Ｃ４１は、メモリやハードディスクで構成されており、境界面発生手段Ｃ１３で生成した境界面Ｄ３を記憶して、必要な時に出力する機能を持つ。
【００５５】
境界面縮減手段Ｃ４２は、境界面Ｄ３のうち、同一平面上にあってかつ辺を共有する境界面を検索して、それらを合併させ１つの多角形面Ｄ８とすることにより、境界面の数を縮減させる機能を持つ。図１５には、境界面と、それらを合弁して生成された多角形面が示されている。図中、点線で示す形状が境界面であり、実線で示す形状が多角形面である。図１５では、ｙ軸に垂直な面上にある５つの境界面が合弁して、１つの多角形面（１０角形面）が生成されている。境界面Ｆと境界面Ｇも辺を共有しているが、境界面Ｇはｘ軸に垂直な面上にあり、両者は同一平面上にはないので、境界面Ｇは多角形面には合弁されていない。
【００５６】
頂点移動手段Ｃ１４ａは、境界面縮減手段Ｃ４２で発生した多角形面Ｄ８の頂点を、頂点における信号データが閾値と一致するように一定方向に移動させる機能を持つ。
【００５７】
３角形面発生手段Ｃ１５ａは、多角形面Ｄ８を複数の３角形面に分割する機能を持つ。図１６には、１０角形面を７つの３角形面に分割する例が示されている。図１６に示すように、ｎ角形面はｎ−３つの３角形面に容易に分割することが可能である。
【００５８】
本実施例でも、実施例２と同様な効果が得られる。さらに、本実施例によれば、同一平面上にあってかつ辺を共有する境界面を検索して、それらを合併させ１つの多角形面とすることにより、３次元表面形状モデルを構成する３角形面の数を縮減することができる。
【００５９】
以上のような本発明の実施の形態によると、３次元物体の表面形状を３角形面から成る多様体としてモデル化する３次元表面形状モデル作成装置において、前記３次元物体を含む３次元空間内に配置した直交格子点における前記３次元物体に関連する少なくとも１種類の物理的な性質の値を表わす信号データの３次元配列を貯蔵する信号データ貯蔵手段と、前記信号データと予定の閾値と比較し、前記閾値以上の格子点を検索する格子点検索手段と、前記検索した格子点から、少なくとも１つの閾値未満の信号データを持つ格子点に最近接する格子点を検索し、それらの間に長方形状の境界面を発生させる境界面発生手段と、前記境界面の頂点とそれを囲む８つの格子点における前記信号データを使用して、前記頂点を一定方向に移動させ、そこでの前記８つの格子点における信号データを線形補間して得られる信号データが、前記閾値と一致する位置を検索する頂点移動手段と、前記頂点移動手段にて移動させた前記境界面の４つの頂点を連結させ、２つの３角形面を発生させる３角形面発生手段と、前記３角形面発生手段にて発生させた３角形面の情報を保存する３角形面保存手段を有することにより、アスペクト比の小さな３角形面から成る３次元表面形状モデルを作成することができる。また、前記信号検索手段の前処理手段として、１つの格子点、及びそれを囲む２６個の格子点の信号データと予定のしきい値を比較して、２７桁の２進数データを発生させる２進数データ発生手段と、前記２進数データと予め定めたパターンと照合して、多様体にならない不良な境界面を発生させる前記２進数データを検索する不良パターン検索手段と、前記不良パターン検索手段にて検索した格子点における信号データを修正する信号データ修正手段と、前記信号データ修正手段にて修正した信号データを貯蔵する修正信号データ貯蔵手段を有することにより、多様体にならない不良な３角形面を含まない３次元表面形状モデルを作成することができる。また、前記頂点移動手段にて移動させた前記境界面の４つの頂点からなる４角形面保存手段を有することにより、長方形に近い４角形面から成る３次元表面形状モデルを作成することができる。前記境界面発生手段の後処理手段として、前記境界面発生手段にて発生させた境界面を貯蔵する境界面貯蔵手段と、前記境界面貯蔵手段から、同一平面上にあってかつ辺を共有する境界面を検索して、それらを合併させ１つの多角形とすることにより、境界面の数を縮減させる境界面縮減手段と、前記多角形の頂点を前記頂点移動手段にて移動させた後、前記多角形を複数の３角形面に分割する多角形分割手段を有することにより、３次元表面形状モデルを構成する３角形面の数を縮減することができる。
【産業上の利用可能性】
【００６０】
３次元ビットマップデータからアスペクト比の小さい３角形面で構成される３次元表面形状モデルを生成することができる。
【図面の簡単な説明】
【００６１】
【図１】本発明による、３次元表面形状モデル生成装置の実施例１の構成を示す図。
【図２】格子点に最近接する格子点を説明する図。
【図３】境界面Ｄ３を説明する図。
【図４】頂点移動手段Ｃ１４の詳しい動作について説明する図。
【図５】４角形面を２つの３角形面に分割するパターンを説明する図で、（ａ）は４角形を２つの３角形面に分割する最初のパターンを、（ｂ）は４角形を２つの３角形面に分割するもうひとつのパターンを、それぞれ示す。
【図６】境界面Ｄ３の１つの頂点Ｖｇに対して、頂点Ｖｇを囲む８つの格子点を示す図。
【図７】マーティング・キューブ法と本実施例を用いて得られた３次元表面形状モデルの比較結果を示す図で、図７（ａ）がマーティング・キューブ法を用いて得られた３次元表面形状モデル、図７（ｂ）がその拡大図、図７（ｃ）が本実施例を用いて得られた３次元表面形状モデル、図７（ｄ）がその拡大図を、それぞれ示す。
【図８】本発明による、３次元表面形状モデル生成装置の実施例２の構成を示す図。
【図９】格子点、及びその格子点を囲む２６個の格子点を示す図。
【図１０】多様体にならない不良な境界面が発生する一例を示す図。
【図１１】不良パターン検索手段Ｃ２２の詳しい動作について説明する図。
【図１２】信号データ修正手段Ｃ２３の詳しい動作について説明する図。
【図１３】本発明による、３次元表面形状モデル生成装置の実施例３の構成を示す図。
【図１４】本発明による、３次元表面形状モデル生成装置の実施例４の構成を示す図。
【図１５】境界面Ｄ３を合弁して生成された多角形面Ｄ８の一例を示す図。
【図１６】多角形面Ｄ８の複数の３角形面に分割する一例を示す図。
【符号の説明】
【００６２】
Ｃ，Ｃａ，Ｃｂ，Ｃｃ…３次元表面形状モデル生成装置、Ｃ１１…信号データ貯蔵手段、Ｃ１２…格子点検索手段、Ｃ１３…境界面発生手段、Ｃ１４，Ｃ１４ａ…頂点移動手段、Ｃ１５，Ｃ１５ａ…３角形面発生手段、Ｃ１６…３角形面貯蔵手段、Ｃ２１…２進数データ発生手段、Ｃ２２…不良パターン検索手段、Ｃ２３…信号データ修正手段、Ｃ２４…修正信号データ貯蔵手段、Ｃ３１…４角形面貯蔵手段、Ｃ４１…境界面データ貯蔵手段、Ｃ４２…境界面縮減手段。
【図１】
2005352926.tif 000004
【図２】
2005352926.tif 000005
【図３】
2005352926.tif 000006
【図４】
2005352926.tif 000007
【図５】
2005352926.tif 000008
【図６】
2005352926.tif 000009
【図７】
2005352926.tif 000010
【図８】
2005352926.tif 000011
【図９】
2005352926.tif 000012
【図１０】
2005352926.tif 000013
【図１１】
2005352926.tif 000014
【図１２】
2005352926.tif 000015
【図１３】
2005352926.tif 000016
【図１４】
2005352926.tif 000017
【図１５】
2005352926.tif 000018
【図１６】
2005352926.tif 000019