(57)【特許請求の範囲】
【請求項１】
コンピュータ支援設計モデルにおいて設計データを再利用する、コンピュータにより実行される方法であって、
（ａ）デジタルプロセッサにおいて、コンピュータ支援設計ファイルを、それぞれが設計データの論理データセットであり、フィーチャ、プロファイル、スケッチエンティティ、接続された一連の線、スプライン、サーフェス、内部ファイルプロパティ、２次元ブロック、図面ビュー、レイヤ、およびアノテーションのうちの任意の１つを含む複数の要素に自動的に分解する分解工程であって、
（i）フォーマットによって決まる技法を用いて前記複数の要素のそれぞれを特定するように、前記コンピュータ支援設計ファイルを分析する工程、および
（ii）前記複数の要素のそれぞれに対応する情報をデータ記憶部に記憶する工程を有し、
前記情報は、前記複数の要素のうちの少なくとも１つの要素の複製をしやすくするように、前記複数の要素中でこの情報に対応する要素を特定するものであり、
前記情報は、前記コンピュータ支援設計ファイルにおける位置を示すデータ、および前記複数の要素のうちの少なくとも１つの要素を定義するデータのいずれかである、分解工程と、
（ｂ）前記複数の要素のうちの１つの要素の場所を見つけるために前記データ記憶部を照会する工程と、
（ｃ）前記複数の要素のうちの前記１つの要素に対応する情報を前記データ記憶部から取り出す工程と、
（ｄ）前記複数の要素のうち前記１つの要素をユーザインターフェースに提示する工程と、
（ｅ）前記コンピュータ支援設計モデルへの組込み用として前記複数の要素のうちの前記提示された要素が選択されると、前記複数の要素のうちの前記提示かつ選択された要素を前記コンピュータ支援設計モデルに組み込むことにより、このコンピュータ支援設計モデルを構築する工程とを備えた、設計データ再利用方法。
【請求項２】
請求項１において、
前記記憶する工程は、データ記憶部に、前記要素の名前および前記コンピュータ支援設計ファイルのファイル名を前記情報に加えて記憶し、
前記取り出される情報は検索条件によって決定され、
前記検索条件は、ファイル名および要素の名前のうちの少なくとも１つを指定するものであり、
前記取り出される情報は、前記ファイル名および前記要素の名前のうちの少なくとも１つによって特定される、設計データ再利用方法。
【請求項３】
請求項１において、前記内部ファイルプロパティは、テクスチャ、マテリアル、バンプマップ、色、設定値、数値、テキスト列、および動作特性のうちの任意の１つを規定する、設計データ再利用方法。
【請求項４】
請求項１において、前記複数の要素のうちの前記１つの要素を提示する工程が、さらに、
前記複数の要素のうちの前記提示される要素のグラフィック画像を表示する工程、および
前記複数の要素のうちの前記提示される要素に関連するファイル名を表示する工程のうちの少なくとも一方を有する、設計データ再利用方法。
【請求項５】
請求項４において、前記グラフィック画像を表示する工程が、
前記コンピュータ支援設計ファイルに設定されたパーツを、このパーツに含まれる前記複数の要素のうちの前記提示される要素以外を透明にして、表示する工程、および
前記パーツのサムネイル画像を生成する工程を有する、設計データ再利用方法。
【請求項６】
請求項１において、前記複数の要素のうちの前記提示された要素は、
前記複数の要素のうちの前記提示された要素をユーザインターフェース領域からドラッグすること、および
前記複数の要素のうちの前記提示された要素を、ウィンドウのモデリング部にドロップすることによって、前記組込み用として選択される、設計データ再利用方法。
【請求項７】
請求項１において、さらに、
前記複数の要素のうちの特定された要素に対応するタグデータを記憶する工程と、
前記複数の要素のうちの前記特定された要素の場所を見つけるように、前記記憶されたタグデータを検索する工程と、
前記複数の要素のうちの前記特定された要素に対応する前記記憶された情報を取り出す工程と、
前記ユーザインターフェースにおいて前記複数の要素のうちの前記特定された要素のグラフィック画像を提示する工程とを備えた、設計データ再利用方法。
【請求項８】
命令を備えた、コンピュータ読み取り可能なデータ記憶媒体であって、
前記命令がコンピュータに、
第１のコンピュータ支援設計モデルの構築用の設計ファイルに設定された１つ以上のコンピュータ支援設計コンポーネントを、フォーマットによって決まる技法を用いて特定するように、前記設計ファイルを自動的に分解するプロセスを実行する手順であって、前記コンポーネントは、それぞれ、設計データの論理データセットであり、フィーチャ、プロファイル、スケッチエンティティ、接続された一連の線、スプライン、サーフェス、内部ファイルプロパティ、２次元ブロック、図面ビュー、レイヤ、およびアノテーションのうち任意の１つを含む、手順と、
前記コンピュータ支援設計コンポーネントを再現するためのデータを記憶する手順であって、前記記憶されたデータが、前記コンピュータ支援設計コンポーネントのそれぞれに対応する固有のデータセットを含む、手順と、
前記設計ファイルをオープンせずに、前記記憶されたデータを検索して検索条件に合致する前記固有のデータセットを探し出す、手順と、
再利用可能なＣＡＤエンティティを提示する手順であって、この再利用可能なＣＡＤエンティティが、前記検索条件に合致する前記固有のデータセットに対応するコンピュータ支援設計コンポーネントである、手順と、
前記再利用可能なＣＡＤエンティティをユーザが選択できるようにする手順とを実行させる、コンピュータ読み取り可能なデータ記憶媒体。
【請求項９】
請求項８において、前記コンピュータ支援設計コンポーネントのそれぞれに対応する前記固有のデータセットが、前記コンピュータ支援設計コンポーネントへのポインタおよび前記コンピュータ支援設計コンポーネントの複製のうちのいずれかを有する、コンピュータ読み取り可能なデータ記憶媒体。
【請求項１０】
請求項８において、さらに、命令を備え、
この命令がコンピュータに、
前記再利用可能なＣＡＤエンティティをユーザが選択すると、前記再利用可能なＣＡＤエンティティの複製を作成する手順と、
前記再利用可能なＣＡＤエンティティの複製を、第２のコンピュータ支援設計モデルに含める手順とを実行させる、コンピュータ読み取り可能なデータ記憶媒体。
【請求項１１】
請求項８において、再利用可能なＣＡＤエンティティを提示する前記手順をコンピュータに実行させる命令が、さらに、命令を備え、この命令がコンピュータに、
前記再利用可能なＣＡＤエンティティのグラフィック画像を表示する手順、および
前記再利用可能なＣＡＤエンティティに関連するファイル名を表示する手順の少なくとも一方の手順を実行させる、コンピュータ読み取り可能なデータ記憶媒体。
【請求項１２】
請求項１１において、さらに、命令を備え、
この命令がコンピュータに、
前記グラフィック画像および前記ファイル名の１つを選択する手順と、
前記再利用可能なＣＡＤエンティティを作成するのに用いられる１つ以上の下位レベルのエンティティの場所を見つけるように、前記記憶されたデータを検索する手順と、
前記１つ以上の下位レベルのエンティティを提示する手順と、
前記１つ以上の下位レベルのエンティティの選択を可能にする手順と、
前記下位レベルのエンティティのうちの選択されたエンティティを、第２のコンピュータ支援設計モデルに含める手順とを実行させる、コンピュータ読み取り可能なデータ記憶媒体。
【請求項１３】
請求項１１において、さらに、命令を備え、
この命令がコンピュータに、
コンピュータ支援設計コンポーネントを自動的に特定する前記プロセス中に、コンポーネントの種類を区別する手順と、
前記コンポーネントの種類に従い、前記再利用可能なＣＡＤエンティティの前記グラフィック画像をフィルタリングする手順と、
前記コンポーネントの種類に応じたフィルタを適用したときにのみ、前記再利用可能なＣＡＤエンティティの前記グラフィック画像を表示する手順とを実行させる、コンピュータ読み取り可能なデータ記憶媒体。
【請求項１４】
請求項１３において、前記フィーチャがカットフィーチャおよび押し出しフィーチャを含む、コンピュータ読み取り可能なデータ記憶媒体。
【請求項１５】
３次元モデルを記憶するデータ記憶システムに動作可能に接続されたプロセッサと、
前記プロセッサに動作可能に接続され、命令を含むデータ記憶メモリとを備えたコンピュータ支援設計システムであって、
前記命令が前記プロセッサに、
（ａ）コンピュータ支援設計ファイルを、それぞれが設計データの論理データセットであり、フィーチャ、プロファイル、スケッチエンティティ、接続された一連の線、スプライン、サーフェス、内部ファイルプロパティ、２次元ブロック、図面ビュー、レイヤ、およびアノテーションのうち任意の１つを含む複数のＣＡＤエンティティに自動的に分解する分解手順であって、この分解手順の命令が前記プロセッサに、
（i）フォーマットによって決まる技法を用いて前記複数のＣＡＤエンティティのそれぞれを特定するように、前記コンピュータ支援設計ファイルを分析する手順、および
（ii）前記複数のＣＡＤエンティティのそれぞれに対応する情報を、前記複数のＣＡＤエンティティのうちの少なくとも１つのＣＡＤエンティティを複製するための後の取出しに備えて、データベースに記憶する手順を実行させ、
前記情報は、前記コンピュータ支援設計ファイルにおける位置を示すデータ、および前記複数のＣＡＤエンティティのうちの少なくとも１つのＣＡＤエンティティを定義するデータのいずれかである、分解手順と、
（ｂ）前記複数のＣＡＤエンティティのうちの特定のＣＡＤエンティティの場所を見つけるために前記データベースを照会する手順と、
（ｃ）前記データベースから、前記複数のＣＡＤエンティティのうちの前記特定のＣＡＤエンティティに対応する前記情報を取り出す手順と、
（ｄ）前記複数のＣＡＤエンティティのうちの前記特定のＣＡＤエンティティに対応する前記情報を取り出すと、ユーザインターフェースにおいて前記複数のＣＡＤエンティティのうちの前記特定のＣＡＤエンティティを提示する手順と、
（ｅ）前記３次元モデルへの組込み用として前記複数のＣＡＤエンティティのうちの前記提示された特定のＣＡＤエンティティのうちの１つのＣＡＤエンティティによって表現される再利用可能な設計データが選択されると、この選択された再利用可能な設計データを前記３次元モデルに組み込むことにより、この３次元モデルを構築する手順とを実行させる、コンピュータ支援設計システム。
【請求項１６】
請求項１５において、
前記情報をデータベースに記憶する手順は、さらに、前記ＣＡＤエンティティの名前および前記コンピュータ支援設計ファイルのファイル名を前記情報に加えて記憶し、
前記取り出される情報は検索条件によって決定され、
前記検索条件は、ファイル名およびＣＡＤエンティティの名前のうちの少なくとも１つを指定するものであり、
前記取り出される情報は、前記ファイル名および前記ＣＡＤエンティティの名前のうち少なくとも１つによって特定される、コンピュータ支援設計システム。
【請求項１７】
請求項１５において、さらに、命令を備え、
この命令が前記プロセッサに、
複数のグラフィック画像を表示する手順であって、前記複数のグラフィック画像は、それぞれ、前記複数のＣＡＤエンティティのうちの各ＣＡＤエンティティの再現に対応し、かつその再現自体である、手順と、
ＣＡＤエンティティの種類に応じて前記複数のグラフィック画像をフィルタリングする手順と、
前記フィルタリングされた複数のグラフィック画像を表示する手順とを実行させる、コンピュータ支援設計システム。
【請求項１８】
請求項１７において、前記複数のグラフィック画像を表示する前記手順を前記プロセッサに実行させる命令が、さらに、命令を備え、この命令が前記プロセッサに、
前記コンピュータ支援設計ファイルによって設定されたパーツを、前記複数のＣＡＤエンティティのうちの前記提示された特定のＣＡＤエンティティ以外を透明にして、表示する手順と、
前記パーツのサムネイル画像を生成する手順とを実行させる、コンピュータ支援設計システム。
【発明の詳細な説明】
【関連出願】
【０００１】
本願は、2007年2月2日出願の米国特許出願第11/670,820号の継続出願であって、かつその優先権を主張するものであり、上記出願の全教示は参照により本明細書に引用したものとする。
【技術分野】
【０００２】
本願は、コンピュータ支援設計（ＣＡＤ）に関するものであり、より詳細には、３次元（３Ｄ）ＣＡＤモデルに含まれるデータ構造の再利用に関する。
【背景技術】
【０００３】
コンピュータ支援設計（ＣＡＤ）ソフトウェアは、ユーザが複雑な３次元（３Ｄ）モデルを構築および操作することを可能にする。数多くの異なるモデリング手法が、３次元モデルを作成するのに使用される。このような手法の１つとして、ソリッドモデリング手法が挙げられる。ソリッドモデリング手法は、相互に結合したトポロジカル（位相的）なエンティティ（構成単位）（例えば、頂点、稜線（edge）および面（face））の集合であるトポロジカルな３次元モデルを提供する。トポロジカルなエンティティは、これに対応してかつ補助する幾何学的な（geometrical）エンティティ（例えば、点（座標の点）、トリム曲線およびトリム曲面）を有する。トリム曲面は、稜線によって境界が決められたトポロジ面に相当する。ＣＡＤシステムには、ソリッドモデリング手法と、パラメトリックモデリング手法のような他のモデリング手法とを組み合わせたものも存在する。パラメトリックモデリング手法は、モデルの種々のフィーチャ（形状要素）およびコンポーネント（構成要素）についての様々なパラメータを定義し、さらに、これら様々なパラメータ間の関係に基づいてこれらフィーチャとコンポーネントとの関係を定義するのに用いられる。
【０００４】
設計技術者は３次元ＣＡＤシステムの典型的なユーザである。設計技術者は、３次元モデルの物理的側面および美的側面を設計する人物であり、３次元モデリング手法に熟練している。技術設計者はパーツを作成し、パーツをサブアセンブリに組み立てる。パーツおよびサブアセンブリは、アセンブリを設計するために使用される。
【０００５】
ソリッドモデリングシステムはフィーチャベースの３次元ＣＡＤシステムであり、様々なフィーチャを用いてパーツが構築される。フィーチャの例には、ボス（押し出し突起形状）、フィレット（ラウンド角が丸められた形状）、面取り、切抜き（カット）、孔、シェル（開口を有する形状）、ロフト（複数の断面を通る曲面）およびスイープ（ある図形がある経路に沿って移動することで形成される軌跡が描く形状）が含まれる。市販されているフィーチャベースのモデリングシステムには、米国マサチューセッツ州コンコルドのSolidWorks社から入手可能なＳｏｌｉｄＷｏｒｋｓ（登録商標）２００７ソフトウェアシステムが含まれる。ＳｏｌｉｄＷｏｒｋｓソフトウェアなどの市販されているＣＡＤシステムは、パーツ、サブアセンブリおよびアセンブリの内容をデータファイルに記憶する。ＣＡＤのデータファイルの内容には、フィーチャの他にも、設計プロファイル、レイアウト、内部コンポーネント（例えば、ボディ）、およびグラフィカルなエンティティ（グラフィックで表示される、モデルの構成単位）が含まれてもよい。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
新製品または改良製品のデザインは、既存のデザインから発展していることが多い。つまり、設計技術者は、過去に構築されたモデルと同様の特性を有するモデルを構築する。しかし、当該同様の特性を構成するエンティティは、設計において再度使用するのに手軽に利用可できない場合がある。過去に構築されたモデルは、古いＣＡＤシステムによって作成されたデータファイルに記憶され、現在使用されているＣＡＤシステムでは読み取ることができない場合がある。一方で、現在使用されているＣＡＤシステムが、古いＣＡＤシステムによって作成されたデータファイルを読み取ることが可能な場合もあるが、そのデータファイルの内容は、設計技術者が所望する粒度で実現できない場合がある。したがって、設計技術者は、同一のデータ全体を再度構築する必要がある。
【０００７】
ＳｏｌｉｄＷｏｒｋｓ２００７のようなＣＡＤシステムの中には、将来のデザインに使用されるかもしれない設計データを設計技術者が指定できるものもある。設計データが指定されると、設計データは再利用のために管理される。これは、例えば、データを指定し、当該データを２次元のスケッチブロック（sketch block）またはライブラリフィーチャ（library feature）として保存することにより、実現される。スケッチブロックまたはライブラリフィーチャとして記憶されたデータを再利用するには、設計技術者は、このデータが別のデザインにおいて再び必要になることを事前に見通していなければならず、また、将来の利用のために、適切なデータを積極的に指定する必要がある。さらに、再利用のために設計データを保存した後は、まずその設計データの場所を見つけてからでないと、当該設計データを再度使用できない。保存されたデータの場所を見つける際には、ファイルブラウザを使用し、当該保存されデータを、関連するＣＡＤファイルについて広範囲に手作業で検索しなければならない。保存された設計データの場所を見つけると、設計技術者は、フィーチャまたはスケッチブロックの名前を選択し、その名前をドラッグしてパーツが表示されるウィンドウ領域内に入れる。ウィンドウ領域内に入れられて、保存されたデータがパーツでグラフィカルに現れる。
【０００８】
ＣＡＤシステムには、フィーチャライブラリおよびスケッチブロックに加えて、フィーチャ認識機能を備えているものがある。一般的に、フィーチャ認識機能は、ヒューリスティクス（経験則、発見的方法）に基づき、元々がＣＡＤではないシステムで作成されたパーツのフィーチャを特定する機能である。さらに、フィーチャ認識手法は、必ずしも設計意図を捕らえていない。その理由は、フィーチャが作成された過程についての情報が欠落している場合があるからである。さらに、フィーチャ認識手法は、その対象が限定されている場合がある。例えば、フィーチャ認識プロセスには、現在開かれているＣＡＤファイル内のフィーチャしか認識しないものがある。この場合、ユーザは、適切なＣＡＤファイルの場所を見つけてそのファイルを開き、それからフィーチャ認識プロセスを開始する必要がある。
【０００９】
過去に設計されたＣＡＤデータの場所を見つける他の方法には、検索メカニズムが含まれる。ＳｏｌｉｄＷｏｒｋｓ２００７ソフトウェアは、テキスト検索手法を利用した検索メカニズムを提供し、この検索メカニズムは、テキスト文字列を用いてパーツファイルの場所を見つける。しかし、ＳｏｌｉｄＷｏｒｋｓ２００７ソフトウェアは、パーツに含まれる特定のエンティティではなく、パーツ全体にアクセスしてこれをオープンする。これは、所与のテキスト文字列についてのウェブページの場所を見つけ、このテキストを含むウェブページ全体をオープンするウェブ検索手法に類似する。
【課題を解決するための手段】
【００１０】
現行技術のＣＡＤシステムについて、時間節約の利点および時間節約の向上を実現することは可能である。これは、設計技術者が設計データの特定のセグメント（断片）を再利用のためにまず積極的に保存し、設計データの特定のセグメントを再利用するために手作業でファイルシステムをブラウズし（目を通し）、再利用可能な設計データを含むファイル全体を開く必要なしに、必要とする設計データの場所を、その粒度に関係なく自動的に見つけることが可能な効率的な手段を提供することによって実現できる。
【００１１】
一般的に、本発明の一態様は、コンピュータに実装される方法であって、コンピュータ支援設計モデルにおいて設計データを再利用する方法に関する。コンピュータ支援設計ファイルは、複数の要素に自動的に分解される。設計ファイルを複数の要素に分解するにあたり、当該コンピュータ支援設計ファイルは、各要素を特定するために分析され、各要素に対応する情報が、複数の要素のうちの１つの要素の複製を作成するために後に取り出せるように記憶される。この情報は、要素の設計ファイルにおける位置を示すデータ、または要素を明確に定義するデータである。この情報が取り出されると、ユーザインターフェースにおいて、対応する要素が提示される。提示された要素のうちの１つが選択され、コンピュータ支援設計モデルに組み込まれる。コンピュータ支援設計モデルの構築では、選択された要素をコンピュータ支援設計モデルに組み込む。
【００１２】
検索条件により、取り出される情報が決まる。ある実施形態では、検索条件は、ファイル名および／または要素の名前を指定する。取り出される情報は、ファイル名および／または要素の名前によって特定される。
【００１３】
前記複数の要素は、フィーチャ、プロファイル、スケッチエンティティ、接続された一連の線、スプライン、サーフェス、内部ファイルプロパティ、２次元ブロック、図面ビュー、レイヤおよびアノテーションのうちの任意の１つを含む。前記内部ファイルプロパティは、テクスチャ、マテリアル、バンプマップ、色、設定値、数値、テキスト文字列、および動作特性のうちの任意の１つを特定する。
【００１４】
ユーザインターフェースにおける前記対応する要素の提示には、各要素の対応するグラフィック画像の表示および／または要素に関連するファイル名の表示が含まれる。グラフィック画像の表示の際には、コンピュータ支援設計ファイルによって定義されるパーツを、このパーツに含まれる対象の対応要素以外を透明状態にしてもよい。また、このパーツのサムネイル画像を生成してもよい。
【００１５】
一実施形態において、ユーザは、グラフィカルなユーザインターフェース上の動作により、前記提示された１つ以上の要素を、コンピュータ支援設計モデルに組み込むために選択する。グラフィカルなユーザインタフェースとして、例えば、所望の提示された要素をユーザインターフェース領域からドラッグし、この対象となる要素をウィンドウのモデリング部（モデル作成部）にドロップしてもよい。
【００１６】
他の実施形態において、本発明の方法は、さらに、特定された要素に対応するタグデータを記憶する工程、この特定された要素の場所を見つけるために、前記記憶されたタグデータを検索する工程、この特定された要素に対応する前記記憶された情報を取り出す工程、およびユーザインターフェースにおいて前記特定された要素のグラフィック画像を提示する工程を含む。
【００１７】
本発明の別の実施形態は、コンピュータ支援設計モデルにおいて設計データを再利用するためのコンピュータ命令を備えたコンピュータ読み取り可能なデータ記憶媒体を提供する。このコンピュータ命令は、コンピュータに、第１のコンピュータ支援設計モデルの構築に用いられる設計ファイル内で定義された１つ以上のコンピュータ支援設計コンポーネントを自動的に特定するプロセスを実行させる。次に、コンピュータは、前記コンピュータ支援設計コンポーネントの複製を作成するためのデータを記憶する。ここで、記憶されるデータは、前記コンピュータ支援設計コンポーネントのそれぞれに対応する固有のデータセットを含む。前記コンピュータ命令は、さらに、コンピュータに対して、前記設計ファイルを開くことなく、前記記憶されたデータを検索させて検索条件に合致する前記固有のデータセットを検索させる。コンピュータは、再利用可能なＣＡＤエンティティとして、前記検索条件に合致する前記固有のデータセットに対応するコンピュータ支援設計コンポーネントを提示する。コンピュータは、前記再利用可能なＣＡＤエンティティをユーザが選択できるようにする。
【００１８】
前記コンピュータ支援設計コンポーネントのそれぞれに対応する前記固有のデータセットは、前記コンピュータ支援設計コンポーネントへのポインタ、および／または前記コンピュータ支援設計コンポーネントの複製であってもよい。そして、前記コンピュータ命令は、コンピュータに対して、前記再利用可能なＣＡＤエンティティをユーザが選択した後に、前記再利用可能なＣＡＤエンティティの複製を作成させ、前記再利用可能なＣＡＤエンティティの複製を、第２のコンピュータ支援設計モデルに組み込ませる。さらに、コンピュータは、前記再利用可能なＣＡＤエンティティのグラフィック画像を表示することにより、および／または前記再利用可能なＣＡＤエンティティに関連するファイル名を表示することにより、前記再利用可能なＣＡＤエンティティを提示する。前記コンピュータ命令は、コンピュータに、グラフィック画像および／またはファイル名を選択させ、前記再利用可能なＣＡＤエンティティの作成に用いられる１つ以上の下位レベルのエンティティの場所を見つけるために、前記記憶されたデータを検索させ、前記１つ以上の下位レベルのエンティティを提示させ、前記１つ以上の下位レベルのエンティティの選択を可能にさせ、前記下位レベルのエンティティのうちの選択された１つのエンティティを第２のコンピュータ支援設計モデルに組み込ませる。
【００１９】
ある実施形態では、本発明の方法またはシステムは、コンピュータ支援設計コンポーネントを自動的に特定する前記プロセス中に、コンポーネントの種類を区別する。フィルタ手段が、前記コンポーネントの種類に従って、前記再利用可能なＣＡＤエンティティの前記グラフィック画像をフィルタリングつまり選別する。この後、前記再利用可能なＣＡＤエンティティのうちの前記フィルタリングされたグラフィック画像が表示可能となる。コンポーネントの種類、すなわちコンポーネントのタイプには、カットフィーチャ、押し出しフィーチャ、スケッチブロック、図面ビューおよびレイヤが含まれる。
【００２０】
本発明の１つ以上の実施形態の詳細は、添付の図面、および以下に続く説明において示す。本発明の他の特徴、目的および利点は、後述の説明、図面および特許請求の範囲から明らかとなるであろう。
【００２１】
上記内容は、添付図面で示されている本発明の実施形態の例に関する以下のより具体的な説明から明らかとなるであろう。なお、同一の参照符号は異なる図面であっても同一部品を指している。これら図面は必ずしも縮尺どおりではなく、代わりに、本発明の実施形態を説明することに重点が置かれている。
【図面の簡単な説明】
【００２２】
【図１】本発明の一実施形態における、コンピュータ作成（ＣＧ）モデルと、ウィンドウ内に表示されたユーザインターフェースのフィーチャ管理部（feature manager portion）とを示す図である。
【図２】ＣＧモデルと、図１のＣＧモデルおよびそのＣＧモデルのフィーチャが表示された本発明のユーザインターフェースとを示す図である。
【図３】ＣＧモデルと本発明のユーザインターフェースとを示す図である。
【図４】図３のＣＧモデルと、図１に示されたＣＧモデルからのフィーチャが表示された本発明のユーザインターフェースとを示す図である。
【図５】図３のＣＧモデルと、図１に示されたＣＧモデルからのスケッチエンティティが表示された本発明のユーザインターフェースとを示す図である。
【図６】本発明のユーザインターフェースと、検索結果に適用されるフィルタとを示す図である。
【図７】モデルのＣＧ図面と、図面に含まれる設計エンティティが表示された本発明のユーザインターフェースとを示す図である。
【図８】本発明の一実施形態における、コンポーネント間のデータフローを示す概略図である。
【図９】本発明の実施形態が実装されるコンピュータシステムを示す概略図である。
【発明を実施するための形態】
【００２３】
本発明の例示的実施形態を以下に説明する。
【００２４】
本発明は、あらゆる経験レベルの設計技術者が設計データを容易に再利用できるようにする。再利用可能な設計データは、例えば、曲線のような下位レベルの設計構成単位（design construct）であっても、またはサブアセンブリのような上位レベルの設計構成単位であってもよい。再利用可能な設計データは、また、例えば、設計プロパティ、マテリアル（オブジェクトなどの質感設定を行うデータの総称）表現のようなグラフィック属性、ビットマップ（例えば、企業のロゴ）、またはアノテーション（３次元の空間上でモデルに直接作成、編集、表示ができるシンボル、コメント、寸法などの情報）である。本発明は、設計ドキュメント（例えば、パーツファイル、アセンブリファイルまたは図面ファイル）を分解することにより、再利用可能な設計データを特定する。分解された設計ドキュメントから特定された設計データを抽出し、この抽出された設計データを検索可能なメモリ内に管理することにより、設計データは新しいデザインに容易に組み込まれることができる。
【００２５】
図１に、コンピュータモニタ上に表示されたウィンドウ１０２を示す。ウィンドウ１０２は、コンピュータ化されたモデリングシステムが実行するモデリングソフトウェアによって作成される。コンピュータ化されたモデリングシステムの例は、図８および図９を参照して後述する。ウィンドウ１０２は、コンピュータで作成された（ＣＧ）従来のウィンドウであり、従来の市販されているソフトウェアプログラミングツール、例えば、米国ワシントン州レドモンドのMicrosoft Corporation社から入手可能なソフトウェアプログラミングツールを用いて当業者がプログラムできる。
【００２６】
ＣＧの３次元モデル１０４は、ウィンドウ１０２のモデリング部１０６内に表示される。数多くある設計要素のうち、モデル１０４は押し出しカット（押し出し切抜き形状）１１０を含む。本発明の実現形態は、また、ＦｅａｔｕｒｅＭａｎａｇｅｒ（登録商標）ウィンドウパネル１０８のような他のウィンドウ領域を有してもよい。ウィンドウパネル１０８には、公開されているコンポーネント、アセンブリまたは図面の構造が一覧で示されており、これは、３次元モデル１０４および３次元モデル１０４のコンポーネントを設計技術者が視覚化および操作するのに役立つ。ＦｅａｔｕｒｅＭａｎａｇｅｒウィンドウパネル１０８は、フィーチャの階層的な集合としてフィーチャ履歴を設計技術者に示してもよい。設計技術者は、ＦｅａｔｕｒｅＭａｎａｇｅｒウィンドウパネル１０８内のフィーチャの名前、またはフィーチャを示すアイコンを選択することにより、フィーチャをハイライト（強調表示）できる。Hirschtickらに発行された米国特許第5,815,154号明細書には、フィーチャの階層的な集合を、ユーザがグラフィックを用いて操作することでモデルを変更するシステムが開示されている。
【００２７】
図２では、オブジェクトの３次元モデル２０２がウィンドウ１０２内に表示されている。オブジェクトのモデル２０２は、新しいモデルの基礎として用いられる。特定の押し出しカットである過去に設計されたＣＡＤ要素を再利用するために、設計技術者は、検索ウィンドウ２０６内にその押し出しカットの名前（この場合、”cut-extrude1”）を入力することで当該押し出しカットを検索してもよい。検索の結果は、検索結果パネル２０４内にサムネイル画像として表示される。図２の検索結果パネル２０４内に示されているように、「Cut-Extrude 1」という名前のフィーチャと、この名前のフィーチャを含む、図１に示されたモデル１０４とが、検索結果パネル２０４内に表示される。この検索結果パネル２０４は、２つのアイテム、すなわちカットフィーチャおよびこのカットを含むドキュメントが発見されたことを設計技術者に知らせている。
【００２８】
図３に示すように、「bracket.SLDPRT」という名前のファイルドキュメントが検索されると、検索結果パネル２０４はモデル１０４（図１）の多数のフィーチャのサムネイル画像を表示する。再利用のために、サムネイル画像が、マウスを用いてウィンドウ１０２のモデリング部１０６にドラッグアンドドロップされてもよい。検索結果パネル２０４が利用可能なスペースに全ての画像を収容できない場合、設計技術者は、検索処理によって返された、つまり検索結果である、他のＣＡＤ要素を、スクロールバー３０２を用いて見ることができる。さらに、検索結果をページに配置して、検索結果パネル２０４内に表示したい１つのページを設計技術者が選択できるようにした実施形態であってもよい。また、ページはＣＡＤ要素の種類に従って配置されてもよい。例えば、１つのページはフィーチャを表示し、別のページはスケッチエンティティを表示し、さらに別のページはアノテーションを表示するものとしてもよい。本発明は、さらに、図３のウィンドウ１０２の下部分に示されているようなタグウィンドウ３０４も表示してもよい。タグウィンドウ３０４によって、何らかの意味を有するテキスト（文章）を設計技術者はＣＡＤ要素に関連付けることができる。例えば、「Cut-Extrude 1」のフィーチャ３０６に、「standard connector（標準的なコネクタ）」というテキストのタグを付けてもよい。タグウィンドウ３０４に入力されたテキストは、将来的に、ＣＡＤ要素を検索する際の検索指定に利用されてもよい。
【００２９】
図４および図５に、本発明の実施形態に従った再利用可能である追加のＣＡＤエンティティを組み込んだ後のオブジェクトのモデル２０２を示す。前記追加のＣＡＤエンティティとは、シリンダ４０２、押し出しカット４０６、およびスケッチエンティティ４１０である。図４において、設計技術者がシリンダに対応する画像４０４および押し出しカットに対応する画像４０８を選択し、検索結果パネル２０４からそれぞれドラッグアンドドロップした後に、シリンダ４０２および押し出しカット４０６がオブジェクトのモデル２０２に組み込まれている。図４の検索結果パネル２０４内に表示されたＣＡＤエンティティの画像は、あるパーツを定義した、「bracket.SLDPRT」という名前の設計ドキュメント（すなわち、ファイル）の検索結果を表す。検索ウィンドウ２０６内の表示から明らかなように、「bracket.SLDPRT」というテキストが検索ウィンドウ２０６に入力されて検索プロセスが開始されたことが分かる。
【００３０】
スケッチエンティティ４１０に対応するＣＡＤエンティティは図４に示されていない。その理由は、図５に示すように、このスケッチエンティティの対応する画像５０２は検索結果パネル２０４の別のページに表示されるからである。本発明は、分解プロセスの間、ＣＡＤエンティティについての情報を自動的に収集する。次に、この情報は、検索結果パネル２０４内に表示される結果をフィルタリングして分類するのに用いられる。再び図４を参照すると、フィルタは、「bracket.SLDPRT」ドキュメント内に３つの種類のＣＡＤエンティティ、すなわち、Sketch（スケッチ）、Extrusion（押し出し形状）およびCut（切抜き）を特定したことが分かる。特定されたエンティティの各種類に側方に、検索結果の各エンティティの種類の個数を示す数字がそれぞれ表示されている。検索結果をさらにフィルタリングする場合、設計技術者は、検索結果パネル２０４の上部領域４１２示されたフィルタ名を選択する。設計技術者が上部領域４１２のテキスト「Sketch」を選択すると、「bracket.SLDPRT」ドキュメントに含まれるスケッチが、図５のように表示される。スケッチエンティティ４１０に対応する画像５０２が、図５に示された検索結果パネル２０４から選択およびドラッグされて面５０６にドロップされた後に、スケッチエンティティ４１０はオブジェクト２０２のモデルに組み込まれている。また、図５の検索ウィンドウ２０６は、「Kind: Sketch（種類：スケッチ）」というテキストを含むことで、検索状況の全体を反映している。この「Kind: Sketch」というテキストは、検索結果パネル２０４内に表示されているＣＡＤエンティティの種類がスケッチエンティティであることを示している。検索ウィンドウ２０６は、本質的に、ユーザインターフェースのファイルブラウザと、ファイルブラウジング操作の結果に適用されるフィルタ５０４との組合せである。
【００３１】
図６に、検索結果パネル２０４を示す。検索結果パネル２０４の上方に表示された検索ウィンドウ２０６は、Ｅディスクドライブに存在する「data」という名前のフォルダが検索されたことを示している。検索結果を把握し易くするために、本発明は、異種のファイルをグループ分けし、これらのグループを設計技術者に提示する。Document Type（ドキュメントの種類）リスト６０２は、ＳｏｌｉｄＷｏｒｋｓの１６８個のパーツドキュメントを含む、数種類のドキュメントが見つかったことを示している。Kind（種別）リスト６０４は、Ｅドライブのデータフォルダに１９９個のドキュメントと５個のフォルダとが含まれていることを示す。検索結果パネル２０４の下部分には、ＳｏｌｉｄＷｏｒｋｓのパーツドキュメントのサムネイル画像６０６が表示されている。各サムネイル画像の側方にはファイル名も表示されている。
【００３２】
本発明の一実施形態は、設計技術者が検索結果パネル２０４内のサムネイル画像または対応するファイル名をポインティングした状態でマウスボタンをダブルクリックすると、フォルダまたはファイル内の検索を自動的に実行する。フォルダをダブルクリックするとフォルダが検索され、一方、ファイル名または画像をダブルクリックすると、そのファイルが検索される。その後、この検索の結果が検索結果パネル２０４内に表示される。この操作のパターンは、分解可能な他のエンティティを含む全てのエンティティについて実行でき、これにより、設計技術者はＣＡＤファイルに含まれる基礎的なエンティティにまで掘り下げ、つまりたどり着くことができる。例えば、パーツドキュメントであるファイル名または画像をダブルクリックすると、このパーツドキュメントが検索され、その検索結果が、検索結果パネル２０４内にサムネイルスケッチ（縮小画像のスケッチ）および／またはファイル名として表示される。同様に、パーツドキュメント内で定義されているフィーチャをダブルクリックすると、このフィーチャが検索され、当該フィーチャを構築するのに用いられているスケッチまたはブロック（図形要素を一まとめにしたもの）のサムネイル画像が、検索結果パネル２０４内に表示される。
【００３３】
図７に示すように、本発明は、３次元のパーツファイルのみでなく、２次元の図面ファイルを分解することも可能であり、これらを新しい２次元の図面または３次元モデルに再利用することができる。図７に示されたウィンドウ１０２は、２次元の図面７０２と検索結果パネル２０４とを含む。２次元のＣＡＤエンティティの画像のみでなく、これらエンティティを定義するファイルの名前も、検索結果パネル２０４内に表示される。
【００３４】
図８は、本発明の一実施形態によって実現されるフレームワーク８００の処理を示す図である。フレームワーク８００は、設計ドキュメントに記憶されたデザインを再利用可能なＣＡＤエンティティに自動的に変換することによって、設計データの再利用を可能にする。デザインを再利用可能なＣＡＤエンティティに変換するのに、ユーザの介入は不要である。フレームワーク８００の２つのプロセスが、モデリングシステムのバックグラウンドで実行される。バックグラウンドプロセスの１つは、検索・インデックスサービス８０２である。検索・インデックスサービス８０２は、１つ以上の設計ドキュメント８１２（ローカルディスク、ネットワーク上のディスクまたはキャッシュメモリに存在する）を読み出し、検索サービステーブル８１４を作成する。この検索サービステーブル８１４は、再利用可能な設計データの検索による取出しを最適化するリンクを提供する。このリンクは、設計ドキュメント８１２にテキスト文字列を関連付けるものである。ＭｉｃｒｏｓｏｆｔＷｉｎｄｏｗｓ Ｄｅｓｋｔｏｐ Ｓｅａｒｃｈのような市販のソフトウェアを、検索・インデックスサービス８０２に使用してもよい。
【００３５】
フレームワーク８００の第２のバックグラウンドプロセスは、分解サービス８０４である。分解サービス８０４の第１のコンポーネント８０６は、設計データの詳細な分析を実行し、論理データセットであるＣＡＤエンティティを特定することにより、１つ以上の設計ドキュメント８１２を分解する。ＣＡＤエンティティとは特定のＣＡＤ要素のことをいい、例として、フィーチャ、プロファイル（３Ｄ図形の断面形状）（スケッチ（３Ｄ図形を作成する基礎となる２Ｄ絵画図形）でもよい）、内部ファイルプロパティ（例えば、テクスチャ）、ユーザが作成したテーブル、マテリアル（オブジェクトなどの質感設定を行うデータの総称）、またはアノテーションなどが挙げられるが、これらに限定されない。さらに、ＣＡＤエンティティとして、例えば、２次元の図面ドキュメントにおける、一連の接続された線、またはスケッチブロックが挙げられる。
【００３６】
設計データの詳細な分析には数多くの技法を用いることができ、使用される技法は、ドキュメントのフォーマットによって決まる。例えば、既知のファイルフォーマットについて、ＣＡＤ要素を特定する特定のヘッダを採用する技法がある。別の技法として、ＣＡＤのフィーチャを特定するためにフィーチャ認識手法を利用する技法があり、この方法は、未知のファイルフォーマットを分解するのに役立つ。さらなる他の技法は、テーブル、アノテーションおよび寸法の特定を促進するために、データの種類を確認する。２次元のＣＡＤ要素を特定するために、共通の終点を有する各種線分を検出することでＣＡＤエンティティが明らかになる。さらに、Baranらに発行された米国特許第6,603,486号明細書に記載されているような方法を用いて図面ビューを発見してもよい。また、レイヤおよびブロックなどの２次元のＣＡＤ要素が、ＯｐｅｎＤｅｓｉｇｎ Ａｌｌｉａｎｃｅ団体を通して入手可能なソフトウェアライブラリを用いて特定されてもよい。
【００３７】
分解サービス８０４の第２のコンポーネント８０８は、特定された各ＣＡＤエンティティの実際または仮の抽出を実行する。ＣＡＤエンティティの実際の抽出の際には各ＣＡＤエンティティの複製が作成されるが、仮の抽出の際には設計データは複製されない。正確には、各ＣＡＤエンティティの位置（格納場所）へのポインタが生成され、対応するＣＡＤエンティティのバイトサイズの指定とともにキャッシュメモリに記憶される。
【００３８】
分解サービス８０４の第３のコンポーネント８１０は、実際に抽出されたＣＡＤエンティティ、またはポインタおよび付随するサイズデータを、分解サービステーブル８１６にキャッシュする。分解サービステーブル８１６は、ディスクメモリまたは非永久メモリ（揮発性メモリ）に作成されてもよい。分解サービステーブル８１６は、さらに、各ＣＡＤエンティティを特定する他の情報、例えば、特定のＣＡＤエンティティが抽出されたファイルおよび親子リレーションシップなどの情報を記憶する。分解サービステーブル８１６は、設計技術者がモデリング検索処理８１８を開始する際にアクセスされ照会（クエリ）される。
【００３９】
設計技術者は、ユーザの検索条件をモデリング検索処理部８１８に提供することで検索を開始する。モデリング検索処理は、検索条件で示された１つ以上のフォルダ、ファイルまたはＣＡＤ要素の場所を見つける。モデリング検索処理部８１８は、検索サービステーブル８１４においてテキスト（例えば、パス名、タグまたはフィーチャの名前が挙げられるが、これらに限定されない）を発見し、検索条件に合致するファイル名を取り出す。次に、モデリング検索処理部８１８は、その名前のファイルに属するエンティティまたはそのポインタ８２０の場所を見つけるために、検索サービステーブル８１４から取り出されたファイル名を分解サービステーブル８１６で検索する。検索処理部８１８が所望のＣＡＤエンティティ８２０の場所を見つけた後、このＣＡＤエンティティは、検索結果８２２として設計技術者に提示される。例えば、図２〜図７に関して上述した検索結果パネル２０４内に表示される。
【００４０】
検索結果８２２はグラフィック表示される。検索結果８２２は、特に、サムネイル画像として表示されてもよい。一実施形態において、フィーチャである検索結果は、当該フィーチャが属するパーツ全体をそのフィーチャ以外は透明状態にして表示される。さらに、フィーチャを強調表示するために、異なる色がそのフィーチャに割り当てられてもよい。次に、フィーチャおよび当該フィーチャの近接した周辺部分がサムネイル画像に割り当てられた領域内に収まるように、パーツのサイズが拡大または縮小される。
【００４１】
前述したように、ＣＡＤエンティティ、またはＣＡＤエンティティに関連付けられたファイル名をダブルクリックすることにより、新たな検索が開始する。フレームワーク８００において、モデリング検索処理部８１８は、分解サービステーブル８１６から情報をフェッチ（取得）するだけで別の一式のエンティティまたはポインタ８２０を生成する。この場合、検索サービステーブル８１４から情報を取り出す必要はない。各ＣＡＤエンティティについての別の特定情報（例えば、特定のＣＡＤエンティティが抽出されたファイルおよび親子リレーションシップ）が、そのＣＡＤエンティティに属する下位レベルのエンティティを判別するのに利用される。
【００４２】
検索結果８２２として表示されたＣＡＤエンティティは、選択され、新しいモデルまたは既存のモデルに組み込まれる。これを達成する直感的な方法では、コンピュータ化されたモデリングシステムにより、設計技術者がＣＡＤエンティティを選択してドラッグアンドドロップすることで当該ＣＡＤエンティティをモデルに組み込む。選択されたＣＡＤエンティティが抽出されたＣＡＤエンティティの複製である場合、この選択されたＣＡＤエンティティは単にモデルに組み込まれる。選択されたＣＡＤエンティティが抽出されたＣＡＤエンティティへのポインタである場合、抽出されたＣＡＤエンティティの場所を見つけ、指定された量のデータ（例えば、バイトサイズによって決まる）を抽出し、抽出されたＣＡＤエンティティの複製を作成することによって、選択されたＣＡＤエンティティが生成されてモデルに組み込まれる。
【００４３】
図９に、コンピュータ処理されるモデリングシステム９００を示す。このモデリングシステム９００は、中央演算処理装置（ＣＰＵ）９０２、コンピュータモニタ９０４、キーボード入力装置９０６、マウス入力装置９０８、および記憶装置９１０を備える。ＣＰＵ９０２、コンピュータモニタ９０４、キーボード９０６、マウス９０８、および記憶装置９１０は、一般的に入手可能なコンピュータハードウェア装置を含む。例えば、ＣＰＵ９０２は、Ｐｅｎｔｉｕｍプロセッサを有する。マウス９０８は、従来の左側ボタンおよび右側ボタンを有するものであってもよく、ユーザは、これらのボタンを押すことにより、ＣＰＵ９０２によって実行中のソフトウェアプログラムにコマンドを発行することができる。コンピュータ化されたモデリングシステム９００は、マウス９０８の代わり、またはマウス９０８に加えて、トラックボールやタッチパッド（touch-sensitive pad）などのポインティングデバイスを有してもよく、またはポインティングデバイスおよびキーボード９０６に組み込まれたボタンを有してもよい。当業者であれば、別の入手可能なポインティングデバイスを用いても、本明細書でマウス装置に関連して説明した効果と同一の効果が得られることは理解されるであろう。以下の説明から明らかになるように、他の適切なコンピュータ用ハードウェアプラットフォームも使用できる。好ましくは、このようなコンピュータ用ハードウェアプラットフォームは、ＭｉｃｒｏｓｏｆｔＷｉｎｄｏｗｓ ＮＴ、Ｗｉｎｄｏｗｓ ９８、Ｗｉｎｄｏｗｓ ２０００、Ｗｉｎｄｏｗｓ ＸＰ、Ｗｉｎｄｏｗｓ Ｍｅ、ＵＮＩＸ、Ｌｉｎｕｘ、またはＭＡＣ ＯＳオペレーティングシステムを動作できる。
【００４４】
さらなる中央演算処理装置（ＣＰＵ）およびハードウェア装置（例えば、ラピッドプロトタイプ装置、ビデオ装置およびプリンタ装置）が、コンピュータ処理されるモデリングシステム９００に含まれてもよい。さらに、コンピュータ処理されるモデリングシステム９００は、ネットワークハードウェアおよびソフトウェアを備えてもよい。これにより、ハードウェアプラットフォーム９１２への通信が可能になり、数多くあるコンピュータ構成品の中でも特に、ＣＰＵおよび記憶システムを備える複数のコンピュータシステム間の通信が容易になる。
【００４５】
本発明のコンピュータ支援モデリング（ＣＡＭ）ソフトウェアは記憶装置９１０に記憶されてもよく、ＣＰＵ９０２にロードされ当該ＣＰＵ９０２によって実行される。このモデリングソフトウェアによってユーザは３次元モデルを作成および変更でき、かつ本明細書に記載された本発明の構成を実現することができる。ＣＰＵ９０２は、３次元モデルおよび前述した他の構成を表示するためにコンピュータモニタ９０４を使用する。キーボード９０６およびマウス９０８を用いて、ユーザは３次元モデルに関連したデータを入力および変更できる。ＣＰＵ９０２は、キーボード９０６およびマウス９０８からの入力を受け付け、これを処理する。ＣＰＵ９０２は、３次元モデルに関連したデータとともに前記入力を処理し、モデリングソフトウェアの命令に応じて、コンピュータモニタ９０４上の表示に対して相応かつ適切な変更を行う。一実施形態において、このモデリングソフトウェアは、１つ以上のソリッドボディ（中実のボディ）およびサーフェスボディ（中空のボディ）で構成される３次元モデルを構築するのに用いられるソリッドモデリングシステムに基づく。
【００４６】
本発明は、デジタル電子回路、またはコンピュータハードウェア、コンピュータファームウェア、コンピュータソフトウェア、もしくはこれらの組み合わせによって実現されてもよい。本発明の装置は、プログラマブルなプロセッサによって実行可能な、機械読み取り可能な記憶装置に有形に埋め込まれたコンピュータプログラム製品として実現されてもよい。本発明の方法の工程は、入力データを処理して出力を生成するように命令プログラムを実行することで本発明の機能を実施する、プログラマブルなプロセッサによって行われてもよい。有利な実施形態では、本発明は、少なくとも１つのプログラマブルなプロセッサを備えるプログラマブルなシステムで実行可能な、１つ以上のコンピュータプログラムで実現されてもよい。このプログラマブルなプロセッサは、データ記憶システム、少なくとも１つの入力装置および少なくとも１つの出力装置からデータおよび命令を受信し、これらの装置にデータおよび命令を伝送する。各コンピュータプログラムは、高級言語またはオブジェクト指向プログラミング言語で書かれたものであってもよく、もし必要であれば、アセンブリ言語または機械言語で書かれたものであってもよい。いずれにせよ、その言語は、コンパイラ言語またはインタープリタ言語であってもよい。適切なプロセッサの例には、汎用マイクロプロセッサおよび専用マイクロプロセッサの両方が含まれるが、これらに限定されない。一般的に、プロセッサは、読み出し専用メモリ（ＲＯＭ）および／またはランダムアクセスメモリ（ＲＡＭ）から命令およびデータを受け取る。実施形態によっては、命令およびデータはグローバルネットワークを介してダウンロードされる。コンピュータプログラムの命令およびデータを有形で具現化するのに適した記憶装置には、あらゆる形態の不揮発性メモリ、例えば、ＥＰＲＯＭ（紫外線消去型プログラム可能読み出し専用メモリ）、ＥＥＰＲＯＭ（電気的消去型プログラム可能読み出し専用メモリ）およびフラッシュメモリ装置などの半導体メモリ装置、内蔵ハードディスクおよびリムーバブルディスクなどの磁気ディスク、光磁気ディスク（ＭＯディスク）、ならびにＣＤ−ＲＯＭディスクが含まれるが、これらに限定されない。これら記憶装置はいずれも、カスタムＡＳＩＣ（特定用途集積回路）によって補完されてもよく、またはカスタムＡＳＩＣに組み込まれてもよい。
【００４７】
本発明の利点として、再利用可能な設計データにより、編成の時間、資金および機会費用を低減できることが挙げられる。変更のない多くのフィーチャやパーツなどのＣＡＤコンポーネントを設計技術者は再度作成する必要がないため、製品サイクル期間を短縮できる。さらに、製品に商標を付けるフィーチャ、例えば、製品ライン全体において認識可能な特定の曲線およびプロファイル（形状）などが、再利用のために取り込まれてもよい。また、ＣＡＤデータベースは企業にとって多額の投資であるが、このデータベース内のアイテムを再利用可能にすることにより、企業の投資に対する利益が増加する。
【００４８】
本発明のさらなる別の利点として、データを容易に共有できる手段を提供することにより、設計技術者間の連携性が向上することが挙げられる。最近入社したばかりの設計技術者であっても、いかに別の設計技術者が過去のデザインを作成したのか全く知らなくても大量の設計データを対象に検索することができる。本発明により、設計技術者は、自身が以前に作成したわけではないファイルから、適切なデータを見つけ、これを理解し、抽出することができる。
【００４９】
本発明の他の利点には、設計技術者がＣＡＤパーツを見つけ、これら１つ以上のＣＡＤパーツに含まれる設計データを、簡単に再利用できるかたちで提示できること、および設計技術者が、同一のモデルまたは将来のモデルで後に使用できそうな設計データを前もって加工する必要なく、設計データを手軽に再利用できることが含まれる。
【００５０】
本発明の実施形態を多数説明したが、本発明の精神および範囲から逸脱することなく、様々な変更が可能なことは理解されるであろう。例えば、実施形態によっては、処理の行われる順序が変化してもよい。さらに、実施形態の要件に応じて、本明細書で説明した特定の処理を組み合わせて実施するか、特定の処理を削除するか、特定の処理を加えるか、または特定の処理の順番を変えてもよい。マウスに関して説明した特定のユーザインターフェース動作（例えば、クリック、ドラッグおよびドロップなど）は例示に過ぎず、これらに限定されない。モデルまたは設計データを選択、移動または配置するユーザインターフェース動作には、他の様式も使用できる。さらに、一実施形態では、抽出されるＣＡＤエンティティの数を制限するために、分解プロセスにフィルタを適用する。
【００５１】
本発明を、本発明の実施形態の例を参照して具体的に示し、説明してきたが、当業者であれば、添付の特許請求項に包含される本発明の範囲から逸脱することなく、形態および細部において様々な変更が可能なことが理解されよう。
【符号の説明】
【００５２】
８０４  分解工程
８０６  分析工程
８１０  記憶工程
８１８  照会工程
８２２  コンピュータ支援設計モデルの構築工程
【図１】
0005508860.tif 000002
【図２】
0005508860.tif 000003
【図３】
0005508860.tif 000004
【図４】
0005508860.tif 000005
【図５】
0005508860.tif 000006
【図６】
0005508860.tif 000007
【図７】
0005508860.tif 000008
【図８】
0005508860.tif 000009
【図９】
0005508860.tif 000010