"動的に構成可能な製品設計の作成のための方法であって、コンピュータデバイスのプロセッサ上で実行するコンピュータ支援設計CADアプリケーションのユーザによって、動的に構成可能な製品設計の複数のモジュールのモジュール構造を作成することであって、前記複数のモジュールは、少なくとも1つの可変モジュールを備えている、ことと、前記ユーザによって、前記少なくとも1つの可変モジュールの複数のバリアントから、前記動的に構成可能な製品設計で使用するバリアントを選択することと、前記CADアプリケーションによって、前記動的に構成可能な製品設計の幾何モデルの中に前記選択されたバリアントを配置することと、前記CADアプリケーションによって、前記配置された選択されたバリアントの1つ以上の制約に応答して、前記幾何モデルの中の前記配置された選択されたバリアントに隣接するモジュールの位置付けまたは幾何学形状を修正することとを含む、方法。前記モジュール構造は、製品設計のモジュールの関係のツリーを備えている、請求項1に記載の方法。前記製品設計の各モジュールは、ロケータインターフェースまたはシェイパインターフェースを含む、請求項1に記載の方法。前記少なくとも1つの可変モジュールの前記複数のバリアントのうちの各バリアントは、対応するロケータインターフェースまたはシェイパインターフェースを含む、請求項1に記載の方法。前記少なくとも1つの可変モジュールの前記複数のバリアントは、一般的バリアントを含む、請求項1に記載の方法。前記バリアントを選択することは、前記ユーザによって、製品構成ツールによって提示される前記可変モジュールのバリアントの所定のリストからバリアントを選択することを含む、請求項1に記載の方法。前記幾何モデルの中に前記選択されたバリアントを配置することは、前記幾何モデルの中の前記少なくとも1つの可変モジュールの以前に使用されたバリアントを前記選択されたバリアントと置換することを含む、請求項1に記載の方法。前記配置された選択されたバリアントに隣接するモジュールの位置付けまたは幾何学形状を修正することは、前記隣接モジュールのインターフェースを、前記配置された選択されたバリアントの対応するインターフェースに整列させるように、前記隣接モジュールの位置付けまたは幾何学形状を修正することを含む、請求項1に記載の方法。前記配置された選択されたバリアントの前記1つ以上の制約は、隣接モジュールのロケータまたはシェイパインターフェースを、前記配置された選択されたバリアントの対応するロケータまたはシェイパインターフェースに整列させるための規則を含む、請求項1に記載の方法。前記動的に構成可能な製品設計は、CADモデルの特徴ベースの幾何学形状の履歴レシピを含む、請求項1に記載の方法。動的に構成可能な製品設計の作成のためのシステムであって、プロセッサを備えているコンピュータデバイスを備え、前記プロセッサは、コンピュータ支援設計CADアプリケーションのユーザによって、動的に構成可能な製品設計の複数のモジュールのモジュール構造を作成するためのCADアプリケーションであって、前記複数のモジュールは、少なくとも1つの可変モジュールを備えている、CADアプリケーションと、前記ユーザによって、前記少なくとも1つの可変モジュールの複数のバリアントから、前記動的に構成可能な製品設計で使用するバリアントを選択するための選択インターフェースと、前記動的に構成可能な製品設計の幾何モデルの中に前記選択されたバリアントを配置し、前記配置された選択されたバリアントの1つ以上の制約に応答して、前記幾何モデルの中の前記配置された選択されたバリアントに隣接するモジュールの位置付けまたは幾何学形状を修正するための幾何学形状エンジンとを実行するように構成されている、システム。前記モジュール構造は、製品設計のモジュールの関係のツリーを備えている、請求項11に記載のシステム。前記製品設計の各モジュールは、ロケータインターフェースまたはシェイパインターフェースを含む、請求項11に記載のシステム。前記少なくとも1つの可変モジュールの前記複数のバリアントのうちの各バリアントは、対応するロケータインターフェースまたはシェイパインターフェースを含む、請求項11に記載のシステム。前記少なくとも1つの可変モジュールの前記複数のバリアントは、一般的バリアントを含む、請求項11に記載のシステム。前記バリアントを選択することは、前記ユーザによって、製品構成ツールによって提示される前記可変モジュールのバリアントの所定のリストからバリアントを選択することを含む、請求項11に記載のシステム。前記幾何モデルの中に前記選択されたバリアントを配置することは、前記幾何モデルの中の前記少なくとも1つの可変モジュールの以前に使用されたバリアントを前記選択されたバリアントと置換することを含む、請求項11に記載のシステム。前記配置された選択されたバリアントに隣接するモジュールの位置付けまたは幾何学形状を修正することは、前記隣接モジュールのインターフェースを、前記配置された選択されたバリアントの対応するインターフェースに整列させるように、前記隣接モジュールの位置付けまたは幾何学形状を修正することを含む、請求項11に記載のシステム。前記配置された選択されたバリアントの前記1つ以上の制約は、隣接モジュールのロケータまたはシェイパインターフェースを、前記配置された選択されたバリアントの対応するロケータまたはシェイパインターフェースに整列させるための規則を含む、請求項11に記載のシステム。前記動的に構成可能な製品設計は、CADモデルの特徴ベースの幾何学形状の履歴レシピを含む、請求項11に記載のシステム。コンピュータ支援設計CADシステムであって、プロセッサを備えているコンピュータデバイスを備え、前記プロセッサは、CADオブジェクトの特徴ベースの幾何学形状の履歴レシピを作成するためのパラメトリック幾何学形状エンジンと、前記CADオブジェクトの幾何学形状を修正するための直接モデリングユーザインターフェースであって、前記CADオブジェクトの履歴およびパラメトリック特徴は、前記直接モデリングユーザインターフェースのユーザから隠されている、直接モデリングユーザインターフェースとを実行するように構成されている、システム。前記パラメトリック幾何学形状エンジンは、前記直接モデリングユーザインターフェースにおける前記CADオブジェクトの幾何学形状に対する修正を、前記履歴レシピにおけるパラメトリック特徴の作成または修正として解釈するように構成されている、請求項21に記載のシステム。前記履歴レシピにおける前記作成または修正されたパラメトリック特徴は、前記履歴レシピにおける第2の以前のパラメトリック特徴に従属する、請求項22に記載のシステム。前記履歴レシピにおける前記作成または修正されたパラメトリック特徴は、前記パラメトリック特徴の作成の順序に応答して、前記履歴レシピの中の前記第2の以前のパラメトリック特徴に従属する、請求項23に記載のシステム。前記履歴レシピにおける前記作成または修正されたパラメトリック特徴は、前記作成または修正されたパラメトリック特徴と前記第2の以前のパラメトリック特徴との間の暗示的制約に応答して、前記履歴レシピの中の前記第2の以前のパラメトリック特徴に従属する、請求項23に記載のシステム。前記作成または修正されたパラメトリック特徴は、前記第2の以前のパラメトリック特徴の子である、請求項25に記載のシステム。前記パラメトリック幾何学形状エンジンは、前記第2の以前のパラメトリック特徴の修正に応答して、前記作成または修正されたパラメトリック特徴を再生するように構成され、前記直接モデリングユーザインターフェースは、前記再生された作成または修正されたパラメトリック特徴を表示するように構成されている、請求項23に記載のシステム。前記作成または修正されたパラメトリック特徴は、従来のパラメトリック特徴を含む、請求項22に記載のシステム。前記作成または修正されたパラメトリック特徴は、フレックス移動パラメトリック特徴またはフレックス移動コピーパラメトリック特徴を含む、請求項22に記載のシステム。前記パラメトリック幾何学形状エンジンは、前記直接モデリングユーザインターフェースにおいて作成された前記CADオブジェクトの対称幾何学的要素を識別することと、前記CADオブジェクトの対称幾何学的要素間の連合を表すパラメトリック柔軟対称特徴を作成することとを行うように構成されている、請求項21に記載のシステム。前記パラメトリック幾何学形状エンジンは、前記直接モデリングユーザインターフェースにおいて作成された前記CADオブジェクトの複数の幾何学的要素のパターンを識別することと、前記CADオブジェクトの前記複数の幾何学的要素間のパターン連合を表すパラメトリック柔軟パターン特徴を作成することとを行うように構成されている、請求項21に記載のシステム。前記プロセッサは、前記直接モデリングユーザインターフェースのユーザによって行われるCADモデルに対する複数の修正のうちの各々を、ユーザインターフェースのユーザによって、精査して容認または拒絶するために、前記ユーザインターフェースを実行するようにさらに構成されている、請求項21に記載のシステム。前記パラメトリック幾何学形状エンジンは、前記直接モデリングユーザインターフェースの前記ユーザによって第1のCADオブジェクトに対して行われる前記複数または1つの修正を、精査して容認または拒絶するための前記ユーザインターフェースの前記ユーザによる拒絶に応答して、前記CADモデルの第2のCADオブジェクトの幾何学形状を再計算するように構成され、前記第2のCADオブジェクトは、特徴ベースの幾何学形状の前記履歴レシピにおける前記第1のCADオブジェクトへの従属的関係を有する、請求項32に記載のシステム。コンピュータ支援設計CADシステムを使用する方法であって、コンピュータデバイスのプロセッサ上で実行するCADアプリケーションによって提供される直接モデリングユーザインターフェースのユーザによって、CADオブジェクトの幾何学形状を修正することと、前記CADアプリケーションのパラメトリック幾何学形状エンジンによって、CADオブジェクトの特徴ベースの幾何学形状の履歴レシピを作成することとを含み、前記CADオブジェクトの履歴およびパラメトリック特徴は、前記直接モデリングユーザインターフェースの前記ユーザから隠されている、方法。前記パラメトリック幾何学形状エンジンによって、前記直接モデリングユーザインターフェースにおける前記ユーザによる前記CADオブジェクトの幾何学形状に対する修正を、前記履歴レシピにおけるパラメトリック特徴の作成または修正として解釈することをさらに含む、請求項34に記載の方法。前記履歴レシピにおける前記作成または修正されたパラメトリック特徴は、前記履歴レシピにおける第2の以前のパラメトリック特徴に従属し、前記方法は、前記第2の以前のパラメトリック特徴の修正に応答して、前記パラメトリック幾何学形状エンジンによって、前記作成または修正されたパラメトリック特徴を再生することと、前記直接モデリングユーザインターフェースによって、前記再生された作成または修正されたパラメトリック特徴を表示することとをさらに含む、請求項35に記載の方法。前記作成または修正されたパラメトリック特徴は、フレックス移動パラメトリック特徴またはフレックス移動コピーパラメトリック特徴を含む、請求項35に記載の方法。前記パラメトリック幾何学形状エンジンによって、前記直接モデリングユーザインターフェースにおいて作成された前記CADオブジェクトの対称幾何学的要素を識別することと、前記パラメトリック幾何学形状エンジンによって、前記CADオブジェクトの対称幾何学的要素間の連合を表すパラメトリック柔軟対称特徴を作成することとをさらに含む、請求項34に記載の方法。前記パラメトリック幾何学形状エンジンによって、前記直接モデリングユーザインターフェースにおいて作成された前記CADオブジェクトの複数の幾何学的要素のパターンを識別することと、前記パラメトリック幾何学形状エンジンによって、前記CADオブジェクトの前記複数の幾何学的要素間のパターン連合を表すパラメトリック柔軟パターン特徴を作成することとをさらに含む、請求項34に記載の方法。前記CADアプリケーションのパラメトリックモデリングユーザインターフェースのユーザによって、前記直接モデリングユーザインターフェースのユーザによって行われるCADモデルに対する複数の修正のうちの各々を精査して容認または拒絶することをさらに含む、請求項34に記載の方法。前記パラメトリックモデリングユーザインターフェースの前記ユーザによる、前記直接モデリングユーザインターフェースの前記ユーザによって第1のCADオブジェクトに対して行われる修正の拒絶に応答して、前記パラメトリック幾何学形状エンジンによって、前記CADモデルの第2のCADオブジェクトの幾何学形状を再計算することをさらに含み、前記第2のCADオブジェクトは、特徴ベースの幾何学形状の前記履歴レシピにおける前記第1のCADオブジェクトへの従属的関係を有する、請求項40に記載の方法。要求に応じてコンピュータ支援設計CADモデルの複数部分を動的にロードする方法であって、コンピュータデバイスのプロセッサによって実行されるCADアプリケーションによって、CADモデルの第1の部分をロードすることであって、前記第1の部分は、i前記CADモデルのモジュール構造と、ii前記モジュール構造の第1の要素のグラフィックスおよび幾何学形状データとを備えている、ことと、前記CADアプリケーションのユーザによって、前記モジュール構造の第2の要素を選択することと、前記CADアプリケーションによって、前記選択に応答して、前記CADモデルの第2の部分をロードすることであって、前記第2の部分は、i前記選択された第2の要素のモジュール構造と、ii前記選択された第2の要素のグラフィックスおよび幾何学形状データとを備えている、こととを含む、方法。前記第1の要素のグラフィックスおよび幾何学形状データをロードすることは、前記第1の要素の1つ以上の可視または外部表面を識別し、前記第1の要素の前記識別された可視または外部表面のグラフィックスおよび幾何学形状データをロードすることをさらに含む、請求項42に記載の方法。前記第1の要素のグラフィックスおよび幾何学形状データをロードすることは、前記第1の要素の1つ以上のロケーションインターフェースまたはシェイパインターフェースをロードすることをさらに含む、請求項42に記載の方法。前記選択された第2の要素のグラフィックスおよび幾何学形状データをロードすることは、前記第2の要素の1つ以上の可視または外部表面を識別し、前記第2の要素の前記識別された可視または外部表面のグラフィックスおよび幾何学形状データをロードすることをさらに含む、請求項42に記載の方法。前記選択された第2の要素のグラフィックスおよび幾何学形状データをロードすることは、前記第2の要素の1つ以上のロケーションインターフェースまたはシェイパインターフェースをロードすることをさらに含む、請求項42に記載の方法。前記第2の要素を選択することは、前記第2の要素を前記モジュール構造に追加することをさらに含む、請求項42に記載の方法。前記CADアプリケーションの前記ユーザによって、前記第1の要素または前記第2の要素の幾何学形状データの制約を定義するために、前記モジュール構造の第3の要素の幾何学形状データの1つ以上の項目を選択することと、前記CADアプリケーションによって、前記選択に応答して、前記第3の要素の幾何学形状データの前記選択された1つ以上の項目をロードすることとをさらに含む、請求項42に記載の方法。前記第3の要素の幾何学形状データの前記選択された1つ以上の項目をロードすることは、前記第3の要素の幾何学形状データの未選択項目をロードしないことを含む、請求項48に記載の方法。前記CADアプリケーションの前記ユーザによって、前記モジュール構造の第3の要素を選択することであって、前記第3の要素は、前記モジュール構造の中の前記第2の要素と直接関係しない、ことと、前記CADアプリケーションによって、前記選択に応答して、前記CADモデルの第3の部分をロードすることであって、前記第3の部分は、i前記選択された第3の要素のモジュール構造と、ii前記選択された第3の要素のグラフィックスおよび幾何学形状データとを備えている、こととをさらに含む、請求項42に記載の方法。前記CADアプリケーションによって、前記第3の要素が前記モジュール構造の中の前記第2の要素と直接関係しないことに応答して、前記CADモデルの前記第2の部分をアンロードすることをさらに含む、請求項50に記載の方法。要求に応じてコンピュータ支援設計CADモデルの複数部分を動的にロードするためのシステムであって、プロセッサを備えているコンピュータデバイスであって、前記プロセッサは、CADアプリケーションを実行するように構成されている、コンピュータデバイスと、ユーザによってCADモデルのモジュール構造の第1の要素を選択するための前記CADアプリケーションのユーザインターフェースと、前記CADアプリケーションの幾何学形状エンジンであって、前記幾何学形状エンジンは、前記CADモデルの第1の部分をロードすることであって、前記第1の部分は、i前記CADモデルのモジュール構造と、ii前記モジュール構造の第2の要素のグラフィックスおよび幾何学形状データとを備えている、ことと、前記ユーザによる選択に応答して、前記CADモデルの第2の部分をロードすることであって、前記第2の部分は、i前記選択された第1の要素のモジュール構造と、ii前記選択された第1の要素のグラフィックスおよび幾何学形状データとを備えている、こととを行うように構成されている、幾何学形状エンジンとを備えている、システム。前記幾何学形状エンジンは、前記第2の要素の1つ以上の可視または外部表面を識別し、前記第2の要素の前記識別された可視または外部表面のグラフィックスおよび幾何学形状データをロードするようにさらに構成されている、請求項52に記載のシステム。前記幾何学形状エンジンは、前記第2の要素の1つ以上のロケーションインターフェースまたはシェイパインターフェースをロードするようにさらに構成されている、請求項52に記載のシステム。前記幾何学形状エンジンは、前記第1の要素の1つ以上の可視または外部表面を識別し、前記第1の要素の前記識別された可視または外部表面のグラフィックスおよび幾何学形状データをロードするようにさらに構成されている、請求項52に記載のシステム。前記幾何学形状エンジンは、前記第1の要素の1つ以上のロケーションインターフェースまたはシェイパインターフェースをロードするようにさらに構成されている、請求項52に記載のシステム。前記幾何学形状エンジンは、前記第1の要素を前記モジュール構造に追加するようにさらに構成されている、請求項52に記載のシステム。前記ユーザインターフェースは、前記第1の要素または前記第2の要素の幾何学形状データの制約を定義するために、前記CADアプリケーションの前記ユーザによって前記モジュール構造の第3の要素の幾何学形状データの1つ以上の項目を選択するために使用され、前記幾何学形状エンジンは、前記選択に応答して、前記第3の要素の幾何学形状データの前記選択された1つ以上の項目をロードするようにさらに構成されている、請求項52に記載のシステム。前記幾何学形状エンジンは、前記第3の要素の幾何学形状データの未選択項目をロードしないようにさらに構成されている、請求項58に記載のシステム。前記ユーザインターフェースは、前記CADアプリケーションの前記ユーザによって、前記モジュール構造の第3の要素を選択するために使用され、前記第3の要素は、前記モジュール構造の中の前記第1の要素と直接関係せず、前記幾何学形状エンジンは、前記選択に応答して、前記CADモデルの第3の部分をロードするようにさらに構成され、前記第3の部分は、i前記選択された第3の要素のモジュール構造と、ii前記選択された第3の要素のグラフィックスおよび幾何学形状データとを備えている、請求項52に記載のシステム。前記幾何学形状エンジンは、前記第3の要素が前記モジュール構造の中の前記第2の要素と直接関係しないことに応答して、前記CADモデルの前記第2の部分をアンロードするようにさらに構成されている、請求項60に記載のシステム。コンピュータ支援設計CADシステムであって、プロセッサを備えているコンピュータデバイスを備え、前記プロセッサは、CADオブジェクトの特徴ベースの幾何学形状の履歴レシピを作成するためのパラメトリック幾何学形状エンジンと、第1のユーザによって、前記CADオブジェクトの特徴制約を作成するためのパラメトリックモデリングユーザインターフェースと、直接モデリングユーザインターフェースであって、前記直接モデリングユーザインターフェースは、前記直接モデリングユーザインターフェースの第2のユーザによって前記CADオブジェクトの修正を試みるためのものであり、前記CADオブジェクトの履歴およびパラメトリック特徴は、前記第2のユーザから隠されている、直接モデリングユーザインターフェースとを実行するように構成され、前記パラメトリック幾何学形状エンジンは、前記第2のユーザが前記幾何学形状を修正しようとすることに応答して、前記直接モデリングユーザインターフェースにおいて前記特徴制約を守らせるように構成されている、システム。前記パラメトリック幾何学形状エンジンは、前記直接モデリングユーザインターフェースにおける前記CADオブジェクトの幾何学形状に対する修正を、前記履歴レシピにおけるパラメトリック特徴の作成または修正として解釈するように構成されている、請求項62に記載のシステム。前記特徴制約は、幾何学的制約を含む、請求項62に記載のシステム。前記特徴制約は、工学的制約を含む、請求項62に記載のシステム。前記CADオブジェクトを修正しようとすることは、前記CADオブジェクトの幾何学形状または前記CADオブジェクトの特徴を修正しようとすることを含む、請求項62に記載のシステム。前記CADオブジェクトを修正しようとすることは、前記CADオブジェクトの製品情報または前記CADオブジェクトの製品情報またはCADオブジェクトのCADオブジェクトの特徴を修正しようとすることを含む、請求項62に記載のシステム。前記パラメトリック幾何学形状エンジンは、前記第2のユーザが前記幾何学形状を修正しようとすることに応答して、前記CADオブジェクトに対する前記試行される修正を防止または拒絶するように構成されている、請求項62に記載のシステム。前記パラメトリック幾何学形状エンジンは、前記第2のユーザが、前記直接モデリングユーザインターフェースにおいて前記特徴制約を無効にすること、または修正することを可能にするように構成されている、請求項68に記載のシステム。前記直接モデリングユーザインターフェースにおいて前記特徴制約を守らせることは、前記第2のユーザが前記特徴制約を無効にすること、または修正することに応答して、前記直接モデリングユーザインターフェースにおける前記CADオブジェクトの修正を可能にすることを含む、請求項69に記載のシステム。前記パラメトリック幾何学形状エンジンは、前記第2のユーザが前記幾何学形状を修正する許可を欠いていることに応答して、前記CADオブジェクトに対する前記試行される修正を防止または拒絶するように構成されている、請求項62に記載のシステム。コンピュータ支援設計CADシステムにおいて制約を守らせる方法であって、コンピュータデバイスのプロセッサによって実行されるCADアプリケーションのパラメトリックモデリングユーザインターフェースの第1のユーザによって、CADオブジェクトの特徴制約を作成することであって、前記CADオブジェクトは、特徴ベースの幾何学形状の履歴レシピを含む、ことと、前記CADアプリケーションの直接モデリングユーザインターフェースの第2のユーザによって、前記CADオブジェクトを修正しようとすることであって、前記CADオブジェクトの履歴およびパラメトリック特徴は、前記直接モデリングユーザインターフェースにおいて前記第2のユーザから隠されている、ことと、前記第2のユーザが前記幾何学形状を修正しようとすることに応答して、前記CADアプリケーションのパラメトリックモデリングエンジンによって、前記直接モデリングユーザインターフェースにおける前記特徴制約を守らせることとを含む、方法。前記パラメトリック幾何学形状エンジンによって、前記直接モデリングユーザインターフェースにおける前記CADオブジェクトの幾何学形状に対する修正を、前記履歴レシピにおけるパラメトリック特徴の作成または修正として解釈することをさらに含む、請求項72に記載の方法。前記特徴制約は、幾何学的制約を含む、請求項72に記載の方法。前記特徴制約は、工学的制約を含む、請求項72に記載の方法。前記直接モデリングユーザインターフェースの前記第2のユーザによって、前記CADオブジェクトの幾何学形状または前記CADオブジェクトの特徴を修正しようとすることをさらに含む、請求項72に記載の方法。前記直接モデリングユーザインターフェースの前記第2のユーザによって、前記CADオブジェクトの製品情報または前記CADオブジェクトの特徴を修正しようとすることをさらに含む、請求項72に記載の方法。前記第2のユーザが前記幾何学形状を修正しようとすることに応答して、前記パラメトリック幾何学形状エンジンによって、前記CADオブジェクトに対する前記試行される修正を防止または拒絶することをさらに含む、請求項72に記載の方法。前記パラメトリック幾何学形状エンジンによって、前記第2のユーザが、前記直接モデリングユーザインターフェースにおいて前記特徴制約を無効にすること、または修正することを可能にすることをさらに含む、請求項78に記載の方法。前記第2のユーザが前記特徴制約を無効にすること、または修正することに応答して、前記パラメトリック幾何学形状エンジンによって、前記直接モデリングユーザインターフェースにおける前記CADオブジェクトの修正を可能にすることをさらに含む、請求項79に記載の方法。前記第2のユーザが前記幾何学形状を修正する許可を欠いていることに応答して、前記パラメトリック幾何学形状エンジンによって、防止または拒絶することをさらに含む、請求項72に記載のシステム。本開示は、ビジネス主導型アセンブリと呼ばれることもある、動的に構成可能な製品設計の作成のための方法およびシステムを特徴とする。そのような製品設計は、部品表BOM、あるいは顧客、販売員、またはベンダによるオプションの選択による主導型と呼ばれ得、製品ライフサイクル管理PLM計画に応答して行われ得る。システムは、顧客が製品の仕様を定義することを可能にし、次いで、定義された仕様または選択されたオプションに応答して、CADモデルを動的に生成する。一側面では、本発明は、動的に構成可能な製品設計の作成のための方法を対象とする。方法は、コンピュータデバイスのプロセッサ上で実行するコンピュータ支援設計CADアプリケーションのユーザによって、動的に構成可能な製品設計の複数のモジュールのモジュール構造を作成することを含み、複数のモジュールは、少なくとも1つの可変モジュールを備えている。方法はまた、ユーザによって、少なくとも1つの可変モジュールの複数のバリアントから、動的に構成可能な製品設計で使用するバリアントを選択することも含む。方法はさらに、CADアプリケーションによって、動的に構成可能な製品設計の幾何モデルの中に選択されたバリアントを配置することを含む。方法はまた、CADアプリケーションによって、配置された選択されたバリアントの1つ以上の制約に応答して、幾何モデルの中の配置された選択されたバリアントに隣接するモジュールの位置付けまたは幾何学形状を修正することも含む。一実施形態では、方法は、製品設計のモジュールの関係のツリーを備えている、モジュール構造を含む。別の実施形態では、方法は、ロケータインターフェースまたはシェイパインターフェースを含む、製品設計の各モジュールを含む。さらに別の実施形態では、方法は、対応するロケータインターフェースまたはシェイパインターフェースを含む、少なくとも1つの可変モジュールの複数のバリアントの各バリアントを含む。なおも別の実施形態では、方法は、一般的バリアントを含む、少なくとも1つの可変モジュールの複数のバリアントを含む。いくつかの実施形態では、方法は、ユーザによって、製品構成ツールによって提示される可変モジュールのバリアントの所定のリストからバリアントを選択することを含む。他の実施形態では、方法は、幾何モデルの中の少なくとも1つの可変モジュールの以前に使用されたバリアントを選択されたバリアントと置換することを含む。一実施形態では、方法は、隣接モジュールのインターフェースを、配置された選択されたバリアントの対応するインターフェースに整列させるように、隣接モジュールの位置付けまたは幾何学形状を修正することを含む。別の実施形態では、方法は、隣接モジュールのロケータまたはシェイパインターフェースを、配置された選択されたバリアントの対応するロケータまたはシェイパインターフェースに整列させるための規則を含む、配置された選択されたバリアントの1つ以上の制約を含む。いくつかの実施形態では、方法は、CADモデルの特徴ベースの幾何学形状の履歴レシピを含む、動的に構成可能な製品設計を含む。別の側面では、本発明は、動的に構成可能な製品設計の作成のためのシステムを特徴とする。システムは、プロセッサを備えている、コンピュータデバイスを含み、プロセッサは、コンピュータ支援設計CADアプリケーションのユーザによって、動的に構成可能な製品設計の複数のモジュールのモジュール構造を作成するためのCADアプリケーションであって、複数のモジュールは、少なくとも1つの可変モジュールを備えている、CADアプリケーションと、ユーザによって、少なくとも1つの可変モジュールの複数のバリアントから、動的に構成可能な製品設計で使用するバリアントを選択するための選択インターフェースと、動的に構成可能な製品設計の幾何モデルの中に選択されたバリアントを配置し、配置された選択されたバリアントの1つ以上の制約に応答して、幾何モデルの中の配置された選択されたバリアントに隣接するモジュールの位置付けまたは幾何学形状を修正するための幾何学形状エンジンとを実行するように構成される。システムのいくつかの実施形態では、モジュール構造は、製品設計のモジュールの関係のツリーを備えている。システムの他の実施形態では、製品設計の各モジュールは、ロケータインターフェースまたはシェイパインターフェースを含む。システムのなおも他の実施形態では、少なくとも1つの可変モジュールの複数のバリアントのうちの各バリアントは、対応するロケータインターフェースまたはシェイパインターフェースを含む。システムのさらになおも他の実施形態では、少なくとも1つの可変モジュールの複数のバリアントは、一般的バリアントを含む。システムの一実施形態では、選択インターフェースは、ユーザによって、製品構成ツールによって提示される可変モジュールのバリアントの所定のリストからバリアントを選択するために構成される。システムの別の実施形態では、幾何学形状エンジンは、幾何モデルの中の少なくとも1つの可変モジュールの以前に使用されたバリアントを選択されたバリアントと置換するために構成される。システムのなおも別の実施形態では、幾何学形状エンジンは、隣接モジュールのインターフェースを、配置された選択されたバリアントの対応するインターフェースに整列させるように、隣接モジュールの位置付けまたは幾何学形状を修正するために構成される。システムのさらになおも別の実施形態では、配置された選択されたバリアントの1つ以上の制約は、隣接モジュールのロケータまたはシェイパインターフェースを、配置された選択されたバリアントの対応するロケータまたはシェイパインターフェースに整列させるための規則を含む。システムのいくつかの実施形態では、動的に構成可能な製品設計は、CADモデルの特徴ベースの幾何学形状の履歴レシピを含む。本開示は、コンピュータ支援設計における直接パラメトリック相互運用性のための方法およびシステムを特徴とする。直接およびパラメトリックコンピュータ支援設計CADモデリングといった、3次元設計を開発するための2つのアプローチが、現在広く使用されている。両方のアプローチの利点を組み合わせるために、本発明の一側面では、直接モデリングユーザインターフェースが、モデルを編集するために使用され、幾何学形状の直観的かつ容易な操作を可能にし、パラメトリック幾何学形状エンジンが、これらの操作を履歴ベースの特徴として解釈し、構築レシピを作成する。したがって、たとえユーザが、全操作中に履歴および連合関係が作成されていることを認識しない場合があっても、モデルの基礎的アーキテクチャは、パラメトリックのままである。したがって、本発明は、パラメトリックモデラの強力な特徴および再生能力を保持しながら、直接CADモデリングの直観的WYSIWYG編集を提供する。一側面では、本発明は、コンピュータ支援設計CADシステムを特徴とする。システムは、CADオブジェクトの特徴ベースの幾何学形状の履歴レシピを作成するためのパラメトリック幾何学形状エンジンと、CADオブジェクトの幾何学形状を修正するための直接モデリングユーザインターフェースであって、CADオブジェクトの履歴およびパラメトリック特徴は、直接モデリングユーザインターフェースのユーザから隠されている、直接モデリングユーザインターフェースとを実行するように構成されている、プロセッサを備えている、コンピュータデバイスを含む。システムの一実施形態では、パラメトリック幾何学形状エンジンは、直接モデリングユーザインターフェースにおけるCADオブジェクトの幾何学形状に対する修正を、履歴レシピにおけるパラメトリック特徴の作成または修正として解釈するように構成される。システムのさらなる実施形態では、履歴レシピの中の作成または修正されたパラメトリック特徴は、履歴レシピにおける第2の以前のパラメトリック特徴に従属する。システムのなおもさらなる実施形態では、履歴レシピの中の作成または修正されたパラメトリック特徴は、パラメトリック特徴の作成の順序に応答して、履歴レシピにおける第2の以前のパラメトリック特徴に従属する。システムの別のなおもさらなる実施形態では、履歴レシピの中の作成または修正されたパラメトリック特徴は、作成または修正されたパラメトリック特徴と第2の以前のパラメトリック特徴との間の暗示的制約に応答して、履歴レシピにおける第2の以前のパラメトリック特徴に従属する。システムのさらなる実施形態では、作成または修正されたパラメトリック特徴は、第2の以前のパラメトリック特徴の工学特徴である。システムの別のなおもさらなる実施形態では、パラメトリック幾何学形状エンジンは、第2の以前のパラメトリック特徴の修正に応答して、作成または修正されたパラメトリック特徴を再生するように構成され、直接モデリングユーザインターフェースは、再生された作成または修正されたパラメトリック特徴を表示するように構成される。システムの別のさらなる実施形態では、作成または修正されたパラメトリック特徴は、従来のパラメトリック特徴を含む。システムの別のさらなる実施形態では、作成または修正されたパラメトリック特徴は、フレックス移動パラメトリック特徴またはフレックス移動コピーパラメトリック特徴を含む。システムのいくつかの実施形態では、パラメトリック幾何学形状エンジンは、直接モデリングユーザインターフェースにおいて作成されたCADオブジェクトの対称幾何学的要素を識別し、CADオブジェクトの対称幾何学的要素間の連合を表すパラメトリック柔軟対称特徴を作成するように構成される。システムの他の実施形態では、パラメトリック幾何学形状エンジンは、直接モデリングユーザインターフェースにおいて作成されたCADオブジェクトの複数の幾何学的要素のパターンを識別し、CADオブジェクトの複数の幾何学的要素間のパターン連合を表すパラメトリック柔軟パターン特徴を作成するように構成される。システムの一実施形態では、プロセッサはさらに、直接モデリングユーザインターフェースのユーザによって行われるCADモデルに対する複数の修正のうちの各々を、パラメトリックモデリングユーザインターフェースのユーザによって、精査して容認または拒絶するためのパラメトリックモデリングユーザインターフェースを実行するように構成される。システムのさらなる実施形態では、パラメトリック幾何学形状エンジンは、パラメトリックモデリングユーザインターフェースのユーザによる、直接モデリングユーザインターフェースのユーザによって第1のCADオブジェクトに対して行われる修正の拒絶に応答して、CADモデルの第2のCADオブジェクトの幾何学形状を再計算するように構成され、第2のCADオブジェクトは、特徴ベースの幾何学形状の履歴レシピにおける第1のCADオブジェクトへの従属的関係を有する。別の側面では、本発明は、コンピュータ支援設計CADシステムを使用する方法を特徴とする。方法は、コンピュータデバイスのプロセッサ上で実行するCADアプリケーションによって提供される直接モデリングユーザインターフェースのユーザによって、CADオブジェクトの幾何学形状を修正することを含む。方法はまた、CADアプリケーションのパラメトリック幾何学形状エンジンによって、CADオブジェクトの特徴ベースの幾何学形状の履歴レシピを作成することも含む。方法では、CADオブジェクトの履歴およびパラメトリック特徴は、直接モデリングユーザインターフェースのユーザから隠されている。一実施形態では、方法は、パラメトリック幾何学形状エンジンによって、直接モデリングユーザインターフェースにおけるユーザによるCADオブジェクトの幾何学形状に対する修正を、履歴レシピにおけるパラメトリック特徴の作成または修正として解釈することを含む。さらなる実施形態では、方法は、履歴レシピにおける第2の以前のパラメトリック特徴に従属している、履歴レシピにおける作成または修正されたパラメトリック特徴を含み、方法はさらに、第2の以前のパラメトリック特徴の修正に応答して、パラメトリック幾何学形状エンジンによって、作成または修正されたパラメトリック特徴を再生することと、直接モデリングユーザインターフェースによって、再生された作成または修正されたパラメトリック特徴を表示することとを含む。別のさらなる実施形態では、方法は、フレックス移動パラメトリック特徴またはフレックス移動コピーパラメトリック特徴を含む、作成または修正されたパラメトリック特徴を含む。いくつかの実施形態では、方法は、パラメトリック幾何学形状エンジンによって、直接モデリングユーザインターフェースにおいて作成されたCADオブジェクトの対称幾何学的要素を識別することと、パラメトリック幾何学形状エンジンによって、CADオブジェクトの対称幾何学的要素間の連合を表すパラメトリック柔軟対称特徴を作成することとを含む。他の実施形態では、方法は、パラメトリック幾何学形状エンジンによって、直接モデリングユーザインターフェースにおいて作成されたCADオブジェクトの複数の幾何学的要素のパターンを識別することと、パラメトリック幾何学形状エンジンによって、CADオブジェクトの複数の幾何学的要素間のパターン連合を表すパラメトリック柔軟パターン特徴を作成することとを含む。一実施形態では、方法は、CADアプリケーションのパラメトリックモデリングユーザインターフェースのユーザによって、直接モデリングユーザインターフェースのユーザによって行われるCADモデルに対する複数の修正のうちの各々を精査して容認または拒絶することを含む。さらなる実施形態では、方法は、パラメトリックモデリングユーザインターフェースのユーザによる、直接モデリングユーザインターフェースのユーザによって第1のCADオブジェクトに対して行われる修正の拒絶に応答して、パラメトリック幾何学形状エンジンによって、CADモデルの第2のCADオブジェクトの幾何学形状を再計算することを含み、第2のCADオブジェクトは、特徴ベースの幾何学形状の履歴レシピにおける第1のCADオブジェクトへの従属的関係を有する。複雑なCADモデルは、それぞれ、数十または数百もの個々の特徴を備えている、数千または数万もの部品を含み得る。必要メモリおよび再生時間を削減するために、本発明は、要求に応じてコンピュータ支援設計モデルの複数部分を動的にロードするためのシステムおよび方法を特徴とする。一実施形態では、CADアプリケーションは、特定の設計タスクのために、ユーザによる必要に応じて、CADモデルの複数部分を漸進的にロードし得る。これは、必要メモリおよび処理の両方を削減し、ラップトップ、タブレットコンピュータ、スマートフォン、または任意の他のシステム等の限定されたリソースを伴うデバイス上での完成したCADモデルへのアクセスによって、CADアプリケーションを実行する可能性を生成する。一側面では、本開示は、要求に応じてコンピュータ支援設計CADモデルの複数部分を動的にロードする方法を特徴とする。方法は、コンピュータデバイスのプロセッサによって実行されるCADアプリケーションによって、CADモデルの第1の部分をロードすることを含み、第1の部分は、iCADモデルのモジュール構造と、iiモジュール構造の第1の要素のグラフィックスおよび幾何学形状データとを備えている。方法はまた、CADアプリケーションのユーザによって、モジュール構造の第2の要素を選択することも含む。方法はさらに、CADアプリケーションによって、選択に応答して、CADモデルの第2の部分をロードすることを含み、第2の部分は、i選択された第2の要素のモジュール構造と、ii選択された第2の要素のグラフィックスおよび幾何学形状データとを備えている。一実施形態では、方法は、第1の要素の1つ以上の可視または外部表面を識別し、第1の要素の識別された可視または外部表面のグラフィックスおよび幾何学形状データをロードすることを含む。別の実施形態では、方法は、第1の要素の1つ以上のロケーションインターフェースまたはシェイパインターフェースをロードすることを含む。さらに別の実施形態では、方法は、第2の要素の1つ以上の可視または外部表面を識別し、第2の要素の識別された可視または外部表面のグラフィックスおよび幾何学形状データをロードすることを含む。なおも別の実施形態では、方法は、第2の要素の1つ以上のロケーションインターフェースまたはシェイパインターフェースをロードすることを含む。いくつかの実施形態では、方法は、第2の要素をモジュール構造に追加することを含む。他の実施形態では、方法は、CADアプリケーションのユーザによって、第1の要素または第2の要素の幾何学形状データの制約を定義するために、モジュール構造の第3の要素の幾何学形状データの1つ以上の項目を選択することと、CADアプリケーションによって、選択に応答して、第3の要素の幾何学形状データの前記選択された1つ以上の項目をロードすることとを含む。さらなる実施形態では、方法は、第3の要素の幾何学形状データの未選択項目をロードしないことを含む。一実施形態では、方法は、CADアプリケーションのユーザによって、モジュール構造の第3の要素を選択することであって、第3の要素は、モジュール構造の中の前記第2の要素と直接関係しない、ことと、CADアプリケーションによって、選択に応答して、CADモデルの第3の部分をロードすることであって、第3の部分は、i選択された第3の要素のモジュール構造と、ii選択された第3の要素のグラフィックスおよび幾何学形状データとを備えている、こととを含む。さらなる実施形態では、方法は、CADアプリケーションによって、モジュール構造の中の第2の要素と直接関係しない第3の要素に応答して、CADモデルの第2の部分をアンロードすることを含む。別の側面では、本開示は、要求に応じてコンピュータ支援設計CADモデルの複数部分を動的にロードするためのシステムを特徴とする。システムは、プロセッサであって、CADアプリケーションを実行するように構成されるプロセッサを備えている、コンピュータデバイスを含む。CADアプリケーションは、ユーザによってCADモデルのモジュール構造の第1の要素を選択するためのCADアプリケーションのユーザインターフェースと、CADモデルの第1の部分であって、iCADモデルのモジュール構造と、iiモジュール構造の第2の要素のグラフィックスおよび幾何学形状データとを備えている、第1の部分をロードし、ユーザによる選択に応答して、CADモデルの第2の部分であって、i選択された第1の要素のモジュール構造と、ii選択された第1の要素のグラフィックスおよび幾何学形状データとを備えている、第2の部分をロードするように構成されている、CADアプリケーションの幾何学形状エンジンとを含む。一実施形態では、幾何学形状エンジンはさらに、第2の要素の1つ以上の可視または外部表面を識別し、第2の要素の識別された可視または外部表面のグラフィックスおよび幾何学形状データをロードするように構成される。別の実施形態では、幾何学形状エンジンはさらに、第2の要素の1つ以上のロケーションインターフェースまたはシェイパインターフェースをロードするように構成される。なおも別の実施形態では、幾何学形状エンジンはさらに、第1の要素の1つ以上の可視または外部表面を識別し、第1の要素の識別された可視または外部表面のグラフィックスおよび幾何学形状データをロードするように構成される。さらになおも別の実施形態では、幾何学形状エンジンはさらに、第1の要素の1つ以上のロケーションインターフェースまたはシェイパインターフェースをロードするように構成される。いくつかの実施形態では、幾何学形状エンジンはさらに、第1の要素をモジュール構造に追加するように構成される。一実施形態では、ユーザインターフェースは、CADアプリケーションのユーザによって、第1の要素または第2の要素の幾何学形状データの制約を定義するために、モジュール構造の第3の要素の幾何学形状データの1つ以上の項目を選択するために使用され、幾何学形状エンジンはさらに、選択に応答して、第3の要素の幾何学形状データの選択された1つ以上の項目をロードするように構成される。さらなる実施形態では、幾何学形状エンジンはさらに、第3の要素の幾何学形状データの未選択項目をロードしないように構成される。別の実施形態では、ユーザインターフェースは、CADアプリケーションのユーザによって、モジュール構造の第3の要素であって、モジュール構造の中の第1の要素と直接関係しない第3の要素を選択するために使用され、幾何学形状エンジンはさらに、選択に応答して、CADモデルの第3の部分であって、i選択された第3の要素のモジュール構造と、ii選択された第3の要素のグラフィックスおよび幾何学形状データとを備えている、第3の部分をロードするように構成される。さらなる実施形態では、幾何学形状エンジンはさらに、モジュール構造の中の第1の要素と直接関係しない前記第3の要素に応答して、CADモデルの第2の部分をアンロードするように構成される。本開示は、コンピュータ支援設計CADにおいて直接モデリングインターフェースのパラメトリック制約を守らせる方法およびシステムを対象とする。CADアプリケーションのパラメトリック幾何学形状エンジンは、CADアプリケーションの直接モデリングユーザインターフェースにおける特徴に対する試行される編集を、パラメトリックモデリングユーザインターフェースにおいて作成された既存の制約と比較し、一実施形態では、ユーザが編集を完了することを防止し得る。他の実施形態では、パラメトリック幾何学形状エンジンは、ダイアログボックスをユーザに提示し、ユーザが、編集を拒絶すること、制約を無効にすることまたは削除すること、制約を修正すること、あるいは適切な他の措置を講じることを可能にし得る。なおも他の実施形態では、パラメトリック幾何学形状エンジンは、別のユーザではなく、1人のユーザが特徴を編集することを可能にし得る。したがって、エンティティのパラメトリック制約および許可ベースの所有権は、直接モデリングユーザインターフェースにおいて守られ得る。一側面では、本開示は、コンピュータ支援設計CADシステムを対象とする。システムは、CADオブジェクトの特徴ベースの幾何学形状の履歴レシピを作成するためのパラメトリック幾何学形状エンジンを実行するように構成されている、プロセッサを備えている、コンピュータデバイスを含む。プロセッサはまた、第1のユーザによって、CADオブジェクトの特徴制約を作成するためのパラメトリックモデリングユーザインターフェースを実行するように構成される。プロセッサはさらに、直接モデリングユーザインターフェースの第2のユーザによって、CADオブジェクトを修正しようとするための直接モデリングユーザインターフェースを実行するように構成され、CADオブジェクトの履歴およびパラメトリック特徴は、第2のユーザから隠されている。パラメトリック幾何学形状エンジンはさらに、幾何学形状を修正しようとする第2のユーザに応答して、直接モデリングユーザインターフェースにおいて特徴制約を守らせるように構成される。一実施形態では、パラメトリック幾何学形状エンジンは、直接モデリングユーザインターフェースにおけるCADオブジェクトの幾何学形状に対する修正を、履歴レシピにおけるパラメトリック特徴の作成または修正として解釈するように構成される。いくつかの実施形態では、特徴制約は、幾何学的制約を含む。他の実施形態では、特徴制約は、工学的制約を含む。一実施形態では、CADオブジェクトを修正しようとすることは、CADオブジェクトの幾何学形状またはCADオブジェクトの特徴を修正しようとすることを含む。別の実施形態では、CADオブジェクトを修正しようとすることは、CADオブジェクトの製品情報またはCADオブジェクトの特徴を修正しようとすることを含む。いくつかの実施形態では、パラメトリック幾何学形状エンジンは、幾何学形状を修正しようとする第2のユーザに応答して、CADオブジェクトに対する試行される修正を防止または拒絶するように構成される。さらなる実施形態では、パラメトリック幾何学形状エンジンは、第2のユーザが、直接モデリングユーザインターフェースにおいて特徴制約を無効にすること、または修正することを可能にするように構成される。なおもさらなる実施形態では、直接モデリングユーザインターフェースにおいて特徴制約を守らせることは、特徴制約を無効にする、または修正する第2のユーザに応答して、直接モデリングユーザインターフェースにおいてCADオブジェクトの修正を可能にすることを含む。別の実施形態では、パラメトリック幾何学形状エンジンは、幾何学形状を修正する許可が欠如している第2のユーザに応答して、CADオブジェクトへの試行された修正を防止または拒絶するように構成される。別の側面では、本開示は、コンピュータ支援設計CADシステムにおいて制約を守らせる方法を対象とする。方法は、コンピュータデバイスのプロセッサによって実行されるCADアプリケーションのパラメトリックモデリングユーザインターフェースの第1のユーザによって、CADオブジェクトの特徴制約を作成することを含み、CADオブジェクトは、特徴ベースの幾何学形状の履歴レシピを含む。方法はまた、CADアプリケーションの直接モデリングユーザインターフェースの第2のユーザによって、CADオブジェクトを修正しようとすることであって、CADオブジェクトの履歴およびパラメトリック特徴は、直接モデリングユーザインターフェースにおいて第2のユーザから隠されている。方法はさらに、幾何学形状を修正しようとする第2のユーザに応答して、CADアプリケーションのパラメトリックモデリングエンジンによって、直接モデリングユーザインターフェースにおける特徴制約を守らせることを含む。一実施形態では、方法は、パラメトリック幾何学形状エンジンによって、直接モデリングユーザインターフェースにおけるCADオブジェクトの幾何学形状に対する修正を、履歴レシピにおけるパラメトリック特徴の作成または修正として解釈することを含む。いくつかの実施形態では、特徴制約は、幾何学的制約を含む。他の実施形態では、特徴制約は、工学的制約を含む。一実施形態では、方法は、直接モデリングユーザインターフェースの第2のユーザによって、CADオブジェクトの幾何学形状またはCADオブジェクトの特徴を修正しようとすることを含む。別の実施形態では、方法は、直接モデリングユーザインターフェースの第2のユーザによって、CADオブジェクトの製品情報またはCADオブジェクトの特徴を修正しようとすることを含む。一実施形態では、方法は、幾何学形状を修正しようとする第2のユーザに応答して、パラメトリック幾何学形状エンジンによって、CADオブジェクトに対する試行される修正を防止または拒絶することを含む。さらなる実施形態では、方法は、パラメトリック幾何学形状エンジンによって、第2のユーザが、直接モデリングユーザインターフェースにおいて特徴制約を無効にすること、または修正することを可能にすることを含む。なおもさらなる実施形態では、方法は、特徴制約を無効にする、または修正する第2のユーザに応答して、パラメトリック幾何学形状エンジンによって、直接モデリングユーザインターフェースにおいてCADオブジェクトの修正を可能にすることを含む。別の実施形態では、方法は、幾何学形状を修正する許可が欠如している第2のユーザに応答して、パラメトリック幾何学形状エンジンによって、防止または拒絶することを含む。本発明の種々の実施形態の詳細は、添付図面および以下の説明で記載される。本発明の特徴および利点は、類似参照記号が全体を通して対応する要素を識別する、図面と併せて解釈された時に、以下に記載される発明を実施するための形態から、より明白となるであろう。図面では、類似参照数字は、概して、同一の、機能的に同様の、および/または構造的に同様の要素を示す。本開示は、とりわけ、動的に構成可能な製品設計の作成のため、コンピュータ支援設計における直接パラメトリック相互運用性のため、要求に応じたコンピュータ支援設計モデルの複数部分の動的ローディングのため、および/またはコンピュータ支援設計における直接モデリングインターフェースにおいてパラメトリック制約を守らせるための方法およびシステムを説明する。以下の種々の実施形態の説明を読む目的で、本明細書の項およびそれぞれの内容の以下の説明が役立ち得る。-A項は、本明細書で説明される実施形態を実践するために有用であり得る、ネットワーク環境およびコンピュータ環境を説明する。-B項は、パラメトリックコンピュータ支援設計モデルを作成および修正するための直接コンピュータ支援設計モデリングユーザインターフェースを使用するためのシステムおよび方法の実施形態を説明する。-C項は、ビジネス主導型アセンブリを作成するためのシステムおよび方法の実施形態を説明する。-D項は、要求に応じてコンピュータ支援設計モデルの複数部分を動的にロードするためのシステムおよび方法の実施形態を説明する。A.ネットワークおよびコンピュータ環境コンピュータ支援設計の方法およびシステムの実施形態の詳細を論議する前に、本明細書を実践するために有用であり得る、ネットワーク環境およびコンピュータ環境を簡潔に説明することが有用であり得る。ここで図1Aを参照すると、ネットワーク環境の実施形態が描写されている。概観すると、ネットワーク環境は、1つ以上のネットワーク104を介して1つ以上の遠隔マシン106a-106n概して、サーバ106または遠隔マシン106とも呼ばれると通信している、1つ以上のローカルマシン102a-102nローカルマシン102、クライアント102、クライアントノード102、クライアントマシン102、クライアントコンピュータ102、クライアントデバイス102、エンドポイント102、またはエンドポイントノード102とも呼ばれるとを備えている。いくつかの実施形態では、ローカルマシン102は、サーバによって提供されるリソースへのアクセスを求めるクライアントノード、および他のクライアント102a-102nのためのホスト型リソースへのアクセスを提供するサーバの両方として機能する能力を有する。図1Aは、ローカルマシン102と遠隔マシン106との間のネットワーク104を示すが、ローカルマシン102および遠隔マシン106は、同じネットワーク104上にあり得る。ネットワーク104は、企業イントラネット、メトロポリタンエリアネットワークMAN等のローカルエリアネットワークLAN、またはインターネットあるいはワールドワイドウェブ等の広域ネットワークWANであり得る。いくつかの実施形態では、ローカルマシン102と遠隔マシン106との間に複数のネットワーク104がある。これらの実施形態のうちの1つでは、ネットワーク104’図示せずは、私的ネットワークであり得、ネットワーク104は、公衆ネットワークであり得る。これらの実施形態のうちの別の1つでは、ネットワーク104は、私的ネットワークであり得、ネットワーク104’は、公衆ネットワークであり得る。なおも別の実施形態では、ネットワーク104および104’は、私的ネットワークであり得る。さらに別の実施形態では、ネットワーク104および104’は、公衆ネットワークであり得る。ネットワーク104は、任意の種類および/または形態のネットワークであり得、2点間ネットワーク、放送ネットワーク、広域ネットワーク、ローカルエリアネットワーク、電気通信ネットワーク、データ通信ネットワーク、コンピュータネットワーク、ATM非同期転送モードネットワーク、SONET同期光ネットワークネットワーク、SDH同期デジタル階層ネットワーク、無線ネットワーク、および有線ネットワークのうちのいずれかであり得る。いくつかの実施形態では、ネットワーク104は、赤外線チャネルまたは衛星帯等の無線リンクを備え得る。ネットワーク104のトポロジーは、バス、スター、またはリングネットワークトポロジーであり得る。ネットワーク104は、本明細書で説明される動作をサポートすることが可能である、当業者に公知であるもの等の任意のネットワークトポロジーであり得る。ネットワークは、AMPS、TDMA、CDMA、GSM登録商標、GPRS、またはUMTSを含む、モバイルデバイス間で通信するために使用される任意の1つまたは複数のプロトコルを利用する、携帯電話ネットワークを備え得る。いくつかの実施形態では、異なる種類のデータが、異なるプロトコルを介して伝送され得る。他の実施形態では、同じ種類のデータが、異なるプロトコルを介して伝送され得る。いくつかの実施形態では、システムは、複数の論理的にグループ化された遠隔マシン106を含み得る。これらの実施形態のうちの1つでは、遠隔マシンの論理グループは、サーバファーム38と呼ばれ得る。これらの実施形態のうちの別の1つでは、遠隔マシン106は、地理的に分散され得る。他の実施形態では、サーバファーム38は、単一のエンティティとして運営され得る。なおも他の実施形態では、サーバファーム38は、複数のサーバファーム38を備えている。各サーバファーム38内の遠隔マシン106は、異種であり得、遠隔マシン106のうちの1つ以上は、一種類のオペレーティングシステムプラットフォーム例えば、WINDOWS登録商標NT、WINDOWS登録商標2003、WINDOWS登録商標2008、WINDOWS登録商標7、およびWINDOWS登録商標Server2008R2、その全ては、MicrosoftCorp.Redmond,Washingtonによって製造されているに従って動作することができる一方で、他の遠隔マシン106のうちの1つ以上は、別の種類のオペレーティングシステムプラットフォーム例えば、Unix登録商標またはLinux登録商標に従って動作することができる。各サーバファーム38の遠隔マシン106は、同じサーバファーム38の中の別の遠隔マシン106に物理的に近接する必要はない。したがって、サーバファーム38として論理的にグループ化された遠隔マシン106のグループは、広域ネットワークWAN接続またはメトロポリタンエリアネットワークMAN接続を使用して、相互接続され得る。例えば、サーバファーム38は、異なる大陸、または大陸、国、州、都市、キャンパス、あるいは部屋の異なる領域の中に物理的に位置する、遠隔マシン106を含み得る。サーバファーム38の中の遠隔マシン106の間のデータ伝送速度は、ローカルネットワークLAN接続または何らかの形態の直接接続を使用して遠隔マシン106が接続された場合に、増加させることができる。遠隔マシン106は、ファイルサーバ、アプリケーションサーバ、ウェブサーバ、プロキシサーバ、アプライアンス、ネットワークアプライアンス、ゲートウェイ、アプリケーションゲートウェイ、ゲートウェイサーバ、仮想化サーバ、展開サーバ、SSLVPNサーバ、またはファイアウォールであり得る。いくつかの実施形態では、遠隔マシン106は、遠隔認証ダイヤルインユーザサービスを提供し、RADIUSサーバと呼ばれる。他の実施形態では、遠隔マシン106は、アプリケーションサーバとして、またはマスタアプリケーションサーバとして機能する能力を有し得る。なおも他の実施形態では、遠隔マシン106は、ブレードサーバである。さらに他の実施形態では、遠隔マシン106は、ユーザまたはクライアントコンピュータ102にコンピュータ環境へのアクセスを提供する、仮想マシンを実行する。一実施形態では、遠隔マシン106は、アクティブディレクトリを含み得る。遠隔マシン106は、アプリケーション加速アプライアンスであり得る。遠隔マシン106がアプリケーション加速アプライアンスである実施形態について、遠隔マシン106は、ファイアウォール機能性、アプリケーションファイアウォール機能性、またはロードバランシング機能性を含む、機能性を提供し得る。いくつかの実施形態では、遠隔マシン106は、CitrixApplicationNetworkingGroupSanJose,CA、またはSilverPeakSystems,Inc.MountainView,CA、またはRiverbedTechnology,Inc.SanFrancisco,CA、またはF5Networks,Inc.Seattle,WA、またはJuniperNetworks,Inc.Sunnyvale,CAによって製造される、一連のアプライアンスのうちの1つ等のアプライアンスを備えている。いくつかの実施形態では、遠隔マシン106は、ローカルマシン102のユーザの代わりにアプリケーションを実行する。他の実施形態では、遠隔マシン106は、その内側でローカルマシン102のユーザの代わりにアプリケーションが実行される、実行セッションを提供する、仮想マシンを実行する。これらの実施形態のうちの1つでは、実行セッションは、ホスト型デスクトップセッションである。これらの実施形態のうちの別の1つでは、実行セッションは、アプリケーション、複数のアプリケーション、デスクトップアプリケーション、および1つ以上のアプリケーションが実行され得るデスクトップセッションのうちの1つ以上を含み得る、コンピュータ環境へのアクセスを提供する。いくつかの実施形態では、ローカルマシン102は、遠隔マシン106と通信する。一実施形態では、ローカルマシン102は、サーバファーム38の中の遠隔マシン106のうちの1つと直接通信する。別の実施形態では、ローカルマシン102は、サーバファーム38の中の遠隔マシン106と通信するように、プログラム隣接アプリケーションを実行する。なおも別の実施形態では、遠隔マシン106は、マスタノードの機能性を提供する。いくつかの実施形態では、ローカルマシン102は、ネットワーク104を通して、サーバファーム38の中の遠隔マシン106と通信する。ネットワーク104上で、ローカルマシン102は、例えば、サーバファーム38の中の遠隔マシン106a-106nによってホストされる種々のアプリケーションの実行を要求し、表示するためのアプリケーション実行の結果の出力を受信することができる。いくつかの実施形態では、マスタノードのみが、要求されたアプリケーションをホストする遠隔マシン106bに関連付けられるアドレス情報を識別して提供するために必要とされる、機能性を提供する。一実施形態では、遠隔マシン106は、ウェブサーバの機能性を提供する。別の実施形態では、遠隔マシン106aは、ローカルマシン102から要求を受信し、要求を第2の遠隔マシン106bに転送し、遠隔マシン106bからの要求への応答とともに、ローカルマシン102による要求に応答する。なおも別の実施形態では、遠隔マシン106aは、ローカルマシン102に利用可能なアプリケーションの列挙、およびアプリケーションの列挙によって識別されるアプリケーションをホストする遠隔マシン106bに関連付けられるアドレス情報を取得する。さらに別の実施形態では、遠隔マシン106は、ウェブインターフェースを使用して、ローカルマシン102への要求への応答を提示する。一実施形態では、ローカルマシン102は、識別されたアプリケーションにアクセスするように、遠隔マシン106と直接通信する。別の実施形態では、ローカルマシン102は、遠隔マシン106上の識別されたアプリケーションの実行によって生成される、表示データ等の出力データを受信する。いくつかの実施形態では、遠隔マシン106またはサーバファーム38は、シンクライアントコンピューティングを提供するアプリケーション、または遠隔ディスプレイプレゼンテーションアプリケーション等の1つ以上のアプリケーションを実行し得る。一実施形態では、遠隔マシン106またはサーバファーム38は、METAフレームまたはCITRIXPRESENTATIONSERVER製品等のCitrixSystems,Inc.によるCITRIXACCESSSUITEの任意の部分、CITRIXXENAPP、CITRIXXENDESKTOP、CITRIXACCESSGATEWAYといったCitrixSystems,Inc.によって製造される製品のうちのいずれか、および/またはMicrosoftCorporationによって製造されるMICROSOFTWINDOWS登録商標ターミナルサービスのうちのいずれかを、アプリケーションとして実行する。別の実施形態では、アプリケーションは、CitrixSystems,Inc.FortLauderdale,Floridaによって開発されたICAクライアントである。なおも別の実施形態では、遠隔マシン106は、例えば、MicrosoftCorporationRedmond,Washingtonによって製造されているMICROSOFTEXCHANGE等のEメールサービスを提供するアプリケーションサーバ、ウェブまたはインターネットサーバ、あるいはデスクトップ共有サーバ、あるいは協調サーバであり得る、アプリケーションを実行し得る。さらに別の実施形態では、アプリケーションのうちのいずれかは、CitrixOnlineDivision,Inc.SantaBarbara,Californiaによって提供されるGOTOMEETING、WebEx,Inc.SantaClara,Californiaによって提供されるWEBEX、またはMicrosoftCorporationRedmond,Washingtonによって提供されるMicrosoftOfficeLIVEMEETING等の任意の種類のホスト型サービスまたは製品を備え得る。ローカルマシン102は、任意の種類および/または形態のウェブブラウザ、ウェブベースのクライアント、クライアントサーバアプリケーション、シンクライアントコンピューティングクライアント、ActiveXコントロール、またはJava登録商標アプレット等の任意の種類および/または形態のソフトウェア、プログラム、または実行可能命令、あるいはローカルマシン102上で実行することが可能な任意の種類および/または形態の実行可能命令であり得る、アプリケーションを実行し、操作し、または別様に提供し得る。いくつかの実施形態では、アプリケーションは、遠隔マシン106上のローカルマシン102の代わりに実行される、サーバベースまたは遠隔ベースのアプリケーションであり得る。他の実施形態では、遠隔マシン106は、CitrixSystems,Inc.Ft.Lauderdale,Floridaによって製造されるIndependentComputingArchitectureICAプロトコル、MicrosoftCorporationRedmond,Washingtonによって製造されるRemoteDesktopProtocolRDP、X11プロトコル、ATTBellLabsによって製造されるVirtualNetworkComputingVNCプロトコル、Qumranet,Inc.Sunnyvale,CA,USAおよびRaanana,Israelによって製造されるSPICEプロトコル、VESAMilpitas,CAによって製造されるNet2Displayプロトコル、TeradiciCorporationBurnaby,B.C.によって製造されるPC-over-IPプロトコル、WyseTechnology,Inc.SanJose,CAによって製造されるTCXプロトコル、CityofNewYorkのColumbiaUniversityNewYork,NYによって開発されたTHINCプロトコル、またはDesktone,Inc.Chelmsford,MAによって製造されるVirtual-Dプロトコル等の、任意のシンクライアントプロトコル、プレゼンテーション層プロトコル、または遠隔表示プロトコルを使用して、ローカルマシン102への出力を表示し得る。アプリケーションは、任意の種類のプロトコルを使用することができ、それは、例えば、HTTPクライアント、FTPクライアント、Oscarクライアント、またはTelnetクライアントであり得る。なおも他の実施形態では、アプリケーションは、ソフトIP電話等のボイスオーバーインターネットプロトコルVoIP通信に関係する任意の種類のソフトウェアを備えている。さらなる実施形態では、アプリケーションは、ビデオおよび/またはオーディオをストリーミング配信するためのアプリケーション等のリアルタイムデータ通信に関係する任意のアプリケーションを備えている。他の実施形態では、アプリケーションは、コンピュータ支援設計CAD、コンピュータ支援製造CAM、コンピュータ支援エンジニアリングCAE、製品ライフサイクル管理PLM、プロジェクト管理、リソース管理、顧客関係管理CRM、あるいはデータの生成、修正、モデリング、および/または分析のための任意の他のアプリケーションに関係する任意のアプリケーションを備えている。ローカルマシン102および遠隔マシン106は、任意の種類および形態のネットワーク上で通信し、本明細書で説明される動作を行うことが可能なコンピュータ、ネットワークデバイス、またはアプライアンス等の任意の種類および形態のコンピュータデバイスとして展開され、および/またはその上で実行され得る。図1Bおよび1Cは、ローカルマシン102または遠隔マシン106の実施形態を実践するために有用なコンピュータデバイス100のブロック図を描写する。図1Bおよび1Cに示されるように、各コンピュータデバイス100は、中央処理ユニット121と、主要メモリユニット122とを含む。図1Bに示されるように、コンピュータデバイス100は、記憶デバイス128と、インストールデバイス116と、ネットワークインターフェース118と、I/Oコントローラ123と、表示デバイス124a-nと、キーボード126と、マウス等のポインティングデバイス127とを含み得る。記憶デバイス128は、限定するものではないが、オペレーティングシステムと、ソフトウェアと、クライアントエージェント120とを含み得る。図1Cに示されるように、各コンピュータデバイス100はまた、メモリポート103、ブリッジ170、1つ以上の入力/出力デバイス130a-130n概して、参照数字130を使用して参照される、および中央処理ユニット121と通信しているキャッシュメモリ140等の追加のオプションの要素を含み得る。中央処理ユニット121は、主要メモリユニット122から取り出された命令に応答し、それらを処理する、任意の論理回路である。多くの実施形態では、中央処理ユニット121は、IntelCorporationMountainView,Californiaによって製造されるもの、MotorolaCorporationSchaumburg,Illinoisによって製造されるもの、TransmetaCorporationSantaClara,Californiaによって製造されるもの、RS/6000プロセッサ、InternationalBusinessMachinesWhitePlains,NewYorkによって製造されるもの、またはAdvancedMicroDevicesSunnyvale,Californiaによって製造されるもの等のマイクロプロセッサユニットによって提供される。コンピュータデバイス100は、これらのプロセッサのうちのいずれか、または本明細書で説明されるように動作することが可能な任意の他のプロセッサに基づき得る。主要メモリユニット122は、スタティックランダムアクセスメモリSRAM、バーストSRAMまたは同期バーストSRAMBSRAM、ダイナミックランダムアクセスメモリDRAM、高速ページモードDRAMFPMDRAM、強化DRAMEDRAM、拡張データ出力RAMEDORAM、拡張データ出力DRAMEDODRAM、バースト拡張データ出力DRAMBEDODRAM、強化DRAMEDRAM、同期DRAMSDRAM、JEDECSRAM、PC100SDRAM、ダブルデータレートSDRAMDDRSDRAM、強化SDRAMESDRAM、SyncLinkDRAMSLDRAM、DirectRambusDRAMDRDRAM、または強誘電体RAMFRAM登録商標等のデータを記憶することが可能であり、任意の記憶場所がマイクロプロセッサ121によって直接アクセスすることを可能にする、1つ以上のメモリチップであり得る。主要メモリ122は、上記のメモリチップのうちのいずれか、または本明細書で説明されるように動作することが可能である任意の他の利用可能なメモリチップに基づき得る。図1Bに示される実施形態では、プロセッサ121は、システムバス150を介して主要メモリ122と通信する以下でさらに詳細に説明される。図1Cは、プロセッサがメモリポート103を介して主要メモリ122と直接通信する、コンピュータデバイス100の実施形態を描写する。例えば、図1Cでは、主要メモリ122は、DRDRAMであり得る。図1Cは、主要プロセッサ121が、バックサイドバスと呼ばれることもある二次バスを介して、キャッシュメモリ140と直接通信する、実施形態を描写する。他の実施形態では、主要プロセッサ121は、システムバス150を使用してキャッシュメモリ140と通信する。キャッシュメモリ140は、典型的には、主要メモリ122よりも速い応答時間を有し、典型的には、SRAM、BSRAM、またはEDRAMによって提供される。図1Bに示される実施形態では、プロセッサ121は、ローカルシステムバス150を介して種々のI/Oデバイス130と通信する。中央処理ユニット121をI/Oデバイス130のうちのいずれかに接続するために、VESAVLバス、ISAバス、EISAバス、MicroChannelArchitectureMCAバス、PCIバス、PCI-Xバス、PCI-Expressバス、またはNuBusを含む、種々のバスが使用され得る。I/Oデバイスがビデオディスプレイ124である実施形態については、プロセッサ121は、ディスプレイ124と通信するためにAdvancedGraphicsPortAGPを使用し得る。図1Cは、主要プロセッサ121が、HYPERTRANSPORT、RAPIDIO、またはINFINIBAND通信技術を介してI/Oデバイス130bと直接通信する、コンピュータ100の実施形態を描写する。図1Cはまた、ローカルバスおよび直接通信が混合される、実施形態も描写し、プロセッサ121は、I/Oデバイス130bと直接通信しながら、ローカル相互接続バスを使用してI/Oデバイス130aと通信する。多種多様のI/Oデバイス130a-130nが、コンピュータデバイス100の中に存在し得る。入力デバイスは、キーボード、マウス、トラックパッド、トラックボール、マイクロホン、およびドローイングタブレットを含む。出力デバイスは、ビデオディスプレイ、スピーカ、インクジェットプリンタ、レーザプリンタ、および昇華型プリンタを含む。図1Bに示されるようなI/Oコントローラ123は、I/Oデバイスを制御し得る。I/Oコントローラは、キーボード126およびポインティングデバイス127、例えば、マウスまたは光学ペン等の1つ以上のI/Oデバイスを制御し得る。さらに、I/Oデバイスは、コンピュータデバイス100用の記憶および/またはインストール媒体116を提供し得る。なおも他の実施形態では、コンピュータデバイス100は、TwintechIndustry,Inc.LosAlamitos,Californiaによって製造されるUSBFlashDrive系列のデバイス等の手持ち式USB記憶デバイスを受け取るために、USB接続図示せずを提供し得る。図1Bを再び参照すると、コンピュータデバイス100は、3.5インチ、5.25インチディスク、またはZIPディスク等のフロッピー登録商標ディスクを受け取るためのフロッピー登録商標ディスクドライブ、CD-ROMドライブ、CD-R/RWドライブ、DVD-ROMドライブ、種々の形式のテープドライブ、USBデバイス、ハードドライブ、またはソフトウェアおよびプログラムをインストールするために好適な任意の他のデバイス等の任意の好適なインストールデバイス116をサポートし得る。コンピュータデバイス100はさらに、オペレーティングシステムおよび他の関連ソフトウェアを記憶するため、およびクライアントエージェント120に関係する任意のプログラム等のアプリケーションソフトウェアプログラムを記憶するために、1つ以上のハードディスクドライブまたは独立ディスク冗長アレイ等の記憶デバイスを備え得る。随意で、インストールデバイス116のうちのいずれかはまた、記憶デバイスとして使用することもできる。加えて、オペレーティングシステムおよびソフトウェアは、ブート可能媒体、例えば、knoppix.netからのGNU/Linux登録商標配布として入手可能であるGNU/Linux登録商標用のブート可能CDである、KNOPPIX等のブート可能CDから実行することができる。さらに、コンピュータデバイス100は、標準電話回線、LANまたはWANリンク例えば、802.11、T1、T3、56kb、X.25、SNA、DECNET、ブロードバンド接続例えば、ISDN、フレームリレー、ATM、ギガビットイーサネット登録商標、イーサネット登録商標オーバーSONET、無線接続、または上記のうちのいずれかまたは全ての何らかの組み合わせを含むが、それらに限定されない、種々の接続を通して、ネットワーク104にインターフェース接続するように、ネットワークインターフェース118を含み得る。接続は、種々の通信プロトコル例えば、TCP/IP、IPX、SPX、NetBIOS、イーサネット登録商標、ARCNET、SONET、SDH、光ファイバ分散データインターフェースFDDI、RS232、IEEE802.11、IEEE802.11a、IEEE802.11b、IEEE802.11g、CDMA、GSM登録商標、WiMax、および直接非同期接続を使用して、確立することができる。一実施形態では、コンピュータデバイス100は、SecureSocketLayerSSLまたはTransportLayerSecurityTLS、あるいはCitrixSystems,Inc.Ft.Lauderdale,Floridaによって製造されるCitrixGatewayProtocol等の任意の種類および/または形態のゲートウェイまたはトンネリングプロトコルを介して、他のコンピュータデバイス100’と通信する。ネットワークインターフェース118は、内蔵ネットワークアダプタ、ネットワークインターフェースカード、PCMCIAネットワークカード、カードバスネットワークアダプタ、無線ネットワークアダプタ、USBネットワークアダプタ、モデム、または通信が可能であり、本明細書で説明される動作を行う、任意の種類のネットワークにコンピュータデバイス100をインターフェース接続するために好適な任意の他のデバイスを備え得る。いくつかの実施形態では、コンピュータデバイス100は、それぞれ、同じまたは異なる種類および/または形態であり得る、複数の表示デバイス124a-124nを備え得るか、またはそれらに接続され得る。そのようなものとして、I/Oデバイス130a-130nおよび/またはI/Oコントローラ123のうちのいずれかは、コンピュータデバイス100による複数の表示デバイス124a-124nの接続および使用をサポートし、有効にし、または提供するように、任意の種類および/または形態の好適なハードウェア、ソフトウェア、またはハードウェアおよびソフトウェアの組み合わせを備え得る。例えば、コンピュータデバイス100は、表示デバイス124a-124nをインターフェース接続し、通信し、接続し、または別様に使用するように、任意の種類および/または形態のビデオアダプタ、ビデオカード、ドライバ、および/またはライブラリを含み得る。一実施形態では、ビデオアダプタは、複数の表示デバイス124a-124nにインターフェース接続するように、複数のコネクタを備え得る。他の実施形態では、コンピュータデバイス100は、複数のビデオアダプタを含み得、各ビデオアダプタは、表示デバイス124a-124nのうちの1つ以上に接続される。いくつかの実施形態では、コンピュータデバイス100のオペレーティングシステムの任意の部分が、複数の表示デバイス124a-124nを使用するために構成され得る。他の実施形態では、表示デバイス124a-124nのうちの1つ以上は、例えば、ネットワークを介して、コンピュータデバイス100に接続されるコンピュータデバイス100aおよび100b等の1つ以上の他のコンピュータデバイスによって提供され得る。これらの実施形態は、コンピュータデバイス100用の第2の表示デバイス124aとして別のコンピュータの表示デバイスを使用するように設計および構築される、任意の種類のソフトウェアを含み得る。当業者であれば、コンピュータデバイス100が複数の表示デバイス124a-124nを有するように構成され得る、種々の方法および実施形態を認識および理解するであろう。さらなる実施形態では、I/Oデバイス130は、USBバス、AppleDesktopバス、RS-232シリアル接続、SCSIバス、FireWireバス、FireWire800バス、イーサネット登録商標バス、AppleTalkバス、ギガビットイーサネット登録商標バス、非同期転送モードバス、HIPPIバス、スーパーHIPPIバス、SerialPlusバス、SCI/LAMPバス、FibreChannelバス、またはシリアルアタッチド小型コンピュータシステムインターフェースバス等の、システムバス150と外部通信バスとの間のブリッジであり得る。図1Bおよび1Cで描写される種類のコンピュータデバイス100は、典型的には、タスクのスケジューリングおよびシステムリソースへのアクセスを制御する、オペレーティングシステムの制御下で動作する。コンピュータデバイス100は、MICROSOFTWINDOWS登録商標オペレーティングシステムのバージョンのうちのいずれか、Unix登録商標およびLinux登録商標オペレーティングシステムの異なるリリース、Macintoshコンピュータ用のMACOSの任意のバージョン、任意の組み込みオペレーティングシステム、任意のリアルタイムオペレーティングシステム、任意のオープンソースオペレーティングシステム、任意の専有オペレーティングシステム、移動型コンピュータデバイス用の任意のオペレーティングシステム、またはコンピュータデバイス上で実行し、本明細書で説明される動作を行うことが可能な任意の他のオペレーティングシステム等の任意のオペレーティングシステムを実行することができる。典型的なオペレーティングシステムは、とりわけ、その全てがMicrosoftCorporationRedmond,Washingtonによって製造されている、WINDOWS登録商標3.x、WINDOWS登録商標95、WINDOWS登録商標98、WINDOWS登録商標2000、WINDOWS登録商標NT3.51、WINDOWS登録商標NT4.0、WINDOWS登録商標7、WINDOWS登録商標CE、WINDOWS登録商標XP、およびWINDOWS登録商標VISTA、AppleInc.Cupertino,Californiaによって製造されるMACOS、InternationalBusinessMachinesArmonk,NewYorkによって製造されるOS/2、CalderaCorp.SaltLakeCity,Utahによって配布される自由に利用可能なオペレーティングシステムであるLinux登録商標、あるいは任意の種類および/または形態のUnix登録商標オペレーティングシステムを含むが、それらに限定されない。コンピュータデバイス100は、任意のワークステーション、デスクトップコンピュータ、ラップトップまたはノートブックコンピュータ、サーバ、手持ち式コンピュータ、携帯電話または他の携帯用電気通信デバイス、メディア再生デバイス、ゲームシステム、移動型コンピュータデバイス、あるいは通信が可能であり、本明細書で説明される動作を行うのに十分なプロセッサ能力およびメモリ容量を有する、任意の他の種類および/または形態のコンピュータ、電気通信、またはメディアデバイスであり得る。例えば、コンピュータデバイス100は、AppleInc.Cupertino,Californiaによって製造されるIPOD群のデバイス、SonyCorporationTokyo,Japanによって製造されるPLAYSTATION2、PLAYSTATION3、またはPERSONALPLAYSTATIONPORTABLEPSPデバイス、NintendoCo.,Ltd.Kyoto,Japanによって製造されるNINTENDODS、NINTENDOGAMEBOY、NINTENDOGAMEBOYADVANCED、またはNINTENDOREVOLUTIONデバイス、あるいはMicrosoftCorporationRedmond,Washingtonによって製造されるXBOXまたはXBOX360デバイスを備え得る。いくつかの実施形態では、コンピュータデバイス100は、デバイスと整列する、異なるプロセッサ、オペレーティングシステム、および入力デバイスを有し得る。例えば、一実施形態では、コンピュータデバイス100は、Palm,Inc.によって製造されるTREO180、270、600、650、680、700p、700w/wx、750、755p、800w、Centro、またはProスマートフォンである。これらの実施形態のうちのいくつかでは、TREOスマートフォンは、PalmOSオペレーティングシステムの制御下で操作され、スタイラス入力デバイスならびに方向ナビゲータデバイスを含む。他の実施形態では、コンピュータデバイス100は、その全てがMotorolaCorp.Schaumburg,Illinoisによって製造されている、i55sr、i58sr、i85s、i88s、i90c、i95cl、i335、i365、i570、I576、i580、i615、i760、i836、i850、i870、i880、i920、i930、ic502、ic602、ic902、i776、またはim1100、KyoceraKyoto,Japanによって製造される6035または7135、あるいはSamsungElectronicsCo.,Ltd.Seoul,Koreaによって製造されるi300またはi330等の、JAVA登録商標使用可能携帯電話または携帯情報端末PDA等のモバイルデバイスである。いくつかの実施形態では、コンピュータデバイス100は、NokiaFinlandによって、またはSonyEricssonMobileCommunicationsABLund,Swedenによって製造されるモバイルデバイスである。なおもさらなる実施形態では、コンピュータデバイス100は、Blackberry7100系、8700系、7700系、7200系、Blackberry7520、BlackberryPEARL8100、8700系、8800系、BlackberryStorm、BlackberryBold、BlackberryCurve8900、およびBlackberryPearlFlipを含む、ResearchInMotionLimitedによって製造されるデバイス等のBlackberry手持ち式またはスマートフォンである。さらに他の実施形態では、コンピュータデバイス100は、MicrosoftWindows登録商標MobileSoftwareをサポートする、スマートフォン、ポケットPC、ポケットPCフォン、または他の手持ち式モバイルデバイスである。また、コンピュータデバイス100は、任意のワークステーション、デスクトップコンピュータ、ラップトップまたはノートブックコンピュータ、サーバ、手持ち式コンピュータ、携帯電話、任意の他のコンピュータ、あるいは通信が可能であり、本明細書で説明される動作を行うのに十分なプロセッサ能力およびメモリ容量を有する、他の形態のコンピュータまたは電気通信デバイスであり得る。いくつかの実施形態では、コンピュータデバイス100は、デジタルオーディオプレーヤである。これらの実施形態のうちの1つでは、コンピュータデバイス100は、AppleInc.Cupertino,Californiaによって製造される、AppleIPOD、IPODTouch、IPODNANO、およびIPODSHUFFLE系列のデバイス等のデジタルオーディオプレーヤである。これらの実施形態のうちの別の1つでは、デジタルオーディオプレーヤは、携帯用メディアプレーヤおよび大容量記憶デバイスの両方として機能し得る。他の実施形態では、コンピュータデバイス100は、SamsungElectronicsAmericaRidgefieldPark,NJによって製造されるDigitalAudioPlayerSelectMP3プレーヤ、あるいはMotorolaInc.Schaumburg,ILによって製造されるMotorolam500またはm25DigitalAudioPlayer等のデジタルオーディオプレーヤである。なおも他の実施形態では、コンピュータデバイス100は、CreativeTechnologiesLtd.によって製造されるZenVisionW、ZenVision系、ZenPortableMediaCenterデバイス、またはDigitalMP3系列のMP3プレーヤ等の携帯用メディアプレーヤである。さらに他の実施形態では、コンピュータデバイス100は、MP3、WAV、M4A/AAC、WMA保護付きAAC、AIFF、Audibleオーディオブック、AppleLosslessオーディオファイル形式、ならびに.mov、.m4v、および.mp4MPEG-4H.264/MPEG-4AVCビデオファイル形式を含む、それらに限定されない、ファイル形式をサポートする携帯用メディアプレーヤまたはデジタルオーディオプレーヤである。いくつかの実施形態では、コンピュータデバイス100は、デジタルオーディオプレーヤまたは携帯用メディアプレーヤと組み合わせたスマートフォン等のデバイスの組み合わせを備えている。これらの実施形態のうちの1つでは、コンピュータデバイス100は、MotorolaRAZRまたはMotorolaROKR系列の複合デジタルオーディオプレーヤおよびスマートフォンである。これらの実施形態のうちの別の1つでは、コンピュータデバイス100は、AppleInc.Cupertino,Californiaによって製造されるiPhone系列のスマートフォンの中のデバイスである。一実施形態では、コンピュータデバイス102aは、遠隔マシン106の機能性をクライアント102bに提供しながら、遠隔マシン106からリソースを要求し得る。そのような実施形態では、コンピュータデバイス102aは、サーバと呼ばれ得る遠隔マシン106から受信されたデータに対してクライアントと呼ばれ得、コンピュータデバイス102aは、第2のクライアント102bに対してサーバと呼ばれ得る。別の実施形態では、クライアント102は、クライアント102のユーザの代わりに遠隔マシン106からリソースを要求し得る。図1Dに示されるように、コンピュータデバイス100は、複数のプロセッサを備え得、命令の同時実行のため、または1つよりも多くのデータについての1つの命令の同時実行のための機能性を提供し得る。いくつかの実施形態では、コンピュータデバイス100は、1つ以上のコアを伴う並列プロセッサを備え得る。これらの実施形態のうちの1つでは、コンピュータデバイス100は、単一のグローバルアドレス空間としての全ての利用可能なメモリにアクセスする、複数のプロセッサおよび/またはプロセッサコアを伴う共有メモリ並列デバイスである。これらの実施形態のうちの別の1つでは、コンピュータデバイス100は、それぞれローカルメモリのみにアクセスする、複数のプロセッサを伴う分散型メモリ並列デバイスである。これらの実施形態のうちのなおも別の1つでは、コンピュータデバイス100は、共有されるいくらかのメモリ、および特定のプロセッサまたは一部のプロセッサのみによってアクセスすることができるいくらかのメモリの両方を有する。これらの実施形態のうちのなおもさらに別の1つでは、マルチコアマイクロプロセッサ等のコンピュータデバイス100は、2つ以上の独立プロセッサを、しばしば単一の集積回路ICである、単一のパッケージに組み込む。これらの実施形態のうちのさらに別の1つでは、コンピュータデバイス100は、CELLBROADBANDENGINEアーキテクチャを有し、Powerプロセッサ要素と、複数の相乗的処理要素とを含む、チップを含み、Powerプロセッサ要素および複数の相乗的処理要素は、要素相互接続バスと呼ばれ得る、内部高速バスによってともに連結される。いくつかの実施形態では、プロセッサは、複数のデータについての単一の命令を同時に実行するための機能性SIMDを提供する。他の実施形態では、プロセッサは、複数のデータについての複数の命令を同時に実行するための機能性MIMDを提供する。なおも他の実施形態では、プロセッサは、単一のデバイスでSIMDおよびMIMDコアの任意の組み合わせを使用し得る。いくつかの実施形態では、コンピュータデバイス100は、グラフィックス処理ユニットを備え得る。図1Eで描写される、これらの実施形態のうちの1つでは、コンピュータデバイス100は、少なくとも1つの中央処理ユニット121と、少なくとも1つのグラフィックス処理ユニットとを含む。これらの実施形態のうちの別の1つでは、コンピュータデバイス100は、少なくとも1つの並列処理ユニットと、少なくとも1つのグラフィックス処理ユニットとを含む。これらの実施形態のうちのなおも別の1つでは、コンピュータデバイス100は、任意の種類の複数の処理ユニットを含み、複数の処理ユニットのうちの1つは、グラフィックス処理ユニットを備えている。一実施形態では、リソースは、プログラム、アプリケーション、ドキュメント、ファイル、複数のアプリケーション、複数のファイル、実行可能プログラムファイル、デスクトップ環境、コンピュータ環境、またはローカルコンピュータデバイス102のユーザに利用可能にされる他のリソースであり得る。リソースは、直接的にローカルコンピュータデバイス102上での従来のインストール、アプリケーションストリーミングのための方法を介したローカルコンピュータデバイス102への配信、第3のコンピュータデバイス106b上でのリソースの実行によって生成され、プレゼンテーション層プロトコルを介してローカルコンピュータデバイス102に伝達される出力データのローカルコンピュータデバイス102への配信、遠隔コンピュータデバイス106上で実行する仮想マシンを介したリソースの実行によって生成される、出力データのローカルコンピュータデバイス102への配信、あるいはUSBデバイス等のローカルコンピュータデバイス102に接続される可撤性記憶デバイスからの実行、またはローカルコンピュータデバイス102上で実行し、出力データを生成する仮想マシンを介した実行を含むが、それらに限定されない、複数のアクセス方法を介して、ローカルコンピュータデバイス102に配信され得る。いくつかの実施形態では、ローカルコンピュータデバイス102は、リソースの実行によって生成された出力データを別のクライアントコンピュータデバイス102bに伝送する。いくつかの実施形態では、ローカルコンピュータデバイス102のユーザは、遠隔コンピュータデバイス106に接続し、遠隔コンピュータデバイス106上で生成される、複数のデータオブジェクトを含む、遠隔デスクトップ環境のローカルバージョンの表示をローカルコンピュータデバイス102上で視認する。これらの実施形態のうちの1つでは、少なくとも1つのリソースは、遠隔コンピュータデバイス106によってまたは第2の遠隔コンピュータデバイス106bによってユーザに提供され、遠隔デスクトップで表示される。しかしながら、選択によって、あるいは方針または技術的要件により、ユーザがローカルコンピュータデバイス102上で実行するリソースがあり得る。これらの実施形態のうちの別の1つでは、ローカルコンピュータデバイス102のユーザは、別個のマシンによって提供されるリソースの別個のデスクトップ環境の代わりに、ユーザに利用可能なリソースの全てへのアクセスを提供する、統合デスクトップ環境を好む。例えば、ユーザは、複数のグラフィック表示間をナビゲートすることが、紛らわしく、生産的に使用しにくいと感じる場合がある。または、ユーザは、異なるマシンによって提供される別のリソースと併せて、1つのマシンによって提供される1つのアプリケーションによって生成されるデータを使用することを希望し得る。これらの実施形態のうちのなおも別の1つでは、遠隔リソースおよびローカルリソースの表示を統合する遠隔デスクトップ環境と相互作用することによって、リソースの実行、ウィンドウウィング移動、アプリケーション最小化/最大化、ウィンドウのサイズ変更、リソース実行の終了に対する要求が制御され得る。これらの実施形態のうちのさらに別の1つでは、アプリケーション、またはローカルコンピュータデバイス102上で実行されるリソース、および遠隔コンピュータデバイス106上で実行されるリソースを含む、統合デスクトップ環境を介してアクセス可能である他のリソースが、単一のデスクトップ環境内に示される。一実施形態では、遠隔コンピュータデバイス106からのデータオブジェクトは、ローカルコンピュータデバイス102によって生成されるデスクトップ環境に組み込まれる。別の実施形態では、遠隔コンピュータデバイス106は、統合デスクトップを維持する。なおも別の実施形態では、ローカルコンピュータデバイス102は、統合デスクトップを維持する。いくつかの実施形態では、単一の遠隔デスクトップ環境204が表示される。これらの実施形態のうちの1つでは、遠隔デスクトップ環境204は、フルスクリーンデスクトップとして表示される。他の実施形態では、複数の遠隔デスクトップ環境204が表示される。これらの実施形態のうちの1つでは、遠隔デスクトップ環境のうちの1つ以上は、1つ以上の表示デバイス124上に非フルスクリーンモードで表示される。これらの実施形態のうちの別の1つでは、遠隔デスクトップ環境は、個々の表示デバイス上にフルスクリーンモードで表示される。これらの実施形態のうちのなおも別の1つでは、遠隔デスクトップ環境のうちの1つ以上は、1つ以上の表示デバイス124上にフルスクリーンモードで表示される。B.パラメトリックコンピュータ支援設計モデルを作成および修正するために直接コンピュータ支援設計モデリングユーザインターフェースを使用するためのシステムおよび方法直接およびパラメトリックコンピュータ支援設計CADモデリングといった、3次元設計を開発するための2つのアプローチが、現在広く使用されている。両方のアプローチは、いくつかの固有の利点および不利点を有し、したがって、ユーザは、典型的には、アプリケーションに応じて、一方または他方のアプローチを選択してきた。要するに、直接モデリングは、3次元設計の容易かつ迅速な作成、およびモデル幾何学形状との直接的なオンザフライの相互作用を通した修正を可能にする。結果は、直観的な見たままが得られるWYSIWYG形式で表示される。結果として、直接モデリングは、学習しやすく、複雑なモデルの高速作成を可能にする。例えば、図2Aを参照すると、直接モデリングを通した、面取りした3次元オブジェクトの作成の実施形態のブロック図が示されている。ユーザは、2次元の正方形を作成し、正方形を3次元の立方体に引き出し得る。ユーザはまた、立体に対して45度斜めで配向された、別の3次元の角柱を作成し得る。次いで、ユーザは、立方体の角に重複させて角柱を位置付け、面取りした縁を作成するようにブール減算を行い得る。頂面および側面に沿った構築線、正面および背面に沿った斜め構築線を追加すること、ならびにこれらの線によって境界された領域を差し引くことを含む、面取りを作成する他の方法が存在する。直接モデリングでは、幾何学的操作がモデルに対して直接行われる。したがって、エンジニアは、要素の設計意図および連合を考慮する必要がない。これは、カスタムまたは1個限りの製品の急速開発サイクルおよび迅速な作成、ならびに非常に大型の高度に詳細なアセンブリの構築を可能にし得、CADシステムが、エンティティ間の関係を記憶し、相対的幾何学形状を計算するため、モデルは、メモリ内のより少ない空間を占めることができ、グラフィック情報のみが計算される必要があり、いずれのモデル従属性も計算および解決する必要がないため、性能がはるかに速くなり得る。連合パラメトリックモデリング、特徴ベースのモデリング、または履歴ベースhistory-basedのモデリングと呼ばれることもある、パラメトリックモデリングでは、幾何学形状が、2ステッププロセスを通して作成される。ユーザは、押出し、穴あけ、切断、隅肉づけ、面取り、丸め、およびその他を含む、特徴構築の使用を通して、幾何学形状構築レシピを定義する。パラメトリック幾何学形状エンジンは、これらのレシピを解釈し、モデリングおよび/または表示エンジンによる表示のためにモデルの幾何学形状を作成する。これらのレシピは、時には特徴履歴futurehistoriesと呼ばれ得、モデル化オブジェクトが設計される場合の、最終モデル化オブジェクトをモデル化する際に利用される特徴の一連の異なる組み合わせを備え得る。例えば、図2Bには、パラメトリックモデリングを通した、面取りした3次元オブジェクトの作成の実施形態のブロック図が示されている。ユーザが最初に、複数の縁の連合を通して正方形を定義する。いくつかの実施形態では、示されるように、縁が2つの頂点の連合を通して定義され得る一方で、他の実施形態では、縁は、別に縁に対する相対的位置、サイズ、および角度を通して、頂点、長さ、およびベクトルの方向によって、または任意の他の手段によって定義され得る。いくつかの実施形態では、ユーザは、正方形をスケッチし得、パラメトリック幾何学形状エンジンは、幾何学形状を縁および頂点の連合として解釈し得る。次いで、ユーザは、オブジェクトの面と垂直な方向に沿って正方形の押出しを定義する。いくつかの実施形態では、押出しの長さは、別の頂点、明示的な長さ、または任意の他の手段によって定義され得る。最終的に、示される実施形態では、ユーザは、オブジェクト、縁、および深さに関して面取りを定義することによって、面取りを作成する。プロセスにおける1つ以上のステップで、モデリングまたは表示エンジンが、命令リストまたはレシピを解釈して、表示されたモデルを作成する。直接モデリングと違って、パラメトリックモデリングが動作の順序または履歴historyを記憶するため、特徴間の関係が定義され得る。したがって、レシピの中の特徴の順序を変更することは、要素作成の順序が無関係である直接モデリングと違って、モデルに劇的な影響を及ぼす場合がある。しかしながら、このアプローチは、ユーザが命令リストの中の初期の特徴を編集することを可能にし、幾何学形状エンジンは、モデルを通して影響を再計算する。例えば、パラメトリックCADモデラでは、ユーザが押出しプレートを作成し、プレートの軸の中間点上に中心を置くように穴を定義し、後にプレートの寸法を変更する場合、幾何学形状エンジンは、中間点上に中心を置いたままとなるように穴を移動させ得る。しかしながら、直接CADモデラでは、穴を配置した後にプレートの面を伸張することは、穴が移動せず、中心から外れて位置されることをもたらし得る。別の実施例では、線が円の接線と垂直に、すなわち、円の中心および接点を通る線に沿った方向に定義されている等、角度関係がパラメトリックCADモデラで定義され得る。円の位置が修正された場合、それに対応して、線の角度または位置が修正され得る。しかしながら、直接CADモデラでは、この履歴が維持されていないため、円を移動させることは、線の位置にも角度にも変化をもたらさず、それはもはや円と垂直ではなくなるようにし得る。本明細書では直接モデリングと呼ばれるが、この技法は、明示的モデリングと呼ばれることもある。当業者であれば、使用される用語にかかわらず、直接または明示的モデリングは、設計意図、履歴、および連合関係にとらわれない、またはそれらを知らない、幾何学形状の直接操作のための幾何学形状ベースのパラダイムであると理解できるであろう。直接モデリングは、幾何学的形状を編集するようにダイアログボックスにデータを入力すること間接設計操作と呼ばれることもあるとは対照的に、幾何学的形状を手動で押す、引く、または修正することを指す、直接設計操作と混同されるべきではない。したがって、直接設計操作および間接またはダイアログボックス設計操作が、ユーザインターフェースにデータを入力する方法を指す一方で、したがって、直接または明示的モデリングおよびパラメトリックモデリングは、モデリングパラダイムを指す。パラメトリックCADモデリングの追加される複雑性により、しばしば、ユーザにとって習得がさらに困難である。しかしながら、モデル要素への修正を制御するために、自動化が使用され得、単一の設計に対する多くの異なる変形の作成を可能にする。パラメトリックモデリングが、履歴ベースの構築レシピの再生に依存する一方で、直接モデリングは、ユーザによって直接作成された幾何学形状のみに依存して、作成の順序を無視するため、直接およびパラメトリックモデラを組み合わせることは困難である。したがって、異なる方法が、異なる基礎的アーキテクチャを必要とする。直接およびパラメトリックモデラの相互運用性での以前の試行は、モデルのインポートおよび変換に依存してきた。しかしながら、アーキテクチャの違いにより、これらの変換は、情報の損失をもたらし、パラメトリックモデルを直接モデラにインポートする時に履歴および連合関係が失われ、幾何学形状ベースの直接モデルがパラメトリックモデルにインポートされる時に製品製造情報が失われる。例えば、表面の機械加工、塗料の種類および色、または製造プロセス等の直接モデリングユーザインターフェースの中のモデル上の注釈または標識が、特徴に対応しない。多くの変換装置がモデルの幾何学形状のみを考慮するため、これらの注釈は、直接モデルをパラメトリックモデルに変換する時に失われる場合がある。同様に、カウンターボア穴を形成するための別の穴に軸方向に重複する穴等の、パラメトリック設計の中の複数の表面または特徴の間の工学的連合が、直接モデルに変換される時に失われる場合がある。したがって、典型的な直接モデラのユーザは、連合を破って、ボルト穴を移動させることなく重複する穴の位置を修正し得る。加えて、幾何学的忠実性の損失が移転中に発生し得る。例えば、位置データの切り捨てまたは切り上げ中に、パラメトリックモデラの中の第2のオブジェクトに接触するように制約され得るオブジェクトは、直接モデラにインポートされた時に、第2のオブジェクトからわずかに離れて配置され得る。本発明の一側面では、直接モデリングユーザインターフェースが、モデルを編集するために使用され、幾何学形状の直観的かつ容易な操作を可能にし、パラメトリック幾何学形状エンジンが、これらの操作を履歴ベースの特徴として解釈し、構築レシピを作成する。したがって、たとえユーザが、全操作中に履歴および連合関係が作成されていることを認識しない場合があっても、モデルの基礎的アーキテクチャは、パラメトリックのままである。したがって、本発明は、パラメトリックモデラの強力な特徴および再生能力を保持しながら、直接CADモデリングの直観的WYSIWYG編集を提供する。一実施形態では、パラメトリック幾何学形状エンジンは、単純操作を従来の特徴にマップすることによって、種々の直接モデリング操作を認識することができる。例えば、オブジェクトの面を引き出すことは、押出しにマップされ得、面の小区分を押し出すことは、穴あけにマップされ得、追従型押出しは、掃引にマップされ得る等である。しかしながら、周辺幾何学形状のトポロジーが変化しなければならないような方法で表面を移動させること等の多くの直接モデリング操作は、従来のパラメトリック履歴ベースの特徴として解釈可能ではない。例えば、立方体に引き出された正方形を押出し面として解釈することが容易であり得る一方で、ねじれた角柱を形成するように頂面を回転させることは、パラメータ的に解釈することが困難であり得る。同様に、曲線縁に沿って第1の図形を掃引することができるが、次いで、曲線縁が修正された場合、縁と掃引との間のパラメトリック連合が壊される場合がある。したがって、一実施形態では、パラメトリック幾何学形状エンジンは、これらの非従来的特徴を、フレックス移動特徴と称される、非従来的柔軟特徴にマップし得る。フレックス移動特徴は、パラメトリック特徴、あるいはパラメトリック特徴またはサブ特徴の組み合わせを含み得、任意の他の特徴のようにパラメトリック履歴またはレシピの中に配置され得る。フレックス移動特徴は、以前の特徴の子であり得、または他の従属性を有し得、後の特徴は、フレックス移動特徴の子であり得る。一実施形態では、フレックス移動特徴は、一式のエンティティまたは表面の順序付けられた一式の剛体変換および回転、一式の修正可能な寸法、または幾何学形状選択の位置および配向を完全に定義する一式のアセンブリ制約を含み得る。さらなる実施形態では、フレックス移動特徴は、順序付けられた変換または回転の前の位置から幾何学形状を削除することを指示し得る。例えば、交差線に沿って第2のオブジェクトに交差する第1のオブジェクトが、第2のオブジェクトから離される、一実施形態では、フレックス移動特徴は、移動後にパラメトリック幾何学形状エンジンに交差線を削除させ得る。これは、移動させられたエンティティの以前の場所によって引き起こされる幾何学形状が、アーチファクトを残すことを防止する。なおもさらなる実施形態では、フレックス移動特徴は、幾何学形状の削除または移動により、表面または縁あるいは他の固体エンティティに残された開口部を閉じることを指示し得る。例えば、第2の固体オブジェクトに交差する以前の位置からオブジェクトを移動させることにより、第2の固体オブジェクトの表面に残された穴をもたらし得る。フレックス移動特徴は、パラメトリック幾何学形状エンジンにこの穴を閉じさせ得る。いくつかの実施形態では、フレックス移動特徴は、表面、固体幾何学的エンティティ内の表面の集合、またはキルトに属する表面の集合に作用し得る。他の実施形態では、フレックス移動特徴は、平面、軸、点、複合系、またはこれらのうちのいずれかの組み合わせに作用し得る。さらなる実施形態では、幾何学的エンティティの移動が、パラメトリック幾何学形状エンジンに、移動させられたエンティティまたは隣接エンティティの幾何学形状を作成または修正させて、移動させられたエンティティをモデルに再付着させ得る。例えば、縁を表面から離れた位置に移動させることにより、パラメトリック幾何学形状エンティティに、縁および/または表面を延長させ、曲面の接線を作成させ、または接線でない直線を作成させて、固体表面またはオブジェクト内の介在空間を再接続して閉じさせ得る。同様の実施形態では、パラメトリック幾何学形状エンジンは、非従来的特徴を、フレックス移動コピー特徴、または時にはフレックスコピー特徴と称される、新しい特徴にマップし得る。フレックス移動コピー特徴は、幾何学的エンティティの変換および回転を識別するが、エンティティの以前の位置から幾何学形状を削除することがない、フレックス移動特徴と同様のパラメトリック特徴を含み得る。多くの実施形態では、フレックス移動およびフレックス移動コピー特徴が、パラメトリック特徴履歴の中に配置され得る。一実施形態では、これらの特徴は、それらが作用する幾何学形状の従属または子特徴として配置され得る。さらなる実施形態では、押出し、旋回、掃引、またはその他等の従来の特徴、あるいはさらなる移動またはコピーを含む、移動またはコピーした幾何学形状へのさらなる修正が、フレックス特徴の従属または子特徴として作成され得る。したがって、これは、ユーザがパラメトリックレシピの全体を通して変更を行うように、パラメトリック幾何学形状エンジンが幾何学形状を適正に再生および再計算することを可能にする。いくつかの実施形態では、パラメトリック幾何学形状エンジンは、直接モデリングユーザインターフェースにおいて作成された関係をパラメトリック特徴にマップし得る。例えば、1つのそのような実施形態では、ユーザが、1つまたは複数の幾何学的エンティティの対称または鏡映コピーを作成し得る。パラメトリック幾何学形状エンジンは、これを柔軟対称特徴の作成として解釈し得る。柔軟対称特徴は、複数の対称または鏡映エンティティに対するグループヘッダ特徴と、対称面の識別とを含み得る。パラメトリック特徴リストの中のエンティティ間の連合により、パラメトリックエンジンは後に、再計算または再生中に自動的に、1つのエンティティへの編集を対称または鏡映エンティティに適用し得る。これは、直接モデルをパラメトリックシステムにインポートして変換するシステムでは頻繁に行うことができない。なぜなら、直接モデル編集中に行われたミラーリングの明示的ステップの知識がなければ、これらのパラメトリックシステムは、第2のオブジェクトまたは一式のオブジェクトに対して、オブジェクトまたは一式のオブジェクトが対称または鏡映であるように制限することを知らず、単純に、第2のオブジェクトまたは一式のオブジェクトを新しい非連合しかし偶然に同様のオブジェクトとして解釈し得るからである。他の実施形態では、パラメトリック幾何学形状エンジンは、対称または鏡映エンティティを従来のミラー特徴として解釈し得る。同様の実施形態では、ユーザは、ディスクの周囲の均等に離間した穴のパターン等の幾何学的エンティティのパターンを作成し得る。同様に、直接モデルを単純にパラメトリックシステムにインポートして変換するシステムは、これらのエンティティを穴の共通パターンとして解釈することができなくてもよく、各穴を明確に異なる無関係の特徴として識別し得る。直接モデリングユーザインターフェースにおける明示的なパターン作成ステップの知識を有することによって、本発明のパラメトリックエンジンは、柔軟パターン特徴を作成することができる。柔軟パターン特徴は、複数のフレックス移動コピー特徴に対するグループヘッダ特徴、または1つの部材への修正が全ての他の部材への修正を伝搬させるように関係および連合部材のパターンを含み得る。他の実施形態では、パラメトリック幾何学形状エンジンは、幾何学的エンティティのパターンを従来のパターン特徴として解釈し得る。履歴および従属性を保持し、これらの非従来的エンティティの作成および修正にパラメトリックモデルを使用することのさらなる結果として、ユーザは、粒状レベルで変更を追跡する能力を与えられる。これは、直接モデリング編集をパラメトリックモデラにインポートする従来の方法とは異なる。これらのシステムでは、パラメトリックモデラによるモデルの以前の保存された状態をモデルのインポートされた状態と比較すること、本質的には、部品の第1のバージョンの幾何学形状全体を部品の第2のバージョンと比較することのみによって、変更追跡を行うことができる。システムは、個別レベルで変更を覚えておく能力が欠けている場合があるため、これらのシステムは、典型的には、ユーザが部品または部品の従属構成要素への変更を容認または拒絶することを可能にしない。これらのシステムのいくつかのバージョンが、直接モデリング編集の全体承認または拒絶のみを可能にする一方で、他のバージョンは、限定された比較を行って、押出しまたは掃引等の従来の特徴を検出し、承認または拒絶のために編集のいくつかの基本的細分を可能にし得る。しかしながら、履歴および従属性がこれらのシステムで失われるため、粒状の個別編集レベルで変更を追跡することができない。例えば、ユーザは、穴が切断される表面を拒絶しながら、穴の生成を不適当に承認することができ得る。別の実施例では、多くの実施形態で、パラメトリックシステムを使用する設計者は、いくつかの異なる動作のうちのいずれかを通して、部品の最終幾何学形状に到達し得る。相互に従属していない特徴は、いくつかの実施形態では、任意の順序で作成され得、掃引がモデルの一部に適用され、押出しが別の部分に適用され得、または押出しが最初に作成され、その後に掃引が続いてもよい。作成の順序は、設計者の意図を表し得る。しかしながら、順序は直接モデリングシステムに記録されないため、この意図の表現は、個々の特徴が認識される場合でさえも、パラメトリックと直接システムとの間でモデルを変換する時に失われる場合がある。本発明のシステムは、直接モデリングユーザインターフェースを用いても、常にパラメトリックモデリングパラダイムに作用するため、特徴従属性を保存することができ、変更追跡を編集ごとの基準で行うことができる。したがって、一実施形態では、パラメトリックモデリングユーザインターフェースのユーザは、各変更後にモデルをインポートする必要なく、直接モデリングユーザインターフェースのユーザによってモデルに行われる個々の変更および修正を精査、容認、および拒絶し得る。さらなる実施形態では、パラメトリックモデリングユーザインターフェースのユーザは、直接モデリングインターフェースのユーザによって第1のオブジェクトに行われる修正を拒絶し得、拒絶および第1のオブジェクトに対する第2のオブジェクトの従属的関係に応答して、幾何学形状エンジンは、第2のオブジェクトの幾何学形状を再計算し得る。上記で論議されるように、直接モデリングシステムとパラメトリックモデリングシステムとの間でモデルを移動させる際に、製品製造情報が失われる場合がある。本発明のシステムの別の結果は、直接モデリングユーザインターフェースとパラメトリックモデリングユーザインターフェースとの間の移動の際、いずれの変換も行われないため、そのような情報が保持されることである。標識および注釈が既存の特徴に結び付けられるため、パラメトリックモデルの中の特徴に、関係または従属性がない直接モデルからの曖昧な標識または注釈を結び付けようとすることから生じる混乱がない。ここで図3Aを参照すると、コンピュータ支援設計のためのシステムの実施形態のブロック図が示されている。概観すると、コンピュータデバイス100は、記憶装置128を含み得、またはそれに接続し得る。コンピュータデバイス100の内部に示されているが、多くの実施形態では、記憶装置128は、ネットワーク記憶デバイスまたは外部デバイスを備え得る。記憶デバイス128は、概してオブジェクト312と呼ばれる、1つ以上のオブジェクト312aおよび312bを含み得る、1つ以上のモデル310を含み得る。いくつかの実施形態では、オブジェクトは、履歴ベースまたは順序付けられた構築レシピを含み得る、1つ以上の特徴314a-314n概して特徴314と呼ばれるを備え得る。一実施形態では、第1の特徴は、第2の特徴の子であり得、または逆にいうと、第2の特徴は、第1の特徴の親であり得る。いくつかの実施形態では、特徴は、その幾何学形状または他のデータの何らかの側面について親特徴に従属している場合、親特徴の子と呼ばれ得る。いくつかの実施形態では、オブジェクトは、概してサブオブジェクト312’と呼ばれる、1つ以上のサブオブジェクト312’aまたは312’bを備え得る。いくつかの実施形態では、サブオブジェクト312’は、さらなるサブオブジェクトおよび/または1つ以上の特徴314を備え得る。コンピュータデバイス100は、CADアプリケーション300を実行し、またはそれと通信し得る。依然として図3Aをさらに詳細に参照すると、一実施形態では、コンピュータデバイス100は、CADアプリケーション300を実行する。CADアプリケーションと呼ばれるが、多くの実施形態では、アプリケーションは、CAMアプリケーション、CAEアプリケーション、あるいは2または3次元設計、モデリング、または分析のための他のアプリケーションを備え得る。CADアプリケーション300は、2または3次元幾何学形状を作成、修正、分析、またはモデル化するためのプログラム、アプリケーション、サービス、サブルーチン、または他の実行可能論理を備え得る。CADアプリケーション300は、工学的、製造、アーキテクチャ、アニメーション、モデリング、芸術的、または他の設計または製造機能に使用され得る。多くの実施形態では、CADアプリケーション300は、幾何学形状エンジン302、表示エンジン304、パラメトリックモデリングユーザインターフェースUI306、直接モデリングUI308、モデリングライブラリ316、再生命令317、および制約ライブラリ318のうちの1つ以上を備え得る。一実施形態では、モデリングライブラリ317は、CAD幾何学形状の作成および評価を可能にするように、実行可能ルーチンのライブラリ、API、またはデータベースを備え得る。いくつかの実施形態では、モデリングライブラリ316は、モデル310またはオブジェクト312の特徴履歴およびモデルデルタを含み得る。例えば、モデル化オブジェクトの設計プロセスが進展するにつれて、特徴履歴が連続的に確立され、モデリングライブラリ316によって記憶され得る。多くの実施形態では、モデリングライブラリ316は、記憶装置128の一部と見なされ、CADアプリケーション300によってアクセスされ得る。別の実施形態では、CADアプリケーション300は、モデリングライブラリ316と併せて機能し得る、制約ライブラリ318を備え得る。制約ライブラリ318は、設計の支配寸法およびパラメータを制御し、アセンブリ構成要素の配置を駆動し、オブジェクトを相互に関係付けるための機能のライブラリを備え得る。例えば、プロジェクトが開始された時、または設計プロセス中に、あるプロジェクト制約をモデル化オブジェクトに提供することができる。これらの制約は、寸法制約、材料制約、重量制約、強度制約、または任意の他の種類の制約を含むことができる。制約ライブラリ318は、最終結果が所定の仕様内に適合することを確実にするために、設計プロセスを監視し、特徴がモデル化オブジェクトに追加される場合に特徴の配置および特性を誘導するために使用され得る。CADアプリケーション300はまた、モデリングライブラリ316と併せて稼働し得る再生命令のライブラリ317、および制約ライブラリ318を含み得る。再生命令316は、特徴の場所を特定するために制約ライブラリ318を利用し、次いで、モデリングライブラリ316の中で特定された特徴を構築し得る。CADアプリケーション300の幾何学形状エンジン302は、ライブラリ316-318の中のパラメトリック機能および命令を実行するためのエージェント、プログラム、ルーチン、論理、または他の実行可能機能を備え得る。幾何学形状エンジン302は、ハードウェア、ソフトウェア、またはハードウェアおよびソフトウェアの組み合わせを備え得る。例えば、一実施形態では、幾何学形状エンジン302は、CAD機能および特徴を実行するための専用処理ユニットを備え得る。一実施形態では、幾何学形状エンジン302は、モデル310の幾何学形状または他の特徴を生成または再計算するためのアプリケーションプログラミングインターフェースAPIとして、モデリングライブラリ316を利用し得る。CADアプリケーション300は、表示エンジン304を含み得る。表示エンジン304は、3次元表面およびオブジェクトをレンダリングおよび出力または表示するためのエージェント、プログラム、ルーチン、論理、または他の実行可能機能を備え得る。いくつかの実施形態では、表示エンジン304は、光線追跡、走査線レンダリング、光線投影、影付け、テクスチャマッピングのための機能性、あるいは写実的または非写実的グラフィックスを生成するための他の機能を備え得る。いくつかの実施形態では、CADアプリケーション300は、パラメトリックモデリングUI306および直接モデリングUI308のいずれか一方または両方を含み得る。上記で論議されるように、パラメトリックモデリングユーザインターフェースは、特徴の履歴レシピhistoricalrecipeまたは命令セット、およびこれらの特徴の間の関係または従属性を示す。ユーザは、それらが作成する特徴を認識し、再生および従属性は、ユーザに明確かつ明白にされる。対照的に、直接モデリングユーザインターフェースは、履歴、レシピ、または特徴を表示しない。上記で論議されるように、いくつかの実施形態では、ユーザは、モデルの幾何学形状と相互作用するために直接モデリングUI308を使用し得、相互作用は、履歴ベースの幾何学形状エンジン302によって特徴として解釈される。したがって、これらの実施形態では、単一の幾何学形状エンジンが、パラメトリックモデリングUIおよび直接モデリングUIの両方に使用され得る。さらに、いくつかの実施形態では、上記で論議されるように、基礎的パラメトリック幾何学形状エンジンによって記録された履歴により、直接モデリングUIにおいて行われた変更が、個別変更基準でパラメトリックモデリングUIにおいて追跡され、取り消されることができ、これは、ユーザに直接モデリングUIおよびエンジンを通してモデルと相互作用させ、次いで、変更の全てをインポートして、パラメトリックエンジンにおいて一度に変換する他のシステムでは可能ではない場合がある。したがって、モデルが異なるユーザインターフェースの間を通過させられる際に、いずれのデータ忠実性も失うことなく、組織の中の異なるユーザが、直接またはパラメトリックといった、異なるパラダイムを使用することができる。ここで図3Bを参照すると、コンピュータ支援設計の方法の実施形態のフローチャートが示されている。概観すると、ステップ320で、ユーザが、CADアプリケーションを使用して、CADオブジェクトの特徴ベースの幾何学形状を作成し得る。ステップ322で、ユーザが、直接モデリングユーザインターフェースUIを用いてCADオブジェクトの幾何学形状を修正し得る。ステップ324で、CADアプリケーションが、修正された幾何学形状を特徴ベースの幾何学形状として記憶し得る。依然として図3Bをさらに詳細に参照すると、いくつかの実施形態では、ステップ320で、ユーザが、CADオブジェクトまたはモデルの特徴ベースの幾何学形状のレシピを作成するために、コンピュータデバイスのプロセッサによって実行されるCADアプリケーションを使用し得る。ステップ322で、いくつかの実施形態では、ユーザが、CADオブジェクトまたはモデルの幾何学形状を修正するために、CADアプリケーションの直接モデリングユーザインターフェースを使用し得る。いくつかの実施形態では、直接モデリングユーザインターフェースは、CADオブジェクトまたはモデルの履歴および/またはパラメトリック特徴をユーザから隠す。したがって、一実施形態では、ユーザは、直接モデリングUIの中のCADオブジェクトまたはモデルの修正が、パラメトリックCADオブジェクトの作成および/または修正、および/または他のオブジェクト、要素、あるいは構成要素との従属性あるいは関係を生じ得ることを認識していない場合がある。ステップ324で、一実施形態では、CADアプリケーションが、修正された幾何学形状を、CADオブジェクトのパラメトリック特徴、またはパラメトリック特徴への修正として記憶し得る。いくつかの実施形態では、CADアプリケーションは、修正された幾何学形状を、掃引、旋回、穴あけ、切断、押出し、または同様の特徴等の1つ以上の従来のパラメトリック特徴として記憶し得る。他の実施形態では、CADアプリケーションは、修正された幾何学形状を、フレックス移動またはフレックス移動コピー特徴等の1つ以上の柔軟パラメトリック特徴として記憶し得る。なおも他の実施形態では、CADアプリケーションは、修正された幾何学形状を、従来的および柔軟パラメトリック特徴の組み合わせとして記憶し得る。多くの実施形態では、CADアプリケーションは、履歴またはツリー従属性表現等を通して、1つまたは複数の修正された幾何学形状特徴と1つ以上の既存の幾何学形状特徴との間の1つ以上の関係または従属性を記憶し得る。さらなる実施形態では、CADアプリケーションは、修正されたオブジェクトへの従属性を有する他のオブジェクトの幾何学形状データを再生し得る。別のさらなる実施形態では、CADアプリケーションは、再生された幾何学形状データをレンダリングまたは表示するように表示エンジンに指図し得る。図3Cには、コンピュータ支援設計の方法の別の実施形態のフローチャートが示されている。概観すると、ステップ330で、ユーザが、コンピュータデバイスのプロセッサによって実行されるCADアプリケーションの直接モデリングUIを使用して、CADオブジェクトの第1の特徴を作成し得る。ステップ332で、ユーザが、直接モデリングUIを使用して、CADオブジェクトの第2の従属特徴を作成し得る。ステップ334で、ユーザが、直接モデリングUIを使用して、CADオブジェクトの第1の特徴を修正し得る。ステップ336で、CADアプリケーションが、CADアプリケーションの第2の特徴の幾何学形状を再計算し得る。依然として図3Cをさらに詳細に参照すると、ステップ330で、ユーザが、直接モデリングユーザインターフェースを使用して、CADオブジェクトの第1の特徴を作成し得る。上記で論議されるように、多くの実施形態では、ユーザは、特徴を作成していることを認識していない場合がある。代わりに、基礎的パラメトリック幾何学形状エンジンが、直接モデリングUIの中のユーザのコマンドおよび幾何学形状の直接操作を、パラメトリック特徴の作成および修正として解釈し得る。ステップ332で、いくつかの実施形態では、ユーザが、直接モデリングユーザインターフェースを使用して、第1の特徴への従属性を有するCADオブジェクトの第2の特徴を作成し得る。多くの実施形態では、上記で論議されるように、ユーザは、特徴を作成していること、および第1の特徴への従属関係を有する特徴を作成していることの両方を認識していない場合がある。ステップ334で、いくつかの実施形態では、ユーザが、直接モデリングユーザインターフェースを使用して、CADオブジェクトの第1の特徴を修正し得る。上記で論議されるように、多くの実施形態では、ユーザは、特徴を修正していることを認識していない場合がある。他の実施形態では、ユーザは、既存の第1の特徴を明確に修正することなく、または特徴がエンティティに関連付けられていることをユーザが認識することなく、直接モデリングユーザインターフェースを使用して、CADオブジェクトの表面、縁、頂点、または他のエンティティを修正し得る。したがって、いくつかの実施形態では、ステップ334で、ユーザは、直接モデリングユーザインターフェースを使用して、第1の特徴の幾何学形状を修正し得る。ステップ336で、いくつかの実施形態では、CADアプリケーションが、第2の特徴の幾何学形状を再計算または再生し得る。これは、ユーザの第1の特徴の修正に応答して行われ得る。さらなる実施形態では、CADアプリケーションは、再生された幾何学的形状データをレンダリングまたは表示するように表示エンジンに指図し得る。図3Dを簡潔に参照すると、コンピュータ支援設計の方法のさらに別の実施形態のフローチャートが示されている。上記で論議されるように、この実施形態は、幾何学形状エンジンによって、直接モデリング編集を従来的および柔軟パラメトリック特徴にマップすることを説明する。概観すると、ステップ340で、CADアプリケーションの直接モデリングユーザインターフェースのユーザが、CADモデルに編集または修正を行う。CADアプリケーションのパラメトリック幾何学形状エンジンは、編集または修正を従来のパラメトリック特徴にマップすることができるかどうかを決定する。もしそうであれば、ステップ342で、パラメトリック幾何学形状エンジンが、履歴ベースのパラメトリック特徴レシピにおけるパラメトリック特徴を作成または修正する。もしそうでなければ、ステップ344で、パラメトリック幾何学形状エンジンが、上記で論議されるように、フレックス移動またはフレックス移動コピー特徴等の柔軟パラメトリック特徴を作成または修正する。次いで、パラメトリック幾何学形状エンジンは、特徴に関連付けられるパターンまたは対称を認識することができるかどうかを決定する。一実施形態では、これは、ユーザによる直接モデリングユーザインターフェースにおける明示的パターンまたは対称作成コマンドを識別することを含み得る。別の実施形態では、これは、直接モデリングユーザインターフェースにおけるユーザによるコピーアンドペースト動作等の暗示的パターンまたは対称作成を識別することを含み得る。パラメトリック幾何学形状エンジンがパターンまたは対称性を認識することができる場合に、ステップ346で、パラメトリック幾何学形状エンジンが、パラメトリックモデルの柔軟パターンまたは柔軟対称特徴を作成または修正し得る。いくつかの実施形態では、ステップ340-346が繰り返され得る。さらなる実施形態では、パラメトリック幾何学形状エンジンは、ユーザの幾何学形状への編集に応答して、パラメトリック特徴のリストに従って、1つ以上の特徴を再計算または再生し得る。別のさらなる実施形態では、柔軟パターンまたは柔軟対称特徴に関連付けられるエンティティまたは特徴の直接モデリングユーザインターフェースにおけるユーザによる修正が、パラメトリック幾何学形状エンジンに、編集をパターンまたは対称特徴の対応するエンティティまたは特徴へ伝搬させ得る。いくつかの実施形態では、ユーザが直接モデリングユーザインターフェースにおいて作成した最新の特徴のみが再計算または再生され得る。直接モデリングCADは、典型的には、パラメトリック従属性、履歴、および関係の欠如によりユーザによって修正されていない特徴を再生しないので、複数の特徴が単一の動作に応じて再生される場合、ユーザにとって紛らわしくなり得る。他の実施形態では、特徴の種類または部類に応じて、追加の特徴が再計算または再生され得る。例えば、ある種類の特徴が、より再生しやすく、ユーザは、ある種類の特徴が再生されない場合に混乱する場合がある。したがって、1つのそのような実施形態では、これらの特徴は、たとえ他の特徴が再生されなくても、再生され得る。上記で論議されるように、直接モデルをパラメトリックモデリング環境にインポートして変換するCADシステムでは、典型的には、データ忠実性および製品情報の損失がある。同様に、パラメトリックモデルを直接モデリング環境にインポートする時に、典型的には、履歴、設計意図、ならびにオブジェクトおよびエンティティの間の従属性および関係を含む、パラメトリック特徴の損失がある。さらに、工学的および幾何学的制約が、典型的には失われる。例えば、一方を回転させることにより、それに従って幾何学形状エンジンに他方を再計算および回転させるように、第1の表面が、第2の表面と平行であるようにパラメトリック環境内で制約され得る。別の実施例では、モデルは、穴を開けられる穴の周囲の材料の特定の厚さを要求すること、客室のロールバーが少なくともある直径になるよう要求すること、またはエンジン部品がオペレータ位置から最小距離にあるよう要求すること等の材料選択または安全性理由のための工学的制約を含み得る。これらの制約が直接モデリング環境への変換中に失われた場合、ユーザは、安全規則に違反する方法で部品を容易に移動させることができ、後に再設計するためのより高い製造経費をもたらす。加えて、次いで、モデルがパラメトリックモデリング環境に戻された場合、制約が最初の変換中に失われたため、再び現れない場合がある。結果として、インポートされたモデルのパラメトリック特徴が、他のパラメトリックモデルが含み得る工学的制約を示さないため、パラメトリックモデリング環境のユーザは、そのような制約が存在しないと考え得る。パラメトリックモデリングおよび直接モデリングの両方の全体を通して、パラメトリックモデリングパラダイムに留まることによって、本発明の一実施形態では、特徴の制約が直接モデリング中に保持され得る。一実施形態では、幾何学形状エンジンは、直接モデリングユーザインターフェースにおける特徴に対して試される編集を既存の制約と比較し、ユーザが編集を完了することを防止し得る。他の実施形態では、幾何学形状エンジンは、ダイアログボックスをユーザに提示し、ユーザが、編集を拒絶すること、制約を無効にすることまたは削除すること、制約を修正すること、あるいは他の適切な措置を講じることを可能にし得る。なおも他の実施形態では、幾何学形状エンジンは、別のユーザではなく、1人のユーザが特徴を編集することを可能にし得る。これは、直接モデリングユーザインターフェースにおいて表面および特徴の所有権またはユーザベースの許可を可能にする。例えば、1つのそのような実施形態では、主導設計者が、構造フレームまたはパワートレイン等の主導設計者のみが編集できる、基本の一式の特徴を作成し、次いで、二次設計者が、座席、窓、電気サブシステム、または他の要素等の追加のオプションの特徴を追加、削除、および修正し得る。いくつかの実施形態では、これらの方法で制御される特徴は、読み出し専用表面または特徴、あるいは制約ロック特徴と呼ばれ得る。ここで図3Eを参照すると、コンピュータ支援設計における制約ロックの方法の実施形態のフローチャートが示されている。概観すると、ステップ350で、ユーザが、CADアプリケーションのパラメトリックモデリングユーザインターフェースにおいて特徴制約を作成し得る。一実施形態では、特徴制約は、別の特徴に対する特定配向または別の特徴からの距離等の幾何学的制約、または他の同様の制約を含み得る。別の実施形態では、特徴は、材料の種類、強度要件、許容最大重量、または他の同様の制約等の工学的制約を含み得る。ステップ352で、いくつかの実施形態では、ユーザが、CADアプリケーションの直接モデリングユーザインターフェースにおいて特徴を編集しようとし得る。上記で論議されるように、特徴を編集しようとすることは、押す、引く、移動させる、回転させる、または他の操作等の直接操作を特徴に行うことを含み得、または材料、塗料、表面、あるいは特徴の他の製造側面等の特徴の製品情報を編集することを含み得る。ステップ354で、いくつかの実施形態では、パラメトリック幾何学形状エンジンが、特徴を編集するユーザの試行に応答して、直接モデリングユーザインターフェースにおいて特徴制約を守らせ得る。上記で論議されるように、特徴制約を守らせることは、編集を拒絶または防止すること、ダイアログをユーザに提示すること、ユーザが制約を無効にすることまたは修正することを可能にすること、ユーザまたはグループ所有権による許可ベースの編集を守らせること、あるいは他の遵守機構を含み得る。C.ビジネス主導型アセンブリを作成するためのシステムおよび方法CADシステムのいくつかの用途では、完成した設計が、設計された製品の多くのコピーを製造するために使用され得る。例えば、消費者自動車会社が、車の新しいモデルの設計を作成し、次いで、1日に数百台を超える車を作成するためにアセンブリラインを使用し得る。しかしながら、他のユーザでは、設計が1回または2回だけ使用され得る。例えば、一般的にけん引車、原動機、トラック、または大型トラックと呼ばれる、商用セミトレーラ用の大型けん引エンジンは、頻繁に、製造前に大きくカスタマイズされる。1人の顧客は、拡張キャブ、二重車軸、5段変速のマニュアルトランスミッションモデルを要求する場合があり、別の顧客は、通常キャブ、三重車軸、4段変速のオートマチックトランスミッションモデルを要求する場合がある。タイヤトレッド深さから窓の配置、サイズ、および数、ランニングライトの数まで、ありとあらゆるものが特定され得、潜在的に何千もの異なるモデルを作成する。これにより、典型的には、販売されているありとあらゆるトラックの新しいCADモデルを設計者が修正または作成しなければならなくなり、製品の納品の遅延をもたらす。したがって、本発明の一側面は、ビジネス主導型アセンブリと呼ばれることもある、動的に構成可能な製品設計の作成のための方法およびシステムを含む。そのような製品設計は、部品表BOM、あるいは顧客、販売員、またはベンダによるオプションの選択による主導型と呼ばれ得、製品ライフサイクル管理PLM計画に応答して行われ得る。システムは、顧客が製品の仕様を定義することを可能にし、次いで、定義された仕様または選択されたオプションに応答して、CADモデルを動的に生成する。図4Aには、ビジネス主導型アセンブリの作成のためのシステムの実施形態のブロック図が示されている。概観すると、上記で論議されるように、コンピュータデバイス100は、CADアプリケーション300を実行し、1つ以上のモデル310を含む記憶装置128を含むか、またはそれと通信する。各オブジェクト312および/またはサブオブジェクト312’は、1つ以上のバリアント406を含み得る。いくつかの実施形態では、コンピュータデバイス100はまた、製品ライフサイクル管理PLMアプリケーション400を実行する、別のコンピュータデバイスを実行し、またはそれと通信し得る。PLMアプリケーション400は、いくつかの実施形態では、部品データベース402および/または部品選択エンジン404を備え得る。依然として図4Aをさらに詳細に参照すると、一実施形態では、コンピュータデバイスは、PLMアプリケーション400を含むか、または実行する。コンピュータデバイス100上に示されているが、多くの実施形態では、PLMアプリケーション400は、コンピュータデバイス100と通信するか、またはそれにデータを伝える、第2のコンピュータデバイス上で実行する。PLMアプリケーション400は、1つ以上の所定のオプションまたはバリアントの選択を通して製品を構成するためのアプリケーション、プログラム、ルーチン、ウェブサービス、アプレット、または他の実行可能命令を備え得る。多くの実施形態では、PLMアプリケーション400はまた、部品データベース402またはその一部分を提示し、顧客、販売員、または他のユーザが製品に対する1つ以上のオプションを選択することを可能にするためのユーザインターフェースも備えている。部品データベース402は、1つ以上の部品のデータベース、ファイル、ライブラリ、または他のセットを備え得、部品の1つ以上の特徴の識別を含み得る。例えば、部品データベースは、説明、費用、重量、必要とされる材料または副部品、部品番号、あるいは顧客、販売員、または製造業者に有用な他の情報を含み得る。部品データベース402は、部品選択エンジン404および/またはユーザインターフェースとともに、顧客が製品設計に対するオプションを構成し、該選択されたオプションをCADアプリケーション300のパラメトリック幾何学形状エンジン302に伝達することを可能にするために使用され得る。上記で論議されるように、いくつかの実施形態では、オブジェクト312および/またはサブオブジェクト312’は、1つ以上のバリアントオブジェクト406を備え得る。一実施形態では、バリアント406は、モデルまたは製品設計で使用される代替アセンブリを備え得る。別の実施形態では、バリアント406は、ユーザによる選択がない場合に使用されるデフォルトバリアントを含み得る。なおも別の実施形態では、バリアント406は、ユーザが、まだ作成されていないカスタムオプションを適用することを希望する場合に、カスタム特徴の以降の生成のためにモデルで代替物として使用され得る、一般形状と呼ばれることもある、一般的バリアントを含み得る。例えば、一実施形態では、ユーザは、サイズ、幅、ならびにトレッドの種類および深さの変動を含む、トラックタイヤに対するオプションの所定のリストから選択し得るか、またはタイヤが後に選択されるまでモデルの中に配置される、おそらく単にトーラスである、一般的タイヤ形状を選択し得る。一実施形態では、バリアント406は、1つ以上の隣接オブジェクトの幾何学形状、形状、または位置付けに修正を行うようにパラメトリック幾何学形状エンジンをトリガする、1つ以上のインターフェースまたはハンドルを備え得る。これらのハンドルまたはインターフェースは、時にはシェイパまたはロケータと呼ばれ得る。一実施形態では、ロケータハンドルまたはインターフェースは、隣接オブジェクトの位置付けに使用される制約または接合ベースのインターフェースを備え得る。例えば、車両ドアオブジェクトは、電気ケーブルの異なるルーティングを必要とし得る、パワードアまたはウィンドウ等の異なるオプションを含み得る。これらのケーブルを収容するために、異なるバリアントが、異なる重心を有し、または異なる取付オプションを必要とし、したがって、異なるヒンジ位置を必要とし得る。したがって、各バリアントは、車両フレーム上の1つ以上のヒンジ要素に対応する、ドアヒンジ用の1つ以上のロケータインターフェースを含み得る。幾何学形状エンジンは、ドアヒンジおよびフレームヒンジに合致するフレームおよび/またはドアの位置付けを自動的に調整し得る。同様に、一実施形態では、シェイパハンドルまたはインターフェースは、パラメトリック幾何学形状エンジンに、隣接オブジェクトの幾何学形状を調整させ得る。例えば、エンジンの異なるバリアントは、異なる位置に排気口または冷却剤取り入れ口を有し得る。排気口におけるシェイパインターフェースは、例えば、排気システムのフロントパイプ上のシェイパインターフェースに対応し得る。シェイパインターフェースの相対的位置に応答して、幾何学形状エンジンは、排気口の位置および配向に合致するように、排気システムのフロントパイプを自動的に延長させ、押出し、回転させ、拡大または縮小し、あるいは別様に操作し得る。同様に、シェイパインターフェースは、幾何学形状エンジンにケーブルを自動的に延長させて、隣接モジュールのコネクタと接触するようにケーブルを送らせるために、電気サブシステムで使用され得る。したがって、顧客による製品設計に対するオプションの選択は、システムに、必要に応じて設計を自動的に配置および再構成させ、人間の設計者が各モデルを手動で編集する必要性を低減し得る。ここで図4Bを参照すると、ビジネス主導型アセンブリの実施例のモジュール構造310の樹形図、および対応する3次元モデル315が示されている。概観すると、モジュール構造310は、オブジェクト312、サブオブジェクト312’、サブサブオブジェクト312’’、または上記で論議されるような他のレベルのオブジェクトのパラメトリック特徴ベースのレシピを備え得る。モデルの連合リンクおよび従属性は、樹形図において構造310の中の分岐として示されている。示される実施例では、芝刈り機フレーム312aが、芝刈り機に対する基礎オブジェクトであり、芝刈り機のデッキ312’a、エンジン312’b、およびオペレータコンパートメント312’cといった、3つの子を有する。エンジン312’bは、油圧トランスミッション312’’aおよび機械トランスミッション312’’bといった、2つのオブジェクトを有する。同様に、オペレータコンパートメント312’cは、座席312’’cおよび転覆保護312’’dといった、2つの子オブジェクトを有する。これらの構成要素オブジェクトのうちのいくつかは、明確にするために含まれる、3次元モデル315において可視的である。当業者であれば容易に理解し得るように、多くの実施形態では、特徴ベースのレシピは、3Dモデルの画像を含まないが、むしろ3Dモデルは、CADアプリケーションの表示エンジンによって生成される。モジュール構造では、製品構成のためにユーザが選択するために、3つの構成要素のバリアントが存在することを表すために、これらの構成要素は点線で輪郭を描かれる。いくつかの実施形態では、アプリケーションが、バリアント部品を選択するために示されるもの等の樹形図をユーザに提示し得る一方で、他の実施形態では、構成オプションは、ウェブサイトの構成ページ、またはチェックボックスを伴う印刷された用紙等の代替方式で提示され得る。そのようなものとして、図4Bの樹形図は、オブジェクトの従属性を示すように、主に抽象化として提供されているが、多くの実施形態では、樹形図はまた、ユーザインターフェースの一部を備え得る。ここで図4Cを参照すると、ビジネス主導型アセンブリの実施例での可変モジュールの複数のバリアントの実施形態の樹形図が示されている。示される実施例では、図4Bで提示される構成可能なモジュールのうちの1つである、座席312’’cは、概してバリアント406と呼ばれる、4つのバリアント406a-406dを備えている。各バリアント406は、1つ以上の幾何学的エンティティおよび特徴を備え、システムのユーザによって事前設計または構成され得る。バリアント406aに示されるように、いくつかの実施形態では、バリアントは、オブジェクトを表す、モデルで代替物として使用され得る一般形状を備え得る。上記で論議されるように、各バリアントは、1つ以上のロケータおよび/またはシェイパインターフェースを含み得る。例えば、示される実施例では、各座席406b-406dは、同様の取付アセンブリ408を含む。簡潔に図4Bを再び参照すると、オペレータコンパートメント312’cおよび/またはフレーム312aの一部分に接続する、取付アセンブリを見ることができる。したがって、いくつかの実施形態では、各座席406a-dは、パラメトリック幾何学形状エンジンが、オペレータコンパートメント312’cおよび/またはフレーム312a上の対応するインターフェースに対して、モデルの中で適正に座席を自動的に配向することを可能にするように、ロケータインターフェースを含み得る。別の実施形態では、各座席406a-dは、必要に応じてオペレータコンパートメント312’cおよび/またはフレーム312aの取付ハードウェアを再配置するように、シェイパインターフェースを含み得る。同様に、ロケータおよびシェイパインターフェースは、転覆保護312’’d、ならびに操縦および制御要素、衝撃吸収材、またはモデルの任意の他の特徴の位置を調整するために使用され得る。ここで図4Dを参照すると、ビジネス主導型アセンブリの作成の方法の実施形態のフローチャートが示されている。概観すると、一実施形態では、ステップ420で、ユーザまたは設計者が、CADアプリケーションを使用して、動的に構成可能な製品設計の複数のモジュールのモジュール構造を設計し得る。複数のモジュールは、複数のバリアントまたはデフォルトの少なくとも1つのバリアントを備えている、少なくとも1つの可変モジュールを備え得る。ステップ422で、ユーザが、動的に構成可能な製品設計で使用する少なくとも1つの可変モジュールのバリアントを選択し得る。ステップ424で、CADアプリケーションまたはCADアプリケーションの幾何学形状エンジンが、動的に構成可能な製品設計の幾何モデルの中に選択されたバリアントを配置し得る。ステップ426で、CADアプリケーションが、配置された選択されたバリアントの1つ以上の制約に応答して、幾何モデルの中の配置された選択されたバリアントに隣接するモジュールの位置付けまたは幾何学形状を修正し得る。依然として図4Dをさらに参照すると、ステップ420で、コンピュータ支援設計アプリケーションのユーザが、動的に構成可能な製品設計の複数のモジュールのモジュール構造を作成し得る。いくつかの実施形態では、複数のモジュールは、少なくとも1つの可変モジュールを備え得る。多くの実施形態では、モジュール構造は、1つ以上のオブジェクトおよび/または特徴の間の従属性が、モジュール構造を暗示的に作成し得る、履歴特徴ベースのパラメトリック構築レシピを備え得る。例えば、基礎オブジェクトおよび2つの従属オブジェクトを伴うパラメトリック履歴では、従属オブジェクトと基礎オブジェクトとの間の従属性は、モジュール構造と見なされ得る。いくつかの実施形態では、モジュールは、個々のオブジェクトまたは特徴を指し得るが、大抵の実施形態では、モジュールは、キーパッドまたはエンジン等の機能的モジュール、あるいは製品面板または車両フレーム等の構造的モジュール等の製品のサブアセンブリを備えている、一群のオブジェクトまたは特徴を指し得る。機能的または構造的モジュールと呼ばれるが、制限なく、他の分類のモジュールが使用され得る。いくつかの実施形態では、可変モジュールは、隣接モジュールへの共通接続とともに、複数の代替サブアセンブリを備え得る。一実施形態では、可変モジュールは、デフォルトサブアセンブリまたはバリアントを含み得る。別の実施形態では、可変モジュールは、基本的特徴のみを伴う一般的形状サブアセンブリを含み得る。一実施形態では、サブアセンブリの隣接モジュールへの共通接続は、モジュールの位置付けまたはモジュールの幾何学形状を修正するためにパラメトリック幾何学形状エンジンによって使用され得る、上記で論議されるようなロケータインターフェースまたはシェイパインターフェースを備え得る。ステップ422で、一実施形態では、ユーザが、動的に構成可能な製品設計で使用する可変モジュールのバリアントを選択し得る。上記で論議されるように、一実施形態では、ユーザは、PDMアプリケーションの選択インターフェースを使用し得る一方で、別の実施形態では、ユーザは、設計で使用するバリアントを選択するために、ウェブフォーム、注文書、カタログ、または任意の他の書式を使用し得る。ステップ424で、CADアプリケーションまたはCADアプリケーションの幾何学形状エンジンが、動的に構成可能な製品設計の幾何モデルの中に選択されたバリアントを配置し得る。いくつかの実施形態では、幾何モデルの中に選択されたバリアントを配置することは、幾何学形状エンジンによって、幾何モデルの中でバリアントを構築するように、バリアントの特徴リストまたはレシピを実行することを含み得る。ステップ426で、いくつかの実施形態では、CADアプリケーションまたは幾何学形状エンジンが、配置された選択されたバリアントの1つ以上の制約に応答して、バリアントの位置付けまたは幾何学形状、あるいは幾何モデルの中の配置された選択されたバリアントに隣接するモジュールの位置付けまたは幾何学形状を修正し得る。これらの1つ以上の制約は、上記で論議されるように、1つ以上のロケータまたはシェイパインターフェースによって識別され得る。一実施形態では、CADアプリケーションまたは幾何学形状エンジンは、選択されたバリアントの1つ以上のロケータインターフェースを、1つ以上の隣接モジュールまたはオブジェクトの1つ以上のロケータインターフェースと整列させるように、選択されたバリアントを平行移動および/または回転させ得る。別の同様の実施形態では、CADアプリケーションまたは幾何学形状エンジンは、1つ以上の隣接モジュールまたはオブジェクトの1つ以上のロケータインターフェースを、選択されたバリアントの1つ以上のロケータインターフェースと整列させるように、1つ以上の隣接モジュールまたはオブジェクトを平行移動および/または回転させ得る。別の実施形態では、CADアプリケーションまたは幾何学形状エンジンは、選択されたバリアントを拡大縮小または伸張して、バリアントの1つ以上のシェイパインターフェースを、1つ以上の隣接モジュールまたはオブジェクトの1つ以上のシェイパインターフェースと整列させ得る。さらに別の実施形態では、CADアプリケーションまたは幾何学形状エンジンは、バリアントの幾何学形状を拡張し、ねじり、または別様にルートrouteし、バリアントの1つ以上のシェイパインターフェースを、隣接モジュールまたはオブジェクトの1つ以上のシェイパインターフェースと整列させ得る。同様の実施形態では、CADアプリケーションまたは幾何学形状エンジンは、隣接モジュールまたはオブジェクトの幾何学形状を拡張し、ねじり、または別様にルートし、隣接モジュールまたはオブジェクトの1つ以上のシェイパインターフェースを、バリアントの1つ以上のシェイパインターフェースと整列させ得る。D.要求に応じてコンピュータ支援設計モデルの複数部分を動的にロードするためのシステムおよび方法多くのCADシステムでは、システムは、CADモデルの全ての部品または特徴を一度にロードし得る。例えば、上記で論議されるように、多くのCADシステムでは、幾何学形状エンジンが、表示またはレンダリングエンジンによる表示のためにCADモデルを構築するように、履歴ベースの特徴リストの各ステップを実行、再生、または再計算し得る。ほんのわずかだけの特徴を伴う単純なモデルでは、これを迅速に行うことができる。しかしながら、複雑なモデルは、それぞれ、数十または数百もの個々の特徴を備えている、数千または数万もの部品を含み得る。例えば、トラックのモデルは、フレーム、車軸、自在継手、パワートレインの要素、ブレーキアセンブリの要素、電気サブシステム、ライト、油圧、窓、座席、計器、排気システム、燃料経路等に対する別個の部品を備え得る。エンジン単独が、数百の部品および数千の特徴を備え得る。必要メモリおよび再生時間を削減するために、多くのCAD設計者は、CADモデルを小区分に分けて、異なるモデルにおいて各小区分を設計し得る。例えば、CAD設計者は、電気システムのみを含む単一のモデル、およびフレームの非可動部品のみを含む第2のモデル、およびエンジン燃料/排気システムのみを含む第3のモデル等を有し得る。しかしながら、これは、エンジン自体等の異なる小区分において修正を必要とする、フレームのエンジンマウント等の1つの小区分に修正が行われる、混乱および非効率、ならびに間違いにつながる場合がある。これらの部品が同じモデルの中にないため、設計者は、モデルが同期化されて互換性があることを確実にするように、複雑な手動記帳を行わなければならない。加えて、重量および重心等の特徴が、小区分の全ての組み合わせの結果となるため、モデルに工学および製造分析を行う能力が低減される。したがって、本発明の一側面は、要求に応じてコンピュータ支援設計モデルの複数部分を動的にロードするためのシステムおよび方法を特徴とする。一実施形態では、CADアプリケーションは、特定の設計タスクのために、ユーザによる必要に応じて、CADモデルの複数部分を漸進的にロードし得る。これは、必要メモリおよび処理の両方を削減し、ラップトップ、タブレットコンピュータ、スマートフォン、または任意の他のシステム等の限定されたリソースを伴うデバイス上での完成したCADモデルへのアクセスを伴って、CADアプリケーションを実行する可能性を生成する。一例として、一実施形態では、ユーザは、1つ以上の新しい構成要素を組み立てるために、車両のモデルを読み出し得る。CADアプリケーションは、表示するために、車両構造およびグラフィックをロードし得る。次いで、ユーザは、トランスミッションアセンブリ等の追加する新しい構成要素を選択し得る。CADアプリケーションは、表示するためにトランスミッション構造およびグラフィックをロードし得る。ユーザが、トランスミッションに対する制約を定義する際に使用する車両構造の特定の幾何学形状を選択する時に、これらの選択された幾何学形状参照が、モデルの幾何学形状全体をロードすることなく、CADアプリケーションによってロードされ得る。例えば、図5Aには、トラックのコンピュータ支援設計モデル500の実施例の3次元図が示されている。CADアプリケーションは、一実施形態では、モデルとともに、または別個のファイルの中に記憶され得る、モデル500のグラフィックスをロードし得る。別の実施形態では、グラフィックスは、動的であるが、モデル全体の幾何学形状をロードすることなく生成され得る。例えば、一実施形態では、モデルの以前の作成中に、CADアプリケーションが、モデルのシェルまたは一式の外側可視表面を決定し、これらの表面の幾何学的表現を記憶し得る。このシェル表現は、下層にある隠れた表面または内面の幾何学形状をロードする必要なく、グラフィックスを動的に生成するために使用され得る。いくつかの実施形態では、CADアプリケーションはまた、図4A-4Dとの関連で論議されるように、モデルのモジュール構造をロードし得る。サブアセンブリの集合として図4Bに示されているが、多くの実施形態では、モジュール構造は、個々のオブジェクトまたは特徴の構造を備え得る。例えば、図4Bの場合のように座席を参照するよりもむしろ、モジュール構造は、それぞれ、他の幾何学的エンティティおよび部品との従属性および関係を伴う、座席の基礎部分、背もたれ、内部フレーミング、1つまたは2つの肘掛け、クッションまたは他の詰め物、種々の継ぎ目および縫い目等を含み得る。一実施形態では、CADアプリケーションは、上記の実施例では座席と呼ばれる一群の要素等のモジュール構造の一部分をロードし得る。同様に、図5Aに示される実施例では、CADアプリケーションは、各サブアセンブリの個々の要素をロードすることなく、フレーム、キャブ、エンジンルーム、パワートレイン等を含む、トラックの全体モジュール構造をロードし得る。図5Bには、コンピュータ支援設計モデルの実施例のサブアセンブリの3次元図が示されており、一実施形態では、一例として、ユーザが、エンジンモデル502等のサブアセンブリを選択し得る。選択に応答して、CADアプリケーションは、エンジンモデルのモジュール構造、ならびにエンジンのグラフィックスおよび幾何学形状をロードし得る。いくつかの実施形態では、グラフィックスデータは、エンジンの外部または可視要素のみのグラフィックデータを含み得、上記で論議されるように記憶または生成され得る。漸進的ローディングを通してモデルに掘り下げるというこのプロセスを続けると、図5Cには、コンピュータ支援設計モデルの実施例のサブアセンブリのサブアセンブリの3次元図が示されている。示されるように、一実施形態では、一例として、ユーザは、エンジンピストンモデル504等のエンジンのサブアセンブリを選択し得る。選択に応答して、CADアプリケーションは、エンジンピストンモデルのモジュール構造、ならびにエンジンのグラフィックスおよび幾何学形状をロードし得る。いくつかの実施形態では、グラフィックスデータは、エンジンの外部または可視要素のみのグラフィックデータを含み得、上記で論議されるように記憶または生成され得る。いくつかの実施形態では、ユーザが、第2のオブジェクトへの制約または参照を含む、選択されたオブジェクトの幾何学形状を修正する時に、第2のオブジェクトの幾何学形状およびグラフィックスデータがロードされ得る。例えば、ユーザがエンジンピストンの直径を修正しようとし、直径が周辺シリンダに対する制約または関係を有する場合、CADアプリケーションは、シリンダの幾何学形状をロードして制約を守らせ、必要に応じて特徴を再計算または再生し得る。したがって、ユーザは、低減した必要メモリおよび処理を用いて、高度に複雑なモデルの全ての特徴さえも操作し、編集する完全な能力を有する。図5Dでは、要求に応じてコンピュータ支援設計モデルの複数部分を動的にロードする方法の実施形態のフローチャートが示されている。概観すると、ステップ510で、CADアプリケーションが、CADモデルの第1の部分をロードし得る。一実施形態では、CADモデルの第1の部分は、CADモデルのモジュール構造を備え得る。さらなる実施形態では、モジュール構造は、CADモデルの1つ以上のサブアセンブリまたはモジュールを備え得る。別の実施形態では、CADモデルの第1の部分は、モジュール構造の第1の要素のグラフィックスおよび幾何学形状データを備え得る。さらなる実施形態では、モジュール構造の第1の要素は、モジュール構造のルート要素、アセンブリ、またはモジュールを備え得る。別のさらなる実施形態では、グラフィックスデータは、モジュール構造またはCADモデルのシェルあるいは1つまたは複数の表面を備え得る。ステップ512で、いくつかの実施形態では、ユーザが、モジュール構造の第2の要素を選択し得る。いくつかの実施形態では、第2の要素は、モジュール構造のサブアセンブリを備え得る。ユーザが、図5A-5Cに示されるトラックのエンジンルームの中の構成要素に対する作業を終え、リアブレーキの中の構成要素に対して作業することを希望する場合等の、他の実施形態では、第2の要素は、モジュール構造の中に非直接関連要素またはサブアセンブリを備え得る。さらなる実施形態では、非直接関連要素のユーザによる選択は、CADアプリケーションに、メモリから第1の要素のグラフィックスおよび幾何学形状データをアンロードさせ得る。ステップ514で、いくつかの実施形態では、ユーザによる第2の要素の選択に応答して、CADアプリケーションが、CADモデルの第2の部分であって、選択された第2の要素のモジュール構造を備えている、第2の部分をロードし得る。さらなる実施形態では、第2の要素のモジュール構造は、第2の要素の1つ以上のサブアセンブルまたはモジュールを備え得る。別の実施形態では、CADモデルの第2の部分は、選択された第2の要素のグラフィックスおよび幾何学形状データを備え得る。さらなる実施形態では、グラフィックスデータは、選択された第2の要素のシェルあるいは1つまたは複数の表面を備え得る。いくつかの実施形態では、ステップ512-514または510-514が繰り返され得る。一実施形態では、ユーザが、第1の要素または第2の要素の幾何学形状データの制約を定義するために、モジュール構造の第3の要素の幾何学形状データの1つ以上の項目を選択し得、CADアプリケーションが、選択に応答して、第3の要素の幾何学形状データの選択された1つ以上の項目をロードし得る。いくつかの実施形態では、第3の要素のグラフィックスおよび幾何学形状をロードすることは、第3の要素の幾何学形状データの未選択項目をロードしないことを含み得る。例えば、上記で論議されるピストンおよびシリンダ例では、CADアプリケーションは、ユーザがピストンの直径を編集しようとする時に、シリンダの直径をロードし得るが、必要でなければ、シリンダの深さまたは他の特徴をロードしなくてもよい。さらに、上記で論議されるように、多くの実施形態では、モデルの非直接関連要素を選択することにより、メモリを解放するように、CADアプリケーションにモデルの初期にロードされた部分をアンロードさせ得る。いくつかの実施形態では、要素のグラフィックスおよび幾何学形状をロードすることは、要素の1つ以上のロケーションインターフェースまたはシェイパインターフェースをロードすることを含み得る。一実施形態では、要素のグラフィックスおよび幾何学形状データをロードすることは、要素の1つ以上の可視または外部表面を識別し、要素の識別された可視または外部表面のグラフィックスおよび幾何学形状データをロードし得る。ユーザが要素をモデルに追加している場合等の一実施形態では、要素を選択することは、要素を以前の要素のモジュール構造に追加することを含み得る。結論上記で論議されるシステムは、これらの構成要素のうちのいずれかまたはそれぞれの複数を提供し得、これらの構成要素は、独立型マシン上で、またはいくつかの実施形態では、分散型システム内の複数のマシン上で提供され得ることを理解されたい。上記で説明されるシステムおよび方法は、ソフトウェア、ファームウェア、ハードウェア、またはそれらの任意の組み合わせを生産するためにプログラミングおよび/または工学技術を使用して、方法、装置、または製造品として実装され得る。加えて、上記で説明されるシステムおよび方法は、1つ以上の製造品の上または中で具現化される、1つ以上のコンピュータ可読プログラムとして提供され得る。本明細書で使用されるような製造品という用語は、1つ以上のコンピュータ可読デバイス、ファームウェア、プログラマブル論理、メモリデバイス例えば、EEPROM、ROM、PROM、RAM、SRAM等、ハードウェア例えば、集積回路チップ、フィールドプログラマブルゲートアレイFPGA、特定用途向け集積回路ASIC等、電子デバイス、コンピュータ可読不揮発性記憶ユニット例えば、CD-ROM、フロッピー登録商標ディスク、ハードディスクドライブ等からアクセス可能であるか、またはそれらに組み込まれる、コードまたは論理を包含することを目的としている。製造品は、ネットワーク伝送線、無線伝送媒体、空間を通って伝搬する信号、電波、赤外線信号等を介して、コンピュータ可読プログラムへのアクセスを提供する、ファイルサーバからアクセス可能であり得る。製造品は、フラッシュメモリカードまたは磁気テープであり得る。製造品は、ハードウェア論理、あるいはプロセッサによって実行されるコンピュータ可読媒体に埋め込まれたソフトウェアまたはプログラマブルコードを含む。一般的に、コンピュータ可読媒体は、LISP、PERL、C、C、C、PROLOG等の任意のプログラミング言語で、またはJAVA登録商標等の任意のバイトコード言語で実装され得る。ソフトウェアプログラムは、オブジェクトコードとして、1つ以上の製造品の上または中に記憶され得る。方法およびシステムのある実施形態を説明してきたが、本発明の概念を組み込む他の実施形態が使用され得ることが、当業者に明白となるであろう。"