【発明が解決しようとする課題】
【0007】
動的力の物理法則に左右されずに、運動リンクを構成してシミュレーションを行うことは既知であるが、リアルタイムの様式ではなく、または換言すれば動的ではない。
【0008】
アセンブリの動的接合部の定義は、このアセンブリのパーツ間の全ての動的接合部のセットである。
【0009】
特定の互換性規則が全ての接合部間で満足される場合、運動学的解法がパーツの可能性のある位置を計算し、これをアニメーションとして示す。しかしこのアニメーションでは、エネルギ保存の物理的規則を考慮に入れず、振り子の例においては重力による均衡化効果が示されないであろう。
【0010】
同様に既知であるように、ビデオゲームにおいて、ここ数年動的インタラクションが使用されているが、ゲームの際は、アニメーションが現実的に見えて、プレーヤとの高レベルなインタラクション性が確保されなければならない。しかし、速度および加速度の物理値は、現実的ではあるが精密ではない。ゲームの際、プレーヤは、制御に加える労力を監視することなくモデルとインタラクションを行う。力フィードバックジョイスティックが使われる時でさえ、フィードバックは、実世界で起こりモデルを動かすであろうものの印象を与えるにすぎず、現実の計算が行われないためにそこでは数値を使用することができない。ゲームの際、プログラムは、現実的であるが現実ではない、変更できない複数のシナリオのコンパイルである。
【0011】
同様に既知であるように、動的力の物理法則を考慮に入れて、運動リンクを構成してシミュレーションが行われるが、計算後であり、従ってリアルタイムではなく、ユーザとの動的なインタラクションを伴わない。
【0012】
本発明の目的は、コンピュータ支援設計のシステムの3次元シーンにおけるオブジェクトのアセンブリを動的に操作するためのコンピュータに実装される方法およびシステムであって、動的に、換言すれば、リアルタイムで、重力および負荷(力、トルク)のような動的力の物理法則を考慮に入れた、該方法およびシステムを提供することである。
【課題を解決するための手段】
【0013】
本発明の一態様に従って、コンピュータ支援設計のシステムの3次元シーンにおけるオブジェクトのアセンブリを動的に操作するためのコンピュータに実装される方法が提案され、該方法が、
オブジェクトのアセンブリに、アセンブリのオブジェクトをリンクする動的接合部に関する情報を提供するステップと、
シーン内に埋め込まれる動的操作ツールを提供するステップであって、操作ツールが並進における自由度と回転における自由度と各軸に与える3軸を有するリファレンシャルを備える、ステップと、
動的操作ツールをアセンブリの1つのオブジェクトに付着させるステップと、
アセンブリのオブジェクトに付着される動的操作ツールの自由度を選択するステップと、
選択された自由度に従って負荷を印加するステップと、
負荷の印加の動的シミュレーションの結果をリアルタイムで計算かつ表示するステップと
を含む。
【0014】
そのような動的操作ツールは、米国特許第7823085 B2号の文献に記載されている。
【0015】
そのような方法により、動的に、換言すれば、リアルタイムで、重力および負荷(力、トルク)のような動的力の物理法則を考慮に入れることが可能になる。
【0016】
従って、該方法では、シミュレーションの現実性が高められ、また、自然な効果が観察され、不可能な構成が回避される。運動学では数学的には可能であるが物理的には到達可能ではないアセンブリの位置を求めることができる。
【0017】
一実施形態によると、選択された自由度に従って負荷を印加するステップが
負荷の値の範囲を選択する第1のサブステップと、
範囲内で負荷の値を判定する第2のサブステップと
を含む。
【0018】
従って、オブジェクトのアセンブリに印加する負荷をユーザが動的に判定することが簡単になる。
【0019】
一実施形態によると、選択された自由度に従って負荷を印加するステップが、負荷を印加するためのリファレンシャルを判定する第3のサブステップを含む。
【0020】
負荷を印加するためのリファレンシャルを判定するステップにより、どのパーツに負荷を印加するのかに相対して定義することが可能になる。パーツが特定されない場合、「ワールド」と呼ばれるリファレンシャルが設定される。
【0021】
一実施形態によると、選択された自由度に従って負荷を印加するステップが、3軸の動的操作ツールが、動的操作ツールが付着されるオブジェクトと共に回転するかしないかを判定する第4のサブステップを含む。
【0022】
3軸の動的操作ツールが、動的操作ツールが付着されるオブジェクトと共に回転するかしないかの判定は、負荷のリファレンシャルが「ワールド」リファレンシャルである時のみ、使用される。ユーザが一定の方向に負荷を印加したい場合は(引力から遠く離れるような)、操作部はオブジェクトと共に回転するべきではない。負荷が局所的な軸において印加される(例えば、モータアクセルをスピンさせる)場合、ユーザは操作部をオブジェクトと共に方向転換するよう設定する。
【0023】
負荷のリファレンシャルが「ワールド」リファレンシャルではなく、アセンブリの別のパーツである場合、簡素化のため、操作部はパーツと共に常に方向転換するべきである。
【0024】
これら2つの選択(リファレンシャルおよび操作部の回転)は、固体に印加される負荷の科学的説明を取り扱うためには必要である。負荷はリファレンシャル(作用/反作用の定理)において、またそれを表現する軸系を用いて説明されなければならない。軸系は操作部である。
【0025】
一実施形態によると、負荷を印加するステップが、動的操作ツールの動きであって、負荷の値に変換される動き、を行うことにより実行される。
【0026】
従って、ユーザは、選択されたパーツを、例えば、ビデオゲームでジョイスティックを用いて行うように、マウスを用いて操作することができる。
【0027】
一実施形態によると、変換において、軸に従う並進の動きのための速度、または、軸に従う回転の動きのための加速度、または回転および並進の両方を駆動する加速度および速度の組み合わせ、を考慮に入れる。
【0028】
そのような変換により、可能な限り実世界の感覚に近いオブジェクトの動的操作が可能になる。
【0029】
回転について:実世界の感覚では「回転するパーツにかかる、短いが加速する衝撃運動が、その回転速度をトルクの印加により増加させる」というものである。この記述は、物理的に正確な記述と対応し、何故なら、回転時の摩擦が、例えば、ボールベアリングのような特別の装置を用いると、実世界のアセンブリにおいては通常最小化されるからである。
【0030】
並進について:実世界の感覚では「オブジェクトを高速で押すことにより、強い負荷がそれに印加される」というものである。理論上は正確ではないが、この記述は、ほとんど全ての並進運動において観察される摩擦についての人の感覚に対応する。
【0031】
加速度と速度のより精緻な組み合わせを使用して、並進と回転の両方の運動を駆動することができる。
【0032】
一実施形態によると、動的操作ツールの動きが、マウスを用いて押下されるボタンにより、または表示スクリーン上を指で接触することにより、実行される。
【0033】
従って、ユーザは非常に簡単に負荷を印加できる。
【0034】
例えば、マウスまたは指を用いる動きは、動的操作ツールまでの距離で適用される。
【0035】
従って、負荷を正しい場所に良好な視認性を維持してスクリーン上で印加することが可能であるが、これは、本文書においてさらに説明するように、操作が操作部上で直接的ではなくインタラクタ上で発生するからである。
【0036】
あるいは、負荷を印加するステップが、負荷の値を直接供給することにより実行される。
【0037】
場合によっては、それが、ユーザにとって負荷を印加する最も簡単な方法となり得る。
【0038】
負荷は、力またはトルクとすることができる。
【0039】
本発明の別の態様に従って、上述のようなコンピュータ支援設計のシステムの3次元シーンにおけるオブジェクトのアセンブリを動的に操作するための方法を、コンピュータシステムに実行させるコンピュータ実行可能命令を有するコンピュータ可読媒体が提案される。
【0040】
本発明の別の態様に従って、コンピュータ可読媒体に記憶される、コンピュータ支援設計のシステムの3次元シーンにおけるオブジェクトのアセンブリを動的に操作するための、コンピュータプログラム製品であって、システムに上述のようなステップを取り込ませる符号化手段を含む製品が提案される。
【0041】
本発明の別の態様に従って、コンピュータ支援設計のシステムの3次元シーンにおけるオブジェクトのアセンブリを動的に操作するための装置であって、上述のようなステップを実装するための手段を備える装置が提案される。
【0042】
本発明は、非制限的な例を用いて記載され、かつ、添付の図面により例示されるいくつかの実施形態を検討することでより良く理解されるであろう。