(57)【要約】  本発明は、データ処理システム（１００）によって実行される製品データ管理方法に関する。この方法は、複数のフィーチャと複数の制約及び複数の付加的制約とを含むＣＡＤモデル（４００，５００，６００）をデータ処理システム（１００）で受信するステップ（３０５）と、シードフィーチャ（５０２）を操作するユーザ操作を受信するステップ（３１０）と、ユーザ操作に対応する複数の付加的制約を識別するステップ（３１５）と、複数の付加的制約を分類するステップ（３２０）と、分類された付加的制約のうち１つを適用するステップ（３２５）と、適用された付加的制約にしたがってユーザ操作を実行し、修正ＣＡＤモデル（４００，５００，６００）を形成するステップ（３３５）と、修正ＣＡＤモデル（４００，５００，６００）を記憶するステップ（３４０）とを含む。
2015525919.tif 000002
【特許請求の範囲】
【請求項１】
データ処理システム（１００）によって実行される製品データ管理方法において、
複数のフィーチャと複数の制約及び複数の付加的制約とを含むＣＡＤモデル（４００，５００，６００）を前記データ処理システム（１００）で受信するステップ（３０５）と、
シードフィーチャ（５０２）を操作するユーザ操作を受信するステップ（３１０）と、
前記ユーザ操作に対応する複数の付加的制約を識別するステップ（３１５）と、
前記複数の付加的制約を分類するステップ（３２０）と、
分類された付加的制約のうち１つを適用するステップ（３２５）と、
適用された付加的制約にしたがって前記ユーザ操作を実行し、修正ＣＡＤモデル（４００，５００，６００）を形成するステップ（３３５）と、
前記修正ＣＡＤモデル（４００，５００，６００）を記憶するステップ（３４０）と
を含む
ことを特徴とする方法。
【請求項２】
さらに、前記データ処理システム（１００）により、識別された付加的制約から、分類され適用された付加的制約を除去するステップ（３３０）を含み、
当該除去するステップの後に、全ての付加的制約が適用されるまで、前記分類するステップ（３２０）及び前記適用するステップ（３２５）及び前記除去するステップ（３３０）を反復する、
請求項１記載の方法。
【請求項３】
前記分類するステップ（３２０）を、識別された付加的制約のそれぞれの挙動クラスにしたがって行う、
請求項１又は２記載の方法。
【請求項４】
前記分類するステップ（３２０）を、それぞれの付加的制約に対応するフィーチャに関する既知の情報にしたがって行う、
請求項１又は２記載の方法。
【請求項５】
前記分類するステップ（３２０）を、前記シードフィーチャからそれぞれの付加的制約に対応するフィーチャまでの距離にしたがって行う、
請求項１又は２記載の方法。
【請求項６】
前記分類するステップ（３２０）を、１次の制約が適用された場合にのみ２次の制約が適用されるという付加的制約間の従属関係にしたがって行う、
請求項１又は２記載の方法。
【請求項７】
複数のＣＡＤモデル（４００，５００，６００）の正確かつ直感的な編集を形成するために、前記ユーザ動作を、
・識別された付加的制約それぞれの挙動クラス、
・それぞれの付加的制約に対応するフィーチャに関する既知の情報、
・前記シードフィーチャから前記それぞれの付加的制約に対応するフィーチャまでの距離、及び、
・１次の制約が適用された場合にのみ２次の制約が適用されるという付加的制約間の従属関係
のうち少なくとも２つの組み合わせにしたがって行う、
請求項１から６までのいずれか１項記載の方法。
【請求項８】
プロセッサ（１０２）及びアクセスメモリ（１０８，１２６）を含むデータ処理システム（１００）において、
前記データ処理システム（１００）は、特に、
複数のフィーチャと複数の制約及び複数の付加的制約とを含むＣＡＤモデル（４００，５００，６００）を前記データ処理システム（１００）で受信するステップ（３０５）と、
シードフィーチャ（５０２）を操作するユーザ操作を受信するステップ（３１０）と、
前記ユーザ操作に対応する複数の付加的制約を識別するステップ（３１５）と、
前記複数の付加的制約を分類するステップ（３２０）と、
分類された付加的制約のうち１つを適用するステップ（３２５）と、
適用された付加的制約にしたがって前記ユーザ操作を実行し、修正ＣＡＤモデル（４００，５００，６００）を形成するステップ（３３５）と、
前記修正ＣＡＤモデル（４００，５００，６００）を記憶するステップ（３４０）と
を実行するように構成されている
ことを特徴とするデータ処理システム（１００）。
【請求項９】
前記データ処理システム（１００）は、さらに、識別された付加的制約から、分類され適用された付加的制約を除去するステップ（３３０）を実行し、
当該除去するステップの後に、全ての付加的制約が適用されるまで、前記分類するステップ及び前記適用するステップ及び前記除去するステップを反復する、
請求項８記載のデータ処理システム（１００）。
【請求項１０】
前記分類するステップ（３２０）は、識別された付加的制約のそれぞれの挙動クラスにしたがって行われる、
請求項８又は９記載のデータ処理システム（１００）。
【請求項１１】
前記分類するステップ（３２０）は、それぞれの付加的制約に対応するフィーチャに関する既知の情報にしたがって行われる、
請求項８又は９記載のデータ処理システム（１００）。
【請求項１２】
前記分類するステップ（３２０）は、前記シードフィーチャからそれぞれの付加的制約に対応するフィーチャまでの距離にしたがって行われる、
請求項８又は９記載のデータ処理システム（１００）。
【請求項１３】
前記分類するステップ（３２０）は、１次の制約が適用された場合にのみ２次の制約が適用されるという付加的制約間の従属関係にしたがって行われる、
請求項８から１２までのいずれか１項記載のデータ処理システム（１００）。
【請求項１４】
複数のＣＡＤモデル（４００，５００，６００）の正確かつ直感的な編集を形成するために、前記ユーザ動作が、
・識別された付加的制約それぞれの挙動クラス、
・それぞれの付加的制約に対応するフィーチャに関する既知の情報、
・前記シードフィーチャから前記それぞれの付加的制約に対応するフィーチャまでの距離、及び、
・１次の制約が適用された場合にのみ２次の制約が適用されるという付加的制約間の従属関係
のうち少なくとも２つの組み合わせにしたがって行われる、
請求項８から１３までのいずれか１項記載のデータ処理システム（１００）。
【請求項１５】
不揮発性のコンピュータ読み出し可能媒体であって、
実行時に、以下のステップ、すなわち、
複数のフィーチャと複数の制約及び複数の付加的制約とを含むＣＡＤモデル（４００，５００，６００）を前記データ処理システムで受信するステップ（３０５）と、
シードフィーチャを操作するユーザ操作を受信するステップ（３１０）と、
前記ユーザ操作に対応する複数の付加的制約を識別するステップ（３１５）と、
前記複数の付加的制約を分類するステップ（３２０）と、
分類された付加的制約のうち１つを適用するステップ（３２５）と、
適用された付加的制約にしたがって前記ユーザ操作を実行し、修正ＣＡＤモデル（４００，５００，６００）を形成するステップ（３３５）と、
前記修正ＣＡＤモデル（４００，５００，６００）を記憶するステップ（３４０）と
を、１つもしくは複数のデータ処理システム（１００）に実行させる
実行可能命令が符号化されて記憶されている
ことを特徴とする不揮発性のコンピュータ読み出し可能媒体。
【請求項１６】
さらに、前記データ処理システム（１００）に、識別された付加的制約から、分類され適用された付加的制約を除去するステップ（３３０）を実行させ、
当該除去するステップの後に、全ての付加的制約が適用されるまで、前記分類するステップ及び前記適用するステップ及び前記除去するステップを反復させる、
請求項１５記載のコンピュータ読み出し可能媒体。
【請求項１７】
前記分類するステップ（３２０）を、識別された付加的制約のそれぞれの挙動クラスにしたがって行う、
請求項１５又は１６記載のコンピュータ読み出し可能媒体。
【請求項１８】
前記分類するステップ（３２０）を、前記それぞれの付加的制約に対応するフィーチャに関する既知の情報にしたがって行う、
請求項１５又は１６記載のコンピュータ読み出し可能媒体。
【請求項１９】
前記分類するステップ（３２０）を、前記シードフィーチャからそれぞれの付加的制約に対応するフィーチャまでの距離にしたがって行う、
請求項１５又は１６記載のコンピュータ読み出し可能媒体。
【請求項２０】
前記分類するステップ（３２０）を、１次の制約が適用された場合にのみ２次の制約が適用されるという付加的制約間の従属関係にしたがって行う、
請求項１５又は１６記載のコンピュータ読み出し可能媒体。
【請求項２１】
複数のＣＡＤモデル（４００，５００，６００）の正確かつ直感的な編集を形成するために、前記ユーザ動作を、
・識別された付加的制約それぞれの挙動クラス、
・それぞれの付加的制約に対応するフィーチャに関する既知の情報、
・前記シードフィーチャから前記それぞれの付加的制約に対応するフィーチャまでの距離、及び、
・１次の制約が適用された場合にのみ２次の制約が適用されるという付加的制約間の従属関係
のうち少なくとも２つの組み合わせにしたがって行う、
請求項１５から２０までのいずれか１項記載のコンピュータ読み出し可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バリエーショナルシステムにおいて付加的制約を順序付けるための、独立請求項に記載の製品データ管理方法及びデータ処理システム並びにコンピュータ読み出し可能媒体に関する。
【０００２】
本発明は、一般に、製品乃至その他の物品のデータを管理するための、コンピュータエイデッドデザインシステム、視覚化システム、製造システム、製品ライフサイクル管理システム（以下ＰＬＭシステムとも称する）及び同様のシステムを指向している。本発明ではこれらを集合的に「製品データ管理システム」又は「ＰＤＭシステム」と称する。
【０００３】
発明の背景
ＰＤＭシステムはＰＬＭデータ及び他のデータを管理する。改善されたシステムが所望されている。
【０００４】
発明の概要
製品データ管理方法、及び、相応のシステム乃至コンピュータ読み出し可能媒体には種々の実施例が含まれる。本発明の方法は、複数のフィーチャと複数の制約及び複数の付加的制約とを含むＣＡＤモデルをデータ処理システムで受信するステップと、シードフィーチャを操作するユーザ操作を受信するステップと、ユーザ操作に対応する複数の付加的制約を識別するステップと、複数の付加的制約を分類するステップと、分類された付加的制約のうち１つを適用するステップと、適用された付加的制約にしたがってユーザ操作を実行し、修正ＣＡＤモデルを形成するステップと、修正ＣＡＤモデルを記憶するステップとを含む。
【０００５】
上記説明は本発明の特徴及び技術的利点の概要を広く述べたものであり、当業者はこれらを以下の詳細な説明によってより良く理解できるはずである。特許請求の範囲の主題をなす本発明の付加的な技術的特徴及び利点も、以下に説明する。当業者は、本発明の目的を達成する構造を修正する又は別様の構造を設計するための基礎として、本発明のコンセプト乃至実施例を容易に利用できる。また、当業者は、本発明の思想乃至観点を逸脱することなく、最も広い意味での等価の構成を実現することができる。
【０００６】
詳細な説明を行う前に、本明細書を通して用いられる幾つかの語句の定義を記す。「含む」「〜から形成される」及びこれに類似した語は単に含有を意味し、それのみから成ることに限定されない。「又は」は“及び／又は”の意を含む。「〜に関連する」「〜に関連づけられる」及びこれに類似した語は、含有、挿入、内包、接続、結合、通信、協働、インタリーブ、並列、近接、接合、所有、特徴づけなどの意を含む。「コントローラ」とは、少なくとも１つの動作を制御するデバイス、システム又はそれらの一部を含み、ここでのデバイスはハードウェア、ファームウェア、ソフトウェア又はこれらの任意の組み合わせを含む。特定のコントローラに関連する機能は、中央に集中されていても分散配置されていてもよく、また、ローカルもしくはリモートに配置されていてもよい。なお、これらの語句の定義が本明細書を通してすなわち上記乃至下記の説明の多くのケースに適合するものであることは、当業者には容易に理解できるであろう。幾つかの語句は広汎な実施例に対応し、特許請求の範囲の記載においてのみ特定の実施例に制限される。
【０００７】
本発明及びその利点をより良く理解してもらうために、図示の実施例に則して本発明を詳細に説明する。図中、同様の要素には同じ参照番号を付してある。
【図面の簡単な説明】
【０００８】
【図１】本発明を実行可能なデータ処理システムのブロック図である。
【図２】Ａは必須の制約の例を示す図であり、Ｂは付加的制約の例を示す図である。
【図３】本発明のプロセスのフローチャートである。
【図４Ａ】本発明の付加的制約の順序付けの例を示す図である。
【図４Ｂ】図４Ａの付加的制約の順序付けの結果を示す図である。
【図４Ｃ】本発明の付加的制約の順序付けの別の例を示す図である。
【図４Ｄ】図４Ｃの付加的制約の順序付けの結果を示す図である。
【図４Ｅ】本発明の付加的制約の順序付けの別の例を示す図である。
【図４Ｆ】本発明の付加的制約の順序付けの別の例を示す図である。
【図５Ａ】編集からの距離を測定して付加的制約を順序付けする実施例を示す図である。
【図５Ｂ】図５Ａの結果を示す図である。
【図５Ｃ】編集からの距離を測定して付加的制約を順序付けする別の実施例を示す図である。
【図５Ｄ】図５Ｃの結果を示す図である。
【図６】Ａは順序付けの実施例のモデルを示す図であり、Ｂ，Ｃはフィーチャ情報を用いてＡのモデルの付加的制約を順序付けた２つの結果を示す図である。
【０００９】
以下では、図１−図６の種々の実施例を説明するが、これらは例示によって本発明の基本方式を説明するためのものにすぎず、本発明の範囲を限定するものではない。なお、当業者は、本発明の基本方式が適切に構成された装置として実現されることを理解できるであろう。本発明の多数の革新的な教説を限定的でない実施例に則して説明する。
【００１０】
バリエーショナルモデリングシステム、例えばシーメンスプロダクトライフサイクルマネジメントソフトウェアインク社の製品で用いられている「シンクロナステクノロジ」において、変更は一般にバリエーションとして表現される。バリエーショナルシステムは、オブジェクトモデルにおける各フィーチャのパラメータと各フィーチャ間の関係とをジオメトリの制約及び寸法の形態で記述している。こうしたシステムは、「ソルバ」プロセスを用いて、設計意図を維持するために要求される補助的な制約及び寸法とともにこうした制約及び寸法を処理し、モデル全体の解を得る。
【００１１】
こうしたバリエーショナルモデリングシステムでは、「自然な」挙動を達成することが重要な目的となっている。現実に即した複雑なモデルでは、それぞれ「自然な」挙動を有する特徴の組み合わせに対処するために編集を行うことが予測される。こうした組み合わせのケースでは、システムが一貫して挙動全体を定義して衝突を解決できる場合にのみ、真に有効であると云える。
【００１２】
以下の実施例は、組み合わされた挙動及びこれを達成するためのシステム乃至方法の定義を含む。
【００１３】
図１には、本発明の実施例を実現可能なデータ処理システムのブロック図が示されている。データ処理システムは例えばＰＤＭシステムとして構成され、特にはソフトウェアその他であって、以下に説明する１つもしくは複数の中間接続装置及び通信装置として以下に説明するプロセスを実行する。図１に示されているデータ処理システムは、プロセッサ１０２と、このプロセッサ１０２に接続されたレベル２のキャッシュ／ブリッジ１０４と、これらが接続されるローカルシステムバス１０６とを含んでいる。ローカルシステムバス１０６は例えば周辺部品接続アーキテクチャバス（ＰＣＩバス）である。図示の実施例では、さらに、主メモリ１０８とグラフィクスアダプタ１１０とがローカルシステムバス１０６に接続されている。グラフィクスアダプタ１１０にはディスプレイ１１１を接続可能である。
【００１４】
他の周辺装置、例えばローカルエリアネットワークＬＡＮ，ワイドエリアネットワークＷＡＮ，ワイヤレスＷｉＦｉに対するアダプタ（ＬＡＮ／ＷＡＮ／ＷｉＦｉアダプタ）１１２もローカルシステムバス１０６に接続可能である。拡張バスインタフェース１１４はローカルシステムバス１０６と入出力バス（Ｉ／Ｏバス）１１６とを接続している。Ｉ／Ｏバス１１６は、キーボード／マウスアダプタ１１８とディスクコントローラ１２０と入出力アダプタ１２２とに接続されている。ディスクコントローラ１２０は適切な機械によって利用可能もしくは読み出し可能な記憶媒体である記憶装置１２６に接続可能である。記憶媒体は、特に限定されるものではないが、不揮発性の硬性符号化タイプの媒体、例えば、読み出し専用メモリＲＯＭ、もしくは、消去及び再プログラミング可能な読み出し専用メモリＥＥＰＲＯＭ、もしくは、磁気テープ式記憶装置であってよいし、ユーザが記録可能なタイプの媒体、例えばフロッピーディスクもしくはハードディスクドライブもしくはＣＤＲＯＭもしくはＤＶＤであってもその他の光学的、電気的、磁気的記憶装置であってもよい。
【００１５】
図示の実施例では、Ｉ／Ｏバス１１６にはさらにオーディオアダプタ１２４が接続されており、このアダプタには音声出力のために図示されていないスピーカを接続可能である。また、キーボード／マウスアダプタ１１８により、図示されていないポインティングデバイス、例えばマウス、トラックボール、トラックポインタなども接続できる。
【００１６】
当業者であれば、図１に示されているハードウェアを特定の実現形態に応じて変更できることは容易に理解できるはずである。例えば、図示されているハードウェアに加えて又はこれに代えて、光ディスクドライブなどの他の周辺装置を用いることができる。図示の実施例は説明のためのものにすぎず、本発明の構成を限定しない。
【００１７】
本発明の実施例のデータ処理システムは、グラフィックユーザインタフェースを用いたオペレーティングシステムを含む。このオペレーティングシステムにより、グラフィックユーザインタフェースに複数のディスプレイウィンドウを同時に表示し、各ディスプレイウィンドウを種々のアプリケーション又は同じアプリケーションの種々のアイテムに対するインタフェースとすることができる。グラフィックユーザインタフェースのカーソルはユーザがポインティングデバイスを介して操作できる。カーソル位置の変更及び／又はマウスボタンのクリック等のイベントによって、所望の応答を作動させることができる。
【００１８】
市販されている種々のオペレーティングシステムのいずれか、例えばワシントン州レッドモンド在のマイクロソフトコーポレーション社の製品であるMicrosoftWindows(TM)の所定のバージョンを、必要に応じて適宜修正して用いることができる。オペレーティングシステムは以下に説明する本発明に応じて修正もしくは設計可能である。
【００１９】
ＬＡＮ／ＷＡＮ／ＷｉＦｉアダプタ１１２は、データ処理システム１００の要素ではないネットワーク１３０に接続可能である。ネットワーク１３０は、当業者に公知の公共もしくは私的なデータ処理システムネットワークもしくはネットワーク複合体、例えばインタネットであってよい。データ処理システム１００はネットワーク１３０を介してデータ処理システム１００の要素でないサーバシステム１４０と通信可能である。当該サーバシステム１４０は例えば別個のデータ処理システム１００として構成することもできる。
【００２０】
付加的制約とは、所定の編集の発生が防止されない場合にのみモデルに適用される制約を云う。付加的制約は、モデルの編集を防止する正規の制約とは異なっている。
【００２１】
図２では、Ａに本発明の要求された制約が示されており、Ｂには本発明の付加的制約が示されている。図２のＡに示されているのは、２つの線２０２，２０４から成り、これらの線が所定の距離だけ離れていなければならないという制約を有する、単純なモデルである。この場合、線２０２は図示の位置に固定されている。
【００２２】
ここで、システム又はユーザが、図示されているように、線２０４を右方へ移動させようとしたとする。従来の制約の体系ではこの移動編集の試行は失敗する。なぜなら、移動されようとしている線２０４と固定の線２０２との間の距離の制約が剛性であるからである。
【００２３】
しかし、距離の制約が付加的制約である「可能距離」に変換されると、編集は有効となり、定められていた距離が破壊される。図２のＢには、移動は成功しているが距離の付加的制約は満足されていないという結果が示されている。同じ方式が単純乃至複雑な２Ｄモデル乃至３Ｄモデルに当てはまる。
【００２４】
付加的制約はモデル編集の一般的な挙動を制御する際に役立つ。システムに対して正規の制約を追加することによっても挙動を制御できるが、このようにして追加された制約は、システム又はユーザによって設定された他の制約と衝突することがきわめて多く、また、試行されている編集と直接に衝突することさえある。挙動の制御に付加的制約を用いれば、衝突は発生しない。
【００２５】
付加的制約によって一般的な挙動を記述することが有利なケースの例として、円筒の径の変更を防止するケースや、面の回転を防止するケースが挙げられる。
【００２６】
挙動の制御に付加的制約が用いられる場合、大抵のモデル編集が複数の付加的制約の形成を生じさせる。衝突のおそれのあるこれらの付加的制約の内部では、適用に際して選択がなされる。つまり、付加的制約Ａ又は付加的制約Ｂのいずれか一方は適用可能であるが、付加的制約Ａ，Ｂ双方は適用できない。
【００２７】
システムが直感的な挙動を自動でユーザに提供しようとする場合、システム内の全ての付加的制約が何らかの体系にしたがって順序付けられ、最重要の付加的制約が重要度の低い付加的制約よりも優先して適用されるようになっていなければならない。
【００２８】
本発明の実施例は、ユーザに対してよりインタラクティブで直感的な応動が形成されるように付加的制約を適用するシステム及び方法を含む。
【００２９】
本発明では、一連の付加的制約を順序付けるために、次のような一連の順序要求が適用される。
・順序は、所定のモデルの編集ごとに特異なものでなければならない。
・順序は、一般的な幾つかの好ましい挙動、例えば「ジオメトリの回転防止」が「ジオメトリのサイズ変更の防止」よりも重要であること等を考慮していなければならない。
・順序は、ユーザが要求した編集に従属していなければならない。これは、同じモデルでの異なる編集に対しては順序が変化しうることを意味する。
・順序は、システムに提示されたモデルに従属していなければならない。これは、所定のシステムに制約を追加したとき、全ての付加的制約の順序が変化することを意味する。
・優先度の高い制約が適用される際には、優先度の低い制約の順序変更が可能となっていなければならない。
・全てのプロセスが特別なケースの処理に対して容易に拡張可能でなければならない。
【００３０】
これらの要求を満たすために、本発明では、次のような特性に基づいて所定のモデルの一連の付加的制約を編集ごとに順序付ける分類プロセスが用いられる。
・挙動クラス
・フィーチャの制約に関する既知の情報
・編集からの距離
・静的モデル特性
なお、個々の特性については後述する。
【００３１】
特定のケースでは上述した一般的な順序で制約を順序付けることができるが、この順序付けは厳密に全てのケースに必須というわけではない。例えば、挙動クラス及び既知の情報及び距離の所定の要素が混合されて、いっそう直感的な挙動を形成できる場合もある。
【００３２】
挙動クラス：「挙動クラス」とは、特定の１つもしくは複数の付加的制約が形成された理由である。付加的制約が形成される理由はさまざまであるが、一般には、２つの大きなカテゴリに区分される。その１つは、ユーザが提供した情報、例えばモデルに対して設定されている寸法などの情報に基づくものである。もう１つは、未編集状態でのモデルの各要素のジオメトリ構成に基づくものである。
【００３３】
挙動クラスの第１の例として寸法指向データが挙げられ、ここでは寸法の作用面が所定の挙動となる。挙動クラスの第２の例は直立固定であり、ここでは複数のジオメトリが部材の基本軸に対して整合するように定められ、この整合の維持が要求される。挙動クラスの第３の例はサイズ固定であり、ここではジオメトリが所定のサイズ特性を有するように定められ、このサイズの維持が要求される。挙動クラスの第４の例はパターンのスペースピッチであり、ここではパターンが所定の間隔を有するように定められ、スペースピッチの維持が要求される。挙動クラスの第５の例は傾転であり、ここではジオメトリが互いに隣接しており、モデルが変更される際には互いに隣接したまま回転されなければならない。なお、これらの例はもちろん本発明を限定するものでない。
【００３４】
システムは、所定の一連の挙動クラスについて、付加的制約の一般的順序が得られるよう、相互の優先順位を決定する。この優先順位の決定は静的なものであり、部材の所定のタイプによって自動的に調整されるか、又は、必要に応じてユーザ選択によって制御される。
【００３５】
フィーチャに関する情報：付加的制約のなかには、特定のフィーチャの一般的な挙動を保証するためにシステムに追加されるものもある。例えば、ローカルＸ方向及びローカルＹ方向を規定したローカル座標系によるフィーチャに対し、システム又はユーザが所望の挙動特性を定めることができる。
【００３６】
既知の情報に基づく所望の挙動特性の第１の例は、フィーチャの回転よりもフィーチャの移動のほうが好まれるケースである。これは、システムに追加される付加的制約のローカルな順序付けを意味し、例えばローカルＸ軸の制約がローカルＺ軸の制約に優先する等である。
【００３７】
既知の情報に基づく所望の挙動特性の第２の例は、フィーチャを移動すべき場合に、所定の方向への移動に制約を付さないということである。これは、１次の制約が適用されなかった場合には、２次の制約を適用してはならないことを意味する。
【００３８】
ローカルな順序付けを可能にするために、付加的制約のクラスタをフィーチャによって定義することができる。ここでは、クラスタ内の制約の順序を用いて、主たる分類リストにおける制約の順序と近縁性とが定められる。
【００３９】
編集からの距離：「編集からの距離」を説明するために次の各語を用いる。“操作”とは、ユーザがモデルに対して行う編集を云う。“シード”もしくは“シードフィーチャ”とは、ユーザが編集のために現に直接に取り扱っているジオメトリを云う。“オブジェクト”とは、制約の形成乃至分解及び結果としてのジオメトリ結合を生じさせるモデルのフィーチャを云う。
【００４０】
「編集からの距離」とは、モデル内のオブジェクトに対して定められた、ジオメトリに適用される付加的制約から操作のシードまでの最小距離を云う。
【００４１】
当該距離は、オブジェクト（エッジ）によって結合された編集（ノード）を含むジオメトリを表すグラフを形成することによって計算される。２つのジオメトリ（ノード）間の最小距離は、標準的なグラフ分析技術を用いて、グラフを通る一連のエッジを追跡することにより測定可能である。
【００４２】
グラフに表されるオブジェクトの例として、距離もしくは角度などの寸法、共心性もしくは平行性などの制約、孔もしくはパターンなどのフィーチャが挙げられる。
【００４３】
測定された距離は、固定された全てのジオメトリ（又はノード）を考慮していなければならない。直感的挙動を提供するために、最小距離は、固定されたことが既知となっているジオメトリを通過してはならない。
【００４４】
さらに、付加的制約がモデルに追加されると、それまで移動可能であったジオメトリが固定される。したがって、システムは、モデル内の全てのジオメトリの自由度を再評価し、グラフ内部の距離を相応に更新してから、残りの付加的制約を分類する。
【００４５】
静的モデル特性：全ての付加的制約に対する最終の順序付けを決定するために、システムは静的モデル特性を利用する。当該特性は、順序付けが、１回の挙動に作用するだけでなく、決定されて反復可能となることを保証する。使用可能な静的モデル特性には、例えば、３Ｄ空間内のＸ，Ｙ，Ｚ位置によって順序付けられるジオメトリの位置や、システム内のジオメトリを識別するための、ジオメトリに関連する識別子が含まれる。
【００４６】
図３には、本発明の実施例のプロセスが示されている。このプロセスは、１つもしくは複数のＰＤＭデータを処理するシステム、例えばデータ処理システム１００（以下では単にシステムと称する）によって実行される。
【００４７】
システムは、まず、ＣＡＤモデルを受信する（ステップ３０５）。当該モデルは、２Ｄモデル又は３Ｄモデルであり、複数のフィーチャと複数の制約及び複数の付加的制約とを含む。
【００４８】
次に、システムは、ユーザ操作を受信する（ステップ３１０）。ユーザ操作とは、少なくとも１つのシードフィーチャを操作することによってユーザがモデルに加える編集である。
【００４９】
ついで、システムは、ユーザ操作に対応する複数の付加的制約を識別する（ステップ３１５）。
【００５０】
続いて、システムは、複数の付加的制約を分類する（ステップ３２０）。ここでの分類は上述した特性、すなわち、挙動クラス、フィーチャの制約に関する既知の情報、編集（シードフィーチャ）からの距離、静的モデル特性のいずれか又は全てにしたがって行われる。
【００５１】
つまり、システムは、１次の制約が適用された場合にのみ２次の制約が適用されるという付加的制約間の従属関係を定めることができる。別のケースとして、こうした従属関係を、モデル内の所定の基準もしくは特別条件に基づいて定めることもできる。こうした従属関係は分類プロセスの一部であると考えることができる。
【００５２】
さらに、システムは、分類された付加的制約のうち第１の制約を適用する（ステップ３２５）。
【００５３】
ついで、システムは、識別された付加的制約から、適用された付加的制約を除去する（ステップ３３０）。
【００５４】
なお、システムは、適用されていない制約がなくなるまで、上記ステップ３２０，３２５，３３０を反復する。分類された制約のうち第１の制約が適用され、残りの制約が適用前に再分類されるというプロセスにより、リスト内の上位の制約の適用が下位の制約の順序付けに影響することになる。これにより、編集プロセスをジオメトリの自由度の変更に対して適合化できるようになるので、技術的にきわめて有利である。
【００５５】
一般的な機能としての、所定の基準又は所定の従属関係に基づく付加的制約の脱落は、より重要な制約が適用される際に下位の全ての制約が再分類されるという、上述した一般的なプロセスによって実現される。
【００５６】
続いて、システムは、適用された付加的制約にしたがってユーザ操作を実行し（ステップ３３５）、これにより修正ＣＡＤモデルを形成する。
【００５７】
さらに、システムは、修正ＣＡＤモデルを記憶する（ステップ３４０）。これにより修正ＣＡＤモデルを表示可能となる。
【００５８】
もちろん、当業者は、特に指示乃至動作シーケンスによる必要がないかぎり、プロセス中の所定のステップの省略、複数のステップの同時実行もしくは連続実行もしくは別の順序での実行が可能となることを容易に理解するであろう。また、上述した以外の他のステップを図３のプロセスに含めることもできる。
【００５９】
図４Ａ−図４Ｆには、本発明の実施例での、一般的な付加的制約の順序付けが示されている。
【００６０】
図４Ａには、単純な２Ｄモデル４００が示されている。この実施例では、下方の円４０２が矢印４２０で示されているように左方へ移動される。下方の円４０２は、外側の、垂直線４０６及び水平線４０８に接する下方の弧４０４と共心である。垂直線４０６は上方の弧４１０にも接しており、この上方の弧４１０は上方の円４１２と共心である。
【００６１】
図４Ｂには、制約が維持されている期間中、円４０２を移動して得られる可能な２つの結果が示されている。どちらも合理性を有するが、垂直線の垂直整合性が保存されているので、左方の結果のほうがより望ましい。
【００６２】
図４Ｃには、類似の２Ｄモデル４３０が示されている。この実施例では、下方の円４３２が矢印４５０で示されているように左方へ移動される。下方の円４３２は、外側の、斜め線４３６及び水平線４３８に接する下方の弧４３４と共心である。斜め線４３６は上方の弧４４０にも接しており、この上方の弧４４０は上方の円４４２と共心である。
【００６３】
この場合、既に回転されている線に対してさらに回転が加えられているので、図４Ｄに示されている結果が合理性を有する。
【００６４】
こうした挙動を達成するための判別プロセスは、一連の付加的制約を設定してこれらを正確に順序付けることによって適用される。
【００６５】
図４Ｅには、付加的制約を含む図４Ａのモデル４００が示されている。この場合、標示されている制約は、
ＤＮＲ＝回転無し（可能）、「直立固定」に対して形成
ＤＮＭ＝移動無し（可能）、「傾転」に対して形成
である。
【００６６】
図４Ｆには、付加的制約を含む図４Ｃのモデル４３０が示されている。ここでは、線２でのＤＮＲがオリジナルの方向に基づいて設定されていないことに注意されたい。
【００６７】
システム又はユーザは、正確な挙動を達成するために、次のような論理にしたがって付加的制約を順序付ける。
・付加的制約が形成された理由（上述した実施例では「直立固定」又は「傾転」が存在しており、「直立固定」のほうが「傾転」よりも重要であると考えられる）により、第１位を決定する。
・操作目標（下方の円４０２，４３２）からの制約距離により、第１位から最も離れているものを第２位とする。
・静的モデル特性（ＩＤ等）により、第３位を決定する。
・特別条件に基づいて幾つかの付加的制約を脱落させる。
【００６８】
上記論理にしたがって、モデル４００の実施例につき、次のような順序が形成される。
【００６９】
【表１】
2015525919.tif 000003
【００７０】
これにより、上述したプロセスにしたがって次の処理が行われる。すなわち、制約が、まずタイプによって順序付けられ、ついで編集からの距離によって順序付けられる。「ＤＮＲ−線２」「ＤＮＲ−線３」は、モデル特性、例えばジオメトリの数による順序付けを経てもまだ同順位である。また「ＤＮＭ−線２」「ＤＮＭ−線３」も同順位にあるが、同じ距離にある傾転ルールに対する特別条件が設定されており、望ましくない挙動が生じないよう、２つのルールとも脱落されている。
【００７１】
さらに、上記論理にしたがって、モデル４３０の実施例につき、次のような順序が形成される。
【００７２】
【表２】
2015525919.tif 000004
【００７３】
このケースでは、「ＤＮＭ−弧１」が付加的に適用されているため、線２の回転挙動が強制される。
【００７４】
図５Ａ−図５Ｄには、本発明の実施例にしたがって編集からの距離を測定することによる付加的制約の順序付けが示されている。
【００７５】
図５Ａには、距離の例を説明するために、単純な２Ｄモデル５００が示されている。下方の５個の面ａ−ｅは、隣接する面どうしの間にグラフステップが１つずつ存在するよう、モデルデータによって関連づけられている。
【００７６】
この実施例の操作では、面ａ（５０２）がシード面であり、矢印５２０で示されている方向へ平行移動されているが、その長さは変化しないままである。図５Ａでは、面ａから面ｅまでの距離が丸囲みの数字で表されている。すなわち、０がシード面であり、グラフ接続の測定によって最も離れた面ｅが４である。
【００７７】
挙動の例として、システムが、面ａから面ｅを移動させないという付加的制約を適用しようとするケースを挙げる。当該付加的制約は、編集から最も遠いものとして、次のように順序付けられる。
【００７８】
【表３】
2015525919.tif 000005
【００７９】
図５Ｂには、上記順序を用いたモデル５００の変更結果が示されている。面ａはユーザ指示により移動され、面ｂは面ａに接続されている状態が保持されなければならないために移動されるが、面ｃから面ｅは移動されない。
【００８０】
同じ操作であっても、２つの面を剛性的に平行移動するが２つの面とも長さはそのままとするために、面ａから面ｅまでの間に付加的でない制約が追加されて、モデルデータが変更された場合、グラフ接続は大きく変化する。面ａから面ｅまでの制約が操作に含められると、面ｄが実行される操作により近づく。図５Ｃには、こうした付加的制約を含むモデル５００に類似のモデル５３０が示されている。ここで、ユーザは、面ａ５３２を矢印５５０の方向へ移動させようとしている。
【００８１】
このケースでも同様の付加的制約が形成されるが、次のような順序となる。
【００８２】
【表４】
2015525919.tif 000006
【００８３】
図５Ｄには、付加的制約の上記順序を用いて、付加的でない制約を維持した場合のモデル５３０の変更結果が示されている。
【００８４】
図６のＡ−Ｃには、モデル内に存在するフィーチャ情報を用いて付加的制約を順序付ける実施例が示されている。
【００８５】
相互の従属関係を有する複数のフィーチャの有利な挙動は、順序付けられた付加的制約を用いて定められる。
【００８６】
図６のＡには、フィーチャＡであるキューブ６０２がフィーチャＢであるキューボイド６０４上に配置された３Ｄモデル６００が示されている。
【００８７】
編集の際には、次の挙動が所望される。
・フィーチャＢ（キューボイド６０４）が移動される場合、フィーチャＡ（キューブ６０２）も移動される。
・フィーチャＡ（キューブ６０２）が移動される場合、フィーチャＢ（キューボイド６０４）は移動されるべきでない。
【００８８】
このことは、
・フィーチャＢ（キューボイド６０４）でのＤＮＭ
・フィーチャＡ（キューブ６０２）でのＤＮＭ
・フィーチャＢが移動された場合にのみ適用される、フィーチャＡ（キューブ６０２）とフィーチャＢ（キューボイド６０４）との間の剛性的維持
という、フィーチャ間の従属関係によって定義される付加的制約のローカルな順序付けに追従することによって行われる。
【００８９】
フィーチャＢが移動される場合、上記順序付けを用いて、
・フィーチャＢ（キューボイド６０４）でのＤＮＭ−非適用
・フィーチャＡ（キューブ６０２）でのＤＮＭ−非適用
・フィーチャＢが移動される場合にのみ適用される、フィーチャＡ（キューブ６０２）とフィーチャＢ（キューボイド６０４）との間の剛性的維持−適用
が形成される。
【００９０】
図６のＢには、フィーチャＢ（キューボイド６０４）の移動の結果が示されている。
【００９１】
フィーチャＡが移動される場合、上記順序付けを用いて、
・フィーチャＢでのＤＮＭ−適用
・フィーチャＡでのＤＮＭ−非適用
・フィーチャＢが移動される場合にのみ適用される、フィーチャＡ（キューブ６０２）とフィーチャＢ（キューボイド６０４）との間の剛性的維持−非適用
が形成される。
【００９２】
図６のＣには、フィーチャＡ（キューブ６０２）の移動の結果が示されている。
【００９３】
さらなる従属関係を有するフィーチャが“スタック”される場合、プロセスは適切な挙動が自然にサポートされるように拡張される。
【００９４】
本発明によれば、ユーザが、挙動の組み合わせを考慮したＣＡＤモデルの正確かつ直感的な編集を実行できるようになる。ここで説明したプロセスは、組み合わせに遭遇した場合、挙動タイプ、動作ポイントからの距離、他の特別なモデル特性、乃至、他の特別なドメイン特性などの考察に基づいて、個々の“自然な”挙動の定義された順序付けを実現する。上述した付加的制約の使用においては、システム全体の包括的かつ自然な挙動を達成するために、次のような個々の挙動が管理される。
・凹部、凸部などのジオメトリフィーチャが移動される場合、その上方に構成されているジオメトリ（アンダー）に編集が作用してはならない。
・ジオメトリが変更又は移動される場合、上方に構成されている凹部、凸部などのジオメトリフィーチャは入力された変更の適用に沿って移動される。
・特に、シート状金属のコンテクストでは、“厚みの面”の移動がプレートの移動に作用してはならない。
・頂点の移動に関連する寸法値（距離又は角度）が変更される場合、当該頂点に集まる各面の変化は最小となるべきである。有利には、殆どが固定のまま維持され、唯一の移動のみが行われる。
・モデル内に円錐状のジオメトリが存在し、特にこの円錐が他のジオメトリに接している場合、有利にはこの円錐の軸線に沿ったスライドは防止される。
・モデルの基本方向に対して初期的に整合されているジオメトリは有利には維持される。
・半径、半角などの内部自由度は有利には変更されずに維持される。
・パターン間のスペースピッチは有利には変更されずに維持される。
・１回の変更に関係する隣接面の数は、変更セットのバウンディング手段として面の「傾転」を許容することにより、最小の値とすべきである。
【００９５】
本発明の種々の実施例は、上述したプロセスを用いて、付加的制約によって個々の挙動を符号化すること、並びに、挙動タイプ、及び、動作ポイントからの距離、及び、モデルの特別な特性に基づく付加的制約の順序付けによって挙動の組み合わせを符号化することを含む。
【００９６】
当業者であれば、わかりやすくするために、本発明の利用に適したデータ処理システムの構造及び動作の全てを図示乃至説明してはいないことが容易に理解されるであろう。データ処理システムのうち、本発明を理解するに当たって必要な要素又は本発明に独特の要素のみを図示乃至説明した。データ処理システム１００の残りの要素は従来知られている種々の要素に対応していてよい。
【００９７】
さらに、本発明を機能的装置に則して説明したが、当業者であれば、本発明の機構の少なくとも一部を複数の命令に分散した形態で記憶媒体に含めてもよいことは明らかなはずである。当該記憶媒体は、機械もしくはコンピュータで利用可能、又は、コンピュータで読み出し可能な種々の形状の媒体である。なお、本発明は、本発明の方法を実行するために用いられる媒体の特定の命令もしくは信号のタイプにかかわらず、適用可能である。記憶媒体の例として、不揮発性の硬性符号化タイプの媒体、例えば、読み出し専用メモリＲＯＭもしくは消去及び再プログラミング可能読み出し専用メモリＥＥＰＲＯＭ、また、ユーザが記録可能なタイプの媒体、例えばフロッピーディスクもしくはハードディスクドライブもしくはＣＤＲＯＭもしくはＤＶＤなどが挙げられる。
【００９８】
本発明を実施例に則して具体的に説明したが、当業者は、本発明の最も広い意味での思想乃至観点を逸脱することなく、種々の修正、置換又は変更を行うことができる。
【符号の説明】
【００９９】
１００  データ処理システム、  １０２  プロセッサ、  １０４  キャッシュ／ブリッジ、  １０６  ローカルシステムバス、  １０８  主メモリ、  １１０  グラフィクスアダプタ、  １１１  ディスプレイ、  １１２  ＬＡＮ／ＷＡＮ／ＷｉＦｉアダプタ、  １１４  拡張バスインタフェース、  １１６  Ｉ／Ｏバス、  １１８  キーボード／マウスアダプタ、  １２０  ディスクコントローラ、  １２２  Ｉ／Ｏアダプタ、  １２４  オーディオアダプタ、  １２６  記憶装置、  １３０  ネットワーク、  １４０  サーバシステム、  ２０２，２０４  線、  ３０５  ＣＡＤモデルを受信する、  ３１０  ユーザ操作を受信する、  ３１５  付加的制約を識別する、  ３２０  識別された制約を分類する、  ３２５  分類された制約のうち第１の制約を適用する、  ３３０  識別された制約から適用された制約を除去する、  ３３５  適用された制約ごとに操作を行う、  ３４０  修正ＣＡＤモデルを記憶する、  ４００，４３０，５００，５３０，６００  モデル、  ４０２，４３２  下方の円、  ４０４，４３４  下方の弧、  ４０６  垂直線、  ４０８，４３８  水平線、  ４１０，４４０  上方の弧、  ４１２，４４２  上方の円、  ４２０，４５０，５２０，５５０  移動方向、  ４３６  斜め線、  ５０２，５３２  面ａ（シード面）、  ６０２  キューブ、  ６０４  キューボイド、  ＡＳＩＣ  アプリケーション専用集積回路、  ＣＡＤ  コンピュータエイデッドデザイン、  Ｉ／Ｏ  入出力、  ＬＡＮ  ローカルエリアネットワーク、  ＰＣＩ  周辺装置接続、  ＰＤＭ  製品データ管理
【図１】
2015525919.tif 000007
【図２】
2015525919.tif 000008
【図３】
2015525919.tif 000009
【図４Ａ】
2015525919.tif 000010
【図４Ｂ】
2015525919.tif 000011
【図４Ｃ】
2015525919.tif 000012
【図４Ｄ】
2015525919.tif 000013
【図４Ｅ】
2015525919.tif 000014
【図４Ｆ】
2015525919.tif 000015
【図５Ａ】
2015525919.tif 000016
【図５Ｂ】
2015525919.tif 000017
【図５Ｃ】
2015525919.tif 000018
【図５Ｄ】
2015525919.tif 000019
【図６Ａ】
2015525919.tif 000020
【図６Ｂ】
2015525919.tif 000021
【図６Ｃ】
2015525919.tif 000022
【国際調査報告】
2015525919.tif 000023
2015525919.tif 000024