(57)【要約】【課題】本発明は特に、３Ｄモデル化オブジェクトを設計するためのコンピュータ実行方法に関する。【解決手段】本発明の３Ｄモデル化オブジェクトは、データベースに格納される。本発明の方法は、−  複数のフィーチャを有する３Ｄモデル化オブジェクトを提供するステップと、−  ユーザアクションのあったときに、第１のフィーチャの第１のジオメトリを選択するステップと、−  選択された第１のジオメトリに従って少なくとも１つの仕様をデータベースで問い合わせて検索するステップと、−  少なくとも１つの第２のフィーチャを選択するステップと、−  選択された少なくとも１つの第２のフィーチャに、データベースから検索された上記少なくとも１つの仕様を適用するステップとを含む。【選択図】図１
2015130163.tif 000002
【特許請求の範囲】
【請求項１】
三次元モデル化オブジェクトを設計するためのコンピュータ実行方法であって、前記三次元モデル化オブジェクトは、データベースに格納され、前記コンピュータ実行方法が、
−  複数のフィーチャを有する前記三次元モデル化オブジェクトを提供するステップ（Ｓ１０）と、
−  ユーザアクションのあったときに、第１のフィーチャの第１のジオメトリを選択するステップ（Ｓ２０）と、
−  前記選択された第１のジオメトリに従って少なくとも１つの仕様を前記データベースで問い合わせて検索するステップ（Ｓ３０）と、
−  少なくとも１つの第２のフィーチャを選択するステップ（Ｓ４０）と、
−  前記選択された少なくとも１つの第２のフィーチャに、前記データベースから検索された前記少なくとも１つの仕様を適用するステップと
を含むことを特徴とするコンピュータ実行方法。
【請求項２】
前記データベースで問い合わせ、検索するステップ（Ｓ３０）は、
−  前記選択された第１のジオメトリが属する前記第１のフィーチャを識別するステップ（Ｓ３００）と、
−  前記第１のフィーチャが構築されたプロファイルを識別するステップ（Ｓ３１０）と、
−  前記選択されたジオメトリが生じる前記識別されたプロファイルの少なくとも１つのパーツを見つけるステップ（Ｓ３４０）と、
−  前記データベースで見つけられた前記少なくとも１つのパーツと関連する少なくとも１つの仕様を見つけるステップと
を含むことを特徴とする請求項１に記載のコンピュータ実行方法。
【請求項３】
プロファイルを識別した後に、
−  前記プロファイルを形成するパーツを識別するステップ（Ｓ３２０）と、
−  前記プロファイルの各パーツにインデックスを作成するステップ（Ｓ３５０）と
をさらに含み、
前記少なくとも１つの仕様を見つけるステップ（Ｓ３５０）は、前記選択されたジオメトリが生じる前記プロファイルの前記パーツと関連する前記インデックスに従って実行される
ことを特徴とする請求項２に記載のコンピュータ実行方法。
【請求項４】
前記少なくとも１つの第２のフィーチャを選択するステップは、前記第１のフィーチャと同様の少なくとも１つの第２のフィーチャを選択するステップを含むことを特徴とする請求項１乃至３のいずれか１項に記載のコンピュータ実行方法。
【請求項５】
前記第１のフィーチャおよび第２のフィーチャは、ともに同じタイプであるとき、同様であるとして検出されることを特徴とする請求項４に記載のコンピュータ実行方法。
【請求項６】
−  ユーザアクションのあったときに、前記選択された少なくとも１つの第２のフィーチャに適用される追加の仕様を選択するステップ（Ｓ６０）
をさらに含み、
前記適用するステップが、前記選択された少なくとも１つの第２のフィーチャに、前記データベースから検索された前記少なくとも１つの仕様および前記追加の仕様を適用するステップ（Ｓ７０）を含む
ことを特徴とする請求項１乃至５のいずれか１項に記載のコンピュータ実行方法。
【請求項７】
前記追加の仕様は、前記第１のフィーチャで識別された（Ｓ５０）仕様のセットの中から選択されることを特徴とする請求項６に記載のコンピュータ実行方法。
【請求項８】
請求項１乃至７のいずれか１項に記載の方法を行うための命令を含むことを特徴とするコンピュータプログラム。
【請求項９】
請求項８に記載のコンピュータプログラムを記録していることを特徴とするコンピュータ可読記憶媒体。
【請求項１０】
メモリおよびグラフィカルユーザインタフェースに結合されたプロセッサを含み、前記メモリは請求項８に記載のコンピュータプログラムを記録していることを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータプログラムおよびシステムの分野に関し、より詳細には、三次元モデル化オブジェクトを設計するための方法、システム、およびプログラムに関する。
【背景技術】
【０００２】
オブジェクトの設計、工学技術、および製造に対して、いくつかのシステムおよびプログラムが市場で提供されている。ＣＡＤは、コンピュータ支援設計（Computer-Aided Design）の頭字語であり、例えばＣＡＤは、オブジェクトを設計するためのソフトウェアソリューションに関連する。ＣＡＥは、コンピュータ支援工学（Computer-Aided Engineering）の頭字語であり、例えばＣＡＥは、将来の製品の物理的挙動をシミュレートするためのソフトウェアソリューションに関連する。ＣＡＭは、コンピュータ支援製造（Computer-Aided Manufacturing）の頭字語であり、例えばＣＡＭは、製造工程およびオペレーションを定義するためのソフトウェアソリューションに関連する。このようなコンピュータ支援設計システムにおいて、グラフィカルユーザインタフェースは、技法の効率に関して重要な役割を果たす。こうした技法は、製品ライフサイクル管理（ＰＬＭ）システム内に組み込まれることが可能である。ＰＬＭは、拡大企業（extended enterprise）の概念にわたって、会社が製品データを共有し、共通の工程を適用し、構想から耐用期間の満了まで、製品の開発のための企業知識を活用するのに役立つビジネス戦略を指す。
【０００３】
（ＣＡＴＩＡ、ＥＮＯＶＩＡ、およびＤＥＬＭＩＡの商標で）ダッソーシステムズ（Dassault Systemes）によって提供されるＰＬＭソリューションは、製品工学知識を整理するエンジニアリングハブ、製造工学知識を管理する製造ハブ、ならびにエンジニアリングハブと製造ハブの両方への企業統合および接続を可能にする企業ハブを提供する。システムは総合して、製品、プロセス、リソースを結び付けて、動的な、知識ベースの製品作成および決定支援を可能にし、最適な製品定義、製造準備、生産、およびサービスを推進するオープンオブジェクトモデルをもたらす。
【０００４】
設計者が使用するＣＡＤモデリングソフトウェアが、設計者の設計意図を暗黙的にまたは明示的に取り込む。設計意図という用語は、設計者のプロジェクトの目的または要件を意味する。設計者は、設計意図を明示的に取り込むためのメカニズムとしてフィーチャ仕様（feature specifications）および拘束事項を提供する。フィーチャの仕様は、フィーチャの記述である。
【０００５】
実際には、設計者が、モデル化オブジェクトを設計する時間を節約するために、いくつかのフィーチャに同様の設計意図を使用することを望む。さらに、設計者は、あるフィーチャからの設計意図を再利用し、他のフィーチャに同様の設計意図を有することを望むことがある。設計意図の再利用は、詳細には、設計者が最初の設計意図に変更を行って、これらの変更を他のフィーチャに伝播させたいと望むとき、より重要である。
【０００６】
一部の知られているＣＡＤソフトウェアソリューションは、フィーチャのコピーおよび貼り付けを可能にすること、またはフィーチャの仕様を差し替えることによって、作成されたジオメトリの再利用を可能にする。しかしながら、これらは、フィーチャまたはユーザ選択の子要素に基づいて設計意図を理解するには不十分である。言い換えれば、ＣＡＤソフトウェアは設計者が再利用したいと望む設計意図を、その設計意図を取り込む表現を設計者が選択することから理解することを、設計者が認識することができる。
【０００７】
いくつかのフィーチャにわたって同様の設計変更を行うとき、現在、設計者は、すべてのフィーチャにおいて個々に変更を行う必要がある。数学用語で説明するために、ユーザが１つのフィーチャに設計変更を行うためにｎステップを必要とし、他のｋ個のフィーチャにおいてこのような設計変更を行いたいと思う場合、本質的にユーザは、すべての設計変更を行うためにｎ×ｋステップを必要とする。
【０００８】
さらに、変更要求の管理は、いくつかの参照ジオメトリに関してジオメトリの複製（edition）を必要とする。この参照ジオメトリは、必ずしも、幾何学的集合における表面（Surface）、平面（Plane）、軸（Axis）など独立した参照ジオメトリではなく、パッドの上端、穴の底部、穴のタイプなど、より暗示的なジオメトリである。
【０００９】
現在、知られているＣＡＤソフトウェアソリューションのどれも、ユーザのジオメトリ選択に基づいた設計意図を推論することを考慮に入れていない。言い換えれば、現在、ユーザの選択に基づいて、設計者がフィーチャ仕様の粒度レベルで設計意図を再利用できるようにするメカニズムがない。
【００１０】
したがって、設計者は、設計者のフィーチャのセマンティクスを他のフィーチャにわたって再利用することができない。
【００１１】
この文脈において、フィーチャベースの三次元モデル化オブジェクトを設計するための改善された方法の必要性が依然として存在する。
【発明の概要】
【００１２】
したがって、三次元モデル化オブジェクトを設計するためのコンピュータ実行方法が提供され、この三次元（３Ｄ）モデル化オブジェクトは、データベースに格納される。この方法は、
−  複数のフィーチャを有する３Ｄモデル化オブジェクトを提供するステップと、
−  ユーザアクションのあったときに、第１のフィーチャの第１のジオメトリを選択するステップと、
−  選択された第１のジオメトリに従って少なくとも１つの仕様をデータベースで問い合わせて検索するステップと、
−  少なくとも１つの第２のフィーチャを選択するステップと、
−  選択された少なくとも１つの第２のフィーチャに、データベースから検索された上記少なくとも１つの仕様を適用するステップと
を含む。
【００１３】
この方法は、次のステップのうちの１または複数を含むことができる。すなわち、
−  データベースで問い合わせて検索するステップであって、
−  選択された第１のジオメトリが属する第１のフィーチャを識別すること、
−  第１のフィーチャが構築されたプロファイルを識別すること、
−  選択されたジオメトリが生じる、識別されたプロファイルの少なくとも１つのパーツを見つけること、および
−  データベースで見つけられた少なくとも１つのパーツと関連する少なくとも１つの仕様を見つけること
を含むステップ、
−  プロファイルを識別した後、
−  プロファイルを形成するパーツを識別すること、
−  プロファイルの各部分にインデックスを作成すること
を含み、
少なくとも１つの仕様を見つけることが、選択されたジオメトリが生じる、プロファイルのパーツと関連するインデックスに従って行われ、
−  少なくとも１つの第２のフィーチャを選択するステップが、第１のフィーチャに似ている少なくとも１つの第２のフィーチャを選択するステップを含み、
−  第１および第２のフィーチャが、ともに同じタイプであるとき、同様であるとして検出され、
−  ユーザアクションのあったときに、選択された少なくとも１つの第２のフィーチャに適用される追加の仕様を選択するステップであって、適用するステップが、選択された少なくとも１つの第２のフィーチャに、データベースから検索された上記少なくとも１つの仕様および追加の仕様を適用することを含み、
−  追加の仕様は、第１のフィーチャにおいて識別された仕様のセットの中から選択される、ステップである。
【００１４】
コンピュータプログラムがこの方法を行うための命令を含むことが、さらに提供される。
【００１５】
コンピュータ可読記憶媒体がそこにコンピュータプログラムを記録されることが、さらに提供される。
【００１６】
システムがメモリおよびグラフィカルユーザインタフェースに結合されたプロセッサを備え、メモリはそこにコンピュータプログラムが記録されていることが、さらに提供される。
【図面の簡単な説明】
【００１７】
次に、本発明の実施形態について、非限定的な例として、および添付の図面を参照して説明する。
【図１】本発明の方法の一例を示すフローチャートである。
【図２】図１の方法のステップＳ３０の一例を示すフローチャートである。
【図３】プロファイルベースの穴のフィーチャの一例を示す図である。
【図４】図３のプロファイルベースの穴のフィーチャのパーツおよびジオメトリの例を示す図である。
【図５】図３のプロファイルベースの穴のフィーチャのパーツおよびジオメトリの例を示す図である。
【図６】図３のプロファイルベースの穴のフィーチャのパーツおよびジオメトリの例を示す図である。
【図７】図３のプロファイルベースの穴のフィーチャのパーツおよびジオメトリの例を示す図である。
【図８】穴のタイプを推論された仕様とするフィーチャ仕様パネルの一例を示す図である。
【図９】本発明に従って３Ｄモデル化オブジェクトが設計されるＧＵＩのスクリーンショットを示す図である。
【図１０】本発明に従って３Ｄモデル化オブジェクトが設計されるＧＵＩのスクリーンショットを示す図である。
【図１１】本発明による方法を行うことができるＧＵＩの一例を示す図である。
【図１２】本発明による方法を行うためのコンピュータシステムの一例を示す図である。
【発明を実施するための形態】
【００１８】
図１のフローチャートを参照して、三次元（３Ｄ）モデル化オブジェクトを設計するためのコンピュータ実行方法を提案する。３Ｄモデル化オブジェクトは、データベースに格納される。この方法は、複数のフィーチャを有する３Ｄモデル化オブジェクトを提供することを含む。３Ｄモデル化オブジェクトは、したがって、フィーチャベースの３Ｄモデル化オブジェクトである。この方法はさらに、ユーザアクションのあったときに、第１のフィーチャの第１のジオメトリを選択することを含む。この方法はまた、選択された第１のジオメトリに従って少なくとも１つの仕様を、データベースで問い合わせることと、データベースで検索することとを含む。この方法は、少なくとも１つの第２のフィーチャを選択するステップをさらに含む。選択された第２のフィーチャは、第１のフィーチャと同様であることが可能である。次に、この方法は、選択された少なくとも１つの第２のフィーチャに、データベースから検索された上記少なくとも１つの仕様を適用することを含む。
【００１９】
このような方法が、設計意図を再利用する新しい方法として、ユーザ選択から設計意図を推論することによって、３Ｄモデル化オブジェクトの設計を改善する。フィーチャのジオメトリ（例えば、ジオメトリの視覚表現）のユーザ選択は、フィーチャと関連して、いくつかの設計意図を取り込む。言い換えると、（１または複数の）仕様の識別は、３Ｄモデル化オブジェクトのフィーチャのジオメトリのユーザ選択に従って行われる。したがって、セマンティクス（または（１もしくは複数の）仕様）が、３Ｄモデル化オブジェクトの他のフィーチャ上に取り込まれ、再利用される。これによりユーザは、より少ないステップでいくつかのフィーチャにユーザの設計意図を迅速に伝播させることができる。
【００２０】
この方法は、コンピュータで実行される。これは、方法のステップ（または実質的にはすべてのステップ）が、少なくとも１つのコンピュータ、または任意のシステムによって同様に実行されることを意味する。したがって、方法のステップは、場合により完全に自動的に、または半自動的にコンピュータによって行われる。例では、方法のステップの少なくとも一部をトリガすることは、ユーザ−コンピュータの対話により行われることが可能である。必要とされるユーザ−コンピュータ間の対話のレベルは、予測される自動性のレベルによって決まり、ユーザの希望を実行するための必要性とバランスをとることができる。例では、このレベルは、ユーザ定義されるおよび／またはあらかじめ定義されることが可能である。
【００２１】
例えば、第１のジオメトリの選択は、ユーザアクションのあったときに行われる。同様に、少なくとも１つの第２のフィーチャを選択するステップは、ユーザアクションのあったときに行われることが可能である。
【００２２】
コンピュータ実行方法の典型的な例が、この目的に適合されたシステムを用いて方法を行うことである。システムは、メモリおよびグラフィカルユーザインタフェース（ＧＵＩ）に結合されたプロセッサを備えることができ、メモリはそこに、方法を行うための命令を含んだコンピュータプログラムを記録している。メモリは、データベースを格納することもできる。メモリは、このような格納に適合された任意のハードウェアであり、場合によりいくつかの物理的個別パーツ（例えば、１つはプログラム用、場合により１つはデータベース用）を含んでいる。
【００２３】
「データベース」とは、探索および検索のために整理されたデータ（すなわち情報）の任意のコレクションを意味する。メモリに格納されると、データベースにより、コンピュータによる迅速な探索および検索が可能になる。データベースは、実際には、様々なデータ処理動作と連動して、データの格納、検索、変更、および削除を容易にするように構築される。データベースは、レコードに分解されることが可能であるファイルまたはファイルのセットからなることが可能であり、レコードのそれぞれが、１または複数のフィールドからなる。フィールドは、データストレージの基本単位である。ユーザは、主として問合せによりデータを検索することができる。キーワードを使用し、コマンドをソートして、ユーザは、多くのレコード中でフィールドを迅速に探索し、再配置し、グループ化し、および選択して、使用されているデータベース管理システムのルールに従って、データの特定の集合体に関するレポートを検索するまたは作成することができる。
【００２４】
この方法の場合、データベースが、三次元モデル化オブジェクトを含むことができる。３Ｄモデル化オブジェクトは、複数のフィーチャを有する。データベースは、フィーチャベースの３Ｄモデル化オブジェクトの各フィーチャの１または複数の仕様を格納することもできる。
【００２５】
この方法は、一般的にモデル化オブジェクトを操作する。モデル化オブジェクトは、データベースに格納されたデータによって定義される任意のオブジェクトである。拡張して、「モデル化オブジェクト」という表現は、データ自体を示す。システムのタイプに従って、モデル化オブジェクトは、異なる種類のデータによって定義されることが可能である。システムは、実際には、ＣＡＤシステム、ＣＡＥシステム、ＣＡＭシステム、ＰＤＭシステム、および／またはＰＬＭシステムの任意の組合せとすることができる。これらの異なるシステムでは、モデル化オブジェクトが、対応するデータによって定義される。したがって、ＣＡＤオブジェクト、ＰＬＭオブジェクト、ＰＤＭオブジェクト、ＣＡＥオブジェクト、ＣＡＭオブジェクト、ＣＡＤデータ、ＰＬＭデータ、ＰＤＭデータ、ＣＡＭデータ、ＣＡＥデータのことを言うことがある。しかしながら、モデル化オブジェクトは、これらのシステムのいかなる組合せに対応するデータによっても定義されることが可能であるので、これらのシステムは、排他的なものではない。したがってシステムは、以下に提供するこのようなシステムの定義から明らかになるように、多分にＣＡＤとＰＬＭの両方のシステムであることが可能である。
【００２６】
ＣＡＤシステムとは、少なくとも、ＣＡＴＩＡなど、モデル化オブジェクトのグラフィック表現に基づいてモデル化オブジェクトを設計するために適合された任意のシステムを意味する。この場合、モデル化オブジェクトを定義するデータは、モデル化オブジェクトの表現を可能にするデータを含む。例えばＣＡＤシステムが、面または表面を有するいくつかの場合において、エッジまたは直線を使用してＣＡＤモデル化オブジェクトの表現を提供することができる。直線、エッジ、または表面は、例えば、非一様有理Ｂスプライン（ＮＵＲＢＳ）など、様々な方法で表すことができる。詳細には、ＣＡＤファイルが仕様を含み、この仕様からジオメトリが生成され、そして次にジオメトリにより、表現が生成できるようになる。モデル化オブジェクトの仕様は、単一のＣＡＤファイルにまたは複数のＣＡＤファイルに格納されることが可能である。ＣＡＤシステムにおいてモデル化オブジェクトを表すファイルの一般的なサイズは、パーツにつき１メガバイトの範囲内である。またモデル化オブジェクトは、一般的に、何千ものパーツの組立品であることが可能である。
【００２７】
ＣＡＤの文脈では、モデル化オブジェクトは、一般的に３Ｄモデル化オブジェクトであることが可能であり、例えば、パーツもしくはパーツの組立品などの製品、または場合により製品の組立品を表す。「３Ｄモデル化オブジェクト」とは、その３Ｄ表現を可能にするデータによってモデル化される任意のオブジェクトを意味する。３Ｄ表現が、すべての角度からパーツを見ることを可能にする。例えば、３Ｄで表されるとき、３Ｄモデル化オブジェクトが、その軸のいずれかを中心にして、または表現が表示される画面内のいずれかの軸を中心にして処理され、回転されることが可能である。これは特に、３Ｄモデル化されていない２Ｄアイコンを除く。３Ｄ表現の表示は、設計を容易にする（すなわち、設計者がそのタスクを統計的に成し遂げる速度を速める）。製品の設計は、製造工程の一部であるので、これは、産業における製造工程を加速する。
【００２８】
ＣＡＤシステムは、履歴ベースとすることができる。この場合、モデル化オブジェクトはさらに、幾何学的フィーチャの履歴を含むデータによって定義される。モデル化オブジェクトは、実際には、標準的モデリングフィーチャ（例えば、押し出し、回転、カット、および／もしくは丸み付け）ならびに／または標準的表面加工フィーチャ（例えば、スイープ、ブレンド、ロフト、フィル、変形、スムージング、および／またはその他）を使用して自然人（すなわち設計者／ユーザ）によって設計されることが可能である。モデル化オブジェクトは、ここではフィーチャベースのモデル化オブジェクトである。このようなモデリング機能をサポートする多くのＣＡＤシステムは、履歴ベースのシステムである。これは、設計フィーチャの作成履歴が、一般的に、入力リンクおよび出力リンクを介してともに上記幾何学的フィーチャをリンクさせる非環式のデータフローを介して保存されることを意味する。履歴ベースのモデリングパラダイムは、８０年代の初めからよく知られている。モデル化オブジェクトが、２つの永続的データ表現、履歴およびＢ−ｒｅｐ（すなわち境界表現）によって記述される。Ｂ−ｒｅｐは、履歴に定義される計算の結果である。モデル化オブジェクトが表現されるとき、コンピュータの画面上に表示される部分の形状は、Ｂ−ｒｅｐ（の埋め尽くし（tessellation））である。パーツの履歴は、設計意図である。基本的に、履歴は、モデル化オブジェクトが受けた操作に関する情報を集める。Ｂ−ｒｅｐは、履歴と併せて保存されて、複雑なパーツの表示をより容易にすることが可能である。履歴は、設計意図に従ったパーツの設計変更を可能にするために、Ｂ−ｒｅｐと併せて保存されることが可能である。
【００２９】
ＰＬＭシステムとは、物理的製造品を表現するモデル化オブジェクトの管理に適合された任意のシステムを意味する。ＰＬＭシステムでは、モデル化オブジェクトはしたがって、物理的オブジェクトの製造に好適なデータによって定義される。これらは一般的に、寸法値および／または許容値とすることができる。オブジェクトを正確に製造するために、このような値を有することは実によりよいことである。
【００３０】
ＣＡＭは、コンピュータ支援製造（Computer-Aided Manufacturing）を表す。ＣＡＭソリューションとは、製品の製造データを管理するために適合された任意のソリューション、ハードウェアのソフトウェアを意味する。製造データは、一般的に、製造する製品、製造工程、および必要な資源に関連するデータを含む。ＣＡＭソリューションが使用されて、製品の製造工程全体を計画し、最適化する。例えば、ＣＡＭソリューションが、実行可能性、製造工程の期間、または特定のロボットなど、製造工程の特定のステップで使用されることが可能であるリソースの数に関する情報をＣＡＭユーザに提供することができ、したがって管理または必要な投資についての決定を可能にする。ＣＡＭは、ＣＡＤ工程および潜在的なＣＡＥ工程の後の後続工程である。このようなＣＡＭソリューションが、登録商標ＤＥＬＭＩＡ（登録商標）のもとに、ダッソーシステムズによって提供されている。
【００３１】
ＣＡＥとは、コンピュータ支援工学（Computer-Aided Engineering）を表す。ＣＡＥソリューションとは、モデル化オブジェクトの物理的挙動の分析のために適合された任意のソリューション、ハードウェアのソフトウェアを意味する。よく知られて、広く使用されているＣＡＥ技法は、一般的に、モデル化オブジェクトを、物理的挙動が計算され、式を通してシミュレートされることが可能である要素に分割することを伴う、有限要素法（ＦＭ）である。このようなＣＡＥソリューションは、ＳＩＭＵＬＩＡ（登録商標）のもとに、ダッソーシステムズによって提供されている。別の成長中のＣＡＥ技法は、ＣＡＤジオメトリデータなしで、物理（physics）の異なるフィールドからの複数の構成要素を構成する複雑なシステムのモデリングおよび分析を伴う。ＣＡＥソリューションは、製造する製品の、シミュレーション、ひいては最適化、改善、および検証を可能にする。このようなＣＡＥソリューションは、登録商標ＤＹＭＯＬＡ（登録商標）のもとでダッソーシステムズによって提供されている。
【００３２】
ＰＤＭは、製品データ管理（Product Data Management）を表す。ＰＤＭソリューションとは、特定の製品に関連するすべてのタイプのデータを管理するために適合された任意のソリューション、ハードウェアのソフトウェアを意味する。ＰＤＭソリューションは、主としてエンジニアであるがプロジェクトマネージャ、財務担当者、販売担当者、および購入者も含む、製品のライフサイクルに関与するすべての関係者によって使用されることが可能である。ＰＤＭソリューションは、一般的には製品指向のデータベースに基づく。これにより、関係者は、その製品に関する整合性のあるデータを共有できるようになり、したがって関係者が一致しないデータを使用することが避けられる。このようなＰＤＭソリューション、登録商標ＥＮＯＶＩＡ（登録商標）のもとでDassault Systemsによって提供されている。
【００３３】
図１１は、システムのＧＵＩの一例を示し、システムは、ＣＡＤシステムである。
【００３４】
ＧＵＩ１００は、典型的なＣＡＤ様インタフェースであってもよく、標準的なメニューバー１１０、１２０ならびにボタンおよびサイドツールバー１４０、１５０を有する。このようなメニューおよびツールバーは、ユーザが選択可能なアイコンのセットを含み、当技術分野で知られているように、各アイコンが、１または複数の操作または機能と関連付けられる。これらのアイコンのいくつかは、ＧＵＩ１００に表示される３Ｄモデル化オブジェクト２００上で編集するおよび／または動作するために適合された、ソフトウェアツールと関連付けられる。ソフトウェアツールは、ワークベンチにグループ化されることが可能である。各ワークベンチは、ソフトウェアツールのサブセットを含む。特に、ワークベンチの１つが、モデル化された製品２００の幾何学的フィーチャを編集するために適している、編集ワークベンチである。操作において、設計者が、例えばオブジェクト２００の一部をあらかじめ選択し、その後、適切なアイコンを選択することによって、操作を開始する（例えば寸法、色などを変更する）または幾何学的拘束を編集する。例えば、典型的なＣＡＤ操作は、画面に表示された３Ｄモデル化オブジェクトのパンチング（punching）または折りたたみ（folding）のモデリングである。
【００３５】
ＧＵＩは、例えば、表示された製品２００に関連するデータ２５０を表示することができる。図１１の例では、「フィーチャツリー（feature tree）」として表示されたデータ２５０、およびその３Ｄ表現２００は、ブレーキキャリパおよびディスクを含んだブレーキアセンブリに関係する。ＧＵＩは、例えばオブジェクトの３Ｄ配向を容易にするための、編集される製品の動作のシミュレーションをトリガするための、様々なタイプのグラフィックツール１３０、１７０、１８０、４００をさらに示す、または表示される製品２００の様々な属性をレンダリングすることができる。カーソル１６０が、ハプティックデバイスによって制御されて、ユーザがグラフィックツールと対話できるようにすることが可能である。
【００３６】
図１２は、システムの一例を示し、このシステムは、クライアントコンピュータシステム、例えばユーザのワークステーションである。
【００３７】
この例のクライアントコンピュータは、内部通信ＢＵＳ１０００に接続された中央処理装置（ＣＰＵ）１０１０と、同じくＢＵＳに接続されたランダムアクセスメモリ（ＲＡＭ）１０７０とを含む。クライアントコンピュータはさらに、ＢＵＳに接続されたビデオランダムアクセスメモリ１１００と関連付けられたグラフィカル演算処理装置（ＧＰＵ）１１１０を設けられている。ビデオＲＡＭ１１００もまた、フレームバッファとして、当技術分野で知られている。大容量記憶装置コントローラ１０２０が、ハードドライブ１０３０などの大容量メモリ装置へのアクセスを管理する。コンピュータプログラム命令およびデータを実体的に具現化するのに適している大容量メモリ装置は、あらゆる形態の不揮発性メモリを含み、例として、ＥＰＲＯＭ、ＥＥＰＲＯＭ、およびフラッシュメモリ装置などの半導体メモリ装置、内蔵ハードディスクおよびリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ならびにＣＤ−ＲＯＭディスク１０４０が含まれる。前述のいずれも、特別に設計されたＡＳＩＣ（特定用途向け集積回路）で補完される、またはこれに組み込まれることがある。ネットワークアダプタ１０５０が、ネットワーク１０６０へのアクセスを管理する。クライアントコンピュータはまた、カーソル制御装置、キーボードなどのハプティックデバイス１０９０を含むこともできる。カーソル制御装置は、クライアントコンピュータで使用されて、ユーザがディスプレイ１０８０上の任意の所望の場所にカーソルを選択的に位置付けることを可能にする。加えて、カーソル制御装置により、ユーザは様々なコマンドを選択し、制御信号を入力できるようになる。カーソル制御装置は、システムへの入力制御信号のためのいくつかの信号生成装置を含む。一般的には、カーソル制御装置は、マウスとすることができ、信号を生成するためにマウスのボタンが使用される。代替えとして、または追加として、クライアントコンピュータシステムは、感応型パッド（sensitive pad）および／または感応型画面（sensitive screen）を備えることができる。
【００３８】
コンピュータプログラムは、コンピュータによって実行可能な命令を含むことができ、命令は、上記システムに方法を行わせる手段を含む。プログラムは、システムのメモリなどを含む、任意のデータ記憶媒体に記録可能とすることができる。プログラムは、例えば、デジタル電子回路で、またはコンピュータハードウェア、ファームウェア、ソフトウェアで、またはこれらの組合せで、実行されることが可能である。プログラムは、例えば、プログラム可能プロセッサによって実行されるように機械可読記憶装置に実体的に具現化された製品など、装置として実行されることもある。方法ステップは、プログラム可能プロセッサが命令のプログラムを実行して、入力データ上で動作し、出力を生成することにより方法の機能を行うことによって、行われることが可能である。プロセッサは、このようにプログラム可能であり、少なくとも１つの入力デバイス、および少なくとも１つの出力デバイスにおいて、データストレージシステムからデータおよび命令を受け取る、ならびにデータストレージシステムにデータおよび命令を送信するように結合されることが可能である。アプリケーションプログラムは、ハイレベルな手続き指向もしくはオブジェクト指向プログラミング言語で、または必要に応じてアセンブリ言語もしくは機械言語で、実行されることが可能である。いずれの場合も、言語は、コンパイル型言語またはインタプリタ型言語とすることができる。プログラムは、完全インストールプログラム、または更新プログラムとすることができる。システム上のプログラムの適用は、いずれの場合も、方法を行うための命令となる。
【００３９】
「３Ｄモデル化オブジェクトを設計すること」は、３Ｄモデル化オブジェクトを精巧に作り上げる工程の少なくとも一部であるいかなるアクションまたは一連のアクションも示す。したがって、この方法は、ゼロから３Ｄオブジェクトを作成することを含むことができる。あるいは、この方法は、以前に作成された３Ｄモデル化オブジェクトを提供すること、次いでこの３Ｄモデル化オブジェクトを修正することを含むことができる。
【００４０】
この方法は、製造工程に含まれることが可能であり、製造工程は、この方法を行った後、モデル化オブジェクトに対応する物理的製品を生産することを含むことができる。いずれの場合も、この方法によって設計されるモデル化オブジェクトは、製造オブジェクトを表すことができる。モデル化オブジェクトは、したがってモデル化ソリッド（すなわち、ソリッドを表すモデル化オブジェクト）とすることができる。製造オブジェクトは、パーツ、またはパーツの組立品などの、製品とすることができる。この方法は、モデル化オブジェクトの設計を改善するので、この方法は、製品の製造もまた改善し、したがって製造工程の生産性を向上させる。
【００４１】
ここで図１を参照して、本発明による方法の一例を論じる。
【００４２】
ステップＳ１０において、複数のフィーチャを有する三次元（３Ｄ）モデル化オブジェクトが提供される。３Ｄモデル化オブジェクトは、データベースに格納される。３Ｄモデル化オブジェクトを提供することは、３Ｄモデル化オブジェクトのデータが、本発明の方法を実行するＣＡＤシステムに利用可能であることを意味する。例えば、３Ｄモデル化オブジェクトのデータは、ＣＡＤシステムによって実行されるシーンに提供される。ゆえに、３Ｄオブジェクトは、３Ｄシーンにロードされるが、ユーザには必ずしも示されない。３Ｄモデル化オブジェクトを提供することは、データベースで探索するステップ、およびデータベースから３Ｄモデル化オブジェクトのデータを検索するステップという２つの連続したステップの結果とすることができる。
【００４３】
３Ｄモデル化オブジェクトは、システムによって自動的に提供されることが可能であり、例えば、以前の設計セッションで設計された３Ｄモデル化オブジェクトが、自動的に提供される。セッションとは、ユーザがＣＡＤシステムと少なくとも一度対話する期間である。実際には、ユーザは、ユーザが設計を行うことを望む度にシステムにログオンし、ユーザがログインするとき、以前の設計セッションがロードされることもある。
【００４４】
あるいは、３Ｄモデル化オブジェクトは、ユーザアクションのあったときに行われる選択の結果として提供されることもある。ユーザは、キーボード、マウス、スタイラス、タッチセンサ式ディスプレイなどのハプティックデバイスを介して選択を実行することができる。例えば、２ボタンマウスでは、左ボタンは、第１の部分および／または第２の部分を選択するために使用されることが可能である。選択は、パーツのリストに行われることがあるが、これに限定されず、リストは、テキストのリスト、またはパーツの２Ｄもしくは３Ｄ表現のリストであることがある。
【００４５】
フィーチャという用語は、３Ｄモデル化オブジェクトのパーツを形成する幾何学的オブジェクトを意味する。３Ｄモデル化オブジェクトはしたがって、当技術分野で知られているように、フィーチャベースのモデル化オブジェクトである。フィーチャはしたがって、幾何学的特性を有する。フィーチャはさらに、トポロジ的特性を含むことがある。幾何学的特性および（ある場合は）トポロジ的特性は、フィーチャの仕様を形成し、したがってフィーチャの仕様は、フィーチャのジオメトリの記述であり、ルールは、上記フィーチャのジオメトリに適用される。ゆえに、フィーチャは、製品に属し、設計される製品について論理的に考える（reason）ために役立つ（１または複数の）仕様に関連付けられる一般的な形状である。
【００４６】
実際には、３Ｄモデル化オブジェクトのフィーチャは、プロファイルから取得されることが可能であり、このフィーチャは、プロファイルベースのフィーチャと呼ばれる。プロファイルベースのフィーチャの幾何学的形状は、一般的には、二次元形状（プロファイル）から得られ、当技術分野で知られているように、この二次元形状からスイープされたボリュームが得られる。
【００４７】
図３は、座繰り穴タイプの穴フィーチャのプロファイルを示し、プロファイルは、接続された４つのパーツ１、２、３、４を含み、したがって接続されたエッジのセットを形成する。各パーツが、２つの頂点を結ぶワイヤと呼ばれることもある。２つの頂点を結ぶワイヤは、直線、曲線など、いかなるタイプであってもよいことは理解されたい。座繰り穴フィーチャは、軸５を中心にプロファイルを回転させることによって形成される。ここでは、プロファイルは、軸５を中心に３６０°の回転を行った。図４から７は、図３に示すプロファイルから得られる座繰り穴フィーチャの異なるビューを示す。プロファイルの回転によって定義されるボリュームに含まれるボリュームは、空であることは理解されたい。プロファイルの各パーツから、ジオメトリが生じる。これは、少なくとも１つのジオメトリが、パーツによってスイープされた表面から作成されることを意味する。
【００４８】
次に図６を参照すると、陰影線（hatched line）は、図３に表されるプロファイルのパーツ１から得られるジオメトリを示す。結果として生じるジオメトリは、円柱の全体的形態を有する表面である。
【００４９】
次に図４を参照すると、陰影線は、図３に表されるプロファイルのパーツ２から得られるジオメトリを示す。エッジ２によってスイープされた表面から円盤が得られる。
【００５０】
次に図５を参照すると、陰影線は、図３に表されるプロファイルのパーツ３から得られるジオメトリを示す。ここでは円柱が得られる。
【００５１】
次に図７を参照すると、陰影線は、図３に表されるプロファイルのパーツ４から得られる円錐表面を示す。
【００５２】
したがって、図４から７に表される座繰り穴フィーチャは、４つのジオメトリを含み、各ジオメトリがプロファイルのパーツから生成される。フィーチャの各ジオメトリについて、ジェネレータが関連付けられる。ジェネレータという用語は、ジオメトリが生成されるプロファイルのパーツを意味する。
【００５３】
図１に戻ると、ステップＳ２０において、ユーザは、第１のフィーチャの第１のジオメトリを選択する。選択は、キーボード、マウス、スタイラス、タッチセンサ式ディスプレイなどのハプティックデバイスを介して実行されることが可能である。選択は、例えばジオメトリのリストに、行われることが可能であり、リストは、パーツのテキストのリスト、または２Ｄもしくは３Ｄ表現のリストであってもよい。例えば、２ボタンのマウスの左ボタンは、マウスのカーソルが、ジオメトリの表現の上にあるとき、第１のジオメトリを選択するために使用されることが可能である。図６で、ユーザは、ディスプレイに表された座繰り穴フィーチャの円柱を選択しており、選択されたフィーチャの表現は変更され、どのジオメトリが選択されたかをユーザに示すために、円柱の輪郭は陰影線で表される。
【００５４】
次いで、ステップＳ３０において、３Ｄモデル化オブジェクトが格納されているデータベースは、選択された第１のジオメトリに従って少なくとも１つの仕様をデータベースから検索するために、問い合わせされる。したがって、ステップＳ２０におけるジオメトリの選択は、上記選択されたジオメトリに関連付けられた１つ（または複数）の仕様の識別をトリガする。
【００５５】
説明のために、図２を参照してステップＳ３０の例を次に説明する。この例では、３Ｄモデル化オブジェクトのフィーチャは、データベースに格納されたプロファイルベースのフィーチャである。各プロファイルベースのフィーチャについて、少なくともフィーチャのプロファイルおよび仕様は、データベースに格納される。フィーチャの各仕様と関連付けられることが可能である値は、仕様と合わせて格納されることが可能である。データベースはさらに、プロファイルのパーツから生じるジオメトリを格納することができる。実際には、ジオメトリは、フィーチャがインスタンス化され、データベースに格納されるとき、作成される。作成されたジオメトリは、一時的にデータベースに格納されることが可能である。
【００５６】
ステップＳ３００において、第１のジオメトリのユーザによる選択の後、選択されたジオメトリが属するフィーチャが識別される。識別は、当技術分野で知られているように行われる。実際には、この方法を行うシステムは、フィーチャの識別によりジオメトリの直接的識別が可能になり、逆に、ジオメトリの識別により、それが属するフィーチャを推論することが可能になるように、各インスタンス化されたフィーチャのジオメトリを格納する。したがって、ジオメトリと属するフィーチャとの間にマッピングが存在する。
【００５７】
次いで、ステップＳ３１０において、ステップＳ３００で識別されたフィーチャが構築されたプロファイルが識別される。上述のように、各プロファイルベースのフィーチャのプロファイルがフィーチャと併せて格納されるので、この識別は、データベースで直接行われる。データベースで識別することは、データベースで問い合わせすることと同義である。
【００５８】
次に、ステップＳ３２０において、プロファイルを形成しているパーツが識別される。これらの情報は、フィーチャのプロファイルとともに格納されることが可能である、すなわち、プロファイルを形成しているパーツのセットは、データベース上に格納される。
【００５９】
あるいは、プロファイルのパーツのセットは、例えば、プロファイルを形成している結合されたエッジのセットを探索することによって、データベースに格納されているプロファイルから推測されることが可能である。例えば、パーツは、あらかじめ定められた方法で格納されることが可能であり、例えば、座繰り穴は常に、パーツを穴の上部から下部に格納することになる。
【００６０】
次いでステップＳ３３０において、プロファイルの各パーツにインデックスを作成される。これは、プロファイルの各パーツが、一意の識別子と関連付けられることを伴う。例えば、図３に示すプロファイルのパーツは、各パーツが、各パーツを識別可能にする数値１、２、３、４と関連付けられるようにインデックスを作成されている。したがって、インデックス作成によりパーツを順序付けることが可能である。
【００６１】
プロファイルの１または複数のパーツのインデックス作成は、フィーチャのプロファイルに関連した情報とともにデータベース上に格納されることが可能であることは理解されたい。この場合、プロファイルの各パーツにインデックスを作成することは、各パーツと関連付けられたインデックス値がデータベースで識別されることを意味する。あるいは、インデックスは、データベースに格納されず、パーツの順序は各穴タイプについて知られており、したがってインデックスは容易に識別されることがある。
【００６２】
プロファイルの各パーツにインデックスが作成されると、パーツおよびプロファイルのパーツの情報を個々に選択することが可能となる。
【００６３】
次に、ステップＳ３４０において、選択されたジオメトリが生じる少なくとも１つのパーツが、データベースで見つけられる。実際には、１つの選択されたジオメトリに対して１つの単一パーツが見つけられ、パーツから２つ以上のジオメトリが生じる可能性があると理解される。上に論じたように、データベースは、プロファイルのパーツから生じるジオメトリを格納する、または一時的に格納することができる。したがって１つのパーツの識別は、データベースを使用して、例えば、ジオメトリとリレーショナルデータベースに格納されたパーツとの関係を使用して、行われることが可能である。
【００６４】
次いで、ステップＳ３５０において、ステップＳ３４０において見つけられた少なくとも１つのパーツと関連する少なくとも１つの仕様が、データベースで見つけられる。実際には、ステップＳ３３０において行われるパーツのインデックス作成は、仕様を識別するために活用される。実際に、データベースは、仕様とプロファイルのパーツとの間のマッピングを格納し、マッピングは、関連する仕様を識別するために、パーツのインデックス作成を使用する。上に論じたように、フィーチャの仕様は、フィーチャのプロファイルおよびプロファイルの（１または複数の）パーツから生じるジオメトリとは別に格納される。
【００６５】
ジオメトリの選択に基づく仕様をデータベースで見つけるためのステップＳ３００からＳ３５０のアルゴリズムについて、次に図４から７および図９から１０を参照して示される。この例では、図９に示すように、パッド９８に４つの穴フィーチャがある、グラフィカルユーザインタフェース（例えば図１１のＧＵＩ１００）に表示された３Ｄモデル化オブジェクトを検討する。穴フィーチャ９０は、座繰り穴のタイプであり、穴フィーチャ９２、９４、９６は、貫通穴のタイプである。タイプという用語は、フィーチャが属する穴の種類を意味する。例として、穴が、貫通穴、カウンターシンク、止まり穴、……のタイプであることがあるが、これらに限定されない。この例ではパッド９８もまたフィーチャである。
【００６６】
データベースは、図９に表される３Ｄモデル化オブジェクト、すなわちフィーチャ９０、９２、９４、９６、および９８のデータを格納する。データベースは、リレーショナルデータベースとすることができる。フィーチャに関連するデータは、以下を含む。すなわち、
（ｉ）貫通穴タイプの穴フィーチャのプロファイル
（ｉｉ）図３に示すようにプロファイルの４つのパーツが、インデックス値１、２、３、４とそれぞれ関連付けられた、座繰り穴タイプの穴フィーチャのプロファイル
（ｉｉｉ）パッドフィーチャのプロファイル
（ｉｖ）プロファイルの各パーツから生じるジオメトリ
（ｖ）各フィーチャのタイプ
（ｖｉ）（ある場合は）プロファイルの各パーツと関連付けられた仕様
というフィーチャである。
【００６７】
パーツは、仕様と関連付けられないことがあることを理解されたい。パーツと仕様との間のマッピング（関係と言うこともできる）は、パーツの指数化を介して保持される。座繰り穴タイプの穴フィーチャについて、図８に仕様の例を示す。この例では、座繰り穴は、直径１５ｍｍを有し、穴径は、１０ｍｍに等しい。
【００６８】
ユーザは、穴９０の座繰り面を選択する。面ジオメトリの選択後に、穴フィーチャはデータベースで識別される。ところで、フィーチャを識別しながらフィーチャタイプもまた推論され、ここではフィーチャは、座繰り穴タイプである。
【００６９】
次いで、フィーチャのプロファイルおよびパーツが、データベースで識別される。その後、インデックス１を作成され、選択された面ジオメトリと関連するパーツは、データベースで見つけられる。
【００７０】
この後、選択されたジオメトリが生じるパーツのインデックスは１であるので、データベースで推論される仕様は、穴フィーチャの選択された面は穴の座繰りを一意的に表すということである。さらに、選択されたジオメトリはまた、座繰り直径仕様を表す。したがって、この例では、２つの仕様、穴のタイプ（座繰り）および穴の直径（１５ｍｍ）が、識別されるパーツと関連付けられる。
【００７１】
ユーザがインデックス２を作成されたパーツから生じるディスクを選択した場合、データベースで推論される仕様は、座繰り穴の深さである。
【００７２】
ユーザが図３に表されるプロファイルのパーツ３から得られるジオメトリ（円柱）を選択した場合、検索される仕様は、穴の直径である。
【００７３】
別の例として、ユーザが図３に表されるプロファイルのパーツ４から生じる円錐表面を選択した場合、検索される仕様は、穴の底型（bottom-type）である。
【００７４】
図１に戻ると、ステップＳ４０において、少なくとも１つの第２のフィーチャが選択される。選択は、ユーザアクションのあったときに行われることが可能である、または選択は、本発明による方法を行うシステムによって自動的に選択されることが可能である。
【００７５】
実際には、選択された第２のフィーチャは、選択された第１のフィーチャと同様である、すなわち第２のフィーチャは、第１のフィーチャとほぼ同じである。自動的に選択されるとき、システムは、第１のフィーチャと共通の特性の最も重要な番号を有するフィーチャを探索する。特性とは、ジオメトリ、ジオメトリと関連付けられた仕様を伴う。一般的に、第２のフィーチャは、第１のフィーチャと同じタイプである。例えば、図９を参照すると、第１のフィーチャ９０も第２のフィーチャ９２も穴タイプであり、これは、これらの２つのフィーチャが同様のジオメトリおよび仕様、例えば穴の直径を有することを意味する。図９では、数個の穴フィーチャ９２、９４、９６が自動的に選択される。
【００７６】
次いで、ステップＳ５０において、第１のフィーチャの仕様のセットが、データベースで識別される。これは、一般的には、第１のフィーチャのプロファイルのパーツにマップされる仕様をすべて探索することによって行われる。
【００７７】
次いで、ステップＳ６０において、ユーザは、（１または複数の）選択された第２のフィーチャに適用される追加の仕様を選択することができる。追加の仕様は、ステップＳ５０で識別されたセット中で選択される。選択は、図８に示すようにフィーチャ仕様パネル（feature specifications panel）を介して行われることが可能であり、パネルの左部分は、座繰り穴フィーチャに対して推論される仕様のリストをユーザに提供し、パネルの右部分は、ユーザによって選択される仕様、ここでは底型および底角度（Bottom Angle）を示す。
【００７８】
次いで、ステップＳ７０では、ステップＳ３０でデータベースから検索された仕様が、（１または複数の）選択された第２のフィーチャに適用され、例えば、仕様の値が、選択された第２のフィーチャに適用される。ユーザがステップＳ６０において１または複数の追加の仕様を選択した場合は、これらの仕様は、（１または複数の）選択された第２のフィーチャにも適用される。フィーチャに仕様を適用することは、その仕様およびその仕様と関連する値がフィーチャに影響を与えるように、フィーチャが修正されることを意味する。言い換えれば、（１または複数の）仕様の伝播が行われる。
【００７９】
次に図１０を参照すると、ユーザによって選択された穴９０の座繰り面と関連する仕様およびステップＳ６０においてユーザによって選択された仕様が、各フィーチャ９２、９４、９６に適用された、図９の３Ｄモデル化オブジェクトが示されている。ここでは、以下の３つの仕様が、各フィーチャ９２、９４、９６に適用される。すなわち、座繰り穴、底型、および底角度の３つの仕様である。こうした３つの仕様を適用することによって、フィーチャ９２、９４、９６は、これらが貫通穴ではなく座繰り穴タイプとなるように修正され、これらの底部は、所与の角度値を有する円錐底部を形成するように修正される。例えば、穴のタイプを記述する仕様の値は、「Ｓｉｍｐｌｅ」から「Ｃｏｕｎｔｅｒｂｏｒｅｄ」に変更される。この後フィーチャの構築が続く。フィーチャを構築することは、新しい値（座繰りタイプの穴）の影響を与え、穴のジオメトリおよびトポロジに明示される。
【００８０】
データベースで検索されたおよび／またはユーザによって選択された（１または複数の）仕様の伝播は、次のステップを行うことによって実行されることが可能である。すなわち、
１．ユーザによる選択されたフィーチャのリストを繰り返す
２．ユーザによって選択された各フィーチャに対して
ａ．伝播させる仕様のリストを検索する
ｂ．リストの各仕様に対して
ｉ．第１のフィーチャから（１または複数の）第２のフィーチャに伝播される仕様の値を検索する
ｉｉ．仕様の値を（１または複数の）第２のフィーチャに伝播させる
というステップである。
【００８１】
本発明の好ましい実施形態について説明した。本発明の趣旨と範囲を逸脱することなく、様々な変更を行うことができることは理解されよう。したがって、他の実行も添付の特許請求の範囲の範囲内である。例えば、フィーチャは、非プロファイルベースのフィーチャとすることができる。この場合、非プロファイルベースのフィーチャを表す選択されたジオメトリは、検索されることが可能である。選択されたジオメトリに関連する仕様は、選択のセマンティクスを表す。したがって、非プロファイルベースのフィーチャについては、フィーチャのプロファイルを推測する必要がない。非プロファイルベースのフィーチャを表すジオメトリに関連する（１または複数の）仕様は、フィーチャのジオメトリの選択のあったときに推論される。
【図１】
2015130163.tif 000003
【図２】
2015130163.tif 000004
【図３】
2015130163.tif 000005
【図４】
2015130163.tif 000006
【図５】
2015130163.tif 000007
【図６】
2015130163.tif 000008
【図７】
2015130163.tif 000009
【図８】
2015130163.tif 000010
【図９】
2015130163.tif 000011
【図１０】
2015130163.tif 000012
【図１１】
2015130163.tif 000013
【図１２】
2015130163.tif 000014
【外国語明細書】
2015130163000001.pdf