(57)【要約】  本発明による方法は、３Ｄモデルを定義するモデルツリーを受信するステップを備えている。モデルツリーは、複雑な３Ｄモデルを定義するノンヒストリ型の一つの親ノードと、該複雑な３Ｄモデルを変更する付加的な複数のフィーチャを定義するヒストリベース型の複数の子ノードとを含んでいる。また本発明による方法は、３Ｄモデルを計算するステップを備えており、計算された３Ｄモデルは親ノードと子ノードを結合する。本発明による方法は更に、計算された３Ｄモデルを、子ノードによって定義されている付加的な複数のフィーチャでもって変更された複雑な３Ｄモデルとして表示するステップとを備えている。
2013543619.tif 000002
【特許請求の範囲】
【請求項１】
データ処理システムにおいて、３次元（３Ｄ）モデルを定義するモデルツリーを受信するステップであって、但し、前記モデルツリーは、複雑な３Ｄモデルを定義するノンヒストリ型の一つの親ノードと、該複雑な３Ｄモデルを変更する付加的な複数のフィーチャを定義するヒストリベース型の複数の子ノードとを含んでいるステップと、
前記データ処理システムによって、３Ｄモデルを計算するステップであって、前記計算された３Ｄモデルは前記親ノードと前記子ノードとを結合するステップと、
前記データ処理システムによって、前記計算された３Ｄモデルを、前記子ノードによって定義されている前記付加的な複数のフィーチャでもって変更された複雑な３Ｄモデルとして表示するステップと、を備えていることを特徴とする、方法。
【請求項２】
前記３Ｄモデルに対する編集を受信するステップと、
該編集された３Ｄモデルを再計算及び表示するステップとを更に備えている、請求項１に記載の方法。
【請求項３】
前記編集は前記親ノードについての編集である、請求項２に記載の方法。
【請求項４】
前記編集は追加されたヒストリベース型の子ノードである、請求項２に記載の方法。
【請求項５】
前記編集は変更されたヒストリベース型の子ノードである、請求項２に記載の方法。
【請求項６】
前記親ノードへと移動すべき複数の子ノードの選択を受信するステップと、
前記選択された複数の子ノードによって定義されている複数のフィーチャを、前記親ノードによって定義されている前記複雑な３Ｄモデルへと追加するステップとを更に備えている、請求項１に記載の方法。
【請求項７】
第２のモデルツリーを定義するステップを更に備えており、但し、前記第２のモデルツリーは、一つのノンヒストリ型の親ノードと、複数のヒストリベース型の子ノードとを含んでおり、前記親ノードは、複雑な３Ｄモデルと前記追加された複数のフィーチャを定義し、前記子ノードは、前記複雑な３Ｄモデルを変更するが、前記選択された複数の子ノードを含まない付加的な複数のフィーチャを定義する、請求項６に記載の方法。
【請求項８】
前記複雑な３Ｄモデルの複数のフィーチャの選択を受信するステップと、
前記親ノードから前記選択された複数のフィーチャを除去するステップと、
前記選択された複数のフィーチャ各々に対応する子ノードを生成するステップとを更に備えている、請求項１に記載の方法。
【請求項９】
プロセッサと、アクセス可能なメモリとを備えているデータ処理システムにおいて、
該データ処理システムは、特に、
３次元（３Ｄ）モデルを定義するモデルツリーを受信し、但し、前記モデルツリーは、複雑な３Ｄモデルを定義するノンヒストリ型の一つの親ノードと、該複雑な３Ｄモデルを変更する付加的な複数のフィーチャを定義するヒストリベース型の複数の子ノードとを含んでおり、
３Ｄモデルを計算し、前記計算された３Ｄモデルは前記親ノードと前記子ノードとを結合し、
前記計算された３Ｄモデルを、前記子ノードによって定義されている前記付加的な複数のフィーチャでもって変更された複雑な３Ｄモデルとして表示する、ように構成されていることを特徴とする、データ処理システム。
【請求項１０】
前記データ処理システムは、
前記３Ｄモデルに対する編集を受信し、
該編集された３Ｄモデルを再計算及び表示する、ように構成されている、請求項９に記載のデータ処理システム。
【請求項１１】
前記編集は前記親ノードについての編集である、請求項１０に記載のデータ処理システム。
【請求項１２】
前記編集は追加されたヒストリベース型の子ノードである、請求項１０に記載のデータ処理システム。
【請求項１３】
前記編集は変更されたヒストリベース型の子ノードである、請求項１０に記載のデータ処理システム。
【請求項１４】
前記データ処理システムは、
前記親ノードへと移動すべき複数の子ノードの選択を受信し、
前記選択された複数の子ノードによって定義されている複数のフィーチャを、前記親ノードによって定義されている前記複雑な３Ｄモデルへと追加する、ように構成されている、請求項９に記載のデータ処理システム。
【請求項１５】
前記データ処理システムは、
第２のモデルツリーを定義するように構成されており、但し、前記第２のモデルツリーは、一つのノンヒストリ型の親ノードと、複数のヒストリベース型の子ノードとを含んでおり、前記親ノードは、複雑な３Ｄモデルと前記追加された複数のフィーチャを定義し、前記子ノードは、前記複雑な３Ｄモデルを変更するが、前記選択された複数の子ノードを含まない付加的な複数のフィーチャを定義する、請求項１４に記載のデータ処理システム。
【請求項１６】
前記データ処理システムは、
前記複雑な３Ｄモデルの複数のフィーチャの選択を受信し、
前記親ノードから前記選択された複数のフィーチャを除去し、
前記選択された複数のフィーチャ各々に対応する子ノードを生成する、ように構成されている、請求項９に記載のデータ処理システム。
【請求項１７】
実行時に、コンピュータにより実行可能な命令がエンコーディングされている、非一時的なコンピュータ読み出し可能媒体において、
前記命令が、データ処理システムに、
３次元（３Ｄ）モデルを定義するモデルツリーを受信するステップであって、但し、前記モデルツリーは、複雑な３Ｄモデルを定義するノンヒストリ型の一つの親ノードと、該複雑な３Ｄモデルを変更する付加的な複数のフィーチャを定義するヒストリベース型の複数の子ノードとを含んでいるステップと、
３Ｄモデルを計算するステップであって、前記計算された３Ｄモデルは前記親ノードと前記子ノードとを結合するステップと、
前記計算された３Ｄモデルを、前記子ノードによって定義されている前記付加的な複数のフィーチャでもって変更された複雑な３Ｄモデルとして表示するステップとを実施させることを特徴とする、コンピュータ読み出し可能媒体。
【請求項１８】
実行時に、前記データ処理システムに、
前記３Ｄモデルに対する編集を受信するステップと、
該編集された３Ｄモデルを再計算及び表示するステップとを実施させる、コンピュータにより実行可能な命令が更にエンコーディングされている、請求項１７記載のコンピュータ読み出し可能媒体。
【請求項１９】
前記編集は前記親ノードについての編集である、請求項１８に記載のコンピュータ読み出し可能媒体。
【請求項２０】
前記編集は追加されたヒストリベース型の子ノードである、請求項１８に記載のコンピュータ読み出し可能媒体。
【請求項２１】
前記編集は変更されたヒストリベース型の子ノードである、請求項１８に記載のコンピュータ読み出し可能媒体。
【請求項２２】
実行時に、前記データ処理システムに、
前記親ノードへと移動すべき複数の子ノードの選択を受信するステップと、
前記選択された複数の子ノードによって定義されている複数のフィーチャを、前記親ノードによって定義されている前記複雑な３Ｄモデルへと追加するステップとを実施させる、コンピュータにより実行可能な命令が更にエンコーディングされている、請求項１７記載のコンピュータ読み出し可能媒体。
【請求項２３】
実行時に、前記データ処理システムに、
第２のモデルツリーを定義するステップであって、但し、前記第２のモデルツリーは、一つのノンヒストリ型の親ノードと、複数のヒストリベース型の子ノードとを含んでおり、前記親ノードは、複雑な３Ｄモデルと前記追加された複数のフィーチャを定義し、前記子ノードは、前記複雑な３Ｄモデルを変更するが、前記選択された複数の子ノードを含まない付加的な複数のフィーチャを定義するステップを実施させる、コンピュータにより実行可能な命令が更にエンコーディングされている、請求項２２記載のコンピュータ読み出し可能媒体。
【請求項２４】
実行時に、前記データ処理システムに、
前記複雑な３Ｄモデルの複数のフィーチャの選択を受信するステップと、
前記親ノードから前記選択された複数のフィーチャを除去するステップと、
前記選択された複数のフィーチャ各々に対応する子ノードを生成するステップとを実施させる、コンピュータにより実行可能な命令が更にエンコーディングされている、請求項１７記載のコンピュータ読み出し可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般的に、コンピュータ支援設計、製造、エンジニアリング、プロトタイプ／テスト、メンテナンス、モデリング及び視覚化において用いられるシステム（個別に及び集合的に、「ＣＡＤ」及び「ＣＡＤシステム」）及び方法、並びに、製品ライフサイクル管理（「ＰＬＭ」）及び他のシステムにおいて用いられるシステム及び方法に関する。
【０００２】
発明の背景
グラフィックモデルを開発及び操作するための改善されたプロセス及びシステムが所望されている。
【０００３】
発明の概要
種々の実施の形態には、システム、方法及びコンピュータ読み出し可能媒体が含まれる。方法は、３次元（３Ｄ）モデルを定義するモデルツリーを受信するステップを備えている。このモデルツリーは、複雑な３Ｄモデルを定義する一つのノンヒストリ型の親ノードと、その複雑な３Ｄモデルを変更する付加的なフィーチャを定義する複数のヒストリベース型の子ノードとを含んでいる。本方法は３Ｄモデルを計算するステップを備えており、この計算された３Ｄモデルは親ノードと複数の子ノードを結合する。本方法は、計算された３Ｄモデルを、子ノードによって定義されている複数の付加的なフィーチャによって変更された複雑な３Ｄモデルとして表示するステップを備えている。
【０００４】
上記の事項は、当業者が以下の詳細な説明をより良く理解できるように本発明の特徴及び技術的な利点をかなり大雑把に述べたものである。特許請求の範囲の対象を成す本発明の付加的な特徴及び利点を以下において説明する。当業者であれば、本発明と同一の目的を達成するために他の構造を変更又は設計するための基礎として、本明細書において開示されている着想及び特定の実施形態を容易に使用することができるであろう。また、当業者であれば、そのような等価物はその最も広い形態においても、本発明の精神及び範囲から逸脱するものではないことが分かるであろう。
【０００５】
以下の詳細な説明に先立って、本明細書全体にわたり使用されている特定の用語又はフレームの定義を明らかにしておくことは有利である：「含む」及び「備えている」、またそれらから派生した語は限定的でない包含を意味しており、「又は」という語は包含的、即ち、及び／又は、を意味しており、「関連した」及び「それと関連した」並びにそれらから派生した語は、含む、中に含まれる、相互に接続されている、〜に、又は、〜と結合する、〜と通じている、協働する、交互配置する、並置する、近接している、〜と又は〜に結び付けられている、有する、〜の性質を有する等を意味しており、「コントローラ」という語は、ハードウェア、ファームウェア、ソフトウェア、又はそれらの内の少なくとも二つの組合せのいずれかによって実施されていようと、少なくとも一つの動作を制御する任意のデバイス、システム又はそれらの一部を意味している。いずれかの特定のコントローラに関連する機能は中央に集中していても良いし、局所的であれ遠隔的であれ分散していても良いことを言及しておく。本明細書全体にわたり特定の用語及びフレーズの定義を示しているが、当業者であれば、そのような定義は、殆どではないにしろ、多くの場合はそのように定義された用語及びフレーズの以前の用法及び将来の用法にも当てはまることを理解するであろう。幾つかの語は多様な実施形態を含んでいるが、添付の特許請求の範囲にはそれらの語を特定の実施形態に明示的に限定している。
【０００６】
本発明及び本発明の利点をより完全に理解するために、以下では、添付の複数の図を参照しながら本発明を説明する。それらの図において、同一の参照番号は同一の対象を表している。
【図面の簡単な説明】
【０００７】
【図１】本発明の複数の実施の形態に従い一つの実施の形態を実現することができるデータ処理システムのブロック図を示す。
【図２】本発明の複数の実施の形態によるシステムの例示的なユーザインタフェースを示す。
【図３】本発明の複数の実施の形態によるシステムの例示的なユーザインタフェースを示す。
【図４】本発明の複数の実施の形態による、新たなベースノードを形成するためにヒストリベース型のフィーチャをノンヒストリ型のノードに移動させるプロセスを示す。
【図５】本発明の複数の実施形態による処理のフローチャートを示す。
【発明を実施するための形態】
【０００８】
下記において説明する図１から図４、また本明細書に開示されている本発明の原理を説明するために用いられる種々の実施の形態は単に説明を目的としたものに過ぎず、本発明の範囲を限定するものと解するべきではない。当業者であれば、本発明の原理は適切に構成されたあらゆる装置において実現できることが分かるであろう。以下では、限定を意図したものではない複数の実施例を参照しながら、本発明の多くの革新的な教示について説明する。
【０００９】
ＣＡＤシステム及びＰＬＭシステムにおけるグラフィックモデリングは通常の場合、ヒストリベース型のモデリング又はノンヒストリ型のモデリングを使用して実施されている。一般的に、それら二つのモデリングの主たる相違点は、ヒストリベース型のモデルが、フィーチャリスト又は「履歴ツリー」において直前のフィーチャに直接的に依存しているフィーチャを有しており、ノンヒストリ型のモデルがフィーチャ間の固有の依存関係を有していないことである。本明細書の開示内容の目的上、同期モデリングをノンヒストリ型のモデリングの一形態と解することができる。
【００１０】
一般的に、所定の一つの部分ファイルはヒストリベース型のモデルの定義か、又はノンヒストリ型のモデルの定義のいずれかしか持つことができない。この「区分」は、ユーザが特定の時点においていずれの技術の恩恵も受けることはできないが、一方のタイプのモデル又は他方のタイプのモデルを用いて作業することを選択しなければならないことを意味している。
【００１１】
本発明の種々の実施の形態には、それらの技術を組み合わせることができるシステム及び方法が含まれる。
【００１２】
直接的な編集は、ノンヒストリ型に類似するやり方で、モデルの面に直接的且つ相互的な影響を及ぼす方法であるが、しかしながら、確実に更新できるものではないのでノンヒストリ型の方法ではなく、個別的な編集を各々ツリー内で捕捉しなければならない。つまり、ユーザがある部品に対して１０回の編集を行なった場合には、結果として生じるツリーも１０個のノードを有することになる。これによって、ツリーの末端部における多数のそれらの編集を非実現的なものとなり、また実際のところ、これはヒストリベースのモデリングの別の形態に過ぎない。
【００１３】
ノンヒストリ型のモデリングとヒストリベース型のモデリングとの間で切り替えは上手くいかない。何故ならば、実際のところ、一方のタイプにおいて使用／記憶されている全ての情報が他方のタイプへの移行時に失われるからである。モデル全体が一方のタイプから他方のタイプへと「変換」され、例えば、全ての履歴情報は失われる。
【００１４】
一般的に、ノンヒストリ型のモデリングはより高い汎用性及び自由な設計を提供する。反対に、ヒストリベース型のモデリングは特定のケースにおいて非常に高い予測精度及び信頼性を提供する。また、例えば、部品の鋳込み仕上げ状態及び機械仕上げ状態の両方の描写のような幾つかの設計の問題には、ヒストリベース型のモデリングの「整然とした」方法論が適用される。何故ならば、それらの状態は定義上プロセスベースであり、従って順序が最も重要だからである。
【００１５】
ヒストリベース型のモデリング及びノンヒストリ型のモデリングを同一の部品ファイル、また同一のツリーにおいて維持管理及び使用できることによって、本発明による実施の形態は新たなレベルの生産性を達成し、またそれにより、ノンヒストリ型のモデリングの汎用性及びヒストリベース型のモデリングの順序付けられた性質を必要なときにユーザに提供することができる。
【００１６】
種々の実施の形態によれば、ノンヒストリ型のノードが計算順序の最後ではなく先頭に置かれる。この最初ノード内では、ユーザが所望するあらゆるノンヒストリ型の編集を行なうことができる。この技術を使用することにより、ユーザによって行なわれる複数のステップの経過を維持することは全く必要なく、またユーザは駆動寸法（Driving Dimensions）を何時でもあらゆる順序で配置することができる。
【００１７】
ヒストリベース型のフィーチャをこのノードの後に付加することができる。それらのフィーチャは、開始点としてのノンヒストリ型のノードを使用して順次計算される。ある意味、先頭のノンヒストリ型のノードは非常に洗練された「ベースフィーチャ」である。ユーザはヒストリベース型の部分における全てのフィーチャ、ノンヒストリ型の部分における全てのフィーチャ、又は、相互的なやり方で整合されているそれぞれ一つの部分を用いて設計を行なうことができる。本明細書において使用されているように、「モデルツリー」とは、本明細書において記載されているようなノンヒストリ型のノードに従属するヒストリベース型のフィーチャを有しているノンヒストリ型のノードを備えた構造を表す。
【００１８】
種々の実施の形態によれば、結果として生じる固体に対して何の変更も行なわれずに、一つ又は複数のフィーチャをモデルのヒストリベース型の部分からモデルのノンヒストリ型の部分に移動させることができる。また、複数のフィーチャを「下流方向に」ノンヒストリ型の部分からヒストリベース型の部分へと移動させることができる。
【００１９】
図１には、例えば本明細書に記載されているプロセスを実施するよう構成されているＣＡＤシステム又はＰＬＭシステムとして、一つの実施の形態を実現することができるデータ処理システムのブロック図が示されている。図示されているデータ処理システムは、レベル２キャッシュ／ブリッジ１０４に接続されているプロセッサ１０２を含んでおり、このレベル２キャッシュ／ブリッジ１０４はローカルシステムバス１０６に接続されている。ローカルシステムバス１０６としては、例えばコンピュータ用拡張バスアーキテクチャ（ＰＣＩ；peripheral component interconnect）が考えられる。また、図示されている実施例では、メインメモリ１０８及びグラフィックスアダプタ１１０もローカルシステムバスに接続されている。グラフィックスアダプタ１１０をディスプレイ１１１に接続することができる。
【００２０】
ローカルエリアネットワーク（ＬＡＮ）／ワイドエリアネットワーク／ワイヤレス（例えばＷｉＦｉ）アダプタ１１２のような他の周辺機器もローカルシステムバス１０６に接続することができる。拡張バスインタフェース１１４は、ローカルシステムバス１０６を入力／出力（Ｉ／Ｏ）バス１１６に接続する。Ｉ／Ｏバス１１６にはキーボード／マウスアダプタ１１８、ディスクコントローラ１２０及びＩ／Ｏアダプタ１２２が接続されている。ディスクコントローラ１２０を記憶装置１２６と接続することができる。この記憶装置１２６は、機械使用可能又は機械読み取り可能な適切な記憶媒体であればいずれの記憶媒体でも良い。その種の記憶媒体には、ハードコーディング型の媒体、例えば読み出し専用メモリ（ＲＯＭ）又は電気的に消去可能なプログラマブル読み出し専用メモリ（ＥＥＰＲＯＭ）、磁気テープ記憶装置、フロッピーディスク、ハードディスクドライブ及びコンパクトディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）又はディジタル多目的ディスク（ＤＶＤ）のようなユーザによる記録可能なタイプの媒体、また他の公知の光学的、電気的又は磁気的な記憶装置が含まれるが、記憶媒体はこれらに限定されるものではない。
【００２１】
図示されている実施例におけるＩ／Ｏバス１１６にはオーディオアダプタ１２４も接続されており、このオーディオアダプタ１２４には音声を再生するためにスピーカ（図示せず）を接続することができる。キーボード／マウスアダプタ１１８は、マウス、トラックボール、トラックポインタ等のようなポインティングデバイス（図示せず）との接続を実現する。
【００２２】
当業者であれば、図１に示されているハードウェアを特定の実施の形態のために変更できることが分かる。例えば、他の周辺装置、例えば光学ディスクドライブ等も付加的に使用することができるか、又は、図示されているハードウェアの代わりに使用することができる。図示されている実施例は説明を目的としているに過ぎず、本明細書の開示内容に関するアーキテクチャ上の制限を意図しているものではない。
【００２３】
本発明の実施の形態によるデータ処理システムは、グラフィカルユーザインタフェースを使用するオペレーティングシステムを含んでいる。このオペレーティングシステムは、グラフィカルユーザインタフェースに同時に複数のウィンドウを表示することができ、表示されている各ウィンドウは異なるアプリケーション又は同一アプリケーションの異なるインスタンスへのインタフェースを提供する。ユーザはポインティングデバイスを介してグラフィカルユーザインタフェースにおけるカーソルを操作することができる。カーソルの位置は変更可能である、及び／又は、所望の応答を得るために行なわれるイベント、例えばマウスボタンのクリックで良い。
【００２４】
商用の種々のオペレーティングシステムの内の一つ、例えばMicrosoft Windows(TM)のバージョン（Redmond, Washに位置するMicrosoft社の製品）を、適切に変更されている場合には使用することができる。オペレーティングシステムは、本明細書に記載されている本発明に従い変更又は作成されている。
【００２５】
ＬＡＮ／ＷＡＮ／ワイヤレスアダプタ１１２を（データ処理システム１００の一部ではない）ネットワーク１３０に接続することができる。そのようなネットワーク１３０として、当業者には公知であるような、公共又は私用のあらゆるデータ処理システムネットワーク、又は、複数のネットワークの組み合わせが考えられ、例えばインターネットが含まれる。データ処理システム１００はネットワーク１３０を介してサーバシステム１４０と通信することができ、このサーバシステム１４０もまたデータ処理システム１００の一部ではないが、例えば、別個のデータ処理システム１００として実施することができる。データ処理システム１００及びサーバシステム１４０の一方又は両方を、本明細書に記載されているようなプロセスを実施するよう構成することができる。
【００２６】
本発明による実施の形態によれば、モデルツリーにおいてノンヒストリ型の親ノード又は部分をヒストリベース型の子ノードと結合させ、それによりノンヒストリ型のノードがヒストリベース型の子ノードの内の少なくとも幾つかの子ノードに「先行する」、システム及び方法が提供される。ユーザは、ツリーのノンヒストリ型の部分又はヒストリベース型の部分のいずれか一方又は両方を編集することができ、またシステムは相互作用を基礎として全体のモデルの依存関係にある部分を自動的に再計算し、その際に先ずノンヒストリ型の親ノード又は部分が計算され、次に必要であれば、ツリーの残りの部分を移動するような適切な変更が行なわれる。
【００２７】
更には、種々の実施の形態においては、選択されたヒストリベース型のノードによって定義されているフィーチャを有するノンヒストリ型のノードを含むことになるベースモデルを再計算することによって、ヒストリベース型のノードをノンヒストリ型のノードに「移動」させることができる。新たなツリーは、ノンヒストリ型のノードに基づき変更されたモデルを使用し、新たなノンヒストリ型のノードに従属する残りの選択されていないヒストリベース型のノードを構成することによって生成することができる。
【００２８】
更には、種々の実施の形態においては、ノンヒストリ型のベースノードから複数のフィーチャを抽出し、またそれらの選択されたフィーチャの各々に関する従属の子ノードを生成することによって、ノンヒストリ型のノードの選択された複数のフィーチャをヒストリベース型のツリーに「移動」させることができる。システムは、抽出された複数のフィーチャを排除するためにノンヒストリ型のノードを構成するベースモデルを再計算する。新たなツリーは、ノンヒストリ型のノードに基づき変更されたモデルを使用し、新たなノンヒストリ型のノードに従属するヒストリベース型の従属ノードとして抽出されたフィーチャを構成することによって生成することができる。
【００２９】
図２には、実施可能なものとしての、例えばデータ処理システム１００としての本発明によるシステムの例示的なユーザインタフェース２００が示されている。システムはディスプレイ１１１上にユーザインタフェースを表示し、また特に、本明細書に記載されている複数のプロセスを実施するように構成されている。後続の図面においては、「同期（Synchronous）」ノードは「ノンヒストリ型」のベースノードを表し、「順序付けられた（Ordered）」ノードはツリーの「ヒストリベース型」のツリーの残りの部分を表す。後続の図面に示されているように、幾つかのフィーチャはノンヒストリ型のフィーチャであり、またヒストリベース型のフィーチャ、例えば複雑な表面、カットアウト、及び幾つかの湾曲部は、最終的なモデルを生成するためにそのようなベースノードを基礎として評価される。
【００３０】
ユーザインタフェース２００には、ヒストリベース型のフィーチャが示されていない、ノンヒストリ型のベースノードモデル又は同期ベースノードモデル２０２が示されている。モデルは、左側に示されているように、突起（Protrusion）、湾曲部（Round）及びミラーフィーチャ（Mirror）のような複数の定義フィーチャを有しているノンヒストリ型のノード２０４によって定義されている。本発明の実施の形態によれば、このマルチフィーチャ式のノンヒストリ型のノード２０４はベースノードとして使用され、ノンヒストリ型のノード２０４を更に変更するヒストリベース型のフィーチャを含む後続のヒストリベース型のノードに関しては親ノードである。ノンヒストリ型のノード２０４はマルチフィーチャ式のノードであること、即ち、慣例のヒストリベース型のツリーにおけるベースノードとは異なり、複雑な３次元モデルを表していることを言及しておく。このコンテキストにおいて「複雑な」とは、ヒストリベースの形態において表すための複数のノードを要求する複数のフィーチャを、ノンヒストリ型のノードが有していることを表現することを意図しているが、ノンヒストリ型のノードにおいて表されるべき特定のフィーチャ又は多数のフィーチャを必要とすることを意図したものではない。
【００３１】
ユーザインタフェース２００によって、ユーザはツリーのノンヒストリ型の部分を編集することができる。幾つかの実施の形態においては、そのような編集が行なわれる場合、受信したユーザ選択に応じて、ヒストリベース型のフィーチャは編集中にモデルに表示されない。ツリーからのヒストリベース型の特徴を、図面の左側におけるツリーの下の位置におけるグレーアウトされたテキストとして表すことができる。
【００３２】
図３には、本発明の複数の実施の形態による一つのシステムの例示的なユーザインタフェース３００が示されている。ユーザインタフェース３００には、ノンヒストリ型のベースノード及び後続のヒストリベース型のフィーチャノードを使用して作成されたモデル３０２が表示されている。ベースモデルは、左側に示されているように、突起（Protrusion）、湾曲部（Round）及びミラーフィーチャ（Mirror）のような定義フィーチャを有しているノンヒストリ型のノード３０４によって定義されている。このマルチフィーチャ式のノンヒストリ型のノード３０４はベースノードとして使用され、ノンヒストリ型のノード３０４を更に変更するヒストリベース型のフィーチャを含む後続のヒストリベース型のノード３０６に関しては親ノードである。ノンヒストリ型のノード３０４はマルチフィーチャ式のノードであること、即ち、慣例のヒストリベース型のツリーにおけるベースノードとは異なり、複雑な３次元モデルを表していることを言及しておく。
【００３３】
ヒストリベースのノード（及びフィーチャ）も表示されているので、モデル３０２はモデル２０２に比べてより精巧になっている。ユーザがツリーのノンヒストリ型の部分又はヒストリベース型の部分を編集できるようにするために、ユーザインタフェース３００を使用することができる。幾つかの実施の形態においては、そのような編集が行なわれる場合、受信したユーザ選択に応じて、ヒストリベース型のフィーチャも編集中にモデルに表示される。このようにして、ツリーのいずれかの部分を編集するためにシステムがユーザ編集を受信すると、モデル３０２はリアルタイムで更新され、これにより、ノンヒストリ型を基礎とするノードのフィーチャ及び後続のヒストリベース型のフィーチャを含む完全なモデルが反映される。
【００３４】
図４には、本発明の実施の形態による、新たなベースノードを形成するためにヒストリベース型のフィーチャをノンヒストリ型のノードに移動させるプロセスが示されている。この図においては、ツリー４０６内のヒストリベース型の複数のフィーチャ／ノード４０４と、一つのノンヒストリ型のノードを使用して生成された、一般的にモデル３０２に対応するモデル４０２とが示されている。この実施例においては、ユーザが、ツリーのヒストリベース型の部分からツリー４０６のノンヒストリ型の同期部分に移動させるべきノードのサブセット４０４を選択する。
【００３５】
第２のツリー４１６においては、選択されたフィーチャ４１４がノンヒストリ型の同期ノードの一部として示されている。対応するモデル４１２はモデル４０２と同一のモデルのように見える。何故ならば、このモデル４１２はノンヒストリ型の部分及びヒストリベース型の部分の完全に計算された組み合わせであるが、選択された複数のフィーチャはノンヒストリ型のベースノードの一部であり、同期モデリング技術を使用して編集することができるからである。幾つかの実施の形態においては、古いベースノード及びツリーを廃棄し、（移動されたフィーチャを含む）新たなベースノード及び（移動されたフィーチャを含まない）新たな従属ツリーに置換することができる。
【００３６】
複数のフィーチャがモデルのノンヒストリ型の部分に移動されると、「下位にあるもの（unders）」は維持されるが、関係性及び寸法は変更される可能性があり、またその場合には、同期部分内の関係性は同期フィーチャとして管理される。
【００３７】
反対のプロセスも実施することができ、その場合にはノンヒストリ型の同期フィーチャは同期部分からツリーのヒストリベース型の部分に移動される。システムはモデルを正確に再計算及び再形成するために、フィーチャの依存関係の適切な順序を求める。
【００３８】
図５には、ＣＡＤシステム又はＰＬＭシステムとして実施されているデータ処理システムによって実施することができる、本発明の実施の形態によるプロセスのフローチャートが示されている。
【００３９】
システムは、３次元モデルを定義するモデルツリーを受信する（ステップ５０５）。そのモデルツリーは、複雑な３次元（３Ｄ）モデルを定義するノンヒストリ型の親ノードを含んでいるノンヒストリ型の部分と、その複雑な３Ｄモデルを変更する付加的なフィーチャを定義する、親ノードの後続の複数の子ノードを含んでいるヒストリベース型の部分とを有している。本明細書において使用されている「受信する」には、記憶装置からの読み出し、例えばネットワークを介する他のシステムからの受信、ユーザインタラクションによる受信等が含まれる。
【００４０】
システムは、親ノードと子ノードの結合するモデルツリーによって定義されている３Ｄモデルを計算する（ステップ５１０）。
【００４１】
システムは計算された３Ｄモデルを表示する（ステップ５１５）。計算された３Ｄモデルは、子ノードによって変更された親ノードの複雑な３Ｄモデルを表す。
【００４２】
システムは３Ｄモデルについての編集を受信することができ（ステップ５２０）、また各編集を受信したとき、又は受信後に、編集された３Ｄモデルを再計算及び表示することができる（ステップ５１０に戻る）。各編集はノンヒストリ型の親ノードについての同期編集であるか、又は、ヒストリベース型の部分に対する慣例の編集、例えば子ノードの追加、削除又は変更である。
【００４３】
システムは、ツリーのヒストリベース型の部分からツリーのノンヒストリ型の部分へと複数のフィーチャを移動させるために、親ノードへと移動されるべき子ノードの選択を受信することができる（ステップ５２５）。
【００４４】
システムは、子ノードによって表される複数のフィーチャを、親ノードによって表される複雑な３Ｄモデルに追加する（ステップ５３０）。
【００４５】
システムは、第１の複雑な３Ｄモデル、及び、選択された複数のノードによって表される複数のフィーチャを反映している親ノードと、選択された子ノードを含まない新たな親ノードに従属する複数の子ノードとを含むモデルツリーを記憶する（ステップ５３５）。このようにして、選択された子ノードによって表される複数のフィーチャは複数の子ノードとして移動され、新たな親ノードに組み込まれる。モデルツリーはオリジナルのモデルツリーに代わる完全に新しいモデルツリーであるか、又は、オリジナルモデルツリーの変更されたバージョンであり、また、いずれのケースにおいても第２のモデルツリーと称される。
【００４６】
システムは、新たな親ノードと残りの複数の子ノードを結合する第２の履歴ツリーに対応する３Ｄモデルを計算及び表示する（ステップ５４０）。
【００４７】
本明細書において説明した複数のプロセスの種々のステップを、別個の記述又は要求が無い限りは、同時に、順次に、反復的に、又は、別の順序で実施することができる。
【００４８】
別の実施の形態によれば、モデルツリーのこのノンヒストリ型の部分から、モデルツリーのヒストリベース型の部分へと複数のフィーチャを移動させるプロセスも実施することもできる。そのようなケースにおいては、システムは複雑な３Ｄモデルの複数のフィーチャの選択を受信し、親ノードから選択された複数のフィーチャを移動し、また、選択されたそれらのフィーチャの各々に対応する子ノードを生成することができる。このようにして、ノンヒストリ型の親ノードにおいて先行して発見された複数のフィーチャはヒストリベース型の子ノードによって表される。
【００４９】
本発明の実施の形態は、現在のモデリングの二つのパラダイムを一つのパラダイムに結合する。これによって、二つのパラダイム間の境界は無くなり、一つの環境において全てのコマンドの完全な演算が達成される。本発明の実施の形態は、慣例のヒストリベース型の編集及びモデリングを向上させるため、また完全な同期モデリングを実現するために各パラダイムにおける最大限の能力を使用する。それらは慣例のモデリング環境に「同期式の」能力を提供し、またこれにより同期モデルを等価のものにより高速に「肉付け」することができる。
【００５０】
種々の実施の形態においては、各モデリングタイプを同一のファイル内で独立して操作することができ、また、同期演算が開始されない場合には、ファイルは慣例のヒストリベース型のモデルファイルのような挙動をする。両タイプが同一のファイル内に存在する場合には、モデルは後続のヒストリベース型の複数のノードについての同期ベースのノードから計算される。同期モデリング演算は、同一の部分ファイル内の別個のノードにおいて行なわれ、また同期ボディの全ての操作を履歴ツリーの解決を開始するために使用することができる。
【００５１】
ヒストリベース型のノードを、移動、回転、寸法及び相関を含めて、同期ワークフローに基づき演算することができる。ノンヒストリ型のベースとヒストリベース型のフィーチャとの間のいずれの関係性も、寸法及び幾何学的な関係を含めて、ヒストリベース型の規則を用いて解決される。同期ベースはヒストリベース型の全ての従属の子ノードについての入力として使用される。再計算は、ヒストリベース型のベースノードから始まる、履歴ツリー全体において表されている時系列の順序を依然として基礎としている。
【００５２】
当業者であれば、簡単且つ明瞭にするために、本発明の使用に適した全てのデータ処理システムの完全な構造及び動作は本明細書において図示又は説明していないことが分かる。その代わりに、本発明に固有のデータ処理システム又は本発明の理解のために必要なデータ処理システムのみを図示及び説明している。データ処理システム１００のその他の部分の構造及び動作は、当業者には公知である現行の種々の実施の形態に従うもので良い。
【００５３】
本明細書には完全に機能的なシステムの文脈での記述が含まれているが、当業者であれば、本発明のメカニズムの少なくとも一部は種々の任意の形態の機械使用可能、コンピュータ使用可能又はコンピュータ読み出し可読な媒体に記録された命令の形態で配布できること、また本発明はその配布物を実際に実行するために使用される特定のタイプの命令又は信号が記録されている媒体又は記憶媒体に関係なく同様に適用されることを理解するであろうということを言及することは重要である。機械使用可能／機械読み出し可能又はコンピュータ使用可能／コンピュータ読み出し可能な媒体の例には、不揮発のハードコーディング型の媒体、例えば読み出し専用メモリ（ＲＯＭ）又は電気的に消去可能なプログラマブル読み出し専用メモリ（ＥＥＰＲＯＭ）、またユーザによる記録可能なタイプの媒体、例えばフロッピーディスク、ハードディスクドライブ及びコンパクトディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）又はディジタル多目的ディスク（ＤＶＤ）が含まれる。
【００５４】
本発明の実施例を詳細に説明してきたが、当業者であれば、本明細書に記載した実施例の種々の変更、置換、バリエーション及び改良はその最も広い形態においても本発明の精神及び範囲から逸脱することなく可能であることが分かるであろう。
【００５５】
本明細書における説明を、いずれの特定の要素、ステップ又は機能も請求の範囲に含まれなければならない不可欠の要素であることを含意するものとして理解してはならない。更には、いずれの請求項も「〜のための手段（means for）」という語の後に分詞が続かない限り、３５ＵＳＣ§１１２の第６パラグラフに訴えることを意図するものではない。
【図１】
2013543619.tif 000003
【図２】
2013543619.tif 000004
【図３】
2013543619.tif 000005
【図４】
2013543619.tif 000006
【図５】
2013543619.tif 000007
【国際調査報告】
2013543619.tif 000008
2013543619.tif 000009
2013543619.tif 000010