(57)【要約】【課題】  ２多様体と共に、オープンシェルの境界をもつ１媒質、３媒質以上の多媒質、面の分岐、穴等を含む非多様体の境界データを入力対象として取り扱うことができ、かつそれらによって仕切られた空間を高速かつ頑健に区分することができるボリュームデータのセルラベリング方法とそのプログラムを提供する。【解決手段】  コンピュータを用いて、外部データ取得手段により対象物の境界データからなる外部データを取得し、外部データ入力手段により前記外部データをコンピュータに入力し、セル分割手段により前記外部データを境界平面が直交する直方体のセルに分割し、セル区分手段により分割された各セルを境界データを含む境界セルと境界データを含まない非境界セルとに区分し、空間区分手段により各セルを境界データで仕切られた空間毎に異なる空間番号を設定し、空間番号圧縮手段により境界データで仕切られずに隣接するセルの空間番号を同一の空間番号に再設定する。【選択図】      図２
2005321885.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを用いて、外部データ取得手段により対象物の境界データからなる外部データを取得し、
外部データ入力手段により前記外部データをコンピュータに入力し、
セル分割手段により前記外部データを境界平面が直交する直方体のセルに分割し、
セル区分手段により分割された各セルを境界データを含む境界セルと境界データを含まない非境界セルとに区分し、
空間区分手段により各セルを境界データで仕切られた空間毎に異なる空間番号を設定し、
空間番号圧縮手段により境界データで仕切られずに隣接するセルの空間番号を同一の空間番号に再設定する、ことを特徴とするボリュームデータのセルラベリング方法。
【請求項２】
前記空間区分手段により、
（Ａ）セルが非境界セルである場合、単一の空間番号を設定し、
（Ｂ）セルが境界セルである場合、
境界データが境界セルの稜を該セル内で切断する切断点と、該切断点を結び辺でのみ接続する単一又は複数の切断三角形とを設定し、
切断点があり切断三角形が無い場合、単一の空間番号を設定し、
辺で接続する複数の切断三角形がある場合、辺を共有し面がなす角度が最も小さい切断三角形をたどるサイクル探索手段を全ての切断三角形について順に実施する、ことを特徴とする請求項１に記載のボリュームデータのセルラベリング方法。
【請求項３】
前記サイクル探索手段により、切断三角形を構成する裏と表の２面に対し向きの付いた辺のサイクルによって決まるその法線ベクトルがさす半空間によって媒質が存在する空間番号を設定する、ことを特徴とする請求項２に記載のボリュームデータのセルラベリング方法。
【請求項４】
前記サイクル探索手段により、辺を共有し、辺の向きが逆になっている２つ以上の切断三角形を順に辿り、最終的に開始した切断三角形に到達することにより閉じた境界に囲まれた空間番号を設定する、ことを特徴とする請求項３に記載のボリュームデータのセルラベリング方法。
【請求項５】
各セルに対し前記サイクル探索手段を逐次処理又は並列分散処理する、ことを特徴とする請求項１に記載のボリュームデータのセルラベリング方法。
【請求項６】
前記セル分割手段により、直方体セルを外部データに含まれる境界面を構成する境界形状要素が再構成できる十分な切断点が得られるまで、又は使用者が任意に決めた回数まで八分木分割により再分割する、ことを特徴とする請求項１に記載のボリュームデータのセルラベリング方法。
【請求項７】
前記空間区分手段は、Ｘ，Ｙ，Ｚの３方向に対して順に繰返し、或いは再帰的な処理により、前記直方体セルの全てを順に走査する、ことを特徴とする請求項１に記載のボリュームデータのセルラベリング方法。
【請求項８】
前記外部データは、対象物およびそれを囲むものの物性値を含み、前記空間区分手段により設定された空間番号と該物性値を関連付ける、ことを特徴とする請求項１に記載のボリュームデータのセルラベリング方法。
【請求項９】
コンピュータを用いて、対象物の境界データからなる外部データを取得する外部データ取得ステップと、
前記外部データをコンピュータに入力する外部データ入力ステップと、
前記外部データを境界平面が直交する直方体のセルに分割するセル分割ステップと、
分割された各セルを境界データを含む境界セルと境界データを含まない非境界セルとに区分するセル区分ステップと、
各セルを境界データで仕切られた空間毎に異なる空間番号を設定する空間区分ステップと、
境界データで仕切られずに隣接するセルの空間番号を同一の空間番号に再設定する空間番号圧縮ステップと、を実施するためのボリュームデータのセルラベリングプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１媒質又は２媒質以上の多媒質、面の分岐、穴、オープンシェル等を含む必ずしも閉じていない境界データで仕切られる空間を区分するボリュームデータのセルラベリング方法とそのプログラムに関する。
【背景技術】
【０００２】
研究開発・技術開発の現場において、ＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）、ＣＡＭ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｍａｎｕｆａｃｔｕｒｉｎｇ）、ＣＡＥ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｅｎｇｉｎｅｅｒｉｎｇ）、ＣＡＴ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｔｅｓｔｉｎｇ）などが、それぞれ設計、加工、解析、試験のシミュレーション手段として用いられている。
また、異なるシミュレーションを連続して行ったり、シミュレーション結果を加工プロセスに連動させたりすることを１つのボリュームデータを共有してすることなども、普及しつつある。
【０００３】
上述した従来のシミュレーション手段では、対象物の境界面は重要な意味をもち、例えば、対象物を境界で表現し、境界面の内部は一様に扱うようなことが広く行われる。このような場合、２次元又は３次元の境界面の内側か外側かを判定する内外判定手段が必要となる。
従来の内外判定手段としては、（１）光線交差法（非特許文献１）、（２）境界追跡を用いた領域成長（拡張）法（非特許文献２）、（３）画像処理におけるラスタ追跡（非特許文献２）、（４）多方向追跡（非特許文献２）、（５）Ｃｕｒｌｅｓｓの方法（非特許文献３）、（６）八分木を使ったＳｚｅｌｉｓｋｉの方法（非特許文献４）やＰｕｌｌｉの方法（非特許文献５）、（７）非特許文献６、７及び特許文献１〜３が知られている。また本発明の同一出願人による関連する特許文献４〜７が公開されている。
【０００４】
【非特許文献１】Ｊ．Ｏ'Ｒｏｕｒｋｅ，"Ｃｏｍｐｕｔａｔｉｏｎａｌ  ｇｅｏｍｅｔｒｙ  ｉｎ  Ｃ  ｓｅｃｏｎｄ  ｅｄｉｔｉｏｎ"，ｐ．２４６，Ｃａｍｂｒｉｄｇｅ  Ｕｎｉｖｅｒｓｉｔｙ  Ｐｒｅｓｓ，１９９８．
【非特許文献２】Ｒｏｓｅｎｆｅｌｄ  ＆  Ｋａｋ  長尾訳、「ディジタル画像処理」、近代科学社、ｐｐ．３３２〜３５７）
【非特許文献３】Ｂ．Ｃｕｒｌｅｓｓ  ａｎｄ  Ｍ．Ｌｅｖｏｙ，"Ａ  ｖｏｌｕｍｅｔｒｉｃ  ｍｅｔｈｏｄ  ｆｏｒ  ｂｕｉｌｄｉｎｇ  ｃｏｍｐｌｅｘ  ｍｏｄｅｌｓ  ｆｒｏｍ  ｒａｎｇｅ  ｉｍａｇｅｓ．"，  Ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＳＩＧＧＲＡＰＨ  '９６，ｐａｇｅｓ  ３０３-３１２，Ａｕｇｕｓｔ  １９９６）
【非特許文献４】Ｒ．Ｓｚｅｌｉｓｋｉ．"Ｒａｐｉｄ  ｏｃｔｒｅｅ  ｃｏｎｓｔｒｕｃｔｉｏｎ  ｆｒｏｍ  ｉｍａｇｅ  ｓｅｑｕｅｎｃｅｓ．"
【非特許文献５】Ｋ．Ｐｕｌｌｉ，Ｔ．Ｄｕｃｈａｍｐ，Ｈ．Ｈｏｐｐｅ，Ｊ．ＭｃＤｏｎａｌｄ，Ｌ．ｈａｐｉｒｏ，Ｗ．Ｓｔｕｅｔｚｌｅ．，"Ｒｏｂｕｓｔ  ｍｅｓｈｅｓ  ｆｒｏｍ  ｍｕｌｔｉｐｌｅ  ｒａｎｇｅ  ｍａｐｓ．"  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｒｅｃｅｎｔ  Ａｄｖａｎｃｅｓ  ｉｎ  ３-Ｄ  Ｄｉｇｉｔａｌ  Ｉｍａｇｉｎｇ  ａｎｄ  Ｍｏｄｅｌｉｎｇ，  Ｍａｙ  １９９７，ｐａｇｅｓ  ２０５-２１１．
【非特許文献６】米川、小堀、久津輪、「空間分割モデルを用いた形状モデラ」情報処理学会誌、Ｖｏｌ．３７，Ｎｏ．１，ｐｐ．６０−６９，１９９６
【非特許文献７】森本、山口、「再帰的空間分割法と部分空間分類、自己交差、および重なりのある曲線への拡張」，情報処理学会論文誌，  Ｖｏｌ．３７，  Ｎｏ．１２，Ｄｅｃ．１９９６
【０００５】
【特許文献１】特開平８−９６０２５号公報、「図形処理方法および装置」
【特許文献２】特開平８−１５３２１４号公報、「３次元直交格子データの生成方法」
【特許文献３】特開２００３−４４５２８号公報、「物体の表面格子生成方法」
【特許文献４】特許第３４６８４６４号公報、「形状と物性を統合したボリュームデータ生成方法」
【特許文献５】特開２００３−３３０９７６号公報、「境界データの内外判定方法とそのプログラム」
【特許文献６】国際公開第０３／０４８９８０号パンフレット、「３次元形状データのセル内部データへの変換方法および変換プログラム」
【特許文献７】国際公開第０３／０７３３３５号パンフレット、「境界データのセル内形状への変換方法及び変換プログラム」
【発明の開示】
【発明が解決しようとする課題】
【０００６】
非特許文献１に開示されている光線交差法（Ｒａｙ  ｃｒｏｓｓｉｎｇｓ  ｍｅｔｈｏｄ）は、入力境界面がある場合にある点から発した光線（半直線）と境界との交点が偶数か奇数かで、偶数だと光線の視点は物体の外部、奇数だと物体の内部と判別するものである。
しかしこの手段は、光線がたまたま境界と接する場合には、重根となるために本来２つあるはずの交点が一つになってしまうため適用できず、境界情報に不備（ＣＡＤデータなどで異なるソフトウェアから読み込む場合に表現の仕方の違いや、数値誤差の要因からデータの欠落が起こるがある）の場合にも適用できないという問題があった。
【０００７】
境界情報のみが与えられた画像処理における境界追跡を用いた領域成長（拡張）法は、例えば、非特許文献２に開示されているが、処理が全体に及ぶために遅くなること、および表面情報に不備があると識別が正しくできないなどの問題があった。
【０００８】
画像処理におけるラスタ追跡は非特許文献２に開示されており、Ｘ軸など座標軸に沿ってセルを走査しながら境界や境界にはさまれる領域を追跡してゆく方法であるが、やはり不備（閉曲面となっていない）のある境界情報を量子化した画像とした場合には正しく識別ができない。
これを回避する方法として多方向追跡（非特許文献２）もあるが効率が低い。
【０００９】
リバースエンジニアリング（測定点群から表面情報を再構築する方法）の分野におけるＣｕｒｌｅｓｓの方法は、規則的に並んだ測定点と測定対象に対する複数のカメラの方向などの外部的な情報を用いて、距離に基づく陰関数を場全体で定義して、表面情報を再構築する頑健な方法であり、非特許文献３に開示されている。
しかしＣｕｒｌｅｓｓの方法は、全てのセルにおける距離場計算をしなくてはいけない点で、データ量と計算時間のデメリットがある。またセルのサイズより薄い構造や鋭角な面において距離関数が正しく計算できないなどの精度上の問題も指摘されている。これは識別においても誤判断を招くものである。
【００１０】
八分木を使ったＳｚｅｌｉｓｋｉの方法（非特許文献４）やＰｕｌｌｉの方法（非特許文献５）も幾つか取得した対象のレンジデータ（距離データ）と空間を八分木で分割したセルとの関係を内部、外部、境界の３つに分類して境界を再構築する方法である。これらの方法では、投影（ｐｒｏｊｅｃｔｉｏｎ）操作を各セルにおいて用いているために、処理が煩雑、時間がかかる、ひいては投影操作における計算の不安定性の問題がある。
【００１１】
非特許文献６に開示された手段は、外、境界、内の３種類セルによって結果的に２媒質のみしか表現できない。また形状表現のみであり物性値がない問題がある。
【００１２】
非特許文献７に開示された手段は、入力、分岐などを対象としている内外判定法だが、２次元で連続、有界に限定されている。また有向グラフを利用しているが、多媒質、３次元、不連続への適用はできない問題がある。
【００１３】
また特許文献１〜３は、２媒質のみに対応しており１媒質も３以上の多媒質も対応できず、かつ複雑な表面データには対応できない。
また本発明の出願人による特許文献４〜７では、全体としては多媒質対応にはなっているものの、以下の問題点があった。
（１）複雑な形状の境界による多媒質の所属空間区分が困難である。
（２）特許文献４で提案しているボリュームデータとして扱える入力対象（境界データ）に制限があった。
言い換えれば完全に閉じたソリッドである２多様体が境界データの場合は多媒質でも扱えるが、１つの辺から複数の面が分岐しているような境界データや、穴が開いていたり、途中で途切れているような境界データ、すなわち面の分岐、穴、オープンシェル、１媒質のみか３媒質以上の多媒質等の境界が非多様体的な場合の扱いが困難であった。
なお、本発明において多様体、非多様体は２次元的境界であり、ソリッド、ボリューム、媒質、所属空間は３次元の領域である。
【００１４】
本発明は上述した問題点を解決するために創案されたものである。すなわち、本発明の目的は、完全に閉じたソリッドである２多様体の境界データによる外と内の２媒質と共に、オープンシェルの境界をもつ１媒質、３媒質以上の多媒質、面の分岐、穴等を含む非多様体の境界データを入力対象として取り扱うことができ、かつそれらによって仕切られた空間を高速かつ頑健に区分することができるボリュームデータのセルラベリング方法とそのプログラムを提供することにある。
言い換えれば、本発明の目的は、区分された空間ごとに異なる材質（媒質）情報を付加してＶＣＡＤデータ（ボリュームデータ）とし、各種のシミュレーションを連成・連続し、その情報（時系列的に変化も）を付加されたボリュームデータを用いて加工や、実物との比較、評価などの検査に用いることができるボリュームデータのセルラベリング方法とそのプログラムを提供することにある。
【課題を解決するための手段】
【００１５】
本発明によれば、コンピュータを用いて、外部データ取得手段により対象物の境界データからなる外部データを取得し、
外部データ入力手段により前記外部データをコンピュータに入力し、
セル分割手段により前記外部データを境界平面が直交する直方体のセルに分割し、
セル区分手段により分割された各セルを境界データを含む境界セルと境界データを含まない非境界セルとに区分し、
空間区分手段により各セルを境界データで仕切られた空間毎に異なる空間番号を設定し、
空間番号圧縮手段により境界データで仕切られずに隣接するセルの空間番号を同一の空間番号に再設定する、ことを特徴とするボリュームデータのセルラベリング方法が提供される。
【００１６】
また、本発明によれば、コンピュータを用いて、対象物の境界データからなる外部データを取得する外部データ取得ステップと、
前記外部データをコンピュータに入力する外部データ入力ステップと、
前記外部データを境界平面が直交する直方体のセルに分割するセル分割ステップと、
分割された各セルを境界データを含む境界セルと境界データを含まない非境界セルとに区分するセル区分ステップと、
各セルを境界データで仕切られた空間毎に異なる空間番号を設定する空間区分ステップと、
境界データで仕切られずに隣接するセルの空間番号を同一の空間番号に再設定する空間番号圧縮ステップと、を実施するためのボリュームデータのセルラベリングプログラムが提供される。
【００１７】
上記本発明の方法とそのプログラムによれば、セル分割手段（セル分割ステップ）によりすべての外部データを境界平面が直交する直方体セルに分割し、セル区分手段（セル区分ステップ）により分割された各セルを境界セルと非境界セルとに区分するので、外部データが３媒質以上の多媒質、面の分岐、穴、オープンシェル等を含む非多様体であっても、必ず境界セル又は非境界セルに区分される。
また、直方体セルは、元の境界データに比べて大きいので、境界データの一部（例えば１点）のみを含むものを境界セルとすることにより、境界データは必ず境界セルに含まれる。
更に、空間区分手段（空間区分ステップ）により各セルを境界データで仕切られた空間毎に異なる空間番号を設定し、空間番号圧縮手段（空間番号圧縮ステップ）により境界データで仕切られずに隣接するセルの空間番号を同一の空間番号に再設定するので、外部データが１媒質のオープンシェル、３媒質以上の多媒質、面の分岐、穴等を含む非多様体であっても、そのまま異なる空間番号に設定できる。
したがって本発明の方法とそのプログラムは、完全に閉じたソリッドである２多様体を境界とする外と内の２媒質と共に、１媒質、３媒質以上の多媒質、面の分岐、穴、オープンシェル等を含む非多様体を入力対象（境界データ）として取り扱うことができる。
【００１８】
本発明の好ましい実施形態によれば、前記空間区分手段により、
（Ａ）セルが非境界セルである場合、単一の空間番号を設定し、
（Ｂ）セルが境界セルである場合、
境界データが境界セルの稜を該セル内で切断する切断点と、該切断点を結び辺でのみ接続する単一又は複数の切断三角形とを設定し、
切断点があり切断三角形が無い場合、単一の空間番号を設定し、
辺で接続する複数の切断三角形がある場合、辺を共有し面がなす角度が最も小さい切断三角形をたどるサイクル探索手段を全ての切断三角形について順に実施する。
【００１９】
この方法によれば、辺で接続する複数の切断三角形がある場合でも、各切断三角形で仕切られた空間毎に異なる空間番号を高速かつ頑健に設定することができる。
従って、セル数ｎが大きい場合でも、セル単位の処理が基準となっているので、処理時間はＯ（ｎ）のオーダー（ｎに比例）するのみであり、高速処理ができる。
また、計算手順がシンプルであり、プログラム化や計算機への実装が簡単である。
更に、境界セルで仕切られた複数の空間には異なる空間番号が付けられるので、異なる空間が一つの空間に分類されてしまうおそれが少なく、多媒質が表現できる空間に対しても適用可能である。
【００２０】
前記サイクル探索手段により、切断三角形を構成する裏と表の２面に対し向きの付いた辺のサイクルによって決まるその法線ベクトルがさす半空間によって媒質が存在する空間番号を設定する。また前記サイクル辿り手段により、辺を共有し、辺の向きが逆になっている２つ以上の切断三角形を順に辿り、最終的に開始した切断三角形に到達することにより閉じた境界に囲まれた空間番号を設定する。
この方法により、セルの頂点でなく境界データ（セル内面）の表と裏に直接所属空間を持たせることによって、複数の計算機や、ユーザによって分散された環境でも高速に媒質やさまざまな属性（の所属する空間）をセルを介して取得利用が可能となる。
【００２１】
また各セルに対し前記サイクル探索手段を逐次処理又は並列分散処理する、ことが好ましい。
この方法により、高速かつ頑健に処理できる。
【００２２】
また、前記セル分割手段により、直方体セルを外部データに含まれる境界面を構成する境界形状要素が再構成できる十分な切断点が得られるまで、又は使用者が任意に決めた回数まで八分木分割により再分割する、ことが好ましい。
この方法により、八分木分割することにより、ＶＣＡＤデータに適用することができる。
【００２３】
前記空間区分手段は、Ｘ，Ｙ，Ｚの３方向に対して順に繰返し、或いは再帰的な処理により、前記直方体セルの全てを順に走査する。
ボクセルデータの場合には、Ｘ，Ｙ，Ｚの３方向に対して順に繰返すことにより、ＶＣＡＤデータの場合には、再帰的な処理により、直方体セルの全てを順にもれなく走査することができる。
前記外部データは、対象物およびそれを囲むものの物性値を含み、前記空間区分手段により設定された空間番号と該物性値を関連付ける、ことが好ましい。
【発明の効果】
【００２４】
上述した発明のボリュームデータのセルラベリング方法とそのプログラムによれば、完全に閉じたソリッドである２多様体を境界とする外と内の２媒質と共に、１媒質、３媒質以上の多媒質、面の分岐、穴、オープンシェル等を含む非多様体を入力対象（境界データ）として取り扱うことができ、かつそれらによって仕切られた空間を高速かつ頑健に区分することができる。
従って、区分された空間ごとに異なる材質（媒質）情報を付加してＶＣＡＤデータ（ボリュームデータ）とし、各種のシミュレーションを連成・連続し、その情報（時系列的に変化も）を付加されたボリュームデータを用いて加工や、実物との比較、評価などの検査に用いることができる。
これによって、（１）構造解析、大変形解析、熱・流体解析、流動解析、除去加工、付加加工、変形加工のシミュレーション、（２）人体などの生体と人工物が混在するもののシミュレーション、検査、人工物に対する設計、加工、（３）地殻や建造物などの自然物と人工物が混在する場合の設計、解析、加工、組立て、検査など様々な応用が可能となる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明の好ましい実施形態を図面を参照して説明する。
【００２６】
本発明の発明者等は、先に、「形状と物性を統合したボリュームデータ生成方法」を創案し出願している（特許文献４）。この方法は、形状と物性を統合した実体データを小さい記憶容量で記憶することができ、これにより、物体の形状・構造・物性情報・履歴を一元的に管理し、設計から加工、組立、試験、評価など一連の工程に関わるデータを同じデータで管理することができ、ＣＡＤとシミュレーションを一元化することできる実体データの記憶方法に関するものである。この方法によるデータを「Ｖ−ＣＡＤデータ」又は「ボリュームデータ」と呼び、このデータを用いた設計やシミュレーションを「ボリュームＣＡＤ」又は「Ｖ−ＣＡＤ」と呼ぶ。
【００２７】
本発明のセルラベリング方法は、ボリュームデータへ適用するのに特に適している。
【００２８】
初めに本発明における用語を説明する。
入力としての境界（表面）データがあるときにボクセルや八分木のオクタントなどの３次元空間を分割する直方体の表面およびその内部の領域を「セル（ｃｅｌｌ）」とよび、セルに対して表面の情報を保持させる場合のセルを「境界セル（ｂｏｕｎｄａｒｙ  ｃｅｌｌ）」、表面の情報をもたないセルを「非境界セル（ｎｏｎ-ｂｏｕｎｄａｒｙ  ｃｅｌｌ）」（特許文献４では「内部セル（ｉｎｎｅｒ  ｃｅｌｌ）」）とよぶ。
【００２９】
言い換えると、境界セルはセルを構成するセルの内部、およびセルの境界である面、稜、頂点のどれかに入力境界データとの交点があるものであり、そうでないものは全て非境界セルである。隣接するセルどうしはその種類を問わずセル境界のみを共有している。２多様体を境界としてもつ３次元の内部が詰まった物体を「空間」と呼ぶ。それぞれの空間は互いに連結でない場合は異なる空間として異なる空間番号を与えて認識する。したがって閉曲面で表現される境界（表面）で囲まれた部分（点集合）を指し、現実世界ではおなじ材質の物体を限定する単位として用いる。逆に異なる空間を区別する境を「境界（ｂｏｕｎｄａｒｙ：数学で用いられる境界と同じ定義）」もしくは「表面」と呼ぶ。
【００３０】
図１は、本発明の方法を実行するための装置構成図である。この図に示すように、このＣＡＤ装置１０は、外部データ入力手段２、外部記憶装置３、内部記憶装置４、中央処理装置５および出力装置６を備える。
【００３１】
外部データ入力手段２は、例えばキーボードであり、対象物の境界表現データからなる外部データを入力する。外部記憶装置３は、ハードディスク、フロピィーディスク、磁気テープ、コンパクトディスク等であり、形状と物理量を統合したボリュームデータとその生成プログラムを記憶する。内部記憶装置４は、例えばＲＡＭ，ＲＯＭ等であり、演算情報を保管する。中央処理装置５（ＣＰＵ）は、演算や入出力等を集中的に処理し、内部記憶装置４と共に、プログラムを実行する。出力装置６は、例えば表示装置とプリンタであり、記憶したボリュームデータとプログラムの実行結果を出力するようになっている。  
中央処理装置５、内部記憶装置４及び外部記憶装置３は、共同して、後述する外部データ取得手段、外部データ入力手段、セル分割手段、セル区分手段、空間区分手段、および空間番号圧縮手段として機能する。
【００３２】
外部から入力する外部データは、多面体を表すポリゴンデータ、有限要素法に用いる四面体又は六面体要素、３次元ＣＡＤ又はＣＧツールに用いる曲面データ、或いはその他の立体の表面を部分的な平面や曲面で構成された情報で表現するデータである。
【００３３】
外部データは、このようなデータ（Ｓ−ＣＡＤデータと呼ぶ）のほかに、（１）Ｖ−ＣＡＤ独自のインターフェース（Ｖ−ｉｎｔｅｒｆａｃｅ）により人間の入力により直接作成されたデータと、（２）測定機やセンサ、デジタイザなどの表面のデジタイズデータや、（３）ＣＴスキャンやＭＲＩ、および一般的にＶｏｌｕｍｅレンダリングに用いられているボクセルデータなどの内部情報ももつＶｏｌｕｍｅデータであってもよい。
【００３４】
図２は、コンピュータに実装した本発明のセルラベリング方法のフロー図である。この図に示すように、本発明の方法は、外部データ取得Ｓ１からＶ−ＣＡＤデータ１４（又はボリュームデータ）を形成するまでの処理であり、外部データ取得手段Ｓ１、外部データ入力手段Ａ、セル分割手段Ｂ、セル区分手段Ｃ、空間区分手段Ｄ、および空間番号圧縮手段Ｅからなる。外部データ入力手段Ａから空間番号圧縮手段Ｅまでの手段をボリュームデータ形成手段Ｓ２と呼ぶ。
【００３５】
また、この図に示すように、ボリュームデータ形成手段Ｓ２に続き、通常、シミュレーション手段Ｓ３及び出力手段Ｓ４が行われ、全体として、コンピュータを用いた構造解析、大変形解析、熱・流体解析、流動解析、除去加工、付加加工、又は変形加工のシミュレーション処理が実施される。
【００３６】
なお、以下、外部データ取得手段Ｓ１、ボリュームデータ形成手段Ｓ２（外部データ入力手段Ａ、セル分割手段Ｂ、セル区分手段Ｃ、空間区分手段Ｄ、空間番号圧縮手段Ｅ）、シミュレーション手段Ｓ３及び出力手段Ｓ４で行われる各処理をそれぞれ外部データ取得ステップＳ１、ボリュームデータ形成ステップＳ２（外部データ入力ステップＡ、セル分割ステップＢ、セル区分ステップＣ、空間区分ステップＤ、空間番号圧縮ステップＥ）、シミュレーションステップＳ３及び出力ステップＳ４と呼ぶ。
【００３７】
また、本発明のセルラベリングプログラムは、外部データ入力ステップＡ、セル分割ステップＢ、セル区分ステップＣ、空間区分ステップＤ、および空間番号圧縮ステップＥを実施するためのコンピュータプログラムである。
【００３８】
外部データ取得手段Ｓ１により、コンピュータを用いて、対象物１の境界データと物性値からなる外部データ１２を取得する。
外部データ入力手段Ａにより、外部データ取得手段Ｓ１で取得した対象物１の境界データと物性値からなる外部データ１２を本発明の方法を記憶したコンピュータ等に入力する。
セル分割手段Ｂにより外部データ１２を境界平面が直交する直方体のセル１３に分割する。直方体セル１３は直方体セルの他、立方体セルでもよい。
セル区分手段Ｃにより分割された各セルを境界データを含む境界セル１３ａと境界データを含まない非境界セル１３ｂとに区分する。
空間区分手段Ｄにより、各セル１３を境界データで仕切られた空間毎に異なる空間番号を設定する。
空間番号圧縮手段Ｅにより境界データで仕切られずに隣接するセルの空間番号を同一の空間番号に再設定する。
【００３９】
シミュレーション手段Ｓ３により、各セル毎の物性値を用いて、例えば、設計・解析・加工やＣＡＭ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｍａｎｕｆａｃｔｕｒｉｎｇ）・組立・試験等のシミュレーションを行う。出力手段Ｓ４によりシミュレーションの結果を、例えばプリンタや外部ＮＣ装置等に出力する。
【００４０】
本発明の方法を、Ｖ−ＣＡＤデータへ適用する場合には、セル分割手段Ｂにより、直方体セル１３を外部データに含まれる境界面を構成する境界形状要素が再構成できる十分な切断点が得られるまで、八分木分割により再分割するのがよい。
また、通常のボクセルデータに適用する場合には、セル分割手段Ｂにより、同一の大きさの直方体セル１３に分割する。
【００４１】
図３は、特許文献６に開示した境界面を境界とする例であり、境界データの有する境界面が平面である場合の境界面と稜線との切断点の数が３〜６である場合を示している。なお切断点の数はこの例に限定されず、７〜１２の場合もある。また、本発明では、完全に閉じたソリッドである２多様体の境界データによる外と内の２媒質と共に、１媒質、３媒質以上の多媒質、面の分岐、穴、オープンシェル等を含む非多様体も対象とする。
【００４２】
図３に例示した境界セル内の境界面は、切断点を結んでできている１又は複数の切断三角形に分割することができる。このうち、切断三角形の辺でのみ複数の切断三角形と接続しているもの（いわゆる非多様体的状態の一種、以下この発明では「分岐」と呼ぶ）を対象とする。
このような各切断三角形おいて、各切断三角形は切断点の３つの並びによって決まる表と裏の２種類の１サイクル（通常ｌｏｏｐといわれている）によってそれぞれ決まる２種類の所属空間（１サイクルで決まる右ねじの方向の法線ベクトルが指す側の３次元Ｅｕｃｌｉｄ空間における半空間）を有する（指定できる）。
なお全体構成は、境界セルについてそこに含まれる全ての切断三角形のリストがあるものとする。なお切断三角形は非連結でもよい。
【００４３】
図４は、図２の空間区分手段Ｄの更に詳しいフロー図である。この図に示すように、空間区分手段Ｄにより、ステップＳ１１においてセルが非境界セルである場合、単一の空間番号を設定する。
また、セルが境界セルである場合、ステップＳ１２において、境界データが境界セルの稜を切断する切断点と、該切断点を結び辺でのみ接続する単一又は複数の切断三角形とを設定する。
次いで、ステップＳ１３において、切断点があり切断三角形が無い場合、単一の空間番号を設定する。
最後に、ステップＳ１４において、辺で接続する複数の切断三角形がある場合、辺を共有し面がなす角度が最も小さい切断三角形との空間毎に異なる空間番号を設定する「サイクル探索手段」を全ての切断三角形について順に実施する。
【００４４】
空間番号ｋは、例えば１、２、３・・・の整数であり、小さい順に用いるのがよい。
また空間区分手段では、Ｘ，Ｙ，Ｚの３方向に対して順に繰返し、或いは再帰的な処理により、直方体セル１３の全てを順に走査する。この走査中に境界セル１３ａを通過する場合には、異なる空間番号（例えばｋ＝ｋ＋１）を設定する。また走査中に境界データで仕切られない隣接するセルに空間番号が設定されている場合には、小さい方の空間番号に設定しなおすのがよい。
【００４５】
図４の空間区分手段Ｄのフロー図において、Ｓ１３において、切断点があって切断三角形のない場合は、非境界セルと同じ扱いで１種類の所属空間番号を設定する。
Ｓ１３において、切断三角形がある場合、番号の若い切断稜をもつ切断三角形を選び、その裏表のうち、任意の側を選ぶ。
辺を共有し面がなす角度が最も小さい切断三角形との空間毎に異なる空間番号を設定するサイクル探索をして裏表の反対側に到達したら、非境界セルと同じで１つのみの所属空間番号を設定する。
なお元々切断点のない稜のみで構成されるセル面の内側を指すサイクルを使って、切断点がある場合もサイクルの細分割（同じ内側を向くように）が可能である。
【００４６】
上で選ばれた側（向き）付き切断三角形（開始サイクル）に対して以下のサイクル辿りを行い、開始サイクルに到達したら終了する。
また、上で選ばれた側付き切断三角形の裏についても調べる。裏が当該セルの外側であれば、スキップして次に進む。調べたらチェック済みフラグを立てる。全ての切断三角形に裏表両面がチェック済みであれば終了する。
【００４７】
図５は、辺を共有し面がなす角度が最も小さい切断三角形を選定するためのサイクル辿り手段の説明図である。この図において、４つの切断三角形が辺１−２を共有する。以下、「サイクル辿り」の方法を説明する。
図５において、上で選ばれた側付き切断三角形を△（０，１，２）とする。ここで（）は順序対をあらわす。数字は切断点であり、それに辺を共有して隣接している切断三角形が辿れることが前提となる。
次に任意の切断辺を選ぶ。この例では共有する辺１−２をサイクルで決まる向き付き辺（１，２）とする。
選んだ向き付き辺（１，２）を共有する同順の向き付き三角形を、この例では△（２，１，３）、（２，１，４）・・・（２，１、ｎ）とする。なお「同順」とは、辺１−２を逆に辿る三角形であり、面の法線が同じ空間に向くものを意味する。
同順の向き付き三角形の中から対象とする側付き切断三角形△（０，１，２）となす向き付き二面角（ｄｉｒｅｃｔｅｄ  ｄｉｈｅｄｒａｌ  ａｎｇｌｅ）を最小にする、すなわち二面の法線のなす角を最小（−πに近く）する切断三角形を選ぶことにより、対象とする側付き切断三角形△（０，１，２）とその切断三角形（この例では△（２，１，３））が同一の空間を共有していることがわかる。
【００４８】
同順の向き付き三角形の中から対象とする側付き切断三角形△（０，１，２）となす向き付き二面角を最小にする切断三角形を選ぶ方法を次に説明する。
図６は、対象とする三角形と同順の三角形とのなす角の関係を示す図である。この図において、三角形の面を線分で示しており、対象とする三角形は２−０であり、同順の三角形は３つの線分２−ｉである。
図６において、２つの面がなす角度をα（０〜２π）とすると、２つの面の法線がなす角度θは、-π〜＋πとなる。また、２つの面の法線がなす角度θは、数１の式（１）で示される。
【００４９】
【数１】
2005321885.tif 000003
【００５０】
従って、式（１）から｜１，２｜ｔａｎθ＝（（０，１）×（０，２））×（（ｉ，２）×（ｉ，１））・（１，２）／（０，１）×（０，２）・（ｉ，２）×（ｉ，１）・・・（２）
を最小にする切断点ｉを選べばよい。なおこの式において、×は外積、・は内積である。
【００５１】
式（２）は、ｉｎｎｅｒ＝（（０，１）×（０，２））・（（ｉ，２）×（ｉ，１））、ｏｕｔｅｒ＝（（０，１）×（０，２））×（（ｉ，２）×（ｉ，１））、ｉｎｏｕｔ＝  ｏｕｔｅｒ・（ｉ，２）とおくと、式（３）となる。
｜１，２｜ｔａｎθ＝ｉｎｏｕｔ／ｉｎｎｅｒ＝  ｏｕｔｅｒ・（ｉ，２）／ｉｎｎｅｒ・・・（３）
【００５２】
ただし、ｔａｎθは連続である範囲が-π／２〜＋π／２なので-π〜-π／２、およびπ／２〜πと分割し、かつｃｏｓθ＝０の場合を事前に除かなければならない。以下、-π〜-π／２を区間１、-π／２〜＋π／２を区間２、π／２〜πを区間３と呼ぶ。
【００５３】
図７は、角度θとｓｉｎθ，  ｃｏｓθ，  ｔａｎθとの関係図である。この図から、区間１，２，３内においてｔａｎθは常に増加関数であり、各区間内ではｔａｎθの値の小さい方を選べばθが小さい切断三角形を選ぶことができることがわかる。また式（３）において、ｉｎｏｕｔ  とｉｎｎｅｒはそれぞれｓｉｎθとｃｏｓθに比例するスカラ量である。
【００５４】
図８は各区間の判別方法を示すフロー図である。この図において、Ｓ２１において、ｉｎｎｅｒが０の場合には、ｃｏｓθ＝０であり、Ｓ２２において、ｉｎｏｕｔ（ｓｉｎθ）が負の場合、θ＝-π／２、ｉｎｏｕｔ（ｓｉｎθ）が正の場合、θ＝＋π／２である。
Ｓ２３において、ｉｎｎｅｒ（ｃｏｓθ）が正の場合、図７から区間２である。さらに、Ｓ２４において、図７からｉｎｏｕｔ（ｓｉｎθ）が負の場合、区間１であり、ｉｎｏｕｔ（ｓｉｎθ）が正の場合、区間３である。
【００５５】
したがって、図８に示す方法で、θ＝-π／２、＋π／２の場合と、それ以外の各区間を判別し、区間番号の小さいものを選定し、さらに同一の区間内ではｔａｎθの値の小さい方を選べばθが小さい切断三角形を選ぶことができる。
【００５６】
外部から入力する外部データ１２は、多面体を表すポリゴンデータ、有限要素法に用いる四面体又は六面体要素、３次元ＣＡＤ又はＣＧツールに用いる曲面データ、或いはその他の立体の表面を部分的な平面や曲面で構成された情報で表現するデータである。
外部データ１２は、このようなデータのほかに、Ｖ−ＣＡＤ独自のインターフェースにより人間の入力により直接作成されたデータと、（２）測定機やセンサ、デジタイザなどの表面のデジタイズデータや、ＣＴスキャンやＭＲＩ、および一般的にＶｏｌｕｍｅレンダリングに用いられているボクセルデータなどの内部情報ももつＶｏｌｕｍｅデータであってもよい。
【００５７】
出力データは、空間ごとに異なるラベル（空間番号）がつけられた境界と最小の空間分解能以上のサイズのセルからなるＶＣＡＤデータである。このＶＣＡＤデータは、境界を直接的に持つセル（境界セル）と持たないセル（非境界セル）で充填された全空間を有する。
【００５８】
上述したように、本発明のボリュームデータのセルラベリング方法とそのプログラムは、以下の効果を有する。
（１）  従来手法では解決できなかった複雑な形状の多媒質の所属空間区分ができるようになる。
（２）  それによってＶＣＡＤで扱える入力対象が広がる。すなわち完全に閉じたソリッドである２多様体を境界とする外と内の２媒質から非多様体（面の分岐、穴）、オープンシェルを境界にもつ１媒質から３以上の媒質へ適用できる。
（３）  １種類や３種類以上の材料がある（多媒質）の物体や流体の混合体の表現、解析、および加工や検査、評価が同じデータで連続的に行える。
（４）  セルの頂点でなく境界データ（セル内面）の表と裏に直接所属空間を持たせることによって、複数の計算機や、ユーザによって分散された環境でも高速に媒質やさまざまな属性（の所属する空間）をセルを介して取得利用が可能となる。
【００５９】
なお、本発明は上述した実施形態に限定されず、本発明の要旨を逸脱しない範囲で種々変更できることは勿論である。
【図面の簡単な説明】
【００６０】
【図１】本発明の方法を実行するための装置混図である。
【図２】本発明のセルラベリング方法のフロー図である。
【図３】特許文献６に開示した境界面の例である。
【図４】図２の空間区分手段Ｄのフロー図である。
【図５】辺を共有し面がなす角度が最も小さい切断三角形を選定するためのサイクル辿り手段の説明図である。
【図６】対象とする三角形と同順の三角形とのなす角の関係を示す図である。
【図７】角度θとｓｉｎθ，ｃｏｓθ，ｔａｎθとの関係図である。
【図８】各区間の判別方法を示すフロー図である。
【符号の説明】
【００６１】
２  外部データ入力手段、３  外部記憶装置、４  内部記憶装置、
５  中央処理装置、６  出力装置、１０  ＣＡＤ装置、
１１  境界データ、１２  外部データ、
１３  セル、１３ａ  境界セル、１３ｂ  非境界セル、
１４  Ｖ−ＣＡＤデータ（ボリュームデータ）
【図１】
2005321885.tif 000004
【図２】
2005321885.tif 000005
【図３】
2005321885.tif 000006
【図４】
2005321885.tif 000007
【図５】
2005321885.tif 000008
【図６】
2005321885.tif 000009
【図７】
2005321885.tif 000010
【図８】
2005321885.tif 000011