(57)【要約】【課題】部品のリストの順序に応じて、３次元部品の組み立てを簡易に実現可能な仕組みを提供すること【解決するための手段】参照平面を含む３次元モデルを記憶し、モデルのリストの順序を取得し、取得したモデルの順序に基づいて、前記リストのモデルに対応する３次元モデルを３次元空間に配置すべく制御し、配置された第１の３次元モデルの参照平面であって、当該配置された３次元モデルの後ろの順序のモデルの参照平面を合わせる第１の面を特定し、後ろの順序のモデルにおいて前記第１の面に合わせる参照平面である第２の面を特定し、第１の面と第２の面とが合わさる位置を当該後ろの順序のモデルに対応する第２の３次元モデルを配置する位置として決定し、決定した位置に当該後ろの順序のモデルを配置するよう制御する【選択図】図５
2017091067.tif 000002
【特許請求の範囲】
【請求項１】
参照平面を含む３次元モデルを記憶する情報処理装置であって、
モデルのリストの順序を取得する取得手段と、
前記取得したモデルの順序に基づいて、前記リストのモデルに対応する３次元モデルを３次元空間に配置すべく制御する配置制御手段と、
前記配置制御手段により配置された第１の３次元モデルの参照平面であって、当該配置された３次元モデルの後ろの順序のモデルの参照平面を合わせる第１の面を特定する第１の特定手段と、
当該後ろの順序のモデルにおいて前記第１の面に合わせる参照平面である第２の面を特定する第２の特定手段と、
前記第１の特定手段で特定した第１の面と、前記第２の特定手段で特定された第２の面とが合わさる位置を、前記後ろの順序のモデルに対応する第２の３次元モデルを配置する位置として決定する決定手段と、
を備え、
前記配置制御手段は、前記後ろの順序のモデルを前記決定手段で決定した位置に配置するよう制御することを特徴とする情報処理装置。
【請求項２】
前記リストにおけるモデルに対応する３次元モデルのテンプレートを記憶するテンプレート記憶手段と、
前記テンプレート記憶手段で記憶される３次元モデルのテンプレートをコピーして記憶するコピー手段と、
を備え、
前記配置制御手段は、前記コピー手段でコピーした３次元モデルを、前記リストにおけるモデルに対応する３次元モデルとして配置すべく制御することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記リストはモデルごとの寸法の情報を含み、
前記リストに含まれるモデルごとの寸法の値に基づいて、前記コピー手段でコピーした３次元モデルの寸法を変更する制御を行う寸法変更制御手段と、
を備えることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
部品の配置を完了すべく前記第１の面と前記第２の面とを合致させて固定すべく制御する合致制御手段と、
を備えることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記リストで指定を受け付けているモデルのモデルタイプが接続部を示すか判定するタイプ判定手段と、
前記タイプ判定手段でモデルタイプが接続部を示すと判定された場合に、当該モデルの直前の順序のモデルに対応する３次元モデルの面と、後ろの順序のモデルに対応する３次元モデルの面とを接続する接続部を示すモデルを作成すべく制御する接続部作成制御手段と、
を備えることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記配置制御手段により配置された前記第１の３次元モデルと前記第２の３次元モデルの径が適切か判定する寸法判定手段と、
前記寸法判定手段で、径が適切でないと判定された場合に、前記適切でないと判定された面を識別可能に表示する制御を行う表示制御手段と、
を備えることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
参照平面を含む３次元モデルを記憶する情報処理装置の制御方法であって、
モデルのリストの順序を取得する取得工程と、
前記取得したモデルの順序に基づいて、前記リストのモデルに対応する３次元モデルを３次元空間に配置すべく制御する配置制御工程と、
前記配置制御工程により配置された第１の３次元モデルの参照平面であって、当該配置された３次元モデルの後ろの順序のモデルの参照平面を合わせる第１の面を特定する第１の特定工程と、
当該後ろの順序のモデルにおいて前記第１の面に合わせる参照平面である第２の面を特定する第２の特定工程と、
前記第１の特定工程で特定した第１の面と、前記第２の特定工程で特定された第２の面とが合わさる位置を、前記後ろの順序のモデルに対応する第２の３次元モデルを配置する位置として決定する決定工程と、
を含み、
前記配置制御工程は、前記後ろの順序のモデルを前記決定工程で決定した位置に配置するよう制御することを特徴とする情報処理装置の制御方法。
【請求項８】
参照平面を含む３次元モデルを記憶する情報処理装置で実行が可能なプログラムであって、
前記情報処理装置を、
モデルのリストの順序を取得する取得手段と、
前記取得したモデルの順序に基づいて、前記リストのモデルに対応する３次元モデルを３次元空間に配置すべく制御する配置制御手段と、
前記配置制御手段により配置された第１の３次元モデルの参照平面であって、当該配置された３次元モデルの後ろの順序のモデルの参照平面を合わせる第１の面を特定する第１の特定手段と、
当該後ろの順序のモデルにおいて前記第１の面に合わせる参照平面である第２の面を特定する第２の特定手段と、
前記第１の特定手段で特定した第１の面と、前記第２の特定手段で特定された第２の面とが合わさる位置を、前記後ろの順序のモデルに対応する第２の３次元モデルを配置する位置として決定する決定手段として機能させ、
前記配置制御手段は、前記後ろの順序のモデルを前記決定手段で決定した位置に配置するよう制御することを特徴とする情報処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、その制御方法及びプログラムに関する。
【背景技術】
【０００２】
近年、３次元ＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ  Ｓｏｆｔｗａｒｅ）ソフトを使用した部品の設計検討が行われている。また、２次元ＣＡＤから３次元ＣＡＤへの移行に際し、２次元ＣＡＤで作成した図面のデータを、３次元ＣＡＤのモデルに置き換えることが行われている。
【０００３】
例えば特許文献１においては、２次元図面（組み立て図）上の部品の線分上の点を指定し、その点の２次元座標の値を組み合わせて３次元の座標値を生成し、２次元図面の情報に基づいて生成した３次元モデルを当該位置に配置して組み立てることが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平８−３１４９９９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１の技術では、２次元ＣＡＤの図面上の点を基準に３次元ＣＡＤにおける部品の配置座標を決定するため、２次元ＣＡＤにおける図面の情報に正確さが求められる。３次元ＣＡＤを使えば直感的にモデルを作成・組み立てできるが、３次元ＣＡＤを導入しても、従来使用していた２次元ＣＡＤと３次元ＣＡＤの操作性の違い等から３次元ＣＡＤを自由に操作できるようになるまでに時間がかかってしまうことがある。よって、３次元ＣＡＤの操作技術が熟練するまでの間は、２次元ＣＡＤよりも簡易な操作で、新たに導入された３次元ＣＡＤの機能を使ったデータ作成・組み立てができる仕組みが求められる。
【０００６】
本発明は、部品のリストの順序に応じて、３次元部品の組み立てを簡易に実現できる仕組みを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の情報処理装置は、参照平面を含む３次元モデルを記憶する情報処理装置であって、モデルのリストの順序を取得する取得手段と、前記取得したモデルの順序に基づいて、前記リストのモデルに対応する３次元モデルを３次元空間に配置すべく制御する配置制御手段と、前記配置制御手段により配置された第１の３次元モデルの参照平面であって、当該配置された３次元モデルの後ろの順序のモデルの参照平面を合わせる第１の面を特定する第１の特定手段と、当該後ろの順序のモデルにおいて前記第１の面に合わせる参照平面である第２の面を特定する第２の特定手段と、前記第１の特定手段で特定した第１の面と、前記第２の特定手段で特定された第２の面とが合わさる位置を、前記後ろの順序のモデルに対応する第２の３次元モデルを配置する位置として決定する決定手段と、を備え、前記配置制御手段は、前記後ろの順序のモデルを前記決定手段で決定した位置に配置するよう制御することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、部品のリストの順序に応じて、３次元部品の組み立てを簡易に実現できる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態における、ＰＣ１００とソフトウェアの関係の一例を示す図である。
【図２】本発明の実施形態における、ＰＣ１００のハードウェア構成の一例を示す図である。
【図３】本発明の実施形態における、ＰＣ１００の機能構成の一例を示す図である。
【図４】本発明の実施形態における、処理の概要を示すフローチャートである。
【図５】本発明の実施形態における、モデルの組立て処理の流れを示すフローチャートある。
【図６】本発明の実施形態における、モデルの寸法変更及び確認処理の流れを示すフローチャートある。
【図７】本発明の実施形態における、各種データの構成の一例を示す図である。
【図８】本発明の実施形態における、各種データの構成の一例を示す図である。
【図９】本発明の実施形態における、組立情報入力画面の構成の一例を示す図である。
【図１０】本発明の実施形態における、モデル作成画面の構成及びモデル作成の様子の一例を示す図である。
【図１１】本発明の実施形態における、モデル作成画面の構成及びモデル作成の様子の一例を示す図である。
【図１２】本発明の実施形態における、モデル作成画面の構成及びモデル作成の様子の一例を示す図である。
【図１３】本発明の実施形態における、３次元モデルの構成の一例を示す図である。
【図１４】本発明の実施形態における、３次元モデルの配置の位置関係の説明図である。
【図１５】本発明の実施形態における、３次元モデルの配置の位置関係の説明図である。
【図１６】本発明の実施形態における、部品の径チェックの処理の流れを示すフローチャートである。
【図１７】本発明の実施形態における、径不一致の通知画面の構成の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照して、本発明の実施の形態の一例について説明する。
【００１１】
図１を参照して、本発明のＰＣ１００とソフトウェアの関係の一例について説明する。
【００１２】
本発明における情報処理装置であるＰＣ１００には、ＣＡＤソフトウェア１０１（以下、ＣＡＤソフト１０１）と、部品組立ツール１０２、表計算ソフト１０３、寸法チェックツール１０４、寸法一括変更ツール１０５が記憶・インストールされている。
【００１３】
ＣＡＤソフト１０１は、ＰＣ１００の外部メモリや、不図示のサーバ装置の外部メモリに記憶されているＣＡＤファイルを読み込んで、メモリ上に展開し、表示画面に読み込んだＣＡＤファイルのイメージを展開することが可能である。当該サーバ装置とは例えばＬＡＮ（ローカルエリアネットワーク）で通信可能に接続されているものとする。以下、実施形態の説明においては、ＣＡＤファイルはＰＣ１００内の所定の記憶領域に記憶されているものとする。
【００１４】
部品組立ツール１０２は、表計算ソフト１０３において入力され、記憶されている部品の識別情報及び寸法の値に応じて、当該寸法の部品をＣＡＤソフト１０１に生成させ、３ＤＣＡＤ（３次元ＣＡＤ）のモデル（部品）を表示する表示部に生成した部品を配置・表示させるツールである。
【００１５】
寸法チェックツール１０４は、表計算ソフト１０３の寸法変更前のファイルと変更後のファイルを比較・チェックするツールである。寸法一括変更ツール１０５は、表計算ソフト１０３の寸法変更前のファイルと変更後のファイルを比較し、寸法の値が異なる部品の寸法を一括で変更するツールである。以上が図１の説明である。
【００１６】
以下、図２を用いて、図１に示したＰＣ１００に適用可能な情報処理装置のハードウェア構成について説明する。
【００１７】
図２において、２０１はＣＰＵで、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
【００１８】
２０３はＲＡＭで、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＯＭ２０２あるいは外部メモリ２１１からＲＡＭ２０３にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【００１９】
また、２０５は入力コントローラで、キーボード（ＫＢ）２０９や不図示のマウス等のポインティングデバイス等からの入力を制御する。２０６はビデオコントローラで、ＣＲＴディスプレイ（ＣＲＴ）２１０等の表示器への表示を制御する。なお、図２では、ＣＲＴ２１０と記載しているが、表示器はＣＲＴだけでなく、液晶ディスプレイ等の他の表示器であってもよい。これらは必要に応じて管理者が使用するものである。
【００２０】
２０７はメモリコントローラで、ブートプログラム，各種のアプリケーション，フォントデータ，ユーザファイル，編集ファイル，各種データ等を記憶するハードディスク（ＨＤ）や、フレキシブルディスク（ＦＤ）、或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ２１１へのアクセスを制御する。
【００２１】
２０８は通信Ｉ／Ｆコントローラで、ネットワークを介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いた通信等が可能である。
【００２２】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ＣＲＴ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ＣＲＴ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００２３】
本発明を実現するための後述する各種プログラムは、外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も、外部メモリ２１１に格納されており、これらについての詳細な説明も後述する。以上が図２の説明である。
【００２４】
次に図３を参照して、本発明の実施形態におけるＰＣ１００の機能構成の一例について説明する。
【００２５】
ＣＡＤファイル読込部３１１は、ＰＣ１００の記憶部に記憶されているＣＡＤファイルを読み込んでメモリ上に展開する処理部である。
【００２６】
寸法情報取得部３２１は、表計算ソフト１０３において入力・記憶された部品の識別情報と、当該部品の寸法を取得する取得部である。表計算ソフト１０３において入力・記憶された情報とは、例えば図７の表計算ファイル７２０に示す情報であり、ＰＣ１００の外部メモリに記憶されている。
【００２７】
Ｎｏ７２１は、表計算ファイル７２０における各レコードのレコードＮｏ（識別情報）である。タイプ７２３は、後述する表計算ソフト１０３の寸法入力画面においてユーザから選択・入力されたモデルタイプである。ファイル名７０２は、当該タイプ７２３のタイプのテンプレートモデル（モデルのテンプレートファイル）が、ＣＡＤソフト１０１の管理下の所定のアセンブリ直下のフォルダにコピーされリネームされたファイルのファイル名である。当該コピー処理・リネーム処理は、テンプレートモデルそのものを編集させないために実行する処理である。テンプレートモデルの詳細については後述する。
【００２８】
モデル位置、寸法Ａ７２６、寸法Ｂ７２７は、後述する図９の寸法入力画面において入力されたモデル位置の値、モデルの寸法値である。モデル同士の距離７２８は、新たに配置する部品Ｍｏｄｅｌ０１Ａと既に配置されている部品Ｍｏｄｅｌ０１との間の距離を示す。詳細は図９の説明で後述する。以上が図７の表計算ファイル７２０の説明である。
【００２９】
図３の説明に戻る。配置位置決定部３２３は、当該寸法のモデルを配置する位置を決定する決定部である。最初に配置する部品の配置位置は、ＣＡＤソフトの管理する３Ｄ空間上（３Ｄモデルを表示する空間）の所定の座標であるものとする。２つ目以降の部品の場合は、合致対象面決定部３２２で決定された面の位置、又は、既に配置されているモデルの位置からモデル同士の距離７２８分離れた位置を、モデルを配置する位置として決定する。
【００３０】
合致対象面決定部３２２は、寸法情報取得部３２１で取得した寸法の部品を、直前に配置されている部品のどの面と合致させるか（直前に配置されている部品のどの面と合致させる位置に当該部品を配置するか）を決定するための、合致させる対象の面（これから配置する部品の面）を決定する決定部である。具体的には、部品の面に対して参照平面を作成しておき、当該参照平面を合致対象の面としてユーザに選択させ、決定する。
【００３１】
テンプレートモデル取得部３２４は、テンプレートモデル記憶部３２８において記憶されているモデルのテンプレートを取得する。そして、当該取得したモデルをＣＡＤソフト管理化のフォルダにコピーする。本実施形態においてテンプレートモデルは配管の３次元モデルであるものとする。
【００３２】
モデル配置指示部３２５は、配置位置決定部３２３で決定した位置に、テンプレートモデル取得部で取得したモデル（実際にはＣＡＤソフト管理化のフォルダにコピーされたファイル）を寸法変更して配置するようＣＡＤソフト１０１に指示する指示部である。ＣＡＤソフト１０１のモデル配置指示受付部３１２が当該指示を受け付け、モデル配置処理３１３は受け付けた指示に従って対象のモデルをＣＡＤソフト１０１の管理する３次元空間上に配置する。
【００３３】
合致指示部３２６は、新たに配置した部品と直前に配置した部品を合致させるようＣＡＤソフト１０１に指示する指示部である。合致処理部３１４は、当該合致の指示に従って部品の参照平面同士を合致させて組み立てる処理を行う。
【００３４】
モデル自体の面ではなく参照平面を用いる理由を以下に記載する。一般のＣＡＤソフトにおいて参照平面は、例えば図１０で後述するＣＡＤソフト１０１のアセンブリ表示部１０１２等に、図８の８１０に示すようなツリー構造上に表示可能な、モデル自体の面とは異なる独自の面として管理されている（当該ツリーにおいて参照平面はモデルの下位階層にモデルとは別の単位で表示することができる）。ＣＡＤソフト１０１にとっての外部のツールである部品組立ツール１０２等のツールにとっても、実際の３次元モデル上の面を３次元空間上の座標を細かに指定して特定・選択するよりも、例えば参照平面の名称等を使って、モデルから独立して管理されている参照平面を合致させたい面として選択・特定した方が処理が容易である。また、３次元モデルを回転、移動、変形すれば変化してしまう３次元モデル自体の面の座標を使うよりも、基本的に変化しない参照平面の識別情報を使って面を特定する方が、面の特定が容易であり、確実である。例えば、雛形のモデルごとに参照平面を作成しておき、当該参照平面の識別情報を部品組立ツールで記憶・管理しておけば、当該参照平面の識別情報を使って、ＣＡＤソフト１０１上で展開されている３次元モデルの参照平面を選択可能である。あとは選択した参照平面同士を合致させるよう合致指示部３２６でＣＡＤソフト１０１に指示すればよい。以上説明したように、本実施形態においては、部品の組立に用いる面の特定を容易にするために参照平面を用いる。
【００３５】
径チェック部３２７は、前後の部品上の合致している面（具体的には、合致している参照平面と同じ位置にある部品の面）の寸法（径）が合っているか判定し、合っていない場合にはその事実をユーザに通知する制御を行う処理部である。例えば、表計算ソフト１０３上で当該合っていない径を示す寸法をハイライト表示するよう表計算ソフトに１０３に指示する。または／及び、径が合っていない面を識別表示（例えば色を赤色に変更する）するようＣＡＤソフト１０１に指示する処理を行う。以上が図３の説明である。
【００３６】
テンプレートモデル記憶部３２８は、３次元モデル（部品）のテンプレート（雛形）を記憶している。当該テンプレートモデルの情報の一例を図７のテンプレートモデル情報７００に示す（テンプレート記憶手段に該当）。
【００３７】
テンプレートモデル情報７００におけるモデルＩＤは、テンプレートモデル情報７００上でのモデルの識別情報である。ファイル名７０２は、テンプレートモデルのファイル名である。タイプ７０３は、テンプレートモデルのモデルタイプを示す。
【００３８】
なお、本実施形態においては、ファイル名とモデルタイプは１対１で対応付けて記憶されているものとする。例えば、モデルタイプ７０３＝「直線」のモデルは、Ｍｏｄｅｌ０１．ｐａｒｔのみである。また、モデルタイプ７０３＝「曲線」のモデルは、Ｍｏｄｅｌ０２．ｐａｒｔのみであるものとする。図１３の１３００にモデルタイプ７０３＝「直線」のテンプレートモデルの一例を示す。また、モデルタイプ７０３＝「曲線」のテンプレートモデルの一例を示す。１３０１、１３０２、１３１１、１３１２において点線で示す面は、各モデルのファイルに記憶されている参照平面である。
【００３９】
フォルダパス７０４は、当該テンプレートモデルが記憶されているＰＣ１００の外部メモリ上の保存場所を示す。
【００４０】
テンプレートモデルの所定の面には予め参照平面が作成・設定されているものとする。参照平面は、当該参照平面が参照しているモデル上の面と同じ位置・方向で作成・設定されている所定の大きさの面である。テンプレートモデル上に作成された参照平面の情報を参照平面情報７１０に示す。
【００４１】
参照平面情報７１０は、テンプレートモデルごとに、テンプレートモデル情報７００と対応付けてＰＣ１００の外部メモリに記憶されている。参照平面ＩＤ７１１は、参照平面情報７１０のテーブルにおける各参照平面の識別情報である。参照先７１２は、当該参照平面が参照している、当該参照平面の位置の基準となる位置／Ｘ，Ｙ，Ｚ、向き／Ｘ，Ｙ，Ｚが記憶されている。
【００４２】
寸法７１３は、参照平面の寸法である。本実施形態においては、全てのテンプレートモデルの参照平面の寸法は同じであるものとする。位置７１４、向き７１５は、参照平面の（ＣＡＤにおける３次元空間上の）位置と向きを示す。当該位置と向きは、参照先７１２の位置、向きと同じ位置・同じ向きが設定されているものとする。以上が図７のテンプレートモデル情報及び参照平面情報の説明である。
【００４３】
なお、ＣＡＤソフト１０１において配置された後のモデルの情報は配置済みモデル情報７３０に示すテーブル（ＰＣ１００のメモリに記憶する）で記憶・管理する。モデルＩＤ７３１、ファイル名７３２、タイプ７３３、フォルダパス７３４については表計算ファイル７２０の説明で前述したとおりである。フォルダパス７３４は対象レコードのファイル名のモデルが記憶されている場所を示す。位置７３５、向き７３６は、ＣＡＤにおける３次元空間上の配置後のモデルの位置・向きを示す。以上が図７の配置済みモデル情報７３０の説明である。
【００４４】
＜第１の実施形態＞
【００４５】
次に、本発明の実施例におけるＰＣ１００によって行われる処理について、図４に示すフローチャートを用いて説明する。尚、図４の各ステップはＰＣ１００におけるＣＰＵ２０１が、ＰＣ１００にインストールされたＣＡＤソフト１０１、部品組立ツール１０２、表計算ソフト１０３等の機能を用いて実行するものとする。
【００４６】
表計算ソフト１０３は、図９に示す寸法入力画面９００を表示する。そして、レコードが空の表計算ファイル７２０をメモリ上に生成して記憶する。当該寸法入力画面に表示するファイル（表計算ファイル７２０）を開く操作をユーザから受け付けた場合には当該操作に従って指定された表計算ファイル７２０の情報を読み出してメモリ上空の表計算ファイル７２０に上書きして記憶し、寸法入力画面９００に当該読み出した表計算ファイル７２０の値を表示する。
【００４７】
なお、本実施形態においては、表計算ソフト１０３は、自身が起動したタイミングで不図示のツールを起動させ、当該ツールが表計算ソフト１０３のファイルの読込み、展開の状態を監視し、ユーザから特に表計算ファイル７２０を開く指示を受け付けなかった場合には空の表計算ファイル７２０を、ユーザから表計算ファイル７２０を開く指示を受け付けた場合には当該指示に応じて開いた表計算ファイル７２０を（開いた時点での表計算ファイルの値を）、後に編集後の値と変更前の値とを比較するために用いる比較基準情報としてメモリに記憶する処理を行う。
【００４８】
表計算ソフト１０３は、当該寸法入力画面９００において部品の識別情報と、当該識別情報の示す部品の寸法の入力を受け付ける（ステップＳ４０１）。ここでは部品の識別情報の１つであるタイプの入力（選択）を、モデルタイプ入力受付部９０５において受け付けるものとする。入力を受け付けた情報はメモリ上に記憶する。なお、本実施形態においては、当該寸法入力画面９００における各行のレコードの入力操作が、モデルの組立順序の指定操作にあたる。組立順序は、行Ｎｏが若い順（上から順）であるものとする。２行目のレコードの入力を受け付ける＝当該レコードに入力した情報の示すモデルを２番目に組み立てる（ＣＡＤソフト１０１において配置・表示する）部品とする組立順序の指定を受け付けたと判断する。ここで図９の寸法入力画面９００について説明する。
【００４９】
図９は、表計算ソフト１０３の表示する画面であり、部品（モデル）の選択（指定）、寸法の入力を受け付ける寸法入力画面９００、寸法入力画面９２０の一例を示す図である。寸法入力画面９００と寸法入力画面９２０の構成は同じだが、入力されている情報が異なる。具体的には、寸法入力画面９２０にはＪｏｉｎｔＸＸ（接続部／ロフト）の行のレコードがない。
【００５０】
つまり、寸法入力画面９００に入力されている情報によれば、２つのモデルの間に接続部が作成され（例：図１２の１２００）、寸法入力画面９２０に入力されている情報によれば、２つのモデルが直接接触する（接続部を挟まない）配置、組立が行われる（例：図１５）。
【００５１】
寸法入力画面において選択・指定されるモデルの情報は予めＰＣ１００の外部メモリに記憶されている（図７のテンプレートモデル情報）。寸法入力画面９００において入力を受け付けた情報はメモリ上に記憶する。また、所定のユーザ操作がされた場合、寸法入力画面９００において入力を受け付けた情報を別途表計算ファイル７２０としてメモリ上に記憶する。
【００５２】
図５の説明で後述する部品の組立処理において、部品組立ツール１０２は寸法入力画面９００において入力された情報を上の行から順に参照して、上の行の部品から順に配置・組み立てる処理を行う。
【００５３】
モデルタイプ入力受付部９０５は、外部メモリに記憶されている３Ｄモデルのテンプレート（図７のテンプレートモデル情報／テンプレートモデル）のタイプ（図７の７０３）の選択（指定）・入力を受け付ける受付部である。モデルタイプ入力受付部９０５の列のセルがクリックされると、テンプレートモデル情報７００のタイプ７０３を選択可能に表示する。
【００５４】
ファイル名表示部９０４は、モデルタイプ入力受付部９０５で入力を受け付けたモデルの、３Ｄ空間への配置後のファイル名を表示する表示部である。具体的には、テンプレートモデルを、当該モデルを配置する対象のアセンブリ（アセンブリ名入力受付部９１２で入力を受け付けたアセンブリ）の直下のフォルダにコピーした後の、当該アセンブリに挿入したファイルのファイル名である。詳細については図５の説明で後述する。
【００５５】
また、モデルタイプ入力受付部９０５では、テンプレートモデルのタイプ（図７の７０３）以外に、「接続部」というタイプを選択可能に表示する。タイプ＝接続部とは、直前の順番（順序）のモデル（例えば９００におけるＭｏｄｅｌ０１）と、当該接続部の直後のモデル（例えば９００におけるＭｏｄｅｌ０１Ａ）とを接続する仮想の部品のタイプを示す。当該接続部の一例を図１２に示す。
【００５６】
モデルイメージ表示部９０６はモデルタイプ入力受付部９０５で入力された３Ｄモデルを示す画像を表示する表示部である。具体的には、タイプ７０３と当該タイプ７０３のモデルのイメージ（画像）のファイル名及び保存パスを対応付けたテーブルを外部メモリに記憶しておき、モデルタイプ入力受付部９０５でモデルタイプの選択を受け付けたことを検知した表計算ソフト１０３が当該テーブルを参照して、モデルタイプ入力受付部９０５で入力されたタイプに対応する対応する画像を読み出して表示する。
【００５７】
寸法Ａ入力受付部９０８、寸法Ｂ入力受付部９０９は、モデル上の所定の面の寸法をどの値に変更するかの入力（変更後の寸法の入力）を受け付ける受付部である。例えば配管のモデル場合、入口または出口になりうる開口部の寸法の入力を受け付ける。なお、本実施形態においては、モデルのタイプ＝「直線」の場合は、寸法ＡのＹ，Ｚ（幅、高さ）＝寸法ＢのＹ，Ｚであり、Ｘは直線の奥行きを示すため、寸法Ｂは入力不可とする。具体的には、部品組立ツール１０２が、モデルのタイプ＝「直線」が選択された場合は、寸法Ｂは入力できないように寸法Ｂ入力受付部９０９をグレーアウトし、寸法Ａ入力受付部９０８に対して値を入力可能に表示する。寸法とモデルとの関係は図１３に示す。
【００５８】
モデル位置入力受付部９０７は、「接続部」に対して入力される値である。モデル位置入力受付部９０７に入力された値は、図１４の１４００〜１４２０に示すように、寸法入力画面９００における「接続部」前後のモデル同士の距離（例：図９におけるＭｏｄｅｌ０１とＭｏｄｅｌ０１Ａとの間の距離）を指定する値である。なお、部品同士のＸ軸方向の距離は、寸法Ａ入力受付部９０８において入力を受け付けたＸ軸の値の分だけ離すものとする（つまり、寸法Ａ入力受付部９０８において入力を受け付けたＸ軸の値は、接続部の長さの値である）。当該Ｘ，Ｙ，Ｚの値が入力されると、当該Ｘ，Ｙ，Ｚの値をメモリ上の表計算ファイル７２０に記憶・更新する。
【００５９】
「モデル作成」ボタン９０１は、寸法入力画面９００において入力を受け付けた寸法のモデルをＣＡＤソフト１０１上で生成するためのモデル作成画面を表示するためのボタンである。「寸法チェック」ボタン９０２は、寸法入力画面９００において表示されている情報を、別途保存されていた表計算ファイルを読み出すことで表示していた場合に、当該ファイルを読み出した（開いた）当初からどのセルの値が変更されたかをチェックする寸法チェックツール１０４を起動するためのボタンである。
【００６０】
「寸法変更」ボタン９０３は、ＣＡＤソフト１０１において生成・配置（組立）済みのモデルの寸法を、寸法入力画面９００において入力されている寸法に一括で変更する寸法一括変更ツール１０５を起動するためのボタンである。以上が図９の説明である。
【００６１】
図４の説明に戻る。ステップＳ４０２では、表計算ソフト１０３はユーザからの操作指示を受け付け（ステップＳ４０２）、当該受け付けた指示が「モデル作成」ボタン９０１の押下か、「寸法チェック」ボタン９０２又は「寸法変更」ボタン９０３の押下か判定する（ステップＳ４０３）。
【００６２】
受け付けた操作指示が「寸法チェック」ボタン９０２又は「寸法変更」ボタン９０３の押下の場合には処理をステップＳ４１６に移行する。ステップＳ４１６の寸法チェック及び寸法一括変更の処理については図６の説明で後述する。
【００６３】
受け付けた操作指示が「モデル作成」ボタン９０１の押下であると判定された場合、部品組立ツール１０２を起動する。具体的には、ＰＣ１００の所定の記憶領域に記憶されている「部品組立ツール．ｅｘｅ」のファイルを指定してツールを起動する（ステップＳ４０４／ステップＳ４０５）。
【００６４】
部品組立ツール１０２は、表計算ソフト１０３がメモリ上に保持している、表計算ソフト１０３が開いているファイルの情報を読み込む。つまり、図９に示す寸法入力画面で入力され表示されているモデルタイプの情報とモデル位置、寸法Ａ、寸法Ｂの情報を取得して、寸法入力画面における行Ｎｏが若い順に（上の行から順に）並べたリストを生成して、メモリ上に記憶する（ステップＳ４０６）。例えば図７の表計算ファイル７２０のようなリストを生成・記憶する。
【００６５】
部品組立ツール１０２は、当該リストに記憶された情報の最上位のレコードを処理対象のモデルの情報として取得して（ステップＳ４０７）、当該情報のモデルタイプ＝接続部か判定する（ステップＳ４０８／タイプ判定手段に該当）。接続部である場合は処理をステップＳ４１０に移行し、モデルタイプが接続部でない場合は処理をステップＳ４０９に移行する。例えば、図９の９００において表示しているファイルを読み込んだ場合は、Ｍｏｄｅｌ０１のタイプは接続部ではないため、処理をステップＳ４０９に移行する。
【００６６】
ステップＳ４０９では、部品組立ツール１０２は、図５に示す部品組立処理を実行する。
【００６７】
ここで図５を参照して、本発明の実施形態における部品組立処理の流れについて説明する。図５の各処理は、ＰＣ１００のＣＰＵ２０１が、部品組立ツール１０２及びＣＡＤソフト１０１の機能を用いて実行するものとする。
【００６８】
部品組立ツール１０２は、図１０に示すモデル作成画面を表示する（ステップＳ５０１）。当該画面においては、ステップＳ４０７で取得したレコードのレコードＮｏをレコードＮｏ表示部１００５に表示し、当該レコードのモデルタイプをモデルタイプ表示部１００６に表示する（ステップＳ５０１）。
【００６９】
ここで図１０に示すモデル作成画面について説明する。図１０によれば、モデル作成画面は、「部品挿入」ボタン１００１、「部品確定」ボタン１００２、「次へ」ボタン１００３、「終了」ボタン１００４、レコードＮｏ表示部１００５、モデルタイプ表示部１００６、ファイル名表示部１００７、ルート方向変更指示受付部１００８、入口面選択受付部１００９、出口面選択受付部１０１０、部品方向変更指示受付部１０１１などから構成されている。また、ＣＡＤソフト１０１は、アセンブリ表示部１０１２、モデル表示部１０１３を備えるモデル表示画面を表示している。
【００７０】
「部品挿入」ボタン１００１は、モデルをＣＡＤソフト１０１においてモデル表示部に仮配置（仮組立）するためのボタンである。仮配置とは、ＣＡＤソフト１０１のモデル表示部１０１３にモデルが配置されるものの、まだモデルの位置・角度が固定（確定）されていない状態である。固定（確定）がされる前に、例えばモデル作成画面が閉じられた場合、未確定の（仮配置中の）モデルは、モデル表示部１０１３から削除する。
【００７１】
「部品挿入」ボタン１００１の押下を受け付けることで部品組立ツール１０２は、モデルタイプ表示部１００６に表示されている、処理中のモデルのモデルタイプに対応するモデル（テンプレートモデル情報７００におけるファイル名７０２のモデル）をメモリ上にコピーしてファイル名を変更し、図９のアセンブリ名入力受付部９１２において入力されているアセンブリ直下の所定のフォルダに当該モデルのファイルを保存する。そしてＣＡＤソフト１０１に、当該保存したモデルのファイルを読み込む（所定のアセンブリにおいて参照させる）よう指示し、読み込ませることで当該モデルをＣＡＤソフトのモデル表示部１０１３に配置（仮配置）する。
【００７２】
「部品確定」ボタン１００２は、仮配置したモデルの配置の確定（組立の確定）をするためのボタンである。「部品確定」ボタン１００２が押下された場合、部品組立ツール１０２は、部品の配置を確定すべく、ＣＡＤソフト１０１に対して配置しているモデルの情報を固定（合致）させるよう指示する。「次へ」ボタン１００３は、配置確定した、処理中のモデルの次のモデルを読み込んでモデル作成画面に表示するためのボタンである（例えば図９の９２０におけるＭｏｄｅｌ０１を配置確定した後、Ｍｏｄｅｌ０２を読み込む）。
【００７３】
「終了」ボタン１００４は、当該モデル作成画面を閉じてモデル作成を終了するためのボタンである。レコードＮｏ表示部１００５、モデルタイプ表示部１００６は、Ｓ４０７で取得したモデル作成画面で作成するモデル（後述するルート方向変更指示受付部１００８、入口面選択受付部１００９、出口面選択受付部１０１０、部品方向変更指示受付部１０１１で、入口・出口の面、ルートの方向、部品自体の配置の方向を変更・決定するモデル）のレコードＮｏ、モデルタイプを表示する表示部である。
【００７４】
ルート方向変更指示受付部１００８は、所定の軸方向に対してモデルを１８０度回転させる操作を受け付ける受付部である。どの軸方向を用いてモデルの回転を行うかは、ルート方向の記載の横に配置している矢印ボタンでＸ軸、Ｙ軸、Ｚ軸を順次選択する。回転する方向はプラス、マイナスのラジオボタンにチェックを入れることで指定し、方向変更を行う。
【００７５】
入口面選択受付部１００９・出口面選択受付部１０１０は、モデルにおける参照平面の内どの面を入口面（直前の部品の出口面と繋げる／合致させる面）にし、モデルにおける参照平面の内どの面を出口面（直後の部品の入口面と繋げる／合致させる面）にするかを特定する選択操作を受け付ける。具体的には、入口面の記載の横に配置されている矢印のボタンの押下を受け付けることで、仮配置したモデルの参照平面の内１つを選択し、選択中の面を入口面として当該参照平面の識別情報をメモリに記憶する。また、出口面の記載の横に配置されている矢印のボタンの押下を受け付けることで、仮配置したモデルの参照平面の内１つを選択し、選択中の面を出口面として当該参照平面の識別情報をメモリに記憶する。
【００７６】
部品方向変更指示受付部１０１１は、部品の配置方向を特定するための入力受付部である。具体的には、部品方向の記載の横に配置されている矢印のボタンの押下を受け付けることで、仮配置されている部品の方向を変更する。
【００７７】
アセンブリ表示部１０１２は、モデル表示部１０１３に表示するモデルの構成を表示する表示部である。以上が図１０の説明である
【００７８】
図５の説明に戻る。部品組立ツール１０２は、ユーザからの操作指示を受け付け（ステップＳ５０２）、受け付けた操作が「部品挿入」ボタン１００１の押下か判定する（ステップＳ５０３）。「部品挿入」ボタン１００１の押下を受け付けた場合は処理をステップＳ５０４に移行する。受け付けた操作が、「部品挿入」ボタン１００１の押下でない場合は処理をステップＳ５１３に移行する。
【００７９】
ステップＳ５０４において、部品組立ツール１０２は、ステップＳ４０７で取得した処理対象のモデルのレコードの寸法Ａ、寸法Ｂを取得し、取得した寸法をＣＡＤソフトに作成依頼する寸法として決定する（ステップＳ５０４）。そして、読込み中のレコードのモデルタイプに対応するファイル名を取得して、当該ファイル名のファイルを、アセンブリ名入力受付部９１２に入力されているアセンブリ直下の所定のフォルダにコピーし、所定のルールに基づいてファイル名を変更する（ステップＳ５０５）。
【００８０】
部品組立ツール１０２は、当該モデルのＣＡＤソフト１０１におけるモデル表示部１０１３上の配置位置を決定する（ステップＳ５０６）。処理対象のモデルが、最初に配置するモデルである場合は、所定の位置（例えばＸ，Ｙ，Ｚ＝０，０，０）を配置位置として決定する。２番目以降に配置するモデルの場合には、直前のモデルの出口面の位置に、処理対象のモデルの入口面が合わさる位置を処理対象のモデルの配置位置として決定する。なお、後述する出口面、入口面の選択はモデルの配置後（仮配置後）に可能となる。処理対象のモデルを最初に配置する際は、当該モデルにおいてデフォルトで設定されている入口面を、配置済みのモデルの出口面に合わせるように配置するものとする。
【００８１】
部品組立ツール１０２は、決定した配置位置に当該コピーしたファイル（モデル）を配置（仮配置）するよう指示し（ステップＳ５０７／配置制御手段に該当）、当該指示を受け付けたＣＡＤソフト１０１が指示された位置に指示されたファイルのモデルを配置する（ステップＳ５０８、Ｓ５０９）。具体的には、部品組立ツール１０２は、アセンブリ名入力受付部９１２に入力されている名称のアセンブリを、コピーしたモデルを参照するよう更新する指示をＣＡＤソフト１０１に送信し、当該指示を受けたＣＡＤソフト１０１が、対象のアセンブリを開いて、当該コピーしたファイルを当該アセンブリの参照ファイルとしてメモリ上に記憶する（例えば図８の構成情報８００をメモリに記憶する）。そしてＣＡＤソフト１０１が当該アセンブリを最新の状態で読み込んで、モデル配置後の画面である図１０の１０２０を表示する。また、配置済みモデル情報７３０をメモリ上に生成し、配置したモデルの各情報を配置済みモデル情報７３０に追加して記憶する。
【００８２】
ここで図８を参照して本発明の実施形態における構成情報８００（アセンブリ）の構成の一例について説明する。
【００８３】
Ｎｏ８０１は、アセンブリのレコードＮｏである。レベル８０２は、アセンブリの構成の階層レベルである。トップアセンブリ（例：ＴｏｐＡｓｓｙ）がレベル１、その直下の情報とし参照されている部品、サブアセンブリ（例：ＤｕｃｔＡｓｓｙ）がレベル２、当該サブアセンブリが参照している部品（例：Ｍｏｄｅｌ０１）がレベル３というように、当該階層レベルは部品、アセンブリごとに記憶されている。フォルダパス８０３は、ファイル名８０４に示す、ＴｏｐＡｓｓｙまたはＤｕｃｔＡｓｓｙ等のサブアセンブリが参照している参照先のファイルの保存パスである。親子関係８０５は、該当レコードのファイルの親（直上）にある、当該ファイルを参照しているアセンブリのファイル名を格納する。種類８０６は、各レコードのファイルの種類が、アセンブリなのか、部品（モデル）なのか、仮想部品（部品（仮想）／仮想モデル）なのかを示す。
【００８４】
ここでいう仮想部品（仮想モデル）とは、Ｍｏｄｅｌ０１．ｐａｒｔのようにモデル単体でファイル化されているモデルではなく、アセンブリの中にその位置、形状の情報が格納された、ＣＡＤソフト１０１の接続部作成のコマンドで作成された部品であることを示す。アセンブリでは、当該仮想部品は８００に示す通り１つの部品として記憶管理される。構成情報８００のアセンブリ構成をツリー状にした図をアセンブリ構成８１０に示す。ＣＡＤソフト１０１は当該アセンブリ構成８１０を、アセンブリ表示部１０１２に表示する。以上が図８の説明である。
【００８５】
図５の説明に戻る。部品組立ツール１０２は、仮配置したモデルの寸法を、ステップＳ５０４で決定した寸法に変更するようＣＡＤソフト１０１に指示し（ステップＳ５１０／寸法変更制御手段に該当）、当該指示を受け付けたＣＡＤソフト１０１が、指示された寸法にモデルの寸法を変更する（ステップＳ５１１、Ｓ５１２）。部品組立ツール１０２は、ステップＳ５１０の後、処理をステップＳ５０１に戻して次の操作を受け付けるまで待機する。以上がモデルの仮配置の処理である。
【００８６】
一方、ステップＳ５１３では、部品組立ツール１０２は、受け付けた操作指示がモデルの回転操作（部品方向変更指示受付部１０１１（矢印ボタン）の押下、又は、ルート方向変更指示受付部１００８におけるラジオボタンの押下）を受け付けたか判定する（ステップＳ５１３）。回転操作を受け付けた場合、押下を受け付けた矢印のボタン、またはラジオボタンに対応する方向に仮配置済みのモデルを回転させるようＣＡＤソフト１０１に指示する（ステップＳ５１４）。ＣＡＤソフト１０１は当該指示を受け付け（ステップＳ５１５）、指示された方向にモデルを回転する（ステップＳ５１６）。
【００８７】
受け付けた操作が回転操作でない場合には、受け付けた操作が出口面の選択操作か判定する（ステップＳ５１７）。具体的には、出口面の記載の横に配置されている矢印ボタンの押下を検知した場合に出口面の選択操作を受け付けたと判定する。矢印ボタンの押下を受け付けた場合、受け付けた矢印ボタンの方向に応じたモデル上の参照平面を特定し、特定した参照平面の識別情報を出口面としてメモリに記憶する（ステップＳ５１８）。例えば図７の入口面・出口面情報７４０中の、選択された参照平面の出口面７４４の値を１に更新する。当該入口面・出口面情報７４０は予めＰＣ１００の外部メモリに、部品組立ツール１０２が参照可能に記憶されている。部品ＩＤ７４１は部品の識別情報であり、参照平面ＩＤは部品ＩＤ７４１の部品における参照平面の識別情報である。入口面７４３、出口面７４４はそれぞれ、いずれの参照平面が入口面、出口面として選択されたかを示す。値が１の場合に、入口面、出口面として選択されたことを示し、値が０の場合は入口面、出口面として選択されていないことを示す。
【００８８】
部品組立ツール１０２は、当該出口面として特定した参照平面を仮配置済みのモデル上で選択状態にすべく、当該参照平面の選択指示をＣＡＤソフト１０１に送信する。ＣＡＤソフト１０１は当該指示を受け付けて、指示された参照平面を選択状態にして出口面として選択・設定中である旨を識別表示する（ステップＳ５１９）。例えば選択された参照平面の線分を青色に変更する処理を行う。出口面の選択をした画面の例を図１１の１１００に示す。
【００８９】
受け付けた操作が出口面の選択操作でない場合には、受け付けた操作が入口面の選択操作か判定する（ステップＳ５２０）。具体的には、入口面の記載の横に配置されている矢印ボタンの押下を検知した場合に入口面の選択操作を受け付けたと判定する。矢印ボタンの押下を受け付けた場合、受け付けた矢印ボタンの方向に応じたモデル上の参照平面を特定し、特定した参照平面の識別情報を入口面としてメモリに記憶する（ステップＳ５２１）。例えば入口面・出口面情報７４０中の、選択された参照平面の入口面７４３の値を１に更新する。そして、当該特定した参照平面を仮配置済みのモデル上で選択状態にすべく、当該参照平面の選択指示をＣＡＤソフト１０１に送信する。ＣＡＤソフト１０１は当該指示を受け付けて、指示された参照平面を選択状態にして入口面として選択・設定中である旨を識別表示する（ステップＳ５２２）。例えば選択された参照平面の線分の色を赤色に変更する処理を行う。入口面の選択をした画面の例を図１１の１１００に示す。また、入口面が選択された場合、部品組立ツール１０２は、当該新たに選択された入口面の位置・向きを、表計算ファイル７２０における直前のモデルの出口面の位置、向きに合わせるようにモデルの位置・向きを変更する処理を行う。具体的には、新たに入口面として選択された参照平面の位置・向きを、直前のモデルの出口面の参照平面の位置・向きに合わせるようにＣＡＤソフト１０１に指示する。ＣＡＤソフト１０１が当該指示を受け付けて、受け付けた指示に応じてモデルの位置・向きを変更し、新たに選択された入口面を当該出口面に合わせて表示する。
【００９０】
受け付けた操作が入口面の選択操作でない場合には、受け付けた操作がモデルの配置確定の操作（配置を完了させる操作）か判定する（ステップＳ５２３）。当該モデルの配置の確定処理とは、仮配置中のモデルの入口面をメモリ上のリスト（表計算ファイル７２０の情報）における当該モデルの直前のレコードのモデルの出口面と合致させる指示をする操作である。具体的には、図１０の「部品確定」ボタン１００２の押下を受け付けた場合に、モデルの配置確定の操作を受け付けたと判定する。
【００９１】
モデルの配置確定の操作を受け付けた場合、部品組立ツール１０２は、仮配置中のモデルの入口面と、既に配置確定されている、メモリ上のリスト（表計算ファイル７２０の情報）の直前のレコードのモデルの出口面と合致させるようＣＡＤソフト１０１に指示する（ステップＳ５２４／合致制御手段に該当）。
【００９２】
ＣＡＤソフト１０１は当該指示を受け付け（ステップＳ５２５）、受け付けた指示に応じて２つの面を合致させる（ステップＳ５２６）。結果、入口面と出口面それぞれと同じ位置にある部品の面同士が合わさる（組み立てられる）。モデルタイプ＝「直線」のモデルと、モデルタイプ＝「曲線」のモデルの参照平面を合致させて組み立てた例を図１５に示す。図１５における１５０１が、それぞれのモデルの入口面・出口面に指定され、合致させた参照平面である。
【００９３】
受け付けた操作がモデルの配置確定の操作でない場合、受け付けた操作が次のモデルの読込み操作か判定する（ステップＳ５２７）。具体的には、「次へ」ボタン１００３の押下を受け付けた場合に、次のモデルの読込み操作を受け付けたと判定する。次のモデルの読込み操作を受け付けた場合、処理を図４のステップＳ４０７に移行して、未処理のレコードの内、最上位のレコードを取得する。
【００９４】
受け付けた操作が次のモデルの読込み操作でない場合、受け付けた操作がモデル作成画面の終了操作か判定する（ステップＳ５２８）。具体的には、「終了」ボタン１００４の押下を受け付けた場合に、モデル作成画面の終了操作を受け付けたと判定する。受け付けた操作がモデル作成画面の終了操作でない場合、処理をステップＳ５０１に戻して次の操作があるまで待機する。受け付けた操作がモデル作成画面の終了操作である場合、未確定の、仮配置中のモデルを削除するようＣＡＤソフト１０１に指示する（ステップＳ５２９）。
【００９５】
ＣＡＤソフト１０１は当該指示を受け付け（ステップＳ５３０）、仮配置中のモデルを削除する（ステップＳ５３１）。以上が図５の説明である。
【００９６】
図４の説明に戻る。部品組立ツール１０２は、ステップＳ４０９の処理実行後、図４の処理を終了する。一方、ステップＳ４０８において、ステップＳ４０７で取得したレコードのモデルタイプが接続部である場合、ステップＳ４０７で取得したレコードの次のレコードの情報（モデルタイプ、寸法等）を取得し（ステップＳ４１０）、取得したレコードのタイプのモデルを取得した寸法でＣＡＤソフト１０１において配置する処理を行う（ステップＳ４１１）。当該モデルの配置処理は、ステップＳ４０９で説明した図５の処理とほぼ同一である。一部処理が異なるため、以下、異なる処理について説明する。
【００９７】
ステップＳ４１１では、ステップＳ５０１〜Ｓ５０５の処理実行後、ステップＳ５０６において、メモリ上のリスト（表計算ファイル７２０に相当）の処理中のレコード（例：Ｍｏｄｅｌ０１Ａ）の直前のレコード（タイプ＝接続部のレコード／ＪｏｉｎｔＸＸ）のモデル位置のＹ，Ｚ値、処理中のレコードの寸法Ａ７２６のＸ値を取得し、取得したＸ，Ｙ，Ｚの値を、２つ前のレコード（Ｍｏｄｅｌ０１）との間の距離として特定し、Ｍｏｄｅｌ０１から当該Ｘ，Ｙ，Ｚの距離分離れた位置をＭｏｄｅｌ０１Ａの配置位置として決定・記憶し、部品の配置処理を行う。部品組立ツール１０２は、ステップＳ５０７〜Ｓ５２６を実行する。配置後の部品、例えばＭｏｄｅｌ０１Ａの配置の様子を図１１の１１２０に示す。
【００９８】
部品組立ツール１０２は、図５のステップＳ５２７で次のモデルの読込み操作を受け付けたと判定した場合に、部品組立ツール１０２は、処理を図４のステップＳ４１２に移行する。また、ステップＳ４１１では、図５のステップＳ５２９で未確定のモデルの削除指示を行った後、図５及び図４の処理を終了するものとする。以上がステップＳ４１１における部品配置処理の説明である。
【００９９】
部品組立ツール１０２は、ステップＳ４１２で接続部の作成する基準となる面の寸法・位置を特定する（ステップＳ４１２）。具体的には、ステップＳ４１１で配置が確定したモデルの入口面と、当該モデルの直前のレコードのモデルの出口面の位置、寸法を特定して、接続部中の２面を、当該入口面・出口面とそれぞれ位置にある同じ寸法の面（例えば図１２における１２０１の面と１２０２の面）に決定する。
【０１００】
部品組立ツール１０２は、当該特定した面と同じ寸法の面を、特定した入口面・出口面の位置に備える接続部の仮想モデルを生成するようＣＡＤソフト１０１に指示する（ステップＳ４１３／接続部作成制御）。
【０１０１】
ＣＡＤソフト１０１は、当該指示を受け付け（ステップＳ４１４）、受け付けた指示に応じて接続部のモデル（ＪｏｉｎｔＸＸ）を生成してモデル表示部１０１３に配置する（ステップＳ４１５）。接続部のモデル（ＪｏｉｎｔＸＸ）の配置の様子を図１２の１２００に示す。以上が図４の説明である。
【０１０２】
次に図６を参照して、図４のステップＳ４１６で実行する、寸法チェック及び寸法一括変更の処理の流れについて説明する。
【０１０３】
表計算ソフト１０３は、ステップＳ４０２で受け付けた操作指示が「寸法チェック」ボタン９０２の押下か、「寸法変更」ボタン９０３の押下かを判定する（ステップＳ６０１）。「寸法チェック」ボタン９０２の押下の操作である場合、処理をステップＳ６０２に移行する。「寸法変更」ボタン９０３の押下操作である場合、処理をステップＳ６０８に移行する。
【０１０４】
表計算ソフト１０３は、ステップＳ６０２で、寸法チェックツール１０４を起動する処理をする（ステップＳ６０１）。具体的には、ＰＣ１００の所定の記憶領域に記憶されている「寸法チェックツール．ｅｘｅ」のファイルを指定してツールを起動する（ステップＳ６０２）。当該起動処理の対象となった寸法チェックツール１０４が起動し（ステップＳ６０３）、メモリ上記に記憶されている現在の表計算ファイル７２０の情報（つまり、現在寸法入力画面９００に入力・表示されている値）と、ステップＳ４０１で記憶した比較基準情報とを取得して各項目の値を比較し、値が異なる項目（表計算ソフト１０３において表示されている寸法入力画面９００において現在の値と比較基準情報の値が異なるセル）を特定する（ステップＳ６０４）。どの項目がどのセルに対応するか特定するための情報は、別途メモリに記憶されているものとする。
【０１０５】
寸法チェックツール１０４は、当該値が異なるセルの値を識別可能に表示するよう表計算ソフト１０３に指示する（ステップＳ６０５）。具体的には、当該値が異なるセルの識別番号と当該識別番号の示すセルの背景色を変更する指示を表計算ソフト１０３に対して送信する。
【０１０６】
表計算ソフト１０３は当該識別表示の指示を受け付け（ステップＳ６０６）、指示されたセルの色を所定の色（例えば赤色）に変更することで、表計算ファイル７２０が開かれてから値が変更された項目、その値を識別表示する（ステップＳ６０７）。
【０１０７】
また、表計算ソフト１０３は、ステップＳ４０２で受け付けた操作指示が「寸法変更」ボタン９０３の押下であると判定した場合、ステップＳ６０８で、寸法一括変更ツール１０５の起動処理を実行する（ステップＳ６０８）。具体的には、ＰＣ１００の所定の記憶領域に記憶されている「寸法一括変更ツール．ｅｘｅ」のファイルを指定してツールを起動する。
【０１０８】
当該起動処理の対象となった寸法一括変更ツール１０５が起動し（ステップＳ６０９）、メモリ上記に記憶されている現在の表計算ファイル７２０の各モデルの寸法Ａ、寸法Ｂの値（つまり、現在寸法入力画面９００に入力・表示されている寸法の値）と、配置済みモデル情報７３０の値の各モデルの寸法の値を比較して、寸法の値が異なるモデルのファイル名、及び現在の表計算ファイル７２０における寸法の値を特定する（ステップＳ６１０）。
【０１０９】
寸法一括変更ツール１０５は、ステップＳ６１０で特定したファイル名の全てのモデルの寸法を、ステップＳ６１０で特定した各モデルに対応する現在の寸法入力画面９００における寸法に変更する指示をＣＡＤソフト１０１に送信する（ステップＳ６１１）。
【０１１０】
ＣＡＤソフト１０１は当該指示を受信し（ステップＳ６１２）、指示されたモデルの寸法を指示された寸法に変更・更新する処理を行う（ステップＳ６１３）。以上が図６の説明である。
【０１１１】
以上説明したように、本実施形態によれば、部品のリストの順序に応じて、３次元部品の組み立てを簡易に実現できる。
【０１１２】
＜第２の実施形態＞
【０１１３】
第２の実施形態においては、組み立てるモデルの径（出口面と入口面の寸法）が一致しているか容易に確認可能することができる。
【０１１４】
具体的には、図５のステップＳ５０４の直後、又は／及び、図６のステップＳ６０５の処理の直後に図１６の処理を実行することで、当該モデルの径のチェック及びチェック結果のユーザへの通知を行う。
【０１１５】
以下、図１６、図１７を参照して、本発明の第２の実施形態について説明する。第２の実施形態においては、第１の実施形態と共通の処理については説明を省略する。
【０１１６】
ステップＳ５０４の直後に図１６の処理を実行する場合、ステップＳ１６０１において部品組立ツール１０２は、寸法入力画面９００に入力・表示されている値を記憶したメモリ上のリスト（表計算ファイル７２０）を取得して、処理中レコードの直前のレコードを特定し（ステップＳ１６０１）、特定した直前のレコードのモデルの出口面である参照平面と一致する面（出口面である参照平面と同じ位置にあり、同じ向きである直前のレコードの部品上の面）と、処理中のレコードのモデル（ステップＳ５０４で寸法を決定したモデル）の入口面である参照平面に一致する面（入口面である参照平面と同じ位置にあり、同じ向きである処理中のレコードの部品上の面）の寸法をそれぞれ取得する（ステップＳ１６０２）。
【０１１７】
具体的には、部品組立ツール１０２がＣＡＤソフト１０１に対して、前記直前のレコードのモデルの識別情報、当該モデルにおける出口面である参照平面の識別情報を通知することで、当該出口面と同じ位置、向きにある当該モデルの面の寸法を要求する。ＣＡＤソフト１０１が当該要求に応じて対象の面の寸法をモデルのファイルの内部情報から読み出して、部品組立ツール１０２に返信する。部品組立ツール１０２はこれを受信することで、前記直前のレコードの部品上の出口面（参照平面）に一致する面の寸法を取得する。また、部品組立ツール１０２がＣＡＤソフト１０１に対して、処理中のレコードのモデルの識別情報、当該モデルにおける入口面である参照平面の識別情報を通知することで、当該入口面と同じ位置、向きにある当該モデルの面の寸法を要求する。ＣＡＤソフト１０１が当該要求に応じて対象の面の寸法をモデルのファイルの内部情報から読み出して、部品組立ツール１０２に返信する。部品組立ツール１０２はこれを受信することで、処理中のレコードの部品上の入口面（参照平面）に一致する面の寸法を取得する。
【０１１８】
部品組立ツール１０２は取得したそれぞれの面の径（寸法）が適切か判定し（ステップＳ１６０３／寸法判定手段に該当）、適切な場合は図１６の処理を終了して、処理を図５のステップＳ５０５に進める。径が適切な場合とは、例えば、２つの面の径（寸法）が一致している場合である。
【０１１９】
例えばステップＳ１６０３で、それぞれの面の径（寸法）が一致していないと判定された場合は、当該径が一致していないモデルの寸法値を識別表示するよう表計算ソフト１０３に指示する（当該寸法の入力されているセルの識別番号と識別表示の指示を送信する表示制御に該当／ステップＳ１６０４）。
【０１２０】
当該指示を受け付けた表計算ソフト１０３は（ステップＳ１６０６）、当該指示に応じて対象のセルの値を識別表示する。例えば、対象のセルの背景色を赤色に変更する。セルの背景色変更の例を図１７の１７００の１７０１、１７０２に示す。その後処理を終了する。
【０１２１】
また、部品組立ツール１０２は、例えばステップＳ１６０３で、それぞれの面の径（寸法）が一致していないと判定した場合、当該径が一致していないモデルの寸法値を識別表示するようＣＡＤソフト１０１に指示する、識別表示の制御を行う（ステップＳ１６０５）。つまり、当該径が一致していない面と同じ位置にある参照平面（ステップＳ１６０２でＣＡＤソフト１０１に問合せを行った参照平面）の識別情報をＣＡＤソフト１０１に通知し、且つ、当該参照平面の線分の色を所定の色に変更するようＣＡＤソフト１０１に指示する。当該指示を受け付けたＣＡＤソフト１０１は（ステップＳ１６０６）、当該指示に応じて対象の参照平面の線分の色を所定の色（例えば赤色）に変更する処理を行う（ステップＳ１６０７）。参照平面の色変更の表示例を図１７の１７１０の１７１１に示す。また、部品組立ツール１０２は、図１７の１７１２に示すような、２つのモデルの径が不一致である旨を通知する通知画面を表示画面に表示する。以上が図５のステップＳ５０４の直後に図１６の処理を実行する場合の説明である。
【０１２２】
図６のステップＳ６０５の直後に図１６の処理を実行する実施例について説明する。ステップＳ６０５の直後に図１６の処理を実行する場合、上述した図１６の説明において部品組立ツール１０２が実行していた処理と同じ処理（ステップＳ１６０１〜Ｓ１６０５）を寸法チェックツール１０４が実行する。ステップＳ１６０２による面の寸法の取得は、寸法チェックツール１０４とＣＡＤソフト１０１の間で実行する。また、ステップＳ１６０３で径が一致していると判定された場合には、図１６の処理を終了するものとする。
【０１２３】
なお、通知画面１７１２の表示は、１７００に示す表計算ソフトにおけるセルの背景色変更と共に行うようにしてもよい。以上が図１６の説明である。なお、
【０１２４】
本発明の第２の実施形態によれば、組み立てるモデルの径（出口面と入口面の寸法）が一致しているか容易に確認可能することができる。
【０１２５】
以上説明したように、本発明によれば、部品のリストの順序に応じて、３次元部品の組み立てを簡易に実現できる。
【０１２６】
また、図４のステップＳ４１０で次のモデルのレコードが未記載の場合は、部品組立ツールは、接続部を接続する先がないため、不図示のエラー画面を表示して次のレコードを入力するようユーザに促すようにしてもよい。
【０１２７】
尚、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、１つの機器からなる装置に適用してもよい。
【０１２８】
例えば、部品組立ツール１０２、表計算ソフト１０３、寸法チェックツール１０４、寸法一括変更ツール１０５が１つのツールとして記憶され、当該１つのツールが、各ツールが実行するものとして上述した各図の処理を実行するように構成してもよい。また、これらのツールのうち任意のツールが１つのツールとして記憶され、当該１つのツールが、当該任意のツールが実行するものとして上述した各図の処理を実行するように構成してもよい。
【０１２９】
例えば、不図示のサーバ装置にＣＡＤファイルを記憶させ、ＰＣ１００に記憶されているＣＡＤソフト１０１がネットワークを介して当該ＣＡＤファイルをサーバから取得・読込、展開するようにしてもよい。また、ＣＡＤソフト１０１と部品組立ツール１０２が一体であってもよい。
【０１３０】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【０１３１】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１３２】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０１３３】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【０１３４】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１３５】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１３６】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１３７】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【０１３８】
尚、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。
即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１３９】
１００  ＰＣ
１０１  ＣＡＤソフト
１０２  部品組立ツール
１０３  表計算ソフト
１０４  寸法チェックツール
１０５  寸法一括変更ツール
【図１】
2017091067.tif 000003
【図２】
2017091067.tif 000004
【図３】
2017091067.tif 000005
【図４】
2017091067.tif 000006
【図５】
2017091067.tif 000007
【図６】
2017091067.tif 000008
【図７】
2017091067.tif 000009
【図８】
2017091067.tif 000010
【図９】
2017091067.tif 000011
【図１０】
2017091067.tif 000012
【図１１】
2017091067.tif 000013
【図１２】
2017091067.tif 000014
【図１３】
2017091067.tif 000015
【図１４】
2017091067.tif 000016
【図１５】
2017091067.tif 000017
【図１６】
2017091067.tif 000018
【図１７】
2017091067.tif 000019