(57)【要約】      （修正有）【課題】コンピュータディスプレイ上に表示される３次元シーン内のオブジェクトを操作するためのコンピュータ実施方法を提供する。【解決手段】３Ｄシーン内に回転中心を有する３Ｄオブジェクトを画面上に表示するステップと、互いに直交する３つの領域を有する回転マニピュレータを３Ｄシーンに表示するステップであって、回転マニピュレータは画面上のカーソルＣに追従し、領域ＲＡ１は回転面に対応する、該ステップと、初期の押圧点ＰＰ上の画面上にその位置をロックすることによって回転マニピュレータを作動させるステップと、面に対応する領域ＲＡ１にカーソルＣを移動することによって、１つの回転面を選択するステップと、画面上のカーソルＣの移動に従って回転操作を実行するステップとを含む。【選択図】図１１
2019114256.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ支援設計システムの３Ｄシーンにおいて３Ｄオブジェクトを操作するためのコンピュータ実施方法であって、
ａ）３Ｄシーン内に回転中心を有する３Ｄオブジェクトを画面上に表示するステップと、
ｂ）互いに直交する３つの領域（ＲＡ１、ＲＡ２、ＲＡ３）を有する回転マニピュレータ（ＲＭ）を前記３Ｄシーンに表示するステップであって、前記回転マニピュレータ（ＲＭ）は画面上のカーソル（Ｃ）に追従し、各領域（ＲＡ１、ＲＡ２、ＲＡ３）は回転面に対応する、該ステップと、
ｃ）初期の押圧点（ＰＰ）上の前記画面上にその位置をロックすることによって回転マニピュレータを作動させるステップと、
ｄ）前記面に対応する領域（ＲＡ１、ＲＡ２、ＲＡ３）に前記カーソル（Ｃ）を移動することによって、１つの回転面を選択するステップと、
ｅ）前記画面上の前記カーソル（Ｃ）の移動に従って回転操作を実行するステップと
を含むことを特徴とする方法。
【請求項２】
ステップｄ）およびｅ）は、前記カーソル（Ｃ）の移動中に前記カーソル（Ｃ）を制御する維持されたユーザ入力に応答して実行されることを特徴とする請求項１に記載の方法。
【請求項３】
ステップｄ）は、
ｄ１）カーソル（Ｃ）を領域（ＲＡ１、ＲＡ２、ＲＡ３）に指向するサブステップと、
ｄ２）前記カーソル（Ｃ）が前記領域（Ａ１、Ａ２、Ａ３）に特有の検証閾値に達するか否かを決定するサブステップと
を含むことを特徴とする請求項１および２のいずれか１つに記載の方法。
【請求項４】
前記検証閾値は曲線部分によって規定され、前記曲線部分の各点は前記押圧点（ＰＰ）に対する所定のピクセル距離を有することを特徴とする請求項３に記載の方法。
【請求項５】
前記曲線部分は、前記対応する領域（ＲＡ１、ＲＡ２、ＲＡ３）の外部輪郭（ＥＸＴ１、ＥＸＴ２、ＥＸＴ３）であることを特徴とする請求項４に記載の方法。
【請求項６】
前記カーソルを指向するサブステップｄ１）は、前記カーソルが位置する前記領域の視覚フィードバックを提供することを含むことを特徴とする請求項３ないし５のいずれか１つに記載の方法。
【請求項７】
前記カーソルを誘導するサブステップｄ１）は、前記カーソルが位置していない領域の視覚フィードバックを提供することを含むことを特徴とする請求項３から６のいずれか一項に記載の方法。
【請求項８】
１つの回転面を選択するステップｄ）は、前記対応する領域の検証閾値を超える視覚フィードバックを提供するサブステップｄ３）を含むことを特徴とする請求項３ないし７のいずれか１つに記載の方法。
【請求項９】
前記視覚フィードバックは、前記領域のサイズおよび／または色および／または透明度のレベルの変化であることを特徴とする請求項６ないし８のいずれか１つに記載の方法。
【請求項１０】
ステップｅ）は、
ｅ１）その方向が前記初期押圧点（ＰＰ）および検証点（ＶＰ）によって規定される基準ベクトル（ＲＶ）を決定するサブステップであって、前記検証点（ＶＰ）は検証閾値に到達したときの前記カーソルの位置に対応する、該サブステップと、
ｅ２）その方向が前記初期押圧点（ＰＰ）および現在点（ＣＰ）によって規定される現在ベクトル（ＣＶ）を決定するサブステップであって、前記現在点（ＣＰ）は一旦前記検証閾値に到達すると前記カーソルの位置に対応する、該サブステップと、
ｅ３）前記基準ベクトル（ＲＶ）と前記現在ベクトル（ＣＶ）との間の角度に従って前記回転操作を行うサブステップと
を含むことを特徴とする請求項３ないし９のいずれか１つに記載の方法。
【請求項１１】
コンピュータシステムに請求項１ないし１０のいずれか１つに記載の方法を実施させるコンピュータ実行可能命令を含むことを特徴とする非一過性のコンピュータ可読データ記憶媒体（Ｍ１−Ｍ４）に格納されたコンピュータプログラム製品。
【請求項１２】
コンピュータシステムに請求項１ないし１０のいずれか１つに記載の方法を実施させるコンピュータ実行可能命令（ＥＸＰ）を含むことを特徴とする非一過性のコンピュータ可読データ記憶媒体（Ｍ１−Ｍ４）。
【請求項１３】
メモリ（Ｍ１−Ｍ４）およびグラフィカルユーザインタフェース（ＫＢ、ＰＤ、ＤＣ、ＤＹ）に接続されたプロセッサ（Ｐ）を備えたコンピュータシステムであって、前記メモリは、請求項１ないし１０のいずれか１つに記載の方法を当該コンピュータシステムに実施させることを特徴とするコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータディスプレイ上に表示される３次元シーン内のオブジェクトを操作するためのコンピュータ実施方法に関する。本発明は、コンピュータグラフィックス、オーサリング、コンピュータ支援設計（ＣＡＤ）、コンピュータ支援エンジニアリング（ＣＡＥ）およびコンピュータ支援製造（ＣＡＭ）の分野に属し、デジタルモデル化されたオブジェクトを３次元のシーン内部で操作しなければならないすべての状況に応用される。
【背景技術】
【０００２】
ダッソーシステムズが商標Ｃａｔｉａで提供しているようなＣＡＤアプリケーションは、オブジェクトまたはオブジェクトのアセンブリの複雑な３次元または３次元モデルを構築および操作することを可能にする。ＣＡＤアプリケーションを使用する場合、オブジェクトまたはオブジェクトのサブ要素を変換（例えば、回転、変換）することが望ましいことが多々ある。ＣＡＤアプリケーションでは、３つの軸を有し、その操作によって利用可能な異なる３Ｄ変換を表すグラフィカルマニピュレータを使用することが知られている。グラフィカルマニピュレータは、多面的ツールの形態でオブジェクト表示ウィンドウのシーンで表現することができ、ツールの各面は異なる機能（例えば、回転、平行移動）を表すことができる。このツールは、機能が実行されるオブジェクトに関連付けることができる複数の機能のコンパクトな表現を具現化する。ツールの各機能は、ツールが投入されているシーンの１つまたは複数のオブジェクトを変更するように設計される。本発明は、より具体的には、回転マニピュレータと呼ばれるツールの回転機能に関する。
【０００３】
図１から図３は、背景技術の第１の解決法による回転操作を示す。シーン内に回転マニピュレータＲＭを投入することにより、回転マニピュレータＲＭは多くの点でシーンの他のオブジェクトのように挙動することができる。例えば、ビューの回転移動によってシーンのビューが変更されると、シーンに投入された回転マニピュレータＲＭのビューもそれに従って変化する。回転マニピュレータＲＭ、より一般的には上述した多面的なツールに関する詳細は、米国特許第７，８２３，０８５号明細書に記載されている。図１は、中心ＣＥ、３つの軸Ｘ、ＹおよびＺ、およびＺ軸周り、Ｘ軸周り、およびＸ軸周りの回転のための３つの円弧ＸＹ、ＹＺおよびＺＸによってそれぞれ定義される３つの回転面を含む回転マニピュレータＲＭを示す。Ｙ軸。回転操作子ＲＭは、通常、オブジェクトＯＢの重心に位置決め固定されて回転する。分かりやすくするために、図２では、回転マニピュレータＲＭがエッジＥＤに表示されている。図３において、ユーザは、カーソルＣを回転操作子ＲＭ上に移動させて、所望の回転（Ｚ軸周りの回転の円弧ＸＹ、Ｘ軸周りの回転の円弧ＹＺ、Ｙ軸周りの回転の円弧ＺＸ）、最後にカーソルを移動しながらマウスを押圧して保持する（即ち、解放しない）。カーソルの移動により、オブジェクトは円弧によって指定された方向に、またカーソルの変位の関数として決定された角度だけ回転する。この背景技術の解決策にはいくつかの制限があり、回転マニピュレータがシーン内の３Ｄ点に固定されているという事実に関連している。カーソルは、オブジェクトＯＢのすぐ近くに回転しているはずである。したがって、カーソルが他のインタラクションの回転操作の直前のシーンの別の部分にある場合、ユーザは、オブジェクトＯＢを回転させるためにカーソルを回転操作子ＲＭに戻さなければならない。これにより、多くのカーソル移動が発生する可能性がある。回転操作は、オブジェクトＯＢへのカーソルの接近に起因して、ユーザにオブジェクトＯＢにカーソルを位置させ、それを部分的または完全に隠すように強制してよい。ユーザの手がオブジェクトＯＢの正しい視覚化をブロックし、それによって回転を制御することが困難になるので、タッチモードでは、それはますます面倒になる。
【０００４】
図４および図５は、背景技術の第２の解決策による場面における回転操作を示す。この解決策では、ユーザは、オブジェクトＯＢに必ずしも近接していなくても、シーン内のどこからでも回転を実行することができ、カーソルまたはタッチモードでのユーザの指によるオブジェクトＯＢの隠蔽を回避する。図４は、この第２の解決法の場面を示す。シーンは３つの回転領域（ＲＡ１、ＲＡ２、ＲＡ３）に分割され、３つの部分の交点が回転マニピュレータＲＭの中心１になる。回転軸の選択は、シーン内のカーソルの位置（Ｚ軸周りの回転のための第１の回転領域ＲＡ１、Ｘ軸周りの回転のための第２の回転領域ＲＡ２、Ｙ軸周りの回転のための第３の回転領域ＲＡ３）によって決定される。次に、ユーザは、図５に示すように、選択された回転軸を中心に回転操作を実行する。カーソルは、初期点ＩＰから最終点ＦＰに移動される。背景技術のこの第２の解決策はいくつかの制限を含む。第１に、ユーザがいくつかの回転操作を実行したい場合、所望の回転領域を見つけるために、部分から部分へシーンを探索しなければならない。これは、所望の回転領域に達するために多くのマウス変位を意味する。第２に、ユーザは、シーンの一方の側のオブジェクトＯＢに対して一定の外観を持たなければならず、シーンの他方の側のカーソルＣを動かす。これは彼にとって不快になることがある。別の制限は、回転マニピュレータＲＭが可視でない場合、例えばユーザがズームインした、または視点を変換した場合に、回転操作を実行することができないことに起因する。最終的にオブジェクトＯＢを初期点ＩＰから最終点ＦＰまで回転させるために、多くのカーソル移動が行われる。
【発明の概要】
【課題を解決するための手段】
【０００５】
次に、本発明の目的は、操作の異なるステップを通してカーソル変位を低減し、操作されるオブジェクトのいかなる障害も回避し、ユーザに視覚的な快適さを提供する、コンピュータ支援設計システムの３Ｄシーンにおいて３Ｄオブジェクトを操作するためのコンピュータ実施方法を提供することである。
【０００６】
本発明の一態様によれば、コンピュータ支援設計システムの３Ｄシーンにおいて３Ｄオブジェクトを操作するためのコンピュータ実施方法であって、
ａ）３Ｄシーン内に回転中心を有する３Ｄオブジェクトを画面上に表示するステップと、
ｂ）互いに直交する３つの領域を有する回転マニピュレータを３Ｄシーンに表示するステップであり、回転マニピュレータは画面上のカーソルに追従し、各領域は回転面に対応するステップと、
ｃ）初期の押圧点上の画面上にその位置をロックすることによって回転マニピュレータを作動させるステップと、
ｄ）面に対応する領域にカーソルを移動することによって１つの回転面を選択するステップと、
ｅ）画面上の前記カーソルの移動に従って回転操作を実行するステップと
を含む方法が提案される。
【０００７】
本発明の特定の実施形態によれば、
ステップｄ）およびｅ）は、カーソルの移動中にカーソルを制御する維持されたユーザ入力に応答して実行されてもよく、
ステップｄ）は、
ｄ１）カーソルを領域に指向するサブステップと、
ｄ２）カーソルが領域に特有の検証閾値に達するか否かを決定するサブステップと
を含んでもよく、
検証閾値は、曲線部分によって規定され、曲線部分の各点は、押圧点に対する所定のピクセル距離を有してもよく、
曲線部分は、対応する領域の外部輪郭であってもよく、
カーソルを指向するサブステップｄ１）が、カーソルが位置する領域の視覚フィードバックを提供することを含んでもよく、
カーソルを誘導するサブステップｄ１）は、カーソルが位置していない領域の視覚フィードバックを提供することを含んでもよく、
１つの回転面を選択するステップｄ）は、対応する領域の検証閾値を超える視覚フィードバックを提供するサブステップｄ３）を含んでもよく、
視覚フィードバックは、領域のサイズおよび／または色および／または透明度のレベルの変化であってもよく、
ステップｅ）は、
ｅ１）その方向が初期押圧点および検証点によって規定される基準ベクトルを決定するサブステップであり、検証点）は検証閾値に到達したときのカーソルの位置に対応するサブステップと、
ｅ２）その方向が初期押圧点および現在点によって規定される現在ベクトル（を決定するサブステップであり、現在点は一旦検証閾値に到達すると前記カーソルの位置に対応するサブステップと、
ｅ３）基準ベクトルと現在ベクトルとの間の角度に従って回転操作を行うサブステップと
を含んでもよい。
【０００８】
本発明の別の目的は、コンピュータシステムに上記の方法を実施させるコンピュータ実行可能命令を含む、非一過性のコンピュータ可読データ記憶媒体に格納されたコンピュータプログラム製品である。
【０００９】
本発明の別の目的は、コンピュータシステムに上記の方法を実施させるコンピュータ実行可能命令を含む非一過性のコンピュータ可読データ記憶媒体である。
【００１０】
本発明の別の目的は、メモリおよびグラフィカルユーザインタフェースに接続されたプロセッサを備え、メモリは、コンピュータシステムに上記の方法を実施させるための方法である。
【００１１】
本発明は、非限定的な実施例を例として記載され、添付の図面によって示されるいくつかの実施形態を用いてよりよく理解されるであろう。
【図面の簡単な説明】
【００１２】
【図１】最新技術による回転操作のシーンの例を示す。
【図２】最新技術による回転操作のシーンの例を示す。
【図３】最新技術による回転操作のシーンの例を示す。
【図４】最新技術による回転操作のシーンの例を示す。
【図５】最新技術による回転操作のシーンの例を示す。
【図６】ポインティングデバイスの関連する状態を伴う、本発明による回転マニピュレータの一例を示す。
【図７】ポインティングデバイスの関連する状態を伴う、本発明による回転マニピュレータの一例を示す。
【図８】ポインティングデバイスの関連する状態を伴う、本発明による回転マニピュレータの一例を示す。
【図９】ポインティングデバイスの関連する状態を伴う、本発明による回転マニピュレータの一例を示す。
【図１０】ポインティングデバイスの関連する状態を伴う、本発明による回転マニピュレータの一例を示す。
【図１１】ポインティングデバイスの関連する状態を伴う、本発明による回転マニピュレータの一例を示す。
【図１２】本発明による方法の異なるステップを示す。
【図１３】本発明による方法の異なるステップを示す。
【図１４】本発明の異なる実施形態による方法を実行するのに適したそれぞれのコンピュータシステムのブロック図を示す。
【図１５】本発明の異なる実施形態による方法を実行するのに適したそれぞれのコンピュータシステムのブロック図を示す。
【発明を実施するための最良の形態】
【００１３】
以下、「３次元」（または「３Ｄ」）オブジェクトは、コンピュータシステムにおいて、３次元（３Ｄ）グラフィカル表現を可能にする物理的オブジェクトのデジタル表現である。３Ｄ表示は、すべての角度からパーツを見ることができる。例えば、３Ｄオブジェクトは、３Ｄ表現されると、その軸のいずれか、または表現が表示されている画面内の任意の軸の周りで処理および回転させてよい。
【００１４】
「３次元」（または「３Ｄ」）シーンは、３次元空間に配置された複数の３Ｄオブジェクトによって構成される仮想環境である。
【００１５】
以下、「選択コンテキスト」とは、予め選択された３Ｄオブジェクト（または複数の３Ｄオブジェクト）を処理することを意味する。これは、回転操作の開始前にマウスの押しボタンが離されていることを３Ｄオブジェクトが画面上に表示できることを意味する。
【００１６】
以下、「タッチモード」は、スクリーンから分離されたタッチパッド、またはタッチパッドおよびディスプレイ機能を含むタッチスクリーンの制御を指す、タッチセンシティブな表面上のカーソルの制御を意味する。ユーザ入力は、タッチセンシティブ表面上に指またはスタイラスを維持することによって提供されることが可能である。
【００１７】
図６は、初期状態の回転マニピュレータＲＭを示す。それは３つの領域（ＲＡ１、ＲＡ２、ＲＡ３）で構成されており、各領域を別の領域から区別するために異なる色を持つことができる。各領域には、外部輪郭（ＥＸＴ１、ＥＸＴ２、ＥＸＴ３）と２つの内部輪郭（ＩＮＴ１２、ＩＮＴ１３、ＩＮＴ２３）がある。各内部輪郭はセグメントであり、操作対象の回転軸を表す。各外部輪郭は、円弧、湾曲した断面、セグメントとすることができ、他の形状をとることができる。３つの内部輪郭は、交点ＩＮで交差する。ユーザのポインティングデバイスの動きを模倣するカーソルは、矢印として表されることができる。矢印の先端は、交点ＩＮに位置する。本発明は、選択コンテキストで考慮されなければならない。したがって、カーソルが３Ｄシーン内に位置するときはいつでも、回転マニピュレータＲＭをカーソルに装着されることができ、それに追従することができる。図５はまた、回転操作のトリガ前のポインティングデバイスの状態を示す。ポインティングデバイスのおかげで回転マニピュレータが３Ｄシーン内でドラッグされると、ユーザ入力は不要である。ポインティングデバイスがマウスである場合、ユーザはマウスを押圧することなくそれを動かすことができるので、ポインティングデバイスは「解放状態」ＲＥにある。タッチモードでは、ドラッギングするための指（またはスタイラス）の接触と選択のための指の接触との間に区別がないので、指の変位は、回転操作のトリガリングをせずにカーソルでの回転マニピュレータＲＭのドラッギングをもたらす。
【００１８】
図７は、マウスの押圧ＰＲのようなユーザ入力が受信されたときの回転マニピュレータＲＭを示す。マウスの押圧を検出すると、回転マニピュレータＲＭが起動され、回転操作の終了までその位置がロックされる。カーソルＣが指し示す交点ＩＮは、初期押圧点ＰＰと見なされる。タッチモードでは、ユーザは３Ｄシーン内で回転マニピュレータＲＭをドラッグし、次に画面上の接触を解除し、回転マニピュレータの位置をロックするように画面上のボタンに触れてもよい。
【００１９】
図８は、起動後の回転マニピュレータＲＭを示す。回転マニピュレータＲＭの位置が一旦ロックされると、マウスの変位は、固定回転マニピュレータＲＭに対するカーソルのドラッギングをもたらす。ユーザは、マウスを押しながら、領域（ＲＡ１、ＲＡ２、ＲＡ３）のうちの１つにカーソルを向けることができる。タッチモードでは、ユーザは、指を敏感な画面上および／またはタッチパッド上に接触させながら、カーソルを領域（ＲＡ１、ＲＡ２、ＲＡ３）の１つに向けることができる。カーソルが現在位置している領域は、視覚フィードバックによって強調表示されるので、強調表示された回転面を検証する場合に、どの回転面が選択されるかが明確に視覚化される。視覚フィードバックは、例えば、カーソルが位置していない領域の透明度のレベルの上昇（図８の領域ＲＡ１およびＲＡ３）、および／またはカーソルが位置する領域の色の変化（図８の領域ＲＡ２）とすることができる。領域内のカーソルのコースはマスクされることが可能である。あるいは、初期押圧点ＰＰおよびカーソルの位置によって区切られたセグメントＳＥが表示されることができる。次いで、区域の方向およびその長さは、区域内のカーソルの位置の関数で変化してよい。
【００２０】
図９は、回転マニピュレータＲＭ内のカーソルの代替位置を示す。ユーザは、実際にはマウスを押している間またはタッチスクリーンに接触している間にカーソルをドラッグし、別の領域、例えば領域ＲＡ１に切り替えてもよい。したがって、回転面が選択されていない限り、ユーザがある領域から別の領域に切り替えると、領域の視覚フィードバックが変化することがある。
【００２１】
図１０は、回転面の選択を示す。第１の実施形態によれば、カーソルが曲線部分によって規定される検証閾値に達すると、検証点ＶＰが回転操作子ＲＭ上に生成される。曲線部分の各点は、押圧点ＰＰに対する所定のピクセル距離を有する。画素距離は、ピクセル単位で、または長さ単位（ミリメートルなど）で表されてもよい。バリデーションポイントＶＰは、カーソルがある領域に対応する曲線部分に到達したときのカーソルの位置に対応する。したがって、領域の曲線部分の到達により、回転操作が有効になる。回転は、曲線部分に対応する回転面に対して３次元で直交する軸の周りに行われる。実施形態によれば、各曲線部分は、対応する領域の外形である（それぞれ領域ＲＡ１、ＲＡ２およびＲＡ３のＥＸＴ１、ＥＸＴ２およびＥＸＴ３）。あるいは、各曲線部分は、所定の半径の円の輪郭によって規定され、その中心は初期押圧点ＰＰである。所定の半径は、ミリメートルなどのピクセル単位または長さ単位で表されてよい。回転マニピュレータＲＭが一旦起動されると、円が表示されてよい。検証閾値に達した後にマスクされることができる。円は３つの円弧に分割され得、各円弧は回転面に対応する。カーソルが円の円弧の１つに到達するたびに、円弧に対応する回転面が選択される。
【００２２】
図１１は、回転面が一旦作動されるた後の回転操作中の回転マニピュレータＲＭを示す。基準ベクトルＲＶが生成され、表示されてよい。基準ベクトルＲＶの原点は、初期押圧点ＰＰである。基準ベクトルＲＶは、検証点ＰＶを通過するように構成されている。基準ベクトルＲＶのノルムは任意である。これは、例えば、初期押圧点ＰＰと検証点ＰＶとの間の距離、または所定の距離とすることができる。回転面がアクティブになると、カーソルの位置に対応する現在点ＣＰが表示される。現在点ＣＰは次に、３Ｄシーン内でドラッグされ、ユーザは入力を維持する（マウス押圧またはタッチモードでの指の接触）。原点が初期押圧点ＰＰである現在ベクトルＣＶが生成される。そのノルムは、初期押圧点ＰＰと現在点ＣＰとの間の距離である。回転角は、基準ベクトルＲＶと現在ベクトルＣＶとの間の角度から得られる。また、回転操作が有効になるとすぐに、回転角度の数値が入力されてもよい。３Ｄオブジェクトが時計回りに回転されると、回転角度の数値の前に負の符号が付されることが可能である。回転角は度またはラジアンで定義されてよい。例えば、回転角は、現在点ＣＰの近くに位置してもよい。実施形態によれば、３Ｄオブジェクトの回転は、ユーザがカーソルをドラッグし続けていても、３６０°回転後に停止されることができる。したがって、ユーザはいくつかの完全な回転を行うことができなくなる。それにより、いくつかの完全な回転後に３Ｄオブジェクトの元の位置に戻る煩雑な操作が回避される。
【００２３】
３Ｄオブジェクトの重心回りの回転操作は、回転角度に従って行ってもよい。第１の実施形態によれば、３Ｄオブジェクトの回転は、カーソルのドラッギングの間、オンザフライで実行されることができる。あるいは、回転操作の終了時に、ユーザが一旦押しボタンを放すと（またはタッチモードで接触を解除した）、回転が１つの角度に従って実行されることができる。ユーザは、現在ベクトルＣＶのノルムを変更するようにカーソルをドラッグして、レバレッジ効果を生成することができる。結果、カーソルが初期押圧点から離間するほど、ユーザは回転角度をより正確に制御する。
【００２４】
ユーザが一旦マウスの押しボタンを放すと、または指とタッチスクリーンとの間の接触が一度なくなると、回転マニピュレータＲＭは、図６に示すように、初期状態に戻る。
【００２５】
図１２は、本発明の実施形態による方法のフローチャートであり、そのステップは、図６から図１１に関連して既に説明した動作に対応する。図１２のフローチャートにおいて、
ステップａ）は、３Ｄシーン内に回転中心を有する３Ｄオブジェクトを画面上に表示することにある。
【００２６】
ステップｂ）は、３Ｄシーン内に３つの領域ＲＡ１、ＲＡ２、ＲＡ３が互いに直交する回転マニピュレータＲＭを表示することにあり、回転マニピュレータＲＭは画面上のカーソルＣに追従し、各領域ＲＡ１、ＲＡ２、ＲＡ３は回転面に対応する。
【００２７】
ステップｃ）は、初期押圧点ＰＰ上の画面上のその位置をロックすることにより回転マニピュレータを作動することである。
【００２８】
ステップｄ）は、カーソルＣを前記面に対応する領域ＲＡ１、ＲＡ２、ＲＡ３に移動させることにより１つの回転面を選択することである。
【００２９】
ステップｅ）は、画面上のカーソルＣの変位に従って回転操作を行うことにある。
【００３０】
図１３は、１つの回転面を選択するステップのフローチャートである。図１３のフローチャートにおいて、
ステップｄ１）は、カーソルＣを領域ＲＡ１、ＲＡ２、ＲＡ３に向けることにある。
【００３１】
ステップｄ２）は、カーソルＣが領域Ａ１、Ａ２、Ａ３に特有の検証閾値に達するか否かを決定することにある。
【００３２】
ステップｄ３）は、対応領域に対して検証閾値を超える視覚フィードバックを提供することである。
【００３３】
本発明の方法は、３Ｄシーン内のどこからでも回転を実行することによって、マウスまたは指の変位を最適化する。また、ユーザが回転させるオブジェクトをユーザが秘匿することも防止する。最終的に、回転角を制御するために必要なマウスまたは（指）変位を減少させ、正確さをもたらすことができる。
【００３４】
本発明の方法は、コンピュータネットワークを含むことが可能な、適切にプログラムされた汎用コンピュータまたはコンピュータシステムにより、適切なプログラムを、ハードディスク、ソリッドステートディスクまたはＣＤ−ＲＯＭなどの、コンピュータ可読媒体上に不揮発性の形態で格納し、そのマイクロプロセッサおよびメモリを使用して当該プログラムを実行することによって実施されてもよい。
【００３５】
図１４を参照して、本発明の例示的な実施形態による方法を実施するのに適したコンピュータを説明する。図１４において、コンピュータは、ＲＡＭ  Ｍ１またはＲＯＭ  Ｍ２またはハードディスクドライブ（ＨＤＤ）Ｍ３、ＤＶＤ／ＣＤドライブＭ４などのメモリデバイスに格納された、またはリモートに格納された実行可能プログラム、すなわちコンピュータ可読命令のセットを実行しつつ上記方法ステップを実行する中央処理装置（ＣＰＵ）Ｐを含む。さらに、３次元オブジェクトを定義する１つまたは複数のコンピュータファイルは、１つまたは複数のメモリデバイスＭ１からＭ４に、またはリモートに格納してよい。
【００３６】
請求された発明は、本発明のプロセスのコンピュータ可読命令が格納されるコンピュータ可読媒体の形態に限定されない。例えば、命令およびファイルは、ＣＤ、ＤＶＤ、フラッシュメモリ、ＲＡＭ、ＲＯＭ、ＰＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、ハードディスクまたはサーバやコンピュータなど、コンピュータが通信する任意の他の情報処理装置に格納されることができる。プログラムは、同じメモリデバイスまたは異なるメモリデバイスに格納されることができる。
【００３７】
さらに、本発明の方法を実施するのに適したコンピュータプログラムは、ＣＰＵ  ＰおよびＭｉｃｒｏｓｏｆｔ  ＶＩＳＴＡ、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）８、ＵＮＩＸ、Ｓｏｌａｒｉｓ、ＬＩＮＵＸ、Ａｐｐｌｅ  ＭＡＣ−ＯＳ、および当業者に知られている他のシステムなどのオペレーティングシステムと連携して実行されるユーティリティアプリケーション、バックグラウンドデーモン、またはオペレーティングシステムのコンポーネント、またはそれらの組み合わせとして提供されることができる。
【００３８】
ＣＰＵ  Ｐは、米国ＩｎｔｅｌのＸｅｎｏｎプロセッサ、または米国ＡＭＤのＯｐｔｅｒｏｎプロセッサとすることができ、または米国Ｆｒｅｅｓｃａｌｅ社のＦｒｅｅｓｃａｌｅ  ＣｏｌｄＦｉｒｅ、ＩＭＸ、またはＡＲＭプロセッサなどの他のプロセッサタイプとすることができる。あるいは、ＣＰＵは、業者が認識するように、米国Ｉｎｔｅｌ社のＣｏｒｅ２  Ｄｕｏのようなプロセッサとすることができ、または当ＦＰＧＡ、ＡＳＩＣ、ＰＬＤ上に、またはディスクリート論理回路を使用して実施されることができる。さらに、ＣＰＵは、上述した本発明のプロセスのコンピュータ可読命令を実行するように協働して動作する複数のプロセッサとして実施されることができる。
【００３９】
図１４のコンピュータはまた、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、インターネットなどのネットワークとインタフェースするために、米国Ｉｎｔｅｌ社のＩｎｔｅｌ  Ｅｔｈｅｒｎｅｔ  ＰＲＯネットワークインタフェースカードのようなネットワークインタフェースＮＩを含む。コンピュータはさらに、Ｈｅｗｌｅｔｔ  Ｐａｃｋａｒｄ  ＨＰＬ２４４５ｗ  ＬＣＤモニタのようなディスプレイＤＹとインタフェースする米国ＮＶＩＤＩＡ社のＮＶＩＤＩＡ  ＧｅＦｏｒｃｅ  ＧＴＸグラフィックスアダプタのようなディスプレイコントローラＤＣを含む。汎用Ｉ／ＯインタフェースＩＦは、キーボードＫＢおよび、ローラーボール、マウス、タッチパッドなどのポインティングデバイスＰＤとインタフェースする。ディスプレイ、キーボード、タッチモード用のセンシティブ面、およびポインティングデバイスは、ディスプレイコントローラおよびＩ／Ｏインタフェースと共に、入力コマンドを提供するために、例えばポインターを移動するために、ユーザにより使用され、そして３次元シーンおよびグラフィックツールを表示するためにコンピュータによって使用されるグラフィカルユーザインタフェースを形成する。
【００４０】
ディスクコントローラＤＫＣは、コンピュータのすべてのコンポーネントを相互接続するために、ＨＤＤ  Ｍ３とＤＶＤ／ＣＤ  Ｍ４とをＩＳＡ、ＥＩＳＡ、ＶＥＳＡ、ＰＣＩまたは同様のものなどとすることができる通信バスＣＢＳで接続する。
【００４１】
ディスプレイ、キーボード、ポインティングデバイス、ディスプレイコントローラ、ディスクコントローラ、ネットワークインタフェース、およびＩ／Ｏインタフェースの一般的な特徴および機能の説明は、これらの特徴が知られているので、簡潔にするためにここでは省略される。
【００４２】
図１５は、本発明の異なる例示的な実施形態による方法を実施するのに適したコンピュータシステムのブロック図である。図１５において、実行可能プログラムＥＸＰおよび３次元オブジェクトを定義するコンピュータファイルは、サーバＳＣに接続されたメモリデバイスに記憶される。ディスプレイコントローラ、センシティブ面、ディスプレイ、キーボードおよび／またはポインティングデバイスがサーバ内に存在しなくてもよいことを除いて、メモリデバイスおよびサーバの全体的なアーキテクチャは、図１４を参照して上述したものと同じであってもよい。次に、サーバＳＣは、ネットワークＮＷを介して管理者システムＡＤＳおよびエンドユーザコンピュータＥＵＣに接続される。管理者システムおよびエンドユーザコンピュータの全体的なアーキテクチャは、管理者システムおよびエンドユーザコンピュータのメモリデバイスが実行可能プログラムＥＸＰおよび／または３次元オブジェクトを定義するコンピュータファイルを格納しないことを除いて、図１４を参照して上述したものと同じであってもよい。しかし、エンドユーザコンピュータは、以下に説明するように、サーバの実行可能プログラムと協働するように設計されたクライアントプログラムを格納する。
【００４３】
理解されるように、ネットワークＮＷは、インターネットなどのパブリックネットワーク、またはＬＡＮまたはＷＡＮネットワークなどのプライベートネットワーク、またはそれらの任意の組み合わせとすることができ、ＰＳＴＮまたはＩＳＤＮサブネットワークを含むこともできる。ネットワークＮＷは、Ｅｔｈｅｒｎｅｔ（登録商標）ネットワークのような有線であってもよく、またはＥＤＧＥ、３Ｇ、および４Ｇ無線セルラーシステムを含むセルラーネットワークのような無線であってもよい。無線ネットワークは、Ｗｉ−Ｆｉ、Ｂｌｕｅｔｏｏｔｈ、または既知の他の無線形式の通信であってもよい。したがって、ネットワークＮＷは単なる例示であり、決して本進歩の範囲を限定するものではない。
【００４４】
エンドユーザコンピュータの記憶装置に記憶され、後者のＣＰＵによって実行されるクライアントプログラムは、サーバＳＣによって記憶されかつ３次元オブジェクトを定義するファイルを含むデータベースＤＢに、ネットワークＮＷを介して、アクセスする。サーバは、上述したように処理を実行し、３Ｄオブジェクトを含むシーンの所望の表現に対応する画像ファイルをネットワークＮＷを再度使用してエンドユーザコンピュータに送信する。
【００４５】
１つの管理者システムＡＤＳと１つのエンドユーザシステムＥＵＸのみが示されているが、システムは任意の数の管理者システムおよび／またはエンドユーザシステムを制限なくサポートすることができる。同様に、本発明の範囲から逸脱することなく、複数のサーバがシステム内に実施されることもできる。
【００４６】
本明細書で説明される任意の方法ステップは、特定の論理機能またはプロセス内のステップを実施するための１つまたは複数の実行可能命令を含むモジュール、セグメントまたはコード部分を表すと理解されるべきであり、代替実施は、本発明の例示的な実施形態の範囲内に含まれる。
【図１】
2019114256.tif 000003
【図２】
2019114256.tif 000004
【図３】
2019114256.tif 000005
【図４】
2019114256.tif 000006
【図５】
2019114256.tif 000007
【図６】
2019114256.tif 000008
【図７】
2019114256.tif 000009
【図８】
2019114256.tif 000010
【図９】
2019114256.tif 000011
【図１０】
2019114256.tif 000012
【図１１】
2019114256.tif 000013
【図１２】
2019114256.tif 000014
【図１３】
2019114256.tif 000015
【図１４】
2019114256.tif 000016
【図１５】
2019114256.tif 000017
【手続補正書】
【提出日】平成31年2月21日(2019.2.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータ支援設計システムの３Ｄシーンにおいて３Ｄオブジェクトを操作するためのコンピュータ実施方法であって、
ａ）３Ｄシーン内に回転中心を有する３Ｄオブジェクトを画面上に表示するステップと、
ｂ）互いに直交する３つの領域（ＲＡ１、ＲＡ２、ＲＡ３）を有する回転マニピュレータ（ＲＭ）を前記３Ｄシーンに表示するステップであって、前記回転マニピュレータ（ＲＭ）は画面上のカーソル（Ｃ）に追従し、各領域（ＲＡ１、ＲＡ２、ＲＡ３）は回転面に対応する、該ステップと、
ｃ）初期の押圧点（ＰＰ）上の前記画面上にその位置をロックすることによって回転マニピュレータを作動させるステップと、
ｄ）前記面に対応する領域（ＲＡ１、ＲＡ２、ＲＡ３）に前記カーソル（Ｃ）を移動することによって、１つの回転面を選択するステップと、
ｅ）前記画面上の前記カーソル（Ｃ）の移動に従って回転操作を実行するステップと
を含むことを特徴とする方法。
【請求項２】
ステップｄ）およびｅ）は、前記カーソル（Ｃ）の移動中に前記カーソル（Ｃ）を制御する維持されたユーザ入力に応答して実行されることを特徴とする請求項１に記載の方法。
【請求項３】
ステップｄ）は、
ｄ１）カーソル（Ｃ）を領域（ＲＡ１、ＲＡ２、ＲＡ３）に指向するサブステップと、
ｄ２）前記カーソル（Ｃ）が前記領域（Ａ１、Ａ２、Ａ３）に特有の検証閾値に達するか否かを決定するサブステップと
を含むことを特徴とする請求項１および２のいずれか１つに記載の方法。
【請求項４】
前記検証閾値は曲線部分によって規定され、前記曲線部分の各点は前記押圧点（ＰＰ）に対する所定のピクセル距離を有することを特徴とする請求項３に記載の方法。
【請求項５】
前記曲線部分は、前記対応する領域（ＲＡ１、ＲＡ２、ＲＡ３）の外部輪郭（ＥＸＴ１、ＥＸＴ２、ＥＸＴ３）であることを特徴とする請求項４に記載の方法。
【請求項６】
前記カーソルを指向するサブステップｄ１）は、前記カーソルが位置する前記領域の視覚フィードバックを提供することを含むことを特徴とする請求項３ないし５のいずれか１つに記載の方法。
【請求項７】
前記カーソルを誘導するサブステップｄ１）は、前記カーソルが位置していない領域の視覚フィードバックを提供することを含むことを特徴とする請求項３から６のいずれか一項に記載の方法。
【請求項８】
１つの回転面を選択するステップｄ）は、前記対応する領域の検証閾値を超える視覚フィードバックを提供するサブステップｄ３）を含むことを特徴とする請求項３ないし７のいずれか１つに記載の方法。
【請求項９】
前記視覚フィードバックは、前記領域のサイズおよび／または色および／または透明度のレベルの変化であることを特徴とする請求項６ないし８のいずれか１つに記載の方法。
【請求項１０】
ステップｅ）は、
ｅ１）その方向が前記初期押圧点（ＰＰ）および検証点（ＶＰ）によって規定される基準ベクトル（ＲＶ）を決定するサブステップであって、前記検証点（ＶＰ）は検証閾値に到達したときの前記カーソルの位置に対応する、該サブステップと、
ｅ２）その方向が前記初期押圧点（ＰＰ）および現在点（ＣＰ）によって規定される現在ベクトル（ＣＶ）を決定するサブステップであって、前記現在点（ＣＰ）は一旦前記検証閾値に到達すると前記カーソルの位置に対応する、該サブステップと、
ｅ３）前記基準ベクトル（ＲＶ）と前記現在ベクトル（ＣＶ）との間の角度に従って前記回転操作を行うサブステップと
を含むことを特徴とする請求項３ないし９のいずれか１つに記載の方法。
【請求項１１】
コンピュータに請求項１ないし１０のいずれか１つに記載の方法を実行させることを特徴とするコンピュータプログラム。
【請求項１２】
請求項１１記載のコンピュータプログラムを記録したことを特徴とする非一過性コンピュータ可読媒体。
【請求項１３】
メモリ（Ｍ１−Ｍ４）およびグラフィカルユーザインタフェース（ＫＢ、ＰＤ、ＤＣ、ＤＹ）に接続されたプロセッサ（Ｐ）を備えたコンピュータシステムであって、前記メモリは、請求項１ないし１０のいずれか１つに記載の方法を当該コンピュータシステムに実施させることを特徴とするコンピュータシステム。
【外国語明細書】
2019114256000001.pdf