IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ダッソー システムズの特許一覧

特許7343274回転用のジェスチャーベースのマニピュレータ
<>
  • 特許-回転用のジェスチャーベースのマニピュレータ 図1
  • 特許-回転用のジェスチャーベースのマニピュレータ 図2
  • 特許-回転用のジェスチャーベースのマニピュレータ 図3
  • 特許-回転用のジェスチャーベースのマニピュレータ 図4
  • 特許-回転用のジェスチャーベースのマニピュレータ 図5
  • 特許-回転用のジェスチャーベースのマニピュレータ 図6
  • 特許-回転用のジェスチャーベースのマニピュレータ 図7
  • 特許-回転用のジェスチャーベースのマニピュレータ 図8
  • 特許-回転用のジェスチャーベースのマニピュレータ 図9
  • 特許-回転用のジェスチャーベースのマニピュレータ 図10
  • 特許-回転用のジェスチャーベースのマニピュレータ 図11
  • 特許-回転用のジェスチャーベースのマニピュレータ 図12
  • 特許-回転用のジェスチャーベースのマニピュレータ 図13
  • 特許-回転用のジェスチャーベースのマニピュレータ 図14
  • 特許-回転用のジェスチャーベースのマニピュレータ 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-04
(45)【発行日】2023-09-12
(54)【発明の名称】回転用のジェスチャーベースのマニピュレータ
(51)【国際特許分類】
   G06F 30/10 20200101AFI20230905BHJP
   G06F 30/12 20200101ALI20230905BHJP
   G06T 19/00 20110101ALI20230905BHJP
【FI】
G06F30/10
G06F30/12
G06T19/00 A
【請求項の数】 13
【外国語出願】
(21)【出願番号】P 2018238558
(22)【出願日】2018-12-20
(65)【公開番号】P2019114256
(43)【公開日】2019-07-11
【審査請求日】2021-12-08
(31)【優先権主張番号】17306922.0
(32)【優先日】2017-12-22
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】500102435
【氏名又は名称】ダッソー システムズ
【氏名又は名称原語表記】DASSAULT SYSTEMES
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】ローラ ペティユー
(72)【発明者】
【氏名】フレデリック レッツェルター
【審査官】堀井 啓明
(56)【参考文献】
【文献】特開平09-185455(JP,A)
【文献】特開平10-293864(JP,A)
【文献】Mufasu CAD,Solidworks How To Rotate Part,youtube,米国,2017年01月10日,https://www.youtube.com/watch?v=nEByRk9tpuU&feature=youtu.be
(58)【調査した分野】(Int.Cl.,DB名)
G06F 30/00-30/398
G06T 19/00
G06F 3/04815
G06F 3/04845
(57)【特許請求の範囲】
【請求項1】
コンピュータ支援設計システムの3Dシーンにおいて3Dオブジェクトを操作するためのコンピュータ実施方法であって、
a)3Dシーン内に回転中心を有する3Dオブジェクトを画面上に表示するステップと、
b)互いに直交する3つの領域(RA1、RA2、RA3)を有する回転マニピュレータ(RM)を前記3Dシーンに表示するステップであって、前記回転マニピュレータ(RM)カーソル(C)に取り付けられ、これにより前記回転マニピュレータ(RM)の位置がロックされるまで前記画面上で前記カーソルに追従し、各領域(RA1、RA2、RA3)は回転面に対応する、該ステップと、
c)初期押圧点(PP)において前記画面上その位置をロックすることによって回転マニピュレータを作動させるステップと、
d)前記面に対応する前記領域(RA1、RA2、RA3)に前記カーソル(C)を移動させることによって、1つの回転面を選択するステップと、
e)前記画面上の前記カーソル(C)の移動に従って回転操作を実行するステップと
備えることを特徴とする方法。
【請求項2】
ステップd)およびe)は、前記カーソル(C)の移動中に前記カーソル(C)を制御する維持されたユーザ入力に応答して実行されることを特徴とする請求項1に記載の方法。
【請求項3】
ステップd)は、
d1)カーソル(C)を前記領域(RA1、RA2、RA3)に指向させるサブステップと、
d2)前記カーソル(C)が前記領域(A1、A2、A3)に特有の検証閾値に達するか否かを決定するサブステップと
を含むことを特徴とする請求項1および2のいずれか1つに記載の方法。
【請求項4】
前記検証閾値は曲線部分によって規定され、前記曲線部分の各点は前記押圧点(PP)に対する所定のピクセル距離を有することを特徴とする請求項3に記載の方法。
【請求項5】
前記曲線部分は、前記対応する領域(RA1、RA2、RA3)の外部輪郭(EXT1、EXT2、EXT3)であることを特徴とする請求項4に記載の方法。
【請求項6】
前記カーソルを指向させるサブステップd1)は、前記カーソルが位置する前記領域の視覚フィードバック供を含むことを特徴とする請求項3ないし5のいずれか1つに記載の方法。
【請求項7】
前記カーソルを指向させるサブステップd1)は、前記カーソルが位置していない前記領域の視覚フィードバック供を含むことを特徴とする請求項3から6のいずれか一項に記載の方法。
【請求項8】
1つの回転面を選択するステップd)は、前記対応する領域の検証閾値を超える視覚フィードバックを提供するサブステップd3)を含むことを特徴とする請求項3ないし7のいずれか1つに記載の方法。
【請求項9】
前記視覚フィードバックは、前記領域のサイズおよび/または色および/または透明度レベルの変化であることを特徴とする請求項6ないし8のいずれか1つに記載の方法。
【請求項10】
ステップe)は、
e1)その方向が前記初期押圧点(PP)および検証点(VP)によって規定される基準ベクトル(RV)を決定するサブステップであって、前記検証点(VP)は前記カーソルが前記検証閾値に到達したときの前記カーソルの位置に対応する、該サブステップと、
e2)その方向が前記初期押圧点(PP)および現在点(CP)によって規定される現在ベクトル(CV)を決定するサブステップであって、前記現在点(CP)は前記カーソルが前記検証閾値に到達した後の前記カーソルの位置に対応する、該サブステップと、
e3)前記基準ベクトル(RV)と前記現在ベクトル(CV)との間の角度に従って前記回転操作を行うサブステップと
を含むことを特徴とする請求項3ないし9のいずれか1つに記載の方法。
【請求項11】
コンピュータに請求項1ないし10のいずれか1つに記載の方法を実行させることを特徴とするコンピュータプログラム。
【請求項12】
請求項11記載のコンピュータプログラムを記録したことを特徴とする非一過性コンピュータ可読媒体。
【請求項13】
メモリ(M1-M4)およびグラフィカルユーザインタフェース(KB、PD、DC、DY)に接続されたプロセッサ(P)を備えたコンピュータシステムであって、前記メモリは、請求項1ないし10のいずれか1つに記載の方法を当該コンピュータシステムに実施させるためのコンピュータ実行可能命令(EXP)を格納していることを特徴とするコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータディスプレイ上に表示される3次元シーン内のオブジェクトを操作するためのコンピュータ実施方法に関する。本発明は、コンピュータグラフィックス、オーサリング、コンピュータ支援設計(CAD)、コンピュータ支援エンジニアリング(CAE)およびコンピュータ支援製造(CAM)の分野に属し、デジタルモデル化されたオブジェクトを3次元のシーン内部で操作しなければならないすべての状況に応用される。
【背景技術】
【0002】
ダッソーシステムズが商標Catiaで提供しているようなCADアプリケーションは、オブジェクトまたはオブジェクトのアセンブリの複雑な3次元または3次元モデルを構築および操作することを可能にする。CADアプリケーションを使用する場合、オブジェクトまたはオブジェクトのサブ要素を変換(例えば、回転、変換)することが望ましいことが多々ある。CADアプリケーションでは、3つの軸を有し、その操作によって利用可能な異なる3D変換を表すグラフィカルマニピュレータを使用することが知られている。グラフィカルマニピュレータは、多面的ツールの形態でオブジェクト表示ウィンドウのシーンで表現することができ、ツールの各面は異なる機能(例えば、回転、平行移動)を表すことができる。このツールは、機能が実行されるオブジェクトに関連付けることができる複数の機能のコンパクトな表現を具現化する。ツールの各機能は、ツールが投入されているシーンの1つまたは複数のオブジェクトを変更するように設計される。本発明は、より具体的には、回転マニピュレータと呼ばれるツールの回転機能に関する。
【0003】
図1から図3は、背景技術の第1の解決法による回転操作を示す。シーン内に回転マニピュレータRMを投入することにより、回転マニピュレータRMは多くの点でシーンの他のオブジェクトのように挙動することができる。例えば、ビューの回転移動によってシーンのビューが変更されると、シーンに投入された回転マニピュレータRMのビューもそれに従って変化する。回転マニピュレータRM、より一般的には上述した多面的なツールに関する詳細は、米国特許第7,823,085号明細書に記載されている。図1は、中心CE、3つの軸X、YおよびZ、およびZ軸周り、X軸周り、およびX軸周りの回転のための3つの円弧XY、YZおよびZXによってそれぞれ定義される3つの回転面を含む回転マニピュレータRMを示す。Y軸。回転操作子RMは、通常、オブジェクトOBの重心に位置決め固定されて回転する。分かりやすくするために、図2では、回転マニピュレータRMがエッジEDに表示されている。図3において、ユーザは、カーソルCを回転操作子RM上に移動させて、所望の回転(Z軸周りの回転の円弧XY、X軸周りの回転の円弧YZ、Y軸周りの回転の円弧ZX)、最後にカーソルを移動しながらマウスを押圧して保持する(即ち、解放しない)。カーソルの移動により、オブジェクトは円弧によって指定された方向に、またカーソルの変位の関数として決定された角度だけ回転する。この背景技術の解決策にはいくつかの制限があり、回転マニピュレータがシーン内の3D点に固定されているという事実に関連している。カーソルは、オブジェクトOBのすぐ近くに回転しているはずである。したがって、カーソルが他のインタラクションの回転操作の直前のシーンの別の部分にある場合、ユーザは、オブジェクトOBを回転させるためにカーソルを回転操作子RMに戻さなければならない。これにより、多くのカーソル移動が発生する可能性がある。回転操作は、オブジェクトOBへのカーソルの接近に起因して、ユーザにオブジェクトOBにカーソルを位置させ、それを部分的または完全に隠すように強制してよい。ユーザの手がオブジェクトOBの正しい視覚化をブロックし、それによって回転を制御することが困難になるので、タッチモードでは、それはますます面倒になる。
【0004】
図4および図5は、背景技術の第2の解決策による場面における回転操作を示す。この解決策では、ユーザは、オブジェクトOBに必ずしも近接していなくても、シーン内のどこからでも回転を実行することができ、カーソルまたはタッチモードでのユーザの指によるオブジェクトOBの隠蔽を回避する。図4は、この第2の解決法の場面を示す。シーンは3つの回転領域(RA1、RA2、RA3)に分割され、3つの部分の交点が回転マニピュレータRMの中心1になる。回転軸の選択は、シーン内のカーソルの位置(Z軸周りの回転のための第1の回転領域RA1、X軸周りの回転のための第2の回転領域RA2、Y軸周りの回転のための第3の回転領域RA3)によって決定される。次に、ユーザは、図5に示すように、選択された回転軸を中心に回転操作を実行する。カーソルは、初期点IPから最終点FPに移動される。背景技術のこの第2の解決策はいくつかの制限を含む。第1に、ユーザがいくつかの回転操作を実行したい場合、所望の回転領域を見つけるために、部分から部分へシーンを探索しなければならない。これは、所望の回転領域に達するために多くのマウス変位を意味する。第2に、ユーザは、シーンの一方の側のオブジェクトOBに対して一定の外観を持たなければならず、シーンの他方の側のカーソルCを動かす。これは彼にとって不快になることがある。別の制限は、回転マニピュレータRMが可視でない場合、例えばユーザがズームインした、または視点を変換した場合に、回転操作を実行することができないことに起因する。最終的にオブジェクトOBを初期点IPから最終点FPまで回転させるために、多くのカーソル移動が行われる。
【発明の概要】
【課題を解決するための手段】
【0005】
次に、本発明の目的は、操作の異なるステップを通してカーソル変位を低減し、操作されるオブジェクトのいかなる障害も回避し、ユーザに視覚的な快適さを提供する、コンピュータ支援設計システムの3Dシーンにおいて3Dオブジェクトを操作するためのコンピュータ実施方法を提供することである。
【0006】
本発明の一態様によれば、コンピュータ支援設計システムの3Dシーンにおいて3Dオブジェクトを操作するためのコンピュータ実施方法であって、
a)3Dシーン内に回転中心を有する3Dオブジェクトを画面上に表示するステップと、
b)互いに直交する3つの領域を有する回転マニピュレータを3Dシーンに表示するステップであり、回転マニピュレータは画面上のカーソルに追従し、各領域は回転面に対応するステップと、
c)初期の押圧点上の画面上にその位置をロックすることによって回転マニピュレータを作動させるステップと、
d)面に対応する領域にカーソルを移動することによって1つの回転面を選択するステップと、
e)画面上の前記カーソルの移動に従って回転操作を実行するステップと
を含む方法が提案される。
【0007】
本発明の特定の実施形態によれば、
ステップd)およびe)は、カーソルの移動中にカーソルを制御する維持されたユーザ入力に応答して実行されてもよく、
ステップd)は、
d1)カーソルを領域に指向するサブステップと、
d2)カーソルが領域に特有の検証閾値に達するか否かを決定するサブステップと
を含んでもよく、
検証閾値は、曲線部分によって規定され、曲線部分の各点は、押圧点に対する所定のピクセル距離を有してもよく、
曲線部分は、対応する領域の外部輪郭であってもよく、
カーソルを指向するサブステップd1)が、カーソルが位置する領域の視覚フィードバックを提供することを含んでもよく、
カーソルを誘導するサブステップd1)は、カーソルが位置していない領域の視覚フィードバックを提供することを含んでもよく、
1つの回転面を選択するステップd)は、対応する領域の検証閾値を超える視覚フィードバックを提供するサブステップd3)を含んでもよく、
視覚フィードバックは、領域のサイズおよび/または色および/または透明度のレベルの変化であってもよく、
ステップe)は、
e1)その方向が初期押圧点および検証点によって規定される基準ベクトルを決定するサブステップであり、検証点)は検証閾値に到達したときのカーソルの位置に対応するサブステップと、
e2)その方向が初期押圧点および現在点によって規定される現在ベクトル(を決定するサブステップであり、現在点は一旦検証閾値に到達すると前記カーソルの位置に対応するサブステップと、
e3)基準ベクトルと現在ベクトルとの間の角度に従って回転操作を行うサブステップと
を含んでもよい。
【0008】
本発明の別の目的は、コンピュータシステムに上記の方法を実施させるコンピュータ実行可能命令を含む、非一過性のコンピュータ可読データ記憶媒体に格納されたコンピュータプログラム製品である。
【0009】
本発明の別の目的は、コンピュータシステムに上記の方法を実施させるコンピュータ実行可能命令を含む非一過性のコンピュータ可読データ記憶媒体である。
【0010】
本発明の別の目的は、メモリおよびグラフィカルユーザインタフェースに接続されたプロセッサを備え、メモリは、コンピュータシステムに上記の方法を実施させるための方法である。
【0011】
本発明は、非限定的な実施例を例として記載され、添付の図面によって示されるいくつかの実施形態を用いてよりよく理解されるであろう。
【図面の簡単な説明】
【0012】
図1】最新技術による回転操作のシーンの例を示す。
図2】最新技術による回転操作のシーンの例を示す。
図3】最新技術による回転操作のシーンの例を示す。
図4】最新技術による回転操作のシーンの例を示す。
図5】最新技術による回転操作のシーンの例を示す。
図6】ポインティングデバイスの関連する状態を伴う、本発明による回転マニピュレータの一例を示す。
図7】ポインティングデバイスの関連する状態を伴う、本発明による回転マニピュレータの一例を示す。
図8】ポインティングデバイスの関連する状態を伴う、本発明による回転マニピュレータの一例を示す。
図9】ポインティングデバイスの関連する状態を伴う、本発明による回転マニピュレータの一例を示す。
図10】ポインティングデバイスの関連する状態を伴う、本発明による回転マニピュレータの一例を示す。
図11】ポインティングデバイスの関連する状態を伴う、本発明による回転マニピュレータの一例を示す。
図12】本発明による方法の異なるステップを示す。
図13】本発明による方法の異なるステップを示す。
図14】本発明の異なる実施形態による方法を実行するのに適したそれぞれのコンピュータシステムのブロック図を示す。
図15】本発明の異なる実施形態による方法を実行するのに適したそれぞれのコンピュータシステムのブロック図を示す。
【発明を実施するための最良の形態】
【0013】
以下、「3次元」(または「3D」)オブジェクトは、コンピュータシステムにおいて、3次元(3D)グラフィカル表現を可能にする物理的オブジェクトのデジタル表現である。3D表示は、すべての角度からパーツを見ることができる。例えば、3Dオブジェクトは、3D表現されると、その軸のいずれか、または表現が表示されている画面内の任意の軸の周りで処理および回転させてよい。
【0014】
「3次元」(または「3D」)シーンは、3次元空間に配置された複数の3Dオブジェクトによって構成される仮想環境である。
【0015】
以下、「選択コンテキスト」とは、予め選択された3Dオブジェクト(または複数の3Dオブジェクト)を処理することを意味する。これは、回転操作の開始前にマウスの押しボタンが離されていることを3Dオブジェクトが画面上に表示できることを意味する。
【0016】
以下、「タッチモード」は、スクリーンから分離されたタッチパッド、またはタッチパッドおよびディスプレイ機能を含むタッチスクリーンの制御を指す、タッチセンシティブな表面上のカーソルの制御を意味する。ユーザ入力は、タッチセンシティブ表面上に指またはスタイラスを維持することによって提供されることが可能である。
【0017】
図6は、初期状態の回転マニピュレータRMを示す。それは3つの領域(RA1、RA2、RA3)で構成されており、各領域を別の領域から区別するために異なる色を持つことができる。各領域には、外部輪郭(EXT1、EXT2、EXT3)と2つの内部輪郭(INT12、INT13、INT23)がある。各内部輪郭はセグメントであり、操作対象の回転軸を表す。各外部輪郭は、円弧、湾曲した断面、セグメントとすることができ、他の形状をとることができる。3つの内部輪郭は、交点INで交差する。ユーザのポインティングデバイスの動きを模倣するカーソルは、矢印として表されることができる。矢印の先端は、交点INに位置する。本発明は、選択コンテキストで考慮されなければならない。したがって、カーソルが3Dシーン内に位置するときはいつでも、回転マニピュレータRMをカーソルに装着されることができ、それに追従することができる。図5はまた、回転操作のトリガ前のポインティングデバイスの状態を示す。ポインティングデバイスのおかげで回転マニピュレータが3Dシーン内でドラッグされると、ユーザ入力は不要である。ポインティングデバイスがマウスである場合、ユーザはマウスを押圧することなくそれを動かすことができるので、ポインティングデバイスは「解放状態」REにある。タッチモードでは、ドラッギングするための指(またはスタイラス)の接触と選択のための指の接触との間に区別がないので、指の変位は、回転操作のトリガリングをせずにカーソルでの回転マニピュレータRMのドラッギングをもたらす。
【0018】
図7は、マウスの押圧PRのようなユーザ入力が受信されたときの回転マニピュレータRMを示す。マウスの押圧を検出すると、回転マニピュレータRMが起動され、回転操作の終了までその位置がロックされる。カーソルCが指し示す交点INは、初期押圧点PPと見なされる。タッチモードでは、ユーザは3Dシーン内で回転マニピュレータRMをドラッグし、次に画面上の接触を解除し、回転マニピュレータの位置をロックするように画面上のボタンに触れてもよい。
【0019】
図8は、起動後の回転マニピュレータRMを示す。回転マニピュレータRMの位置が一旦ロックされると、マウスの変位は、固定回転マニピュレータRMに対するカーソルのドラッギングをもたらす。ユーザは、マウスを押しながら、領域(RA1、RA2、RA3)のうちの1つにカーソルを向けることができる。タッチモードでは、ユーザは、指を敏感な画面上および/またはタッチパッド上に接触させながら、カーソルを領域(RA1、RA2、RA3)の1つに向けることができる。カーソルが現在位置している領域は、視覚フィードバックによって強調表示されるので、強調表示された回転面を検証する場合に、どの回転面が選択されるかが明確に視覚化される。視覚フィードバックは、例えば、カーソルが位置していない領域の透明度のレベルの上昇(図8の領域RA1およびRA3)、および/またはカーソルが位置する領域の色の変化(図8の領域RA2)とすることができる。領域内のカーソルのコースはマスクされることが可能である。あるいは、初期押圧点PPおよびカーソルの位置によって区切られたセグメントSEが表示されることができる。次いで、区域の方向およびその長さは、区域内のカーソルの位置の関数で変化してよい。
【0020】
図9は、回転マニピュレータRM内のカーソルの代替位置を示す。ユーザは、実際にはマウスを押している間またはタッチスクリーンに接触している間にカーソルをドラッグし、別の領域、例えば領域RA1に切り替えてもよい。したがって、回転面が選択されていない限り、ユーザがある領域から別の領域に切り替えると、領域の視覚フィードバックが変化することがある。
【0021】
図10は、回転面の選択を示す。第1の実施形態によれば、カーソルが曲線部分によって規定される検証閾値に達すると、検証点VPが回転操作子RM上に生成される。曲線部分の各点は、押圧点PPに対する所定のピクセル距離を有する。画素距離は、ピクセル単位で、または長さ単位(ミリメートルなど)で表されてもよい。バリデーションポイントVPは、カーソルがある領域に対応する曲線部分に到達したときのカーソルの位置に対応する。したがって、領域の曲線部分の到達により、回転操作が有効になる。回転は、曲線部分に対応する回転面に対して3次元で直交する軸の周りに行われる。実施形態によれば、各曲線部分は、対応する領域の外形である(それぞれ領域RA1、RA2およびRA3のEXT1、EXT2およびEXT3)。あるいは、各曲線部分は、所定の半径の円の輪郭によって規定され、その中心は初期押圧点PPである。所定の半径は、ミリメートルなどのピクセル単位または長さ単位で表されてよい。回転マニピュレータRMが一旦起動されると、円が表示されてよい。検証閾値に達した後にマスクされることができる。円は3つの円弧に分割され得、各円弧は回転面に対応する。カーソルが円の円弧の1つに到達するたびに、円弧に対応する回転面が選択される。
【0022】
図11は、回転面が一旦作動されるた後の回転操作中の回転マニピュレータRMを示す。基準ベクトルRVが生成され、表示されてよい。基準ベクトルRVの原点は、初期押圧点PPである。基準ベクトルRVは、検証点PVを通過するように構成されている。基準ベクトルRVのノルムは任意である。これは、例えば、初期押圧点PPと検証点PVとの間の距離、または所定の距離とすることができる。回転面がアクティブになると、カーソルの位置に対応する現在点CPが表示される。現在点CPは次に、3Dシーン内でドラッグされ、ユーザは入力を維持する(マウス押圧またはタッチモードでの指の接触)。原点が初期押圧点PPである現在ベクトルCVが生成される。そのノルムは、初期押圧点PPと現在点CPとの間の距離である。回転角は、基準ベクトルRVと現在ベクトルCVとの間の角度から得られる。また、回転操作が有効になるとすぐに、回転角度の数値が入力されてもよい。3Dオブジェクトが時計回りに回転されると、回転角度の数値の前に負の符号が付されることが可能である。回転角は度またはラジアンで定義されてよい。例えば、回転角は、現在点CPの近くに位置してもよい。実施形態によれば、3Dオブジェクトの回転は、ユーザがカーソルをドラッグし続けていても、360°回転後に停止されることができる。したがって、ユーザはいくつかの完全な回転を行うことができなくなる。それにより、いくつかの完全な回転後に3Dオブジェクトの元の位置に戻る煩雑な操作が回避される。
【0023】
3Dオブジェクトの重心回りの回転操作は、回転角度に従って行ってもよい。第1の実施形態によれば、3Dオブジェクトの回転は、カーソルのドラッギングの間、オンザフライで実行されることができる。あるいは、回転操作の終了時に、ユーザが一旦押しボタンを放すと(またはタッチモードで接触を解除した)、回転が1つの角度に従って実行されることができる。ユーザは、現在ベクトルCVのノルムを変更するようにカーソルをドラッグして、レバレッジ効果を生成することができる。結果、カーソルが初期押圧点から離間するほど、ユーザは回転角度をより正確に制御する。
【0024】
ユーザが一旦マウスの押しボタンを放すと、または指とタッチスクリーンとの間の接触が一度なくなると、回転マニピュレータRMは、図6に示すように、初期状態に戻る。
【0025】
図12は、本発明の実施形態による方法のフローチャートであり、そのステップは、図6から図11に関連して既に説明した動作に対応する。図12のフローチャートにおいて、
ステップa)は、3Dシーン内に回転中心を有する3Dオブジェクトを画面上に表示することにある。
【0026】
ステップb)は、3Dシーン内に3つの領域RA1、RA2、RA3が互いに直交する回転マニピュレータRMを表示することにあり、回転マニピュレータRMは画面上のカーソルCに追従し、各領域RA1、RA2、RA3は回転面に対応する。
【0027】
ステップc)は、初期押圧点PP上の画面上のその位置をロックすることにより回転マニピュレータを作動することである。
【0028】
ステップd)は、カーソルCを前記面に対応する領域RA1、RA2、RA3に移動させることにより1つの回転面を選択することである。
【0029】
ステップe)は、画面上のカーソルCの変位に従って回転操作を行うことにある。
【0030】
図13は、1つの回転面を選択するステップのフローチャートである。図13のフローチャートにおいて、
ステップd1)は、カーソルCを領域RA1、RA2、RA3に向けることにある。
【0031】
ステップd2)は、カーソルCが領域A1、A2、A3に特有の検証閾値に達するか否かを決定することにある。
【0032】
ステップd3)は、対応領域に対して検証閾値を超える視覚フィードバックを提供することである。
【0033】
本発明の方法は、3Dシーン内のどこからでも回転を実行することによって、マウスまたは指の変位を最適化する。また、ユーザが回転させるオブジェクトをユーザが秘匿することも防止する。最終的に、回転角を制御するために必要なマウスまたは(指)変位を減少させ、正確さをもたらすことができる。
【0034】
本発明の方法は、コンピュータネットワークを含むことが可能な、適切にプログラムされた汎用コンピュータまたはコンピュータシステムにより、適切なプログラムを、ハードディスク、ソリッドステートディスクまたはCD-ROMなどの、コンピュータ可読媒体上に不揮発性の形態で格納し、そのマイクロプロセッサおよびメモリを使用して当該プログラムを実行することによって実施されてもよい。
【0035】
図14を参照して、本発明の例示的な実施形態による方法を実施するのに適したコンピュータを説明する。図14において、コンピュータは、RAM M1またはROM M2またはハードディスクドライブ(HDD)M3、DVD/CDドライブM4などのメモリデバイスに格納された、またはリモートに格納された実行可能プログラム、すなわちコンピュータ可読命令のセットを実行しつつ上記方法ステップを実行する中央処理装置(CPU)Pを含む。さらに、3次元オブジェクトを定義する1つまたは複数のコンピュータファイルは、1つまたは複数のメモリデバイスM1からM4に、またはリモートに格納してよい。
【0036】
請求された発明は、本発明のプロセスのコンピュータ可読命令が格納されるコンピュータ可読媒体の形態に限定されない。例えば、命令およびファイルは、CD、DVD、フラッシュメモリ、RAM、ROM、PROM、EPROM、EEPROM、ハードディスクまたはサーバやコンピュータなど、コンピュータが通信する任意の他の情報処理装置に格納されることができる。プログラムは、同じメモリデバイスまたは異なるメモリデバイスに格納されることができる。
【0037】
さらに、本発明の方法を実施するのに適したコンピュータプログラムは、CPU PおよびMicrosoft VISTA、Microsoft Windows(登録商標)8、UNIX、Solaris、LINUX、Apple MAC-OS、および当業者に知られている他のシステムなどのオペレーティングシステムと連携して実行されるユーティリティアプリケーション、バックグラウンドデーモン、またはオペレーティングシステムのコンポーネント、またはそれらの組み合わせとして提供されることができる。
【0038】
CPU Pは、米国IntelのXenonプロセッサ、または米国AMDのOpteronプロセッサとすることができ、または米国Freescale社のFreescale ColdFire、IMX、またはARMプロセッサなどの他のプロセッサタイプとすることができる。あるいは、CPUは、業者が認識するように、米国Intel社のCore2 Duoのようなプロセッサとすることができ、または当FPGA、ASIC、PLD上に、またはディスクリート論理回路を使用して実施されることができる。さらに、CPUは、上述した本発明のプロセスのコンピュータ可読命令を実行するように協働して動作する複数のプロセッサとして実施されることができる。
【0039】
図14のコンピュータはまた、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネットなどのネットワークとインタフェースするために、米国Intel社のIntel Ethernet PROネットワークインタフェースカードのようなネットワークインタフェースNIを含む。コンピュータはさらに、Hewlett Packard HPL2445w LCDモニタのようなディスプレイDYとインタフェースする米国NVIDIA社のNVIDIA GeForce GTXグラフィックスアダプタのようなディスプレイコントローラDCを含む。汎用I/OインタフェースIFは、キーボードKBおよび、ローラーボール、マウス、タッチパッドなどのポインティングデバイスPDとインタフェースする。ディスプレイ、キーボード、タッチモード用のセンシティブ面、およびポインティングデバイスは、ディスプレイコントローラおよびI/Oインタフェースと共に、入力コマンドを提供するために、例えばポインターを移動するために、ユーザにより使用され、そして3次元シーンおよびグラフィックツールを表示するためにコンピュータによって使用されるグラフィカルユーザインタフェースを形成する。
【0040】
ディスクコントローラDKCは、コンピュータのすべてのコンポーネントを相互接続するために、HDD M3とDVD/CD M4とをISA、EISA、VESA、PCIまたは同様のものなどとすることができる通信バスCBSで接続する。
【0041】
ディスプレイ、キーボード、ポインティングデバイス、ディスプレイコントローラ、ディスクコントローラ、ネットワークインタフェース、およびI/Oインタフェースの一般的な特徴および機能の説明は、これらの特徴が知られているので、簡潔にするためにここでは省略される。
【0042】
図15は、本発明の異なる例示的な実施形態による方法を実施するのに適したコンピュータシステムのブロック図である。図15において、実行可能プログラムEXPおよび3次元オブジェクトを定義するコンピュータファイルは、サーバSCに接続されたメモリデバイスに記憶される。ディスプレイコントローラ、センシティブ面、ディスプレイ、キーボードおよび/またはポインティングデバイスがサーバ内に存在しなくてもよいことを除いて、メモリデバイスおよびサーバの全体的なアーキテクチャは、図14を参照して上述したものと同じであってもよい。次に、サーバSCは、ネットワークNWを介して管理者システムADSおよびエンドユーザコンピュータEUCに接続される。管理者システムおよびエンドユーザコンピュータの全体的なアーキテクチャは、管理者システムおよびエンドユーザコンピュータのメモリデバイスが実行可能プログラムEXPおよび/または3次元オブジェクトを定義するコンピュータファイルを格納しないことを除いて、図14を参照して上述したものと同じであってもよい。しかし、エンドユーザコンピュータは、以下に説明するように、サーバの実行可能プログラムと協働するように設計されたクライアントプログラムを格納する。
【0043】
理解されるように、ネットワークNWは、インターネットなどのパブリックネットワーク、またはLANまたはWANネットワークなどのプライベートネットワーク、またはそれらの任意の組み合わせとすることができ、PSTNまたはISDNサブネットワークを含むこともできる。ネットワークNWは、Ethernet(登録商標)ネットワークのような有線であってもよく、またはEDGE、3G、および4G無線セルラーシステムを含むセルラーネットワークのような無線であってもよい。無線ネットワークは、Wi-Fi、Bluetooth、または既知の他の無線形式の通信であってもよい。したがって、ネットワークNWは単なる例示であり、決して本進歩の範囲を限定するものではない。
【0044】
エンドユーザコンピュータの記憶装置に記憶され、後者のCPUによって実行されるクライアントプログラムは、サーバSCによって記憶されかつ3次元オブジェクトを定義するファイルを含むデータベースDBに、ネットワークNWを介して、アクセスする。サーバは、上述したように処理を実行し、3Dオブジェクトを含むシーンの所望の表現に対応する画像ファイルをネットワークNWを再度使用してエンドユーザコンピュータに送信する。
【0045】
1つの管理者システムADSと1つのエンドユーザシステムEUXのみが示されているが、システムは任意の数の管理者システムおよび/またはエンドユーザシステムを制限なくサポートすることができる。同様に、本発明の範囲から逸脱することなく、複数のサーバがシステム内に実施されることもできる。
【0046】
本明細書で説明される任意の方法ステップは、特定の論理機能またはプロセス内のステップを実施するための1つまたは複数の実行可能命令を含むモジュール、セグメントまたはコード部分を表すと理解されるべきであり、代替実施は、本発明の例示的な実施形態の範囲内に含まれる。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15