(57)【要約】【課題】３次元形状が経路に沿って動く軌跡（運動軌跡）を連続した（滑らかな）１パーツの３次元形状として生成すること。【解決手段】３次元ＣＡＤ装置１００１のＣＰＵ１００２は、３次元形状（運動軌跡算出用３Ｄモデル）の表面から面で構成されるサーフェスを抽出し、該抽出されたサーフェス毎に、該サーフェスを指定された経路に沿って連続的に移動させた軌跡形状を生成し、該サーフェス毎に生成された各軌跡形状から、前記３次元形状が前記経路に沿って動く軌跡形状として新たな３次元形状を生成する構成を特徴とする。【選択図】図１
2008165644.tif 000002
【特許請求の範囲】
【請求項１】
３次元形状の表面から面で構成されるサーフェスを抽出する抽出手段と、
前記抽出手段により抽出されたサーフェス毎に、該サーフェスを指定された経路に沿って連続的に移動させた軌跡形状を生成するスイープ処理を実行するスイープ手段と、
前記スイープ手段により前記サーフェス毎に生成された各軌跡形状から新たな３次元形状を生成する生成手段と、
を有することを特徴とする３次元形状生成装置。
【請求項２】
前記生成手段は、前記スイープ手段により生成された前記各軌跡形状の論理和を示す形状の最外形を抽出し、該抽出された最外形の内部を前記新たな３次元形状として抽出する、ことを特徴とする請求項１に記載の３次元形状生成装置。
【請求項３】
前記抽出手段により前記３次元形状の表面から抽出された各サーフェスに対して該３次元形状の体積方向を設定する設定手段と、
前記生成手段は、前記設定手段により設定された各サーフェスに対する体積方向に基づいて前記各サーフェスにおける外方向を判断して、前記最外形を抽出する、ことを特徴とする請求項２に記載の３次元形状生成装置。
【請求項４】
前記抽出手段は、稜線で囲まれた面で構成されるサーフェスを抽出する際に、前記複数のサーフェスで共有される稜線の情報を記憶手段に格納するものであり、
前記生成手段は、前記記憶手段に記憶される前記複数のサーフェスで共有される稜線の情報に基づいて、前記スイープ手段により生成された前記各軌跡形状を重ねることにより形成される形状の整合性を検証する、ことを特徴とする請求項２又は３に記載の３次元形状生成装置。
【請求項５】
前記経路の開始点に該経路に沿って移動する参照座標系を定義し、前記抽出手段により抽出された各サーフェスの前記参照座標系における位置を記憶手段に記憶させ、前記参照座標系と前記各サーフェスの相対位置を固定させる参照座標系定義手段を、設けたことを特徴とする請求項１乃至４のいずれかに記載の３次元形状生成装置。
【請求項６】
前記生成手段は、前記３次元形状が移動する領域を包含する包含領域を定義し、該包含領域から前記最外形の内部を前記新たな３次元形状として抽出することを特徴とする請求項２乃至４のいずれかに記載の３次元形状生成装置。
【請求項７】
前記抽出手段により抽出された前記サーフェスが３辺以下の稜線で構成されている場合に、該サーフェスに対して前記スイープ処理可能か否かを判定する判定手段と、
前記判定手段によりスイープ処理不可能と判定された場合、前記サーフェスを分割する分割手段と、
を設けたことを特徴とする請求項１乃至６のいずれかに記載の３次元形状生成装置。
【請求項８】
前記判定手段は、前記サーフェスに対して仮想的にスイープ処理を実行させ、該スイープ処理結果に基づいて、該サーフェスに対して前記スイープ処理可能か否かを判定する、ことを特徴とする請求項１乃至６のいずれかに記載の３次元形状生成装置。
【請求項９】
前記スイープ処理が不可能となる形状の情報を登録するデータベースを設け、
前記判定手段は、前記データベースに登録された情報に基づいて、前記サーフェスに対して前記スイープ処理可能か否かを判定する、ことを特徴とする請求項１乃至６のいずれかに記載の３次元形状生成装置。
【請求項１０】
前記分割手段は、前記サーフェスが円筒サーフェスであった場合には、該円筒サーフェスの両対辺の各始点を通る線分、及び、該円筒サーフェスの両対辺の中点を通る線分で、該円筒サーフェスを分割する、ことを特徴とする請求項７乃至９のいずれかに記載の３次元形状生成装置。
【請求項１１】
前記分割手段は、前記サーフェスが３辺以下の稜線で構成されている場合、該サーフェスの重心を算出し、該サーフェスの重心を通る面により、該サーフェスを分割する、ことを特徴とする請求項７乃至９のいずれかに記載の３次元形状生成装置。
【請求項１２】
前記分割手段は、前記サーフェスに仮想的に体積を与え、該サーフェスの重心を算出する、ことを特徴とする請求項１１に記載の３次元形状生成装置。
【請求項１３】
３次元形状の表面から稜線で囲まれた面で構成されるサーフェスを抽出する抽出ステップと、
前記抽出ステップで抽出されたサーフェス毎に、該サーフェスを指定された経路に沿って連続に移動させた軌跡形状を生成するスイープ処理を実行するスイープステップと、
前記スイープステップで前記サーフェス毎に生成された各軌跡形状から新たな３次元形状を生成する生成ステップと、
を有することを特徴とする３次元形状生成方法。
【請求項１４】
請求項１乃至１２のいずれかに記載された３次元形状生成装置としてコンピュータを機能させるための、又は、請求項１３に記載された３次元形状生成方法をコンピュータに実行させるためのプログラム。
【請求項１５】
請求項１乃至１２のいずれかに記載された３次元形状生成装置としてコンピュータを機能させるためのプログラム、又は、請求項１３に記載された３次元形状生成方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元形状を生成する３次元形状生成装置および３次元形状生成方法およびプログラムおよび記録媒体に関する。
【背景技術】
【０００２】
従来、３次元ＣＡＤ（Computer Aided Design）装置上で３次元形状の運動軌跡（搭載軌跡）が、他部品と干渉するかを確認する場合、運動経路に沿って３次元形状の配列コピーを行い、該配列コピーと他部品との干渉チェックを行っていた。
【０００３】
図２９，図３０は、従来の技術を説明するための図である。
【０００４】
図２９において、ａ１は運動軌跡を算出する基の３次元形状を示す。また、ａ２は、３次元形状ａ１の運動経路を示す。
【０００５】
この３次元形状ａ１を、運動経路ａ２にそって移動させた軌跡を算出するにあたって、従来では、図３０のａ３に示すように、３次元形状ａ１のコピーをａ３のように配列し、コマ送りのような状態で、３次元形状ａ１が移動した軌跡の形状（運動軌跡）を生成していた。
【０００６】
特許文献１には、３次元形状を十分に包含する大きめの３次元形状を用意し、その形状内で運動軌跡算出用の３次元形状を適当な距離で移動させ、その都度、ブーリアン演算（差）を行い、くり貫かれた部位を抽出して軌跡用モデル（運動軌跡）とする技術が開示されている（段落００３８〜００４１）。
【特許文献１】特開平１０−３０７９３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の配列コピーを用いて干渉チェックを行う技術では、運動経路上に複数のパーツを配置する為に様々な課題が発生していた。
【０００８】
図３０のａ３に示すように、各コピー形状同士は、不連続な状態であり、このような不連続な状態で、他の３次元形状との干渉チェックを行う為、ａ３にできたコピー間の隙間部（不連続な箇所）では、干渉を確認できないという問題点があった。
【０００９】
また、ａ３は、３次元形状ａ１のコピー配列で構成されるため、同一ファイル内に同形状を複数個配置することとなり、メモリ使用量を増大させたり、ファイルサイズを増大させてしまうといった問題点があった。
【００１０】
なお、特許文献１に示した技術は、３次元形状を適当な距離で移動させる構成であるため、同様に、生成された運動軌跡モデルは、不連続なものとなり、該不連続な箇所では、干渉を確認できないという問題点があった。
【００１１】
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、３次元形状が経路に沿って動く軌跡（運動軌跡）を連続した（滑らかな）１パーツの３次元形状として生成する仕組みを提供することである。
【課題を解決するための手段】
【００１２】
本発明は、３次元形状の表面から面で構成されるサーフェスを抽出する抽出手段と、前記抽出手段により抽出されたサーフェス毎に、該サーフェスを指定された経路に沿って連続的に移動させた軌跡形状を生成するスイープ処理を実行するスイープ手段と、前記スイープ手段により前記サーフェス毎に生成された各軌跡形状から新たな３次元形状を生成する生成手段と、を有することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、３次元形状を経路に沿って移動させた軌跡を連続した（滑らかな）１パーツ状態の３次元形状として算出（生成）することができる。これにより、複数の３次元形状間の干渉チェックを精度良く行うことができる。
【００１４】
また、３次元形状のコピーは行わず、３次元形状の軌跡を滑らかな１パーツ状態の３次元形状で生成できるため、メモリ使用量を低減して、算出した３次元形状のファイルサイズを従来のものより縮小化することができる。
【００１５】
従って、３次元形状が経路に沿って動く軌跡（運動軌跡）を連続した（滑らかな）１パーツの３次元形状として生成することができる等の効果を奏する。
【発明を実施するための最良の形態】
【００１６】
〔第１実施形態〕
以下に図面を用いて本発明の実施形態について詳細に説明する。
【００１７】
図１は、本発明の一実施形態を示す３次元形状生成装置を適用可能なシステムの一例を示す図である。
【００１８】
図１において、１００１は本発明の３次元形状生成装置としての３次元ＣＡＤ装置であり、パーソナルコンピュータ，ワークステーション等の情報処理装置により構成される。この３次元ＣＡＤ装置１００１は、公知のＣＡＤ機能により、３次元形状を生成して部品の設計等を行うことができる。
【００１９】
また、３次元ＣＡＤ装置１００１は、ネットワークを経由して周辺部品を担当する外部３次元ＣＡＤ装置１００９，１０１０と通信可能となっている。
【００２０】
３次元ＣＡＤ装置１００１において、１００２はＣＰＵであり、記憶媒体１００４又は２次記憶装置１００５に格納されるプログラムを、主記憶装置１００３にロードして実行することにより、３次元ＣＡＤ装置１００１全体を制御するとともに、公知の各種ＣＡＤ機能、及び、後述する３次元形状運動軌跡算出機能を実現可能である。
【００２１】
なお、３次元形状運動軌跡算出機能とは、部品（３次元形状）とその運動経路を基に該部品が移動する軌跡を３次元形状として生成する機能である。また、３次元形状運動軌跡算出機能による算出結果データは、記憶媒体１００４，２次記憶装置１００５で格納することが可能であり、必要に応じて内部バスを経由し、ＬＣＤ，ＣＲＴ等の出力部１００６に表示することが可能である。
【００２２】
また通信制御部１００８でネットワークを経由して、外部３次元ＣＡＤ装置１００９，１０１０にデータを供給及び表示することもできる。
【００２３】
なお、記憶媒体１００４は、ＦＤ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、フラッシュメモリ等の任意の記憶媒体を示す。また、２次記憶装置１００５は、ハードディスクドライブ、フラッシュメモリ等を示す。
【００２４】
１００７は入力部であり、キーボード，ポインティングデバイス（例えば、マウス、トラックボール等）で構成され、ユーザ操作を入力可能である。
【００２５】
なお、部品を設計する（３次元形状を生成する）３次元ＣＡＤ装置１００１は、該部品の周辺部品を設計する外部３次元ＣＡＤ装置１００９、１０１０と同一であってもよく、格納されたデータは相互に取り出すことができるものとする。
【００２６】
また、２次記憶装置１００５は、内部バスを経由するシステム以外に通信制御部１００８を介しネットワークを経由し、データを格納する形態であってもよい。
【００２７】
このように、図１に示すシステムでは、ある部品を設計する３次元ＣＡＤ装置１００１と該部品の周辺部品を設計する外部３次元ＣＡＤ装置１００９，１０１０がネットワークを介して接続されている。このため、３次元ＣＡＤ装置１００１で生成された当該部品の３次元運動軌跡生成結果データ（後述する図１９に示すａ２６，図２７に示すａ４５等）を、オンラインで外部３次元ＣＡＤ装置１００９，１０１０に供給できるため、３次元ＣＡＤ装置１００１で生成される部品と、外部３次元ＣＡＤ装置１００９，１０１０で生成され前記部品の周辺部品との干渉問題をスムーズに検討できる。
【００２８】
以下、図２〜図１９を参照して、本発明に係る３次元ＣＡＤ装置１００１上で実行される３次元形状運動軌跡算出機能について説明する。
【００２９】
図２は、本発明における第１の制御処理の一例を示すフローチャートであり、３次元ＣＡＤ装置１００１上で実行される３次元形状運動軌跡算出機能に対応する。なお、このフローチャートの処理は、図１に示したＣＰＵ１００２が、記憶媒体１００４又は２次記憶装置１００５に記憶されたプログラムを、主記憶装置１００３上に読み出して実行することにより実現される。また、図中、Ｓ１〜Ｓ１７は各ステップを示す。
【００３０】
まず、３次元ＣＡＤ上において、操作者から入力部１００７を用いて３次元形状運動軌跡算出機能が選択されると、ＣＰＵ１００２は、本フローチャートの処理を開始する。
【００３１】
まず、ステップＳ１において、ＣＰＵ１００２は、３次元ＣＡＤ上において、操作者から入力部１００７を用いた運動軌跡算出用３Ｄモデルの指定操作を受け付け、操作者から指定された３次元形状（ＣＡＤ上に定義された３次元モデル（３Ｄモデル））を、運動軌跡算出用３Ｄモデルに設定する（運動軌跡算出用３Ｄモデル設定処理）。例えば、図３に示すようなシャフト形状の３次元形状ａ０が運動軌跡算出用３Ｄモデルに設定されたとする。
【００３２】
以下、具体的な部品の例示として図３に示すシャフトを例に取り上げて説明する。なお、図３のシャフトは一例であり、本発明に設定可能な運動軌跡算出用３Ｄモデルは、これに限定されるものではない。
【００３３】
図３は、図２のステップＳ１で運動軌跡算出用３Ｄモデルに設定される３次元形状の一例を示す模式図である。図３の例では、３次元形状ａ０は、６面から構成されるシャフト形状に対応する。なお、本実施形態では、説明の便宜上、各サーフェスにａ４〜ａ９までのラベル番号を付記する。また、サーフェスａ４とａ６の共有する稜線をａ１０とする。
【００３４】
以下、図２のフローチャートの説明に戻る。
【００３５】
次に、ステップＳ２において、ＣＰＵ１００２は、Ｓ１で運動軌跡算出用３Ｄモデルに設定された３次元形状がパーツモデルかアセンブリモデル（複数のパーツから構成される組図）であるかを判定する。
【００３６】
そして、ステップＳ２において、Ｓ１で運動軌跡算出用３Ｄモデルに設定された３次元形状がパーツモデルであると判定した場合には、ＣＰＵ１００２は、そのままステップＳ４に処理を進める。
【００３７】
一方、ステップＳ２において、Ｓ１で運動軌跡算出用３Ｄモデルに設定された３次元形状がアセンブリモデルであると判定した場合には、ＣＰＵ１００２は、ステップＳ３において、当該運動軌跡算出用３Ｄモデルに対して図形演算を行い１パーツに変換する。なお、ここで行う図形演算は、和集合（ブーリアン和）の形態を取り、演算後にパーツ領域に内包されるサーフェスについては削除されるものとする。そして、ステップＳ３の処理を終了すると、ＣＰＵ１００２は、ステップＳ４に処理を進める。
【００３８】
次に、ステップＳ４では、ＣＰＵ１００２は、操作者から入力部１００７を用いた運動経路の定義操作を受け付け、操作者から運動経路の定義操作がなされると、該操作に基づいて、運動軌跡算出用３Ｄモデル（ここでは図３に示したシャフトａ０）が移動する経路（例えば、図３に示す運動経路ａ１１）を定義する。なお、定義される運動経路の形態は２次元的な経路、３次元的な経路（例えば、うねるような経路）のどちらでも可能である。
【００３９】
次に、ステップＳ５において、ＣＰＵ１００２は、最大領域部の定義を行う。詳細には、ＣＰＵ１００２は、運動経路（ａ１１）上を上記運動軌跡算出用３Ｄモデル（シャフト）が通過（移動）した際に生成される３次元形状（運動軌跡）を十分に内包できるソリッドモデルとしての領域（図４のａ１２）を定義する。なお、ソリッドモデルとは、３次元モデリング技法の１つであり、（ソリッドとは固体を意味し）、立体の内部構造により３次元形状を表現する技法である。
【００４０】
図４は、図２のＳ５で定義される最大領域部の一例を示す模式図である。
【００４１】
次に、ステップＳ６において、ＣＰＵ１００２は、運動経路開始点に参照座標（図５のａ１３）を定義する。なお、この参照座標系ａ１３は、運動経路ａ１１に沿って該運動経路ａ１１に垂直な面を常に垂直に保って（図５の例ではｖｕ平面を運動経路ａ１１に常に垂直に保って）移動されるように定義されるものであり、３次元ジオメトリの相対位置を明示する機能を有する。
【００４２】
図５は、図２のステップＳ６で定義される参照座標系の一例を示す模式図である。
【００４３】
なお、図５では、座標系は、直行座標で示されているが、それ以外に円筒座標、極座標などジオメトリの座標位置を具体的に明示できるものであればいかなる手法の座標系であっても可とする。
【００４４】
次に、ステップＳ７において、ＣＰＵ１００２は、上記運動軌跡算出用３Ｄモデル（シャフト）よりサーフェスを抽出し、後述するスイープを実行するための断面（スイープ断面）を定義する。なお、ここでいうサーフェスとは、運動軌跡算出用３Ｄモデルの表面から稜線で囲まれた面で構成されるものを示す。また、ここでいう断面とは、後述するスイープ実行の対象となるサーフェスを示し、該断面によりスイープ実行して生成される軌跡の形状が、最終的に生成される３次元形状の運動軌跡を構成する要素となる。
【００４５】
図６は、図２のステップＳ７で抽出されるサーフェス単位で上記運動軌跡算出用３Ｄモデル（シャフト）を展開した状態を示す模式図である。なお、図６内の展開図は、形状を明示しやすくする為の誇張表現であり、実際にサーフェスが分離する訳ではない。図６に示す例では、ＣＰＵ１００２は、ａ４〜ａ９をサーフェスとして定義する。また、ＣＰＵ１００２は、サーフェス単位で分解された断面の共有する稜線の情報を内部情報として主記憶装置１００３にストアする。例えば、サーフェスａ４の稜線ａ１４は稜線ａ１０（図３）であり、同様にサーフェスａ６の稜線ａ１５も稜線ａ１０（図３）である。よって、この例では、分離したがサーフェスａ４とａ６の共有する稜線が、稜線ａ１０（図３）であることを示す情報が内部情報として主記憶装置１００３にストアされる。
【００４６】
以下、図２のフローチャートの説明に戻る。
【００４７】
次に、ステップＳ８において、ＣＰＵ１００２は、Ｓ７で抽出したサーフェスに対して表裏面の設定を行う。なお、ここでいう表裏は、表示の為のものではなく後述する工程で不要サーフェスの除去処理を行う為のボリューム方向の定義となる。この工程（Ｓ８）で、抽出したボリューム方向（体積方向）を裏側として定義し、内部情報として主記憶装置１００３内に記憶させる。
【００４８】
図７は、図２のステップＳ８で設定されるサーフェスの表裏面の一例を示す模式図であり、図中の各矢印はそのボリューム方向（体積方向）を示す。
【００４９】
次に、ステップＳ９において、ＣＰＵ１００２は、Ｓ６で定義した参照座標系を基準に各断面との相対位置を固定する。ＣＡＤには形状を作成する為の作業領域が存在し、そこには絶対座標系が定義されている。通常、各頂点の位置情報はこの絶対座標系で管理される。この工程（Ｓ９）では、ＣＰＵ１００２は、各頂点の座標管理を絶対座標系から参照座標系に変換し、主記憶装置１００３に記憶する。なお、従来の技術では、スイープ時に断面と運動経路は交差していないと形状構築が難しかったという技術的な背景があった為、ここでは各サーフェスが運動経路と直交している擬似的な要素として参照座標系を用いるものとする。座標系原点は必ず軌跡上に配置されるものとし、ＣＰＵ１００２は、上記参照座標系で各断面（の各頂点）の位置情報を主記憶装置１００３上に記憶管理する。例えば、（ｕ,ｖ,ｗ）＝(１０,１０,２００)のように記憶する。これ以降、参照座標系がどのように移動しようとも、参照座標系と各頂点の位置関係は不変である（参照座標系と断面の相対位置の固定）。
【００５０】
図８は、図２のステップＳ９で参照座標系ａ１３に対してサーフェスの相対位置を固定した状態の一例を示す模式図である。
【００５１】
図８では、任意の頂点ａ１６が運動経路ａ１１に沿って移動した際に、参照座標系ａ１３に対して、相対位置が変化していない様子を示している。
【００５２】
なお、ａ１７はＣＡＤ上での絶対座標系を示しており、通常のオペレーションでは、ＣＰＵ１００２は、こちらの絶対座標系ａ１７を用いて形状構築を行っている。
【００５３】
以下、図２のフローチャートの説明に戻る。
【００５４】
次に、ステップＳ１０において、ＣＰＵ１００２は、Ｓ７で定義したサーフェス（断面）を１つ取得し、該サーフェス（断面）を運動経路ａ１１（図３）に沿わせて連続的に移動させた軌跡の形状（軌跡形状）を生成するスイープ処理を実行する。ここで、スイープとは、ある断面を、指定した曲線に沿って移動させ、その軌跡の形状を生成する手法である。このスイープ自体は、公知の技術であるので詳細は省略する。
【００５５】
次に、ステップＳ１１において、ＣＰＵ１００２は、Ｓ７で定義した全てのサーフェス（断面）のスイープが終了したか否かを判定し、まだ終了していないと判定した場合には、ステップＳ１０に処理を戻し、次のサーフェス（断面）に対してスイープを実行する。
【００５６】
一方、ステップＳ１１において、ＣＰＵ１００２が、Ｓ７で定義した全てのサーフェス（断面）のスイープが終了したと判断した場合には、ＣＰＵ１００２は、ステップＳ１２に処理を進める。
【００５７】
図９〜図１４は、図２のステップＳ１０〜Ｓ１１におけるスイープ実行結果の一例を示す模式図である。
【００５８】
図９において、ａ１８は、サーフェスａ４を基に（スイープさせて）生成した３次元形状（軌跡形状）を示す。生成される３次元形状ａ１８は、サーフェスａ１８−１〜１８−１０から構成され、その情報は内部情報として主記憶装置１００３にストアされる。また、稜線ａ１８−１１は、図３に示した稜線ａ１０（図６に示したａ１４）が移動した終点に配置された稜線であるが、稜線がどの要素と対応しているかという情報（この例では、稜線ａ１８−１１が稜線ａ１０（図３）に対応していることを示す情報）も内部情報として主記憶装置１００３にストアする。
【００５９】
同様の手順で、ＣＰＵ１００２は、図３に示したサーフェスａ５〜ａ９を基に（スイープさせて）３次元形状（図１０のａ１９〜図１４のａ２３）を生成する。
【００６０】
図１０のａ１９はａ５、図１１のａ２０はａ７、図１２のａ２１はａ６、図１３のａ２２はａ８、図１４のａ２３はａ９に対応する３次元形状である。また、図１２のａ２１−１は、図３に示した稜線ａ１０（図６に示した稜線ａ１５）に対応しており、この情報（稜線ａ２１−１（図１２）が稜線ａ１０（図３）に対応していることを示す情報）も内部情報として主記憶装置１００３にストアする。同様に各稜線の情報を内部情報として主記憶装置１００３にストアする。
【００６１】
以下、図２のフローチャートの説明に戻る。
【００６２】
ステップＳ１２では、ＣＰＵ１００２は、Ｓ１０〜Ｓ１１で生成された全ての３次元形状（軌跡形状；ａ１８〜ａ２３）を最大領域部ａ１２（図４）内に参照座標系により位置を合わせて重ねて配置する（前記各３次元形状の論理和を算出する）。
【００６３】
図１５は、全てのサーフェスに対応する軌跡形状を最大領域内に重ねて配置した状態を示す模式図である。
【００６４】
次にステップＳ１３において、ＣＰＵ１００２は、Ｓ１２で重ねて配置されたことにより形成された形状（前記各３次元形状の論理和）の最外形から形成されるサーフェスのみを残し、その他のサーフェスは除去する。なお、最外形を判断する基準は、Ｓ８で保持したサーフェスの表裏の情報を用いるものとする。
【００６５】
例えば、シャフト形状を最大領域内に全てのサーフェスを配置した場合、除去されるサーフェスは、後述する図１７の１９０１に示すように、ａ１８−２，ａ１８−３，ａ１８−１０，ａ１９−５，ａ１９−６，ａ２０−２，ａ２０−３，ａ２３−１，ａ２３−７，ａ２３−８となる。
【００６６】
次に、ステップＳ１４において、ＣＰＵ１００２は、Ｓ１３で抽出された最外形のサーフェスにおいて、同一面内に重複したサーフェスがあるか否かを判定し、重複したサーフェスがあると判定した場合には、ステップＳ１５において、該重複したサーフェスのマージ処理を行う。
【００６７】
図１６は、最終的に運動軌跡として生成されるソリッド形状の一例を示す模式図である。なお、ここでは、これらのサーフェスに、便宜上、ａ２４−１〜ａ２４−１０までラベル番号を付記する。この中からａ２４−４を例にして説明を行う。なお、図中の円内は、サーフェスａ２４−４を上から見た図である。
【００６８】
ａ２４−４は、最終的に最外形となるサーフェス（上面にあたる）であるが、このサーフェスは、ａ１８−４（図９），ａ１９−１（図１０），ａ１９−３（図１０），ａ２３−４（図１４）のサーフェスが重なった結果のサーフェスと同等である。即ち、サーフェスａ２４−４については、次の集合関係が成り立つ。
【００６９】
「ａ２４−４ ＝ ａ１８−４  ａ１９−１  ａ１９−３  ａ２３−４」（即ち、ａ２４−４は、ａ１８−４，ａ１９−１，ａ１９−３，ａ２３−４の和集合である。）
上記Ｓ１５では、このような重複したサーフェスａ１８−４，ａ１９−１，ａ１９−３，ａ２３−４がマージ処理されて１枚のサーフェスａ２４−４が生成されることになる。なお、他のサーフェスについても同様に、重なっているサーフェスはマージされる。
【００７０】
図１７は、既存サーフェスａ４〜ａ９で生成されたサーフェスから除去されるサーフェス、最外形となるサーフェス、及び、生成されるサーフェスを示す図である。１９０１にはＳ１２〜Ｓ１３で除去されるサーフェスを示し、１９０２にはＳ１２〜Ｓ１３で最外形となるサーフェスを示し、１９０３にはＳ１４〜Ｓ１５でマージによって生成される１枚のサーフェスを示す。
【００７１】
以下、図２のフローチャートの説明に戻る。
【００７２】
次に、ステップＳ１６において、ＣＰＵ１００２は、ステップＳ１２〜Ｓ１５で作成された最外形のサーフェスを縫合する処理を行う。なお、ＣＰＵ１００２は、該サーフェスの縫合時に、主記憶装置１００３に格納された内部情報（Ｓ７でサーフェス単位に分解された断面の共有する稜線の情報）に基づいて、稜線同士に整合性があるかを確認する（整合性の検証）。
【００７３】
例えば、ＣＰＵ１００２は、稜線ａ１８−１１（図９）と稜線ａ２１−１（図１２）を縫合処理する際に、元形状は双方とも稜線ａ１０（図３）であることが、内部情報から判断できるので縫合が実行される。同様の診断を最外形のサーフェスの各稜線に行っていくと図１８のａ２５に示す様に運動軌跡となる連続した１パーツの３次元形状が最大領域部ａ１２をトンネル状にくり貫いた状態で生成される。なお、上述の整合性の検証は、Ｓ１２において、Ｓ１０〜Ｓ１１で作成した全ての３次元形状（軌跡形状；ａ１８〜ａ２３）を最大領域部ａ１２（図４）内に重ねて配置する際に行うように構成してもよい。
【００７４】
図１８は、図２のステップＳ１６で生成される３次元形状の一例を示す模式図である。
【００７５】
次に、ステップＳ１７において、ＣＰＵ１００２は、最大領域部ａ１２（図４）より、ステップＳ１６で縫合したサーフェスａ２５を抽出する（即ち、最大領域部ａ１２より最外形の内部を抽出する）。抽出された形状は、図１９のａ２６に示すようなソリッドの３次元形状（ソリッドモデル）となる。なお、ソリッドモデルとは、３次元モデリング技法の１つであり、（ソリッドとは固体を意味し）、立体の内部構造により３次元の立体を表現する技法である。
【００７６】
図１９は、図３に示した３次元形状ａ０を運動軌跡算出用３Ｄモデルに設定して生成された３次元形状（ソリッド）の一例を示す模式図である。
【００７７】
図１９において、ａ２６は、図３に示した運動軌跡算出用３Ｄモデル（シャフト形状）ａ０を運動経路ａ１１に沿って移動させた軌跡に対応する連続した（滑らかな）１パーツの３次元形状に対応するものである。
【００７８】
そして、ステップＳ１７の処理を終了すると、ＣＰＵ１００２は、本フローチャートの処理を終了する。
【００７９】
以上説明したように、本実施形態によれば、３次元ＣＡＤ装置１００１のＣＰＵ１００２は、３次元形状（運動軌跡算出用３Ｄモデル）ａ０の表面から稜線で囲まれた面で構成されるサーフェス（図３のａ４〜ａ９）を抽出し、該抽出されたサーフェス毎にスイープ実行して、該サーフェスを指定された運動経路（図３のａ１１）に沿って連続的に移動させた軌跡形状（図９のａ１８〜図１４のａ２３）を生成し、該サーフェス毎に生成された各軌跡形状から、前記３次元形状ａ０が前記運動経路ａ１１に沿って動く軌跡の形状として新たな３次元形状（図１９のａ２６）を生成することにより、３次元ＣＡＤ上で、３次元形状を運動経路に沿って移動させた軌跡を連続した（滑らかな）１パーツ状態の３次元形状で算出（生成）することが可能となる。
【００８０】
これにより、複数のパーツ間の干渉チェックを３次元ＣＡＤ上で、精度良く行うことができる。従来では、パーツを運動経路に沿ってコピーして配列することにより（即ち、不連続）、複数のパーツ間の干渉チェックを行っていたため、不連続となる箇所の干渉を厳密にチェックできなかったが、本発明ではパーツの軌跡を滑らかな１パーツ状態の３次元形状で生成できるため、このような従来の問題点を解消することができる。
【００８１】
また、上述のように、従来ではパーツを運動経路に沿ってコピーして配列していたため、メモリ資源を膨大に使用してしまっていたが、本発明では、パーツのコピーは行わず、パーツの軌跡を滑らかな１パーツ状態の３次元形状で生成できるため、メモリ使用量を低減してスムーズな処理を実現することや、算出した３次元形状のファイルサイズを従来のものより縮小化することができ、上述した従来のメモリ資源の使用に関する問題点も解消することができる。
【００８２】
〔第２実施形態〕
本発明の第２実施形態では、運動軌跡算出用の３Ｄモデルに曲面等が含まれている場合について説明をする。
【００８３】
図２０は、運動軌跡算出用の３Ｄモデルに曲面等が含まれている場合の一例を示す模式図である。なお、ここでは、球体と円筒面から構成されるシャフト形状を示す。
【００８４】
また、説明の便宜上、各サーフェスに、ａ２７〜ａ２９までのラベル番号を付記する。なお、ａ３０は、シャフトの運動経路を示している。
【００８５】
図２０のような球対面、円筒面を含んでいる形状の場合、スイープの対象として適していない為、上記第１実施形態の図２に示したフローチャートの処理では、形状を生成することができない。そこで、この様な場合、上記第１実施形態の図２に示したフローチャートの処理に、サーフェスの分割処理の工程を付加する。
【００８６】
以下、図２１〜図２７を参照して、本発明の第２実施形態において３次元ＣＡＤ装置１００１上で実行される３次元形状運動軌跡算出機能について説明する。
【００８７】
図２１は、本発明における第２の制御処理の一例を示すフローチャートであり、本発明の第２実施形態において３次元ＣＡＤ装置１００１上で実行される３次元形状運動軌跡算出機能に対応する。なお、このフローチャートの処理は、図１に示したＣＰＵ１００２が、記憶媒体１００４又は２次記憶装置１００５に記憶されたプログラムを、主記憶装置１００３上に読み出して実行することにより実現される。また、図中、Ｓ１〜Ｓ１７，Ｓ２１〜Ｓ２４は各ステップを示し、図２と同一のステップには同一のステップ番号を付してある。
【００８８】
まず、ステップＳ１〜Ｓ７の処理については、第１実施形態と同様である。ステップＳ７において、ＣＰＵ１００２は、Ｓ１で設定した運動軌跡算出用３Ｄモデルよりサーフェスを抽出し、スイープを実行するための断面を定義する。
【００８９】
図２２は、図２１のステップＳ７で抽出されるサーフェス単位で上記運動軌跡算出用３Ｄモデル（ここでは円筒面と球体から構成されるシャフト形状）を展開した状態を示す模式図である。
【００９０】
図２２に示す例では、上述の運動軌跡算出用３Ｄモデルから、ａ２７〜ａ２９のサーフェスが抽出されている。
【００９１】
以下、図２１のフローチャートの説明に戻る。
【００９２】
次に、ステップＳ２１において、ＣＰＵ１００２は、Ｓ７で抽出したサーフェスの中に、稜線が３辺以下で構成されているサーフェスがないか判定し、稜線が３辺以下で構成されているサーフェスがない（Ｙｅｓ）と判定した場合には、そのままステップＳ８に処理を進める。
【００９３】
一方、ステップＳ２１において、ＣＰＵ１００２が、Ｓ７で抽出したサーフェスの中に、稜線が３辺以下で構成されているサーフェスがあると判定した場合には、ステップＳ２２に処理を進める。
【００９４】
ステップＳ２２では、ＣＰＵ１００２は、Ｓ２１で稜線が３辺以下で構成されていると判断されたサーフェスが、スイープとして妥当であるか否かを判定する。上記第１実施形態で説明したように、スイープ機能自体は公知の技術であるが、スイープする断面の形状によっては、上記公知のスイープ機能を実行できない（エラーとなってしまう）場合がある。
【００９５】
よって、ステップＳ２２では、ＣＰＵ１００２は、３次元ＣＡＤに搭載されている公知のスイープ機能を用いて、Ｓ２１で稜線が３辺以下で構成されていると判断されたサーフェスのスイープを仮想的に実行する。そして、ＣＰＵ１００２は、上記スイープ機能からスイープ結果として、スイープ処理を失敗した旨の情報（スイープエラー）を受け取った場合には、当該サーフェスがスイープ断面として妥当でないと判定し、それ以外の場合には、スイープ断面として妥当であると判定する。
【００９６】
そして、ステップＳ２２において、ＣＰＵ１００２が、Ｓ２１で稜線が３辺以下で構成されていると判断されたサーフェスがスイープとして妥当であると判定した場合には、そのままステップＳ８に処理を進める。
【００９７】
一方、ステップＳ２２において、ＣＰＵ１００２が、Ｓ２１で稜線が３辺以下で構成されていると判断されたサーフェスがスイープとして妥当でないと判定した場合には、ステップＳ２３に処理を進める。
【００９８】
ステップＳ２３において、ＣＰＵ１００２は、Ｓ２２でスイープとして妥当でないと判定されたサーフェス毎に分割基準点を算出し、ステップＳ２４において、Ｓ２３で上記サーフェス毎に算出した分割基準点に基づくラインで、サーフェス毎に分割を行う。
【００９９】
以下、図２２〜図２６参照して、図２１のステップＳ２３，Ｓ２４の処理について説明する。
【０１００】
図２２に示したサーフェスａ２８は円筒面である為、このサーフェスの状態ではスイープ断面として用いることができない（スイープ実行によりエラーとなる（スイープ断面として妥当でない））。同様に、サーフェスａ２９は球面になっている為、このサーフェスの状態ではスイープ断面として用いることができない（スイープ実行によりエラーとなる（スイープ断面として妥当でない））。
【０１０１】
よって上述のステップＳ２３において、これらのサーフェスに対して分割処理が実行される。ａ２７〜ａ２９までのサーフェスの分割処理を以下に示す。
【０１０２】
ａ２７は、平面サーフェスである。この形状の場合、サーフェスを構成している稜線は１辺しかないが、スイープの断面としては定義が可能な為（スイープ実行によりエラーとならない（スイープ断面として妥当である））、ａ２７に対しては分割処理（Ｓ２３〜Ｓ２４）は行わない。
【０１０３】
また、ａ２８は、２辺から構成される円筒サーフェスである。このサーフェスａ２８は、スイープ断面としては適切ではない為、分割処理（Ｓ２３〜Ｓ２４）が必要である。このサーフェスａ２８の場合、稜線は２辺で構成されているので、各稜線の０％（始点位置）と５０％（中点位置）の箇所を通るラインを分割ラインと定義（算出）し（Ｓ２３）、面の分割処理を行う（Ｓ２４）。以下、この分割処理（Ｓ２３〜Ｓ２４）について図２３を用いて説明する。
【０１０４】
図２３は、図２２に示したサーフェスａ２８の各辺に対して分割ラインを定義（算出）した状態を示す模式図である。
【０１０５】
図２３において、ａ３１は各辺の０％（始点位置）を連結したラインである。ａ３２は各辺の５０％（中点位置）を連結したラインである。この２つのラインを用いてサーフェスの分割処理を行うと、ａ３３とａ３４のサーフェスに分割される。
【０１０６】
また、図２２に示したａ２９は、稜線が１辺から構成される球状のサーフェスである。このサーフェスは、スイープ断面としては適切ではない為、分割処理（Ｓ２３〜Ｓ２４）が必要である。ここでは重心位置を用いて分割処理を行うものとする。以下、この分割処理（Ｓ２３〜Ｓ２４）について図２４〜図２６を用いて説明する。
【０１０７】
この場合、まずサーフェスの重心位置を算出する。重心位置は、本来質量のある物体に対して定義されるものなので、まずサーフェスに対して仮想的に板厚を定義する（即ち、サーフェスに体積を与える）。
【０１０８】
図２４は、図２２に示したサーフェスａ２９に対して仮想的に厚みをつけた状態を示した模式図である。
【０１０９】
図２４において、サーフェスａ２９に対して仮想的に厚み（板厚）をつけた状態をａ３５に示す（例えば、板厚１ｍｍ）。なお、板厚の大きさは特に限定しない。
【０１１０】
次に板厚がついた状態で、質量計算を行い、重心位置及び慣性軸を算出する。算出が終了したら、重心位置に慣性軸に揃うような座標系ａ３６（図２５）を配置する。
【０１１１】
図２５は、重心位置に慣性軸に沿って配置された参照座標系の一例を示す模式図である。
【０１１２】
図２５に示すｕ，ｖ，ｗ平面を用いてサーフェスの分割処理を行う。
【０１１３】
図２６は、図２５に示した参照座標系ａ３６を用いて分割処理されたサーフェスの一例を示す模式図である。
【０１１４】
図２６において、ａ３７〜ａ４４は分割処理されたサーフェスを示している。
【０１１５】
なお、ここではサーフェスの分割手法として、サーフェスの始点／中点を用いる手法と、重心位置を用いての分割手法を用いたが、分割手法についてはこれに限定されるものではない。
【０１１６】
以下、図２のフローチャートの説明に戻る。
【０１１７】
ステップＳ２４のサーフェス分割処理を終了すると、ＣＰＵ１００２は、ステップＳ８に処理を進める。
【０１１８】
以下、ステップＳ８〜Ｓ１７の処理については、第１実施形態と同様であるので説明は省略する。
【０１１９】
そして、ステップＳ８〜Ｓ１７の処理の結果、最大領域部ａ１２より抽出される３次元形状（ソリッドモデル）は、図２７のａ４５に示すようになる。
【０１２０】
図２７は、図２０に示した３次元形状を運動軌跡算出用３Ｄモデルに設定して生成された３次元形状の一例を示す模式図である。
【０１２１】
図２７に示す、３次元形状ａ４５は、図２０に示した３次元形状を運動経路ａ３０に沿って移動させた軌跡を示す連続した（滑らかな）１パーツの３次元形状に対応するものである。
【０１２２】
なお、図２１のステップＳ２２では、あるサーフェスが、スイープ断面として妥当であるか否かを判定する際、該サーフェスに対して仮想的にスイープ処理を実行して、実行結果がエラーとなる場合に、スイープ断面として妥当でないと判定する構成としたが、この構成に限定されるものではない。例えば、スイープ断面として妥当でない形状（スイープ処理が不可能となる形状）の情報をデータベースに登録しておき、該データベースに登録された情報を用いて、各サーフェスが、スイープ断面として妥当であるか否かを判定するように構成してもよい。
【０１２３】
このデータベースには、スイープ断面として妥当でない形状（スイープ処理が不可能となる形状）として、例えば、ａ２８に示したような「円筒サーフェス」、ａ２９に示したような「球状サーフェス」等のような情報を登録されるものとする。
【０１２４】
以上示したように、運動軌跡算出用の３Ｄ形状に曲面が含まれている場合、例えば図２０に示したような球体と円筒面から構成される形状（曲面を含む３次元形状）であっても、該３次元形状の運動経路に沿って移動させた軌跡として、連続した（滑らかな）１パーツの３次元形状を生成することができる。
【０１２５】
なお、上述した各種データの構成例及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【０１２６】
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１２７】
なお、従来の技術において、３次元形状の配列コピーを行い、運動経路上に不連続な形状を配置して近似解を算出していた背景には、従来のＣＡＤ技術では３次元形状を直接運動経路に沿わせてソリッド形状を生成する事が困難であったことが挙げられる。
【０１２８】
また、上述したように、選択対象がサーフェスの場合、公知の技術としてのスイープ機能で搭載可能であるが、サーフェスの形状によっては、公知のスイープ機能により形状作成ができなかった。それらに代表される形状として、球サーフェスや円筒サーフェスが挙げられる。これらの形状は、サーフェスを構成する辺（エッジ）が３辺以下で構成されており、スイープ断面の選択対象として適していない為、形状作成が困難であった。
【０１２９】
以上の問題点を解決するために、上述したように、本発明は、運動軌跡算出時に、３次元形状をサーフェス単位に分解して、各サーフェスをスイープ断面として軌跡を算出し、該算出された軌跡を稜線のＩＤナンバ（内部情報として主記憶装置１００３に記憶してある共有する稜線の情報（例えばａ１０等））を基に、サーフェス毎にスイープ実行して生成された形状を縫合することで、運動軌跡となる３次元形状を生成する構成を有する。
【０１３０】
また、本発明では、３次元形状を効率良く生成する為に、サーフェスにボリューム方向を定義する機能を有する。
【０１３１】
また、本発明では、３次元形状生成の成功率向上の為、３辺以下で構成されるサーフェスに対して、スイープ断面として妥当であるか判断し（例えば、仮想的にスイープさせてエラーとなったら妥当でないと判断する）、自動的に面分割処理を行い、運動軌跡を算出できるサーフェス形態に変換する機能を有する。
【０１３２】
以下、図２８に示すメモリマップを参照して本発明に係る３次元形状生成装置で読み取り可能なデータ処理プログラムの構成について説明する。
【０１３３】
図２８は、本発明に係る３次元形状生成装置で読み取り可能な各種データ処理プログラムを格納する記録媒体（記憶媒体）のメモリマップを説明する図である。
【０１３４】
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０１３５】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０１３６】
本実施形態における図２，図２１に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０１３７】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１３８】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【０１３９】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＤＶＤ−ＲＯＭ，磁気テープ，不揮発性のメモリカード，ＲＯＭ，ＥＥＰＲＯＭ，シリコンディスク等を用いることができる。
【０１４０】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１４１】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１４２】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１４３】
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ，データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１４４】
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【産業上の利用可能性】
【０１４５】
３次元ＣＡＤ上において、パーツ（３次元形状）を運動経路に沿って移動させた際の軌跡を示す３次元形状を、連続した１パーツの３次元形状として生成して、複数のパーツ（３次元形状）間での干渉を検証する用途に、本発明を適用することができる。
【図面の簡単な説明】
【０１４６】
【図１】本発明の一実施形態を示す３次元形状生成装置を適用可能なシステムの一例を示す図である。
【図２】本発明における第１の制御処理の一例を示すフローチャートである。
【図３】図２のステップＳ１で運動軌跡算出用３Ｄモデルに設定される３次元形状ａ０の一例を示す模式図である。
【図４】図２のＳ５で定義される最大領域部の一例を示す模式図である。
【図５】図２のステップＳ６で定義される参照座標系の一例を示す模式図である。
【図６】図２のステップＳ７で抽出されるサーフェス単位で上記運動軌跡算出用３Ｄモデル（シャフト）を展開した状態を示す模式図である。
【図７】図２のステップＳ８で設定されるサーフェスの表裏面の一例を示す模式図である。
【図８】図２のステップＳ９で参照座標系ａ１３に対してサーフェスの相対位置を固定した状態の一例を示す模式図である。
【図９】図２のステップＳ１０〜Ｓ１１におけるスイープ実行結果の一例を示す模式図である。
【図１０】図２のステップＳ１０〜Ｓ１１におけるスイープ実行結果の一例を示す模式図である。
【図１１】図２のステップＳ１０〜Ｓ１１におけるスイープ実行結果の一例を示す模式図である。
【図１２】図２のステップＳ１０〜Ｓ１１におけるスイープ実行結果の一例を示す模式図である。
【図１３】図２のステップＳ１０〜Ｓ１１におけるスイープ実行結果の一例を示す模式図である。
【図１４】図２のステップＳ１０〜Ｓ１１におけるスイープ実行結果の一例を示す模式図である。
【図１５】全てのサーフェスに対応する軌跡形状を最大領域内に重ねて配置した状態を示す模式図である。
【図１６】最終的に運動軌跡として生成されるソリッド形状の一例を示す模式図である。
【図１７】既存サーフェスａ４〜ａ９で生成されたサーフェスから除去されるサーフェス、最外形となるサーフェス、及び、生成されるサーフェスを示す図である。
【図１８】図２のステップＳ１６で生成される３次元形状の一例を示す模式図である。
【図１９】図３に示した３次元形状ａ０を運動軌跡算出用３Ｄモデルに設定して生成された３次元形状の一例を示す模式図である。
【図２０】運動軌跡算出用の３Ｄモデルに曲面等が含まれている場合の一例を示す模式図である。
【図２１】本発明における第２の制御処理の一例を示すフローチャートである。
【図２２】図２１のステップＳ７で抽出されるサーフェス単位で上記運動軌跡算出用３Ｄモデル（ここでは円筒面と球体から構成されるシャフト形状）を展開した状態を示す模式図である。
【図２３】図２２に示したサーフェスａ２８の各辺に対して分割ラインを定義（算出）した状態を示す模式図である。
【図２４】図２２に示したサーフェスａ２９に対して仮想的に厚みをつけた状態を示した模式図である。
【図２５】重心位置に慣性軸に沿って配置された参照座標系の一例を示す模式図である。
【図２６】図２５に示した参照座標系ａ３６を用いて分割処理されたサーフェスの一例を示す模式図である。
【図２７】図２０に示した３次元形状を運動軌跡算出用３Ｄモデルに設定して生成された３次元形状の一例を示す図である。
【図２８】本発明に係る３次元形状生成装置で読み取り可能な各種データ処理プログラムを格納する記録媒体（記憶媒体）のメモリマップを説明する図である。
【図２９】従来の技術を説明するための図である。
【図３０】従来の技術を説明するための図である。
【符号の説明】
【０１４７】
１００１  ３次元ＣＡＤ装置
１００２  ＣＰＵ
１００３  主記憶装置
１００４  記憶媒体
１００５  ２次記憶装置
１００６  出力部
１００７  入力部
ａ０  ３次元形状（運動軌跡算出用３Ｄモデル）
ａ４〜ａ９  運動軌跡算出用３Ｄモデルから抽出されるサーフェス
ａ１０  稜線
ａ１１  運動経路
ａ１２  最大領域部
ａ１３  参照座標系
ａ１８〜ａ２３  サーフェス毎にスイープ実行して生成される３次元形状
ａ２６  最終的に生成される３次元形状
【図１】
2008165644.tif 000003
【図２】
2008165644.tif 000004
【図１７】
2008165644.tif 000005
【図２１】
2008165644.tif 000006
【図２８】
2008165644.tif 000007
【図３】
2008165644.tif 000008
【図４】
2008165644.tif 000009
【図５】
2008165644.tif 000010
【図６】
2008165644.tif 000011
【図７】
2008165644.tif 000012
【図８】
2008165644.tif 000013
【図９】
2008165644.tif 000014
【図１０】
2008165644.tif 000015
【図１１】
2008165644.tif 000016
【図１２】
2008165644.tif 000017
【図１３】
2008165644.tif 000018
【図１４】
2008165644.tif 000019
【図１５】
2008165644.tif 000020
【図１６】
2008165644.tif 000021
【図１８】
2008165644.tif 000022
【図１９】
2008165644.tif 000023
【図２０】
2008165644.tif 000024
【図２２】
2008165644.tif 000025
【図２３】
2008165644.tif 000026
【図２４】
2008165644.tif 000027
【図２５】
2008165644.tif 000028
【図２６】
2008165644.tif 000029
【図２７】
2008165644.tif 000030
【図２９】
2008165644.tif 000031
【図３０】
2008165644.tif 000032