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