(57)【要約】【課題】３次元形状からの空き領域の抽出を容易に行う。【解決手段】実施形態のボクセル化処理プログラムは、３次元形状をボクセル化して３次元形状に対応する第１のボクセルを生成する処理をコンピュータに実行させる。また、ボクセル化処理プログラムは、生成した第１のボクセルを含む立方体又は直方体の各面から立方体又は直方体の内側に向かって、第１のボクセルに衝突するまで各面に垂直な線をのばした場合に、少なくとも互いに直交する３つの面からのばした線が交わるか否かに応じて第１のボクセルの外周の外側の領域を特定する処理をコンピュータに実行させる。また、ボクセル化処理プログラムは、特定した外側の領域を第２のボクセルとして設定する処理をコンピュータに実行させる。また、ボクセル化処理プログラムは、立方体又は直方体についてボクセルとして設定された領域とボクセルとして設定されていない領域を反転させる反転処理を実行させる。【選択図】図１
2018005859.tif 000002
【特許請求の範囲】
【請求項１】
３次元形状をボクセル化して前記３次元形状に対応する第１のボクセルを生成し、
生成した前記第１のボクセルを含む立方体又は直方体の各面から前記立方体又は直方体の内側に向かって、前記第１のボクセルに衝突するまで各面に垂直な線をのばした場合に、少なくとも互いに直交する３つの面からのばした線が交わるか否かに応じて前記第１のボクセルの外周の外側の領域を特定し、
特定した前記外側の領域を第２のボクセルとして設定し、
前記立方体又は直方体についてボクセルとして設定された領域とボクセルとして設定されていない領域を反転させる反転処理を実行する、
処理をコンピュータに実行させることを特徴とするボクセル化処理プログラム。
【請求項２】
前記反転処理後にボクセルとして設定された領域内で、特定の大きさの球又は立方体が連続して通過可能な領域を特定する、ことを特徴とする請求項１に記載のボクセル化処理プログラム。
【請求項３】
前記反転処理後に特定する処理は、前記特定の大きさの球又は立方体が連続して通過可能な領域ごとに、当該領域の外周において前記特定の大きさの球又は立方体より小さい球又は立方体が連続して通過可能な領域で補正する、ことを特徴とする請求項２に記載のボクセル化処理プログラム。
【請求項４】
３次元形状をボクセル化して前記３次元形状に対応する第１のボクセルを生成し、
生成した前記第１のボクセルを含む特定の３次元空間の領域のうち、３軸方向それぞれにおいて、前記特定の３次元空間の領域の外周から連続してボクセルが設定されていない領域を特定し、特定した前記領域それぞれに共通する共通領域を特定し、
特定した前記共通領域を第２のボクセルとして設定し、
前記特定の３次元空間の領域についてボクセルとして設定された領域とボクセルとして設定されていない領域を反転させる反転処理を実行する、
処理をコンピュータに実行させることを特徴とするボクセル化処理プログラム。
【請求項５】
前記共通領域は、少なくとも一部が前記特定の３次元空間の領域の外周に接する、ことを特徴とする請求項４に記載のボクセル化処理プログラム。
【請求項６】
３次元形状をボクセル化して前記３次元形状に対応するボクセルを生成し、
生成した前記ボクセルを含む特定の３次元空間の領域のうち、延長線上に前記ボクセルが存在せず、始点を共有する互いに直交する３つのベクトルを形成できる領域を特定し、
特定した前記領域をボクセルとして設定し、
前記特定の３次元空間の領域についてボクセルとして設定された領域とボクセルとして設定されていない領域を反転させる反転処理を実行する、
処理をコンピュータに実行させることを特徴とするボクセル化処理プログラム。
【請求項７】
３次元形状をボクセル化して前記３次元形状に対応する第１のボクセルを生成し、
生成した前記第１のボクセルを含む立方体又は直方体の各面から前記立方体又は直方体の内側に向かって、前記第１のボクセルに衝突するまで各面に垂直な線をのばした場合に、少なくとも互いに直交する３つの面からのばした線が交わるか否かに応じて前記第１のボクセルの外周の外側の領域を特定し、
特定した前記外側の領域を第２のボクセルとして設定し、
前記立方体又は直方体についてボクセルとして設定された領域とボクセルとして設定されていない領域を反転させる反転処理を実行する、
処理をコンピュータが実行することを特徴とするボクセル化処理方法。
【請求項８】
３次元形状をボクセル化して前記３次元形状に対応する第１のボクセルを生成し、
生成した前記第１のボクセルを含む特定の３次元空間の領域のうち、３軸方向それぞれにおいて、前記特定の３次元空間の領域の外周から連続してボクセルが設定されていない領域を特定し、特定した前記領域それぞれに共通する共通領域を特定し、
特定した前記共通領域を第２のボクセルとして設定し、
前記特定の３次元空間の領域についてボクセルとして設定された領域とボクセルとして設定されていない領域を反転させる反転処理を実行する、
処理をコンピュータが実行することを特徴とするボクセル化処理方法。
【請求項９】
３次元形状をボクセル化して前記３次元形状に対応する第１のボクセルを生成し、
生成した前記第１のボクセルを含む立方体又は直方体の各面から前記立方体又は直方体の内側に向かって、前記第１のボクセルに衝突するまで各面に垂直な線をのばした場合に、少なくとも互いに直交する３つの面からのばした線が交わるか否かに応じて前記第１のボクセルの外周の外側の領域を特定し、
特定した前記外側の領域を第２のボクセルとして設定し、
前記立方体又は直方体についてボクセルとして設定された領域とボクセルとして設定されていない領域を反転させる反転処理を実行する、
処理を実行するプロセッサを有することを特徴とする情報処理装置。
【請求項１０】
３次元形状をボクセル化して前記３次元形状に対応する第１のボクセルを生成し、
生成した前記第１のボクセルを含む特定の３次元空間の領域のうち、３軸方向それぞれにおいて、前記特定の３次元空間の領域の外周から連続してボクセルが設定されていない領域を特定し、特定した前記領域それぞれに共通する共通領域を特定し、
特定した前記共通領域を第２のボクセルとして設定し、
前記特定の３次元空間の領域についてボクセルとして設定された領域とボクセルとして設定されていない領域を反転させる反転処理を実行する、
処理を実行するプロセッサを有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ボクセル化処理プログラム、ボクセル化処理方法および情報処理装置に関する。
【背景技術】
【０００２】
コンピュータ技術を活用して製品の設計、製造や工程設計の事前検討の支援を行う技術の一例として、ＣＡＥ（Computer  Aided  Engineering）が知られている。ＣＡＥ分野では、自動車などの設計対象とする製品の３次元形状の形状データをもとにシミュレーションすることで、対象製品の設計段階から組み立て工程などを検証可能としている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−２７７６７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の従来技術では、３次元形状の形状データより設計対象とする製品内の空き領域を抽出する際に、処理負荷が増大する場合がある。
【０００５】
例えば、自動車などの製造現場では、製品内の空き領域に組み込む製品の製造を他社に委託することがある。このように他社に委託する場合は、製品内の空き領域の形状を示すデータを抽出して提供する。しかしながら、自動車などの製品においては、製品を示す３次元形状を示す面要素のサイズが細かく、要素数が多くなることから、空き領域の形状を示すデータの抽出に多大な処理負荷がかかることとなる。
【０００６】
１つの側面では、３次元形状からの空き領域の抽出を容易に行うことができるボクセル化処理プログラム、ボクセル化処理方法および情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
第１の案では、ボクセル化処理プログラムは、３次元形状をボクセル化して３次元形状に対応する第１のボクセルを生成する処理をコンピュータに実行させる。また、ボクセル化処理プログラムは、生成した第１のボクセルを含む立方体又は直方体の各面から立方体又は直方体の内側に向かって、第１のボクセルに衝突するまで各面に垂直な線をのばした場合に、少なくとも互いに直交する３つの面からのばした線が交わるか否かに応じて第１のボクセルの外周の外側の領域を特定する処理をコンピュータに実行させる。また、ボクセル化処理プログラムは、特定した外側の領域を第２のボクセルとして設定する処理をコンピュータに実行させる。また、ボクセル化処理プログラムは、立方体又は直方体についてボクセルとして設定された領域とボクセルとして設定されていない領域を反転させる反転処理を実行させる。
【発明の効果】
【０００８】
本発明の１実施態様によれば、３次元形状からの空き領域の抽出を容易に行うことができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施形態にかかる情報処理装置の機能構成例を示すブロック図である。
【図２】図２は、実施形態にかかる情報処理装置の動作例を示すフローチャートである。
【図３】図３は、設定画面を説明する説明図である。
【図４】図４は、３次元形状のボクセル化を説明する説明図である。
【図５】図５は、外周を埋める処理を説明する説明図である。
【図６−１】図６−１は、Ｘ方向から外周を埋める処理を説明する説明図である。
【図６−２】図６−２は、Ｙ方向から外周を埋める処理を説明する説明図である。
【図６−３】図６−３は、Ｚ方向から外周を埋める処理を説明する説明図である。
【図７】図７は、共通領域の取り出しを説明する説明図である。
【図８】図８は、中空領域の除去を説明する説明図である。
【図９】図９は、求めた領域の足し合わせを説明する説明図である。
【図１０】図１０は、逆ボクセル化を説明する説明図である。
【図１１】図１１は、区分領域の特定を説明する説明図である。
【図１２】図１２は、区分領域の特定を説明する説明図である。
【図１３】図１３は、抽出した領域を説明する説明図である。
【図１４】図１４は、小さい球での補正を説明する説明図である。
【図１５】図１５は、補正後の領域を説明する説明図である。
【図１６】図１６は、補正後の領域を説明する説明図である。
【図１７】図１７は、表示画面を説明する説明図である。
【図１８】図１８は、表示画面を説明する説明図である。
【図１９】図１９は、実施形態にかかる情報処理装置のハードウエア構成例を示すブロック図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照して、実施形態にかかるボクセル化処理プログラム、ボクセル化処理方法および情報処理装置を説明する。実施形態において同一の機能を有する構成には同一の符号を付し、重複する説明は省略する。なお、以下の実施形態で説明するボクセル化処理プログラム、ボクセル化処理方法および情報処理装置は、一例を示すに過ぎず、実施形態を限定するものではない。また、以下の各実施形態は、矛盾しない範囲内で適宜組みあわせてもよい。
【００１１】
図１は、実施形態にかかる情報処理装置の機能構成例を示すブロック図である。図１に示す情報処理装置１は、例えばＰＣ（パーソナルコンピュータ）等を適用できる。情報処理装置１は、例えば、計算機上の３次元ＣＡＤ（Computer  Aided  Design）で作成した製品の３次元形状データを受け付ける。そして、情報処理装置１は、受け付けた３次元形状データをもとに製品における空き領域の抽出などの処理を行い、処理結果をディスプレイなどに出力する。
【００１２】
ここで、３次元形状データは、製品を構成する各部品の形状を示すデータであり、ＢＲＥＰ（Boundary  REPresentation）、ファセットなどを適用できる。ＢＲＥＰは、位相情報（Ｂｏｄｙ、Ｆａｃｅ、Ｌｏｏｐ、ＣｏＥｄｇｅ、Ｅｄｇｅ、Ｖｅｒｔｅｘなど）および幾何情報（Ｂａｓｅ  Ｓｕｒｆａｃｅ、Ｂａｓｅ  Ｃｕｒｖｅ、Ｂａｓｅ  Ｐｏｉｎｔなど）で製品の３次元形状を表現する。ファセットは、微小な三角形（Ｂｏｄｙ、Ｆａｃｅ、Ｔｒｉａｎｇｌｅｓなど）の集まりで製品の３次元形状を表現する。
【００１３】
図１に示すように、情報処理装置１は、第１ボクセル化部１０、第２ボクセル化部２０、逆ボクセル化部３０、領域特定部４０、出力部５０および設定部６０を有する。
【００１４】
第１ボクセル化部１０は、製品の３次元形状データが示す製品の３次元形状をボクセル化して３次元形状に対応するボクセル（第１のボクセル）を生成する。
【００１５】
ボクセルは、ＸＹＺ空間の微小立体（格子）の集まりで３次元形状を表現する。このように、ボクセルは、ＸＹＺ空間上の微小立体の有無により単純に３次元形状を表現できることから、ＢＲＥＰやファセットなどの３次元形状データと比較して各種演算にかかる処理負荷を抑えることができる。
【００１６】
第２ボクセル化部２０は、第１ボクセル化部１０が生成したボクセルの外周の外側の領域を特定し、特定した外側の領域に対応するボクセル（第２のボクセル）を生成する。
【００１７】
具体的には、第２ボクセル化部２０は、第１ボクセル化部１０が生成した第１のボクセルを含む（取り囲む）立方体又は直方体の内側に向かって第１のボクセルに衝突するまで線を伸ばす。次いで、第２ボクセル化部２０は、少なくとも互いに直交する３つの面から伸ばした線が交わるか否かに応じて第１ボクセル化部１０が生成した第１のボクセルの外周の外側の領域を特定する。
【００１８】
言い換えると、第２ボクセル化部２０は、第１ボクセル化部１０が生成した第１のボクセルを含む特定の３次元空間の領域（例えば立方体や直方体）のうち、３軸方向それぞれにおいて、特定の３次元空間の領域の外周から連続してボクセルが設定されていない領域を特定する。そして、第２ボクセル化部２０は、特定した領域それぞれに共通する共通領域、すなわち第１のボクセルの外周の外側にある領域を特定する。
【００１９】
また、言い換えると、第２ボクセル化部２０は、第１ボクセル化部１０が生成した第１のボクセルを含む特定の３次元空間の領域のうち、延長線上に第１のボクセルが存在せず、始点を共有する互いに直交する３つのベクトルを形成できる領域を特定する。すなわち、第２ボクセル化部２０は、第１のボクセルの外周の外側にある領域を特定する。
【００２０】
次いで、第２ボクセル化部２０は、特定した外側の領域に対応する第２のボクセルを生成する。すなわち、第２ボクセル化部２０は、３次元形状に対応する第１のボクセルの外周の外側にある空き領域を第２のボクセルで埋める。
【００２１】
逆ボクセル化部３０は、３次元形状に対応する第１のボクセルを取り囲む特定の３次元空間（例えば立方体又は直方体）について逆ボクセル化を行う。すなわち、逆ボクセル化部３０は、特定の３次元空間において、ボクセルがある領域をボクセルがない領域とし、ボクセルがない領域をボクセルがある領域として反転させる反転処理を実行する。この逆ボクセル化により、３次元形状に対応する第１のボクセルで囲まれている、３次元形状内の空き領域がボクセル化されることとなる。
【００２２】
領域特定部４０は、逆ボクセル化部３０による反転処理後にボクセルとして設定された領域内で、特定の大きさの球又は立方体が連続して通過可能な領域を特定する。これにより、逆ボクセル化部３０による反転処理後にボクセル化された領域、すなわち、３次元形状内の空き領域が、特定の大きさの球又は立方体が連続して通過可能な領域ごとに分割される。例えば、３次元形状内の空き領域において、特定の大きさの球又は立方体よりも小さい隙間で互いに接続している２つの領域は、２つの区分領域として分割される。
【００２３】
出力部５０は、逆ボクセル化部３０によりボクセル化され、領域特定部４０により特定された領域についての処理結果、すなわち３次元形状データが示す３次元形状内の空き領域に対応するボクセルを出力する。一例として、出力部５０は、ボクセルの表示を行う表示データを出力する。これにより、ユーザは、３次元形状データが示す製品内の空き領域の形状をボクセルで確認することができる。
【００２４】
設定部６０は、ユーザからの各種設定を受け付けるユーザ・インタフェースである。例えば、設定部６０は、ＧＵＩ（グラフィカル・ユーザ・インタフェース）をディスプレイに表示してユーザからの操作をＧＵＩで受け付けることで、各種設定を行う。一例として、設定部６０は、第１ボクセル化部１０、第２ボクセル化部２０および逆ボクセル化部３０においてボクセル化を行う際の設定や、領域特定部４０において領域の特定を行う際の設定など、製品内の空き領域の抽出にかかる設定を受け付ける。また、設定部６０は、出力部５０において出力する表示データについての設定などの表示設定を受け付ける。
【００２５】
次に、情報処理装置１における処理の詳細について説明する。図２は、実施形態にかかる情報処理装置１の動作例を示すフローチャートである。
【００２６】
図２に示すように、処理が開始されると、設定部６０は、設定画面におけるユーザの操作をもとに、製品内の空き領域の抽出にかかる抽出条件を設定する（Ｓ１）。
【００２７】
図３は、設定画面を説明する説明図である。図３に示すように、設定画面２００は、設定領域２０１、２０２および各種の設定ボタン２０３を有する。
【００２８】
設定領域２０１は、第１ボクセル化部１０、第２ボクセル化部２０および逆ボクセル化部３０においてボクセル化を行う際の設定内容を受け付ける。具体的には、設定領域２０１では、第１ボクセル化部１０、第２ボクセル化部２０および逆ボクセル化部３０におけるボクセル化のピッチなどの設定を受け付ける。
【００２９】
設定領域２０２は、領域特定部４０において領域の特定を行う際の設定内容を受付ける。具体的には、設定領域２０２では、球又は立方体のいずれの立体で領域を特定するかの選択設定、その立体のサイズなどの設定を受付ける。
【００３０】
Ｓ１に次いで、第１ボクセル化部１０は、製品の３次元形状データが示す製品の３次元形状を、設定された抽出条件でボクセル化（第１ボクセル化）する（Ｓ２）。
【００３１】
図４は、３次元形状のボクセル化を説明する説明図である。図４に示すように、第１ボクセル化部１０は、３次元形状データが示す３次元形状３００についてボクセル化を行い、３次元形状３００に対応するボクセル３０１を生成する。このボクセル化については、例えば３次元形状データに含まれるファセットの各三角形が通る領域を”１（ボクセルあり）”と設定するなどの公知のアルゴリズムを用いて行う。
【００３２】
次いで、第２ボクセル化部２０は、第１ボクセル化部１０が生成したボクセル３０１の外周の外側の領域をボクセル（第２のボクセル）で埋める、第２ボクセル化を行う（Ｓ３）。
【００３３】
図５は、外周を埋める処理を説明する説明図である。図５に示すように、第２ボクセル化部２０は、第１ボクセル化部１０が生成したボクセル３０１を含む立体３０１ａの内側に向かってボクセル３０１に衝突するまで線を伸ばす。次いで、第２ボクセル化部２０は、少なくとも互いに直交する３つの面から伸ばした線が交わるか否かに応じて第１ボクセル化部１０が生成したボクセル３０１の外周の外側の領域を特定する。
【００３４】
すなわち、第２ボクセル化部２０は、Ｘ、Ｙ、Ｚ方向からボクセル３０１に向かって外周を埋めていき、Ｘ、Ｙ、Ｚ方向の全てで埋まる共通領域をボクセル３０１の外周の外側の領域として特定する。
【００３５】
図６−１は、Ｘ方向から外周を埋める処理を説明する説明図である。図６−１に示すように、第２ボクセル化部２０は、Ｘ方向からボクセル３０１に向かって外周を埋めていくことで、領域３０２ａを得る。
【００３６】
図６−２は、Ｙ方向から外周を埋める処理を説明する説明図である。図６−２に示すように、第２ボクセル化部２０は、Ｙ方向からボクセル３０１に向かって外周を埋めていくことで、領域３０２ｂを得る。
【００３７】
図６−３は、Ｚ方向から外周を埋める処理を説明する説明図である。図６−３に示すように、第２ボクセル化部２０は、Ｚ方向からボクセル３０１に向かって外周を埋めていくことで、領域３０２ｃを得る。
【００３８】
図７は、共通領域の取り出しを説明する説明図である。図７に示すように、第２ボクセル化部２０は、得られた領域３０２ａ、３０２ｂ、３０２ｃを掛けあわせて、領域３０２ａ、３０２ｂ、３０２ｃに共通する共通領域３０２ｄを取り出す。
【００３９】
図８は、中空領域の除去を説明する説明図である。図８に示すように、共通領域３０２ｄには、ボクセル３０１の内側にある中空領域３０２ｅも含まれる場合がある。この中空領域３０２ｅは、立体３０１ａに接していない。よって、第２ボクセル化部２０は、共通領域３０２ｄの中で少なくとも一部が立体３０１ａの外周に接する領域を特定して中空領域３０２ｅを除去する。これにより、第２ボクセル化部２０は、ボクセル３０１の外周の外側の共通領域３０２を特定する。
【００４０】
図９は、求めた領域の足し合わせを説明する説明図である。図９に示すように、第２ボクセル化部２０は、ボクセル３０１と、求めた共通領域３０２とを足しあわせて３次元形状の外周を埋めたボクセル３０３を得る。
【００４１】
Ｓ３に次いで、逆ボクセル化部３０は、ボクセル３０３を逆ボクセル化する（Ｓ４）。図１０は、逆ボクセル化を説明する説明図である。図１０に示すように、逆ボクセル化部３０は、立体３０１ａ内においてボクセル３０３のあり／なしを反転することで（逆ボクセル化）、３次元形状内の空き領域に対応するボクセル３０４を抽出する。
【００４２】
次いで、領域特定部４０は、逆ボクセル化後のボクセル３０４内で、設定画面２００の設定領域２０２で設定された所定サイズの球（または立方体）が通る領域を特定する。次いで、領域特定部４０は、逆ボクセル化後のボクセル３０４内で特定した領域ごとに分割する（Ｓ５）。この分割により、領域特定部４０は、ボクセル３０４より１又は複数の区分領域を特定する。
【００４３】
図１１、図１２は、区分領域の特定を説明する説明図である。図１１に示すように、領域特定部４０は、ボクセル３０４内で球３０５を連続して移動させることで、球３０５が通過可能な区分領域３０４ａを特定する。次いで、領域特定部４０は、ボクセル３０４内で区分領域３０４ａを除いた領域で球３０５を連続して移動させ、球３０５が通過可能な区分領域３０４ｂを特定する。
【００４４】
また、図１２に示すように、領域特定部４０は、球３０５の径を段階的に小さくして区分領域の特定を行ってもよい。一例として、領域特定部４０は、最初に直径６０ｍｍの球３０５が通る区分領域３０４ａを特定する。次いで、領域特定部４０は、直径を４０ｍｍとする球３０５が通る区分領域３０４ｂを特定する。次いで、領域特定部４０は、直径を２０ｍｍとする球３０５が通る区分領域３０４ｃを特定する。このように、球３０５の径を段階的に小さくすることで、より小さな区分領域を段階的に特定することができる。
【００４５】
図１３は、抽出した領域を説明する説明図である。図１３に示すように、領域特定部４０により、３次元形状内の空き領域に対応するボクセル３０４内において所定の隙間で接続する２つの領域（部屋）については、区分領域３０４ａ、３０４ｂとして分割され、抽出される。
【００４６】
抽出された区分領域３０４ａ、３０４ｂは、球３０５の大きさにより荒い形状となる。したがって、領域特定部４０は、Ｓ５に次ぐ処理で、区分領域３０４ａ、３０４ｂごとに、その外周において球３０５より小さい球（又は立方体）が連続して通る領域で補正する（Ｓ６）。
【００４７】
図１４は、小さい球での補正を説明する説明図である。図１４に示すように、領域特定部４０は、区分領域３０４ａの外周において球３０５より小さい球３０６が通る領域で区分領域３０４ａを補正する。なお、領域特定部４０は、区分領域３０４ｂについても同様に補正を行う。
【００４８】
図１５、図１６は、補正後の領域を説明する説明図である。図１５に示すように、Ｓ６による補正により、区分領域３０４ａ、３０４ｂの形状をより精細にすることができる。
【００４９】
図１６において、ケースＣ１は、ボクセル３０４内で球３０５が通過可能な区分領域３０４ａ、３０４ｂを特定した後に、球３０５より小さな球３０６で補正する場合を示す。また、ケースＣ２は、最初から球３０５より小さな球３０６を用いて区分領域を特定する場合を示す。ケースＣ２が示すように、最初から球３０６を用いて区分領域の特定を行うと、１つに繋がった区分領域３０４ａが特定される。これに対し、ケースＣ１では、最初に大きな球３０５を用いて区分領域の特定を行った後に、小さな球３０６を用いて補正するので、２つの区分領域３０４ａ、３０４ｂを特定した上で、区分領域３０４ａ、３０４ｂの形状を精細に補正することができる。
【００５０】
図２に戻り、Ｓ６に次いで、出力部５０は、Ｓ６までの処理結果を出力する（Ｓ７）。具体的には、出力部５０は、３次元形状データが示す３次元形状内の空き領域（区分領域３０４ａ、３０４ｂなど）に対応するボクセルを表示画面などに出力する。
【００５１】
図１７、図１８は、表示画面を説明する説明図である。図１７に示すように、表示画面４００は、操作領域４０１と、ツリー表示領域４０２と、３次元形状表示領域４０３とを有する。
【００５２】
操作領域４０１は、各種の操作ボタンを有する領域であり、ユーザからの操作指示を受付ける。ツリー表示領域４０２は、３次元形状表示領域４０３に表示する表示部材をツリー形式に表示する領域である。ツリー表示領域４０２のツリー４０２ａには、３次元形状表示領域４０３に表示する表示部材ごとにブランチ４０２ｂが設定されている。ユーザは、ブランチ４０２ｂにおけるチェックボックスをオン／オフすることで、３次元形状表示領域４０３における表示部材の表示のあり／なしを指示できる。
【００５３】
Ｓ７では、３次元形状データが示す３次元形状３００内の空き領域（区分領域３０４ａ、３０４ｂ）に対応するボクセルが３次元形状表示領域４０３に表示される。これにより、ユーザは、３次元形状データが示す３次元形状３００内の空き領域をボクセルで確認することができる。また、ユーザは、ツリー表示領域４０２のツリー表示領域４０２のブランチ４０２ｂ、４０２ｃにおけるチェックボックスをオン／オフすることで、３次元形状３００およびボクセルの表示を切り替えることができる。
【００５４】
具体的には、図１８に示すように、ブランチ４０２ｃのチェックボックスをオンとし、ブランチ４０２ｂのチェックボックスをオフとすることで、３次元形状３００を消してボクセルの表示を行うことができる。
【００５５】
以上のように、情報処理装置１は、３次元形状をボクセル化して３次元形状に対応する第１のボクセルを生成し、第１のボクセルの外周の外側の領域を特定し、特定した外側の領域を第２のボクセルとして設定する。そして、情報処理装置１は、ボクセルとして設定された領域とボクセルとして設定されていない領域を反転させる反転処理（逆ボクセル化）を実行し、３次元形状内の空き領域に対応した形状（ボクセル）を特定する。このように、情報処理装置１は、単純に３次元形状を表現できるボクセルを用いて３次元形状内の空き領域に対応した形状の特定を行うことから、ＢＲＥＰやファセットなどの３次元形状データと比較して各種演算にかかる処理負荷を抑え、空き領域の抽出を容易に行うことができる。
【００５６】
なお、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【００５７】
また、情報処理装置１で行われる各種処理機能は、ＣＰＵ（またはＭＰＵ、ＭＣＵ（Micro  Controller  Unit）等のマイクロ・コンピュータ）上で、その全部または任意の一部を実行するようにしてもよい。また、各種処理機能は、ＣＰＵ（またはＭＰＵ、ＭＣＵ等のマイクロ・コンピュータ）で解析実行されるプログラム上、またはワイヤードロジックによるハードウエア上で、その全部または任意の一部を実行するようにしてもよいことは言うまでもない。また、情報処理装置１で行われる各種処理機能は、クラウドコンピューティングにより、複数のコンピュータが協働して実行してもよい。
【００５８】
ところで、上記の実施形態で説明した各種の処理は、予め用意されたプログラムをコンピュータで実行することで実現できる。そこで、以下では、上記の実施形態と同様の機能を有するプログラムを実行するコンピュータ（ハードウエア）の一例を説明する。図１９は、実施形態にかかる情報処理装置１のハードウエア構成例を示すブロック図である。
【００５９】
図１９に示すように、情報処理装置１は、各種演算処理を実行するＣＰＵ１０１と、データ入力を受け付ける入力装置１０２と、モニタ１０３と、スピーカ１０４とを有する。また、情報処理装置１は、記憶媒体からプログラム等を読み取る媒体読取装置１０５と、各種装置と接続するためのインタフェース装置１０６と、有線または無線により外部機器と通信接続するための通信装置１０７とを有する。また、情報処理装置１は、各種情報を一時記憶するＲＡＭ１０８と、ハードディスク装置１０９とを有する。また、情報処理装置１内の各部（１０１〜１０９）は、バス１１０に接続される。
【００６０】
ハードディスク装置１０９には、上記の実施形態で説明した第１ボクセル化部１０、第２ボクセル化部２０、逆ボクセル化部３０、領域特定部４０、出力部５０および設定部６０における各種の処理を実行するためのプログラム１１１が記憶される。また、ハードディスク装置１０９には、プログラム１１１が参照する各種データ１１２（例えば３次元形状データなど）が記憶される。入力装置１０２は、例えば、情報処理装置１の操作者から操作情報の入力を受け付ける。モニタ１０３は、例えば、操作者が操作する各種画面（例えば設定画面２００、表示画面４００など）を表示する。インタフェース装置１０６は、例えば印刷装置等が接続される。通信装置１０７は、ＬＡＮ（Local  Area  Network）等の通信ネットワークと接続され、通信ネットワークを介した外部機器との間で各種情報をやりとりする。
【００６１】
ＣＰＵ１０１は、ハードディスク装置１０９に記憶されたプログラム１１１を読み出して、ＲＡＭ１０８に展開して実行することで、各種の処理を行う。なお、プログラム１１１は、ハードディスク装置１０９に記憶されていなくてもよい。例えば、情報処理装置１が読み取り可能な記憶媒体に記憶されたプログラム１１１を読み出して実行するようにしてもよい。情報処理装置１が読み取り可能な記憶媒体は、例えば、ＣＤ−ＲＯＭやＤＶＤディスク、ＵＳＢ（Universal  Serial  Bus）メモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ、ハードディスクドライブ等が対応する。また、公衆回線、インターネット、ＬＡＮ等に接続された装置にこのプログラム１１１を記憶させておき、情報処理装置１がこれらからプログラム１１１を読み出して実行するようにしてもよい。
【符号の説明】
【００６２】
１…情報処理装置
１０…第１ボクセル化部
２０…第２ボクセル化部
３０…逆ボクセル化部
４０…領域特定部
５０…出力部
６０…設定部
１０１…ＣＰＵ
１０２…入力装置
１０３…モニタ
１０４…スピーカ
１０５…媒体読取装置
１０６…インタフェース装置
１０７…通信装置
１０８…ＲＡＭ
１０９…ハードディスク装置
１１０…バス
１１１…プログラム
１１２…各種データ
２００…設定画面
２０１、２０２…設定領域
２０３…設定ボタン
３００…３次元形状
３０１…ボクセル形状
３０１ａ…立体
３０２…共通領域
３０２ａ〜３０２ｃ…領域
３０２ｄ…共通領域
３０２ｅ…中空領域
３０３、３０４…ボクセル
３０４ａ〜３０４ｃ…区分領域
３０５、３０６…球
４００…表示画面
４０１…操作領域
４０２…ツリー表示領域
４０３…３次元形状表示領域
４０２ａ…ツリー
４０２ｂ、４０２ｃ…ブランチ
Ｃ１、Ｃ２…ケース
【図１】
2018005859.tif 000003
【図２】
2018005859.tif 000004
【図３】
2018005859.tif 000005
【図４】
2018005859.tif 000006
【図５】
2018005859.tif 000007
【図６−１】
2018005859.tif 000008
【図６−２】
2018005859.tif 000009
【図６−３】
2018005859.tif 000010
【図７】
2018005859.tif 000011
【図８】
2018005859.tif 000012
【図９】
2018005859.tif 000013
【図１０】
2018005859.tif 000014
【図１１】
2018005859.tif 000015
【図１２】
2018005859.tif 000016
【図１３】
2018005859.tif 000017
【図１４】
2018005859.tif 000018
【図１５】
2018005859.tif 000019
【図１６】
2018005859.tif 000020
【図１７】
2018005859.tif 000021
【図１８】
2018005859.tif 000022
【図１９】
2018005859.tif 000023