(57)【要約】      （修正有）【課題】使用するのが簡単で直感的でありながら、高速な対話を提供するオブジェクトの３Ｄ操作のためのグラフィカルユーザインタ―フェースを提供する。【解決手段】コンピュータは、３次元シーンにおいて、ポインティングデバイスによって制御されるカーソルを表示するステップ（カーソルは、座標系の３つの軸（Ｘ、Ｙ、Ｚ）を表す形状を有する）、３次元シーンのオブジェクトを選択するステップ、ポインティングデバイスを使用して、ユーザによって実行された、ドラッグ操作を検出するステップ（ドラッグ操作は、カーソルの平行移動を含む）、カーソルの平行移動に応じて、座標系の軸（Ｚ）を選択するステップ及び選択されたオブジェクトの操作を実行するステップ（操作は、選択された軸及び選択された軸に沿ったカーソルの平行移動の長さに依存する）を含む。【選択図】図４
2018106715.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータディスプレイ上に表示された３次元シーン（３ＤＳ）において、少なくとも１つの３次元モデリングされたオブジェクト（Ｏ１、Ｎ１）を操作するためのコンピュータ実施方法であって、
ａ）前記３次元シーンにおいて、ポインティングデバイス（ＰＤ）によって制御されるカーソル（Ｃ）を表示するステップであって、前記カーソルは、座標系の３つの軸（Ｘ、Ｙ、Ｚ）を表す形状を有する、ステップと、
ｂ）前記３次元シーンのオブジェクト（Ｏ１、Ｎ１）を選択するステップと、
ｃ）前記ポインティングデバイスを使用して、ユーザによって実行されたドラッグ操作を検出するステップであって、前記ドラッグ操作は、前記カーソルの平行移動を含む、ステップ、および前記カーソルの前記平行移動に応じて、前記座標系の軸（Ｚ）を選択するステップと、
ｄ）前記選択されたオブジェクトの操作を実行するステップであって、前記操作は、前記選択された軸、および前記選択された軸に沿った前記カーソルの前記平行移動（ＰＰ）の長さ（Ｌ）に依存する、ステップと
を含むコンピュータ実施方法。
【請求項２】
ステップｃ）は、前記カーソルの前記平行移動（ＤＰ）の先頭部線分（ＩＳ）に最も近い方向を有する前記座標系の軸を選択するステップを含む請求項１に記載のコンピュータ実施方法。
【請求項３】
前記先頭部線分の後、前記カーソルの前記平行移動は、前記選択された軸に沿ってのみ実行される請求項２に記載のコンピュータ実施方法。
【請求項４】
ステップｂ）は、前記カーソルに最も近い前記３次元シーンの前記オブジェクトを自動的に選択するステップを含む請求項１乃至３のいずれかに記載のコンピュータ実施方法。
【請求項５】
ステップｂ）は、前記ユーザからのコマンドに従って、前記３次元シーンのオブジェクトを選択するステップを含む請求項１乃至３のいずれかに記載のコンピュータ実施方法。
【請求項６】
ステップｄ）において実行される前記操作は、
−  前記選択された軸に沿った前記カーソルの前記平行移動の前記長さに比例した距離だけ、前記選択された軸に沿った前記選択されたオブジェクトの平行移動、
−  前記選択された軸に沿った前記カーソルの前記平行移動の前記長さに比例した角度だけ、前記選択された軸の周りの前記選択されたオブジェクトの回転、および
−  前記選択された軸に沿った前記カーソルの前記平行移動の前記長さに比例した距離だけ、前記選択された軸に沿った前記選択されたオブジェクトのアフィン変換
を含むグループの中から選択される請求項１乃至５のいずれかに記載のコンピュータ実施方法。
【請求項７】
前記座標系は、前記シーンのビューポイントに依存した向きを有するデカルト座標系である請求項１乃至６のいずれかに記載のコンピュータ実施方法。
【請求項８】
前記座標系は、前記３次元シーン内に表示された操作ツール（ＲＴ）によって決定された向きを有するデカルト座標系である請求項１乃至６のいずれかに記載のコンピュータ実施方法。
【請求項９】
ステップｃ）は、前記カーソルの前記形状を、それが前記選択された軸だけを表すように、変化させるステップをさらに含む請求項１乃至８のいずれかに記載のコンピュータ実施方法。
【請求項１０】
前記選択されたオブジェクトは、メッシュ（ＭＨ）のノード（Ｎ１）である請求項１乃至９のいずれかに記載のコンピュータ実施方法。
【請求項１１】
非一時的コンピュータ可読データ記憶媒体（Ｍ１〜Ｍ４）上に記憶され、コンピュータシステムに、請求項１乃至１０のいずれかに記載の方法を実施させるコンピュータ実行可能命令を含むコンピュータプログラム製品。
【請求項１２】
コンピュータシステムに、請求項１乃至１０のいずれかに記載の方法を実施させるコンピュータ実行可能命令（ＥＸＰ）を含む非一時的コンピュータ可読データ記憶媒体（Ｍ１〜Ｍ４）。
【請求項１３】
メモリ（Ｍ１〜Ｍ４）およびグラフィカルユーザインターフェース（ＫＢ、ＰＤ、ＤＣ、ＤＹ）に結合されたプロセッサ（Ｐ）を備えるコンピュータシステムであって、前記メモリは、前記コンピュータシステムに、請求項１乃至１０のいずれかに記載の方法を実施させるコンピュータ実行可能命令（ＥＸＰ）を格納する、コンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータディスプレイ上に表示された３次元シーン内のオブジェクトを操作するためのコンピュータ実施方法に関する。それは、コンピュータグラフィックス、オーサリング、コンピュータ支援設計（ＣＡＤ）、コンピュータ支援エンジニアリング（ＣＡＥ）、およびコンピュータ支援製造（ＣＡＭ）の分野に関しており、デジタルモデリングされたオブジェクトが３次元シーン内において操作（平行移動、回転、サイズ変更・・・）されなければならないすべての状況に適用される。
【背景技術】
【０００２】
３次元モデリングは、３次元シーンの要素（オブジェクト）を、例えば、それらをシーン内において選択、拡大縮小、平行移動、回転することなどによって、操作する能力を必要とする。
【０００３】
３次元モデリングの初期には、これらのすべての変換は、パラメータによるものであり、すなわち、例えばキーボードを用いて、ユーザによって入力された数値入力によって定義されていた。この手法は、遅く、面倒で、明らかに直感的ではない。
【０００４】
すぐに研究者たちは、マウス、ジョイスティック、タッチパッドなどのポインティングデバイスを使用して、オブジェクトを操作するためのパラメータによらないユーザインターフェース（ＵＩ）を考案し始めた。しかしながら、そのようなポインティングデバイスは本質的に、２次元であり、例えば、マウスカーソルは、２次元のみで動かすことができ、したがって、３次元操作を定義するために直接使用することができない。この制限を克服するために、オブジェクトを操作するための初期のパラメータによらない方法は、いくつかのステップを、典型的にはオブジェクトの１または複数の点の選択と、それから上記点に適用されるアクションの選択とを含んでいた。この手法、それは「非没入型」と呼ばれることができる、は、点の選択、およびアクションの選択が、遅く面倒な操作であるので、依然として不満足なものである。３次元においてオブジェクトを操作するための初期の非没入型ユーザインターフェースの例は、非特許文献１、および非特許文献２によって説明されている。
【０００５】
３次元における３次元オブジェクトの操作を簡素化し、より直感的にするために、その後、「没入型」グラフィカルユーザインターフェース（ＧＵＩ）が導入された。それらは、３次元シーンに導入されて、選択されたオブジェクトのより直接的な操作を可能にする、例えば、「インタラクタ」または「操作ツール」と呼ばれる−グラフィカルツールに依存する。
【０００６】
没入型ＧＵＩの初期の例は、非特許文献３において説明されている。
【０００７】
このＧＵＩは、選択されたオブジェクトの周りに定義された、ハンドルを有する境界ボックスに基づいている。ハンドルに対する行為が、オブジェクトの操作を可能にする。
【０００８】
別の知られたインタラクタは、Ｄａｓｓａｕｌｔ  Ｓｙｓｔｅｍｅｓによって使用されたいわゆる「ロボット」であり、特許文献１において説明されている。「ロボット」は、異なる要素から構成され、各々は、異なる変形に関連付けられる。より具体的には、それは、各々が平行移動を表す３つの軸と、各々が回転を表す３つの弧と、それぞれの平面内における２Ｄ平行移動を表す３つの平面図形とを含む。「ロボット」は、操作されるオブジェクトに取り付けられ、次にオブジェクトの変換がインタラクタのそれぞれの要素上においてクリックを行うことによってトリガされる。
【０００９】
没入型ＧＵＩのまた別の例が、特許文献１によって提供されており、それは、３つの直角に交わる線分の形状を有するインタラクタであって、各々が、両端に球を有するデカルト軸を定義し、さらなる球が、インタラクタの中心に配置される、インタラクタを開示している。ユーザは、例えばマウスによって制御されるカーソルを用いて、球をドラッグすることによって、球と対話する。中心の球をドラッグすることは、インタラクタが取り付けられているオブジェクトの平行移動を可能にする。他の任意の球を対応する線分の方向にドラッグすることは、線分の方向における拡大縮小を定義する。中心のもの以外の球を対応する線分の方向に対して直角の方向にドラッグすることは、回転を定義する。
【００１０】
没入型ＵＩは、非没入型のものよりもはるかに直感的である。それにもかかわらず、それらは、以下の著しい難点も有する。  
−  インタラクタは、操作されるオブジェクトの視覚的遮蔽を引き起こすことが多い。
−  インタラクタの使用は、複雑なことがある。
−  ユーザは、インタラクタの特定の部分を選択する必要があり、それは、時間がかかり、インタラクタが小さい場合（それは視覚的遮蔽を最低限に抑えるために必要とされることがある）、難しいことがある。
【００１１】
完全に異なる手法は、３Ｄ変換を直接的に定義するために、３Ｄ入力デバイス、例えば３Ｄマウスを使用することにある。しかしながら、この手法は、高価になりがちで、広く普及していない特定のハードウェアに依存しているので、あまり柔軟ではない。マルチボタンマウスが、単純な３Ｄ入力デバイスを構成してよいが、その使用は、あまり直感的ではなく、トレーニングを必要とする。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】欧州特許第０８２４２４７号明細書
【非特許文献】
【００１３】
【非特許文献１】Ｅｒｉｃ  Ａ．  Ｂｉｅｒ  “Ｓｋｉｔｔｅｒｓ  ａｎｄ  ｊａｃｋｓ：  ｉｎｔｅｒａｃｔｉｖｅ  ３Ｄ  ｐｏｓｉｔｉｏｎｉｎｇ  ｔｏｏｌｓ”，  ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  １９８６  Ｗｏｒｋｓｈｏｐ  ｏｎ  Ｉｎｔｅｒａｃｔｉｖｅ  ３Ｄ  Ｇｒａｐｈｉｃｓ，  ｐａｇｅｓ  １８３−  １９６．  ＡＣＭ：  Ｎｅｗ  Ｙｏｒｋ，  Ｏｃｔｏｂｅｒ  １９８６
【非特許文献２】Ｅｒｉｃ  Ａ．  Ｂｉｅｒ  “Ｓｎａｐ−ｄｒａｇｇｉｎｇ：  Ｉｎｔｅｒａｃｔｉｖｅ  ｇｅｏｍｅｔｒｉｃ  ｄｅｓｉｇｎ  ｉｎ  ｔｗｏ  ａｎｄ  ｔｈｒｅｅ  ｄｉｍｅｎｓｉｏｎｓ”  Ｒｅｐｏｒｔ．  Ｕｎｉｖｅｒｓｉｔｙ  ｏｆ  Ｃａｌｉｆｏｒｎｉａ，  Ｂｅｒｋｅｌｅｙ．  Ｃｏｍｐｕｔｅｒ  Ｓｃｉｅｎｃｅ  Ｄｉｖｉｓｉｏｎ  １９８８
【非特許文献３】Ｓｔｅｐｈａｎｉｅ  Ｈｏｕｄｅ，  “Ｉｔｅｒａｔｉｖｅ  ｄｅｓｉｇｎ  ｏｆ  ａｎ  ｉｎｔｅｒｆａｃｅ  ｆｏｒ  ｅａｓｙ  ３−Ｄ  ｄｉｒｅｃｔ  ｍａｎｉｐｕｌａｔｉｏｎ”，  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ＳＩＧＣＨＩ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｈｕｍａｎ  Ｆａｃｔｏｒｓ  ｉｎ  Ｃｏｍｐｕｔｉｎｇ  Ｓｙｓｔｅｍｓ，  ｐ．１３５−１４２，  Ｍａｙ  ０３−０７，  １９９２，  Ｍｏｎｔｅｒｅｙ，  Ｃａｌｉｆｏｒｎｉａ，  ＵＳＡ
【発明の概要】
【００１４】
本発明は、先行技術の難点を克服することを目標とする。より具体的には、それは、困難が引き起こされることを最低限にし、使用するのが簡単で直感的でありながら、高速な対話を提供するオブジェクトの３Ｄ操作のためのグラフィカルユーザインターフェースを提供することを目標とする。
【００１５】
これらの目標を達成することを可能にする本発明の目的は、コンピュータディスプレイ上に表示された３次元シーン内の少なくとも１つの３次元モデリングされたオブジェクトを操作するためのコンピュータ実施方法であり、方法は、
ａ）３次元シーンにおいて、ポインティングデバイスによって制御されるカーソルを表示するステップであって、カーソルは、座標系の３つの軸を表す形状を有する、ステップと、
ｂ）３次元シーンのオブジェクトを選択するステップと、
ｃ）前記ポインティングデバイスを使用して、ユーザによって実行された、ドラッグ操作を検出するステップであって、前記ドラッグ操作は、カーソルの平行移動を含む、ステップ、およびカーソルの前記平行移動に応じて、座標系の軸を選択するステップと、
ｄ）選択されたオブジェクトの操作を実行するステップであって、前記操作は、選択された軸、および選択された軸に沿ったカーソルの平行移動の長さに依存する、ステップと
を含む。
【００１６】
本発明の特定の実施形態によれば、
−  ステップｃ）は、カーソルの前記平行移動の先頭部線分に最も近い方向を有する座標系の軸を選択するステップを含んでよい。  
−  前記先頭部線分の後、カーソルの平行移動は好ましくは、選択された軸に沿ってのみ実行される。  
−  ステップｂ）は、カーソルに最も近い３次元シーンのオブジェクトを自動的に選択するステップを含んでよい。あるいは、ステップｂ）は、ユーザからのコマンドに従って、３次元シーンのオブジェクトを選択するステップを含んでよい。  
−  ステップｄ）において実行される操作は、選択された軸に沿ったカーソルの平行移動の長さに比例した距離だけ、選択された軸に沿った選択されたオブジェクトの平行移動、選択された軸に沿ったカーソルの平行移動の長さに比例した角度だけ、選択された軸の周りの選択されたオブジェクトの回転、および選択された軸に沿ったカーソルの平行移動の長さに比例した距離だけ、選択された軸に沿った選択されたオブジェクトのアフィン変換を含むグループの中から選択されてよい。  
−  座標系は、シーンのビューポイントに依存した向きを有するデカルト座標系であってよい。あるいは、座標系は、３次元シーン内に表示された操作ツールによって決定された向きを有するデカルト座標系であってよい。  
−  ステップｃ）は、カーソルの形状を、それが選択された軸だけを表すように、変化させるステップをさらに含んでよい。  
−  選択されたオブジェクトは、メッシュのノードであってよい。
【００１７】
本発明の別の目的は、非一時的コンピュータ可読データ記憶媒体上に記憶され、コンピュータシステムにそのような方法を実施させるコンピュータ実行可能命令を含むコンピュータプログラム製品である。
【００１８】
本発明のさらなる目的は、コンピュータシステムにそのような方法を実施させるコンピュータ実行可能命令を含む非一時的コンピュータ可読データ記憶媒体である。
【００１９】
本発明のまた別の目的は、メモリおよびグラフィカルユーザインターフェースに結合されたプロセッサを備えるコンピュータシステムであり、メモリは、コンピュータシステムに、そのような方法を実施させるコンピュータ実行可能命令を格納する。
【図面の簡単な説明】
【００２０】
本発明のさらなる特徴および利点は、添付の図面と併せて解釈される以下の説明から明らかになる。
【図１】本発明の方法において使用されるカーソルの可能な形状を示す図である。
【図２Ａ】本発明の異なる実施形態に従って操作されるオブジェクトの「明示的」選択を示す図である。
【図２Ｂ】本発明の異なる実施形態に従って操作されるオブジェクトの「暗黙的」選択を示す図である。
【図３Ａ】本発明の実施形態によるドラッグ操作を示す図である。
【図３Ｂ】本発明の実施形態によるドラッグ操作を示す図である。
【図４】本発明の実施形態による方法のフローチャートである。
【図５Ａ】「暗黙的」オブジェクト選択を実施する本発明の実施形態の、３次元グリッドの変形に対する適用を示す図である。
【図５Ｂ】「暗黙的」オブジェクト選択を実施する本発明の実施形態の、３次元グリッドの変形に対する適用を示す図である。
【図６】「明示的」オブジェクト選択を実施する本発明の異なる実施形態の、３次元グリッドの変形に対する適用を示す図である。
【図７】本発明の異なる実施形態による方法を実施するのに適したコンピュータシステムのブロック図である。
【図８】本発明の異なる実施形態による方法を実施するのに適したコンピュータシステムのブロック図である。
【発明を実施するための形態】
【００２１】
以下において、「３次元」（または「３Ｄ」）モデリングされたオブジェクトは、３次元（３Ｄ）グラフィカル表現を可能にするオブジェクト、より正確には、コンピュータシステム内におけるそのデジタル表現である。３Ｄ表現は、すべての角度（ビューポイント）からパーツを見ることを可能にする。例えば、３Ｄモデリングされたオブジェクトは、３Ｄ表現されたとき、表現が表示された画面内において扱われてよく、その軸のいずれかの周り、または任意の軸の周りで回転させられてよい。３次元シーンは、３Ｄ空間内に配置された複数の３Ｄモデリングされたオブジェクトによって構成される。
【００２２】
本発明の基礎にあるアイデアは、その形状がインタラクタとして適切に変更されたカーソル自体を使用することである。これは、インタラクタをオブジェクトに関連付け、次に変換を選択するためにインタラクタの要素上においてクリックするという時間のかかる操作を排除する。さらに、いずれのケースにおいても必然的に存在するカーソルによって引き起こされる小さいものを除いて、視覚的妨害が存在しない。
【００２３】
図１は、３つの同一平面内にない軸Ｘ、Ｙ、Ｚをシンボリカルに表した形状を有する本発明の実施形態による可能なカーソル／インタラクタＣを示している。都合のよいことに、これらの軸は、相互に直交しており、デカルト座標系を形成する。それらは、向きがビューポイントとともに変化するシーンの「内在的」座標系に対応してもよく、またはそれは、後で説明されるように、それに関して自由な向きを向いていてよい。「通常の」カーソルの、本発明によるカーソル／インタラクタへの変換は、例えばキーボードを使用して入力されたコマンドによって、またはメニューから項目を選択することによってトリガされてよい。
【００２４】
カーソルＣは、シーン上に配置され、適切なポインティングデバイス、例えばマウスを使用して動かされる。カーソルが普通そうであるように、それは、シーンのオブジェクトを選択するために使用されてよい。選択は、明示的または暗黙的のいずれかでよい。明示的な選択は、例えばカーソルをシーンのオブジェクト上に位置付け、例えばマウスボタンを使用して、その上でクリックすることによって実行される。通常、選択されたオブジェクトは強調表示され、カーソルが他に移動したときでさえも、例えばカーソルがその上にないときに再びクリックすることによってそれが選択解除されるまでは、それは、選択されたままである。図２においては、例えば、シーン３ＤＳのオブジェクトＯ１が選択されており、カーソルＣがもはやその上に位置していない場合でさえも、そのままである。しかしながら、本発明の好ましい実施形態によれば、選択も暗黙的であってよい。これは、シーンのオブジェクトが明示的に選択されなかったとき、フォーカスが、カーソルに最も近いオブジェクト上にあることを意味する。例えば、図２Ａの状況から始めて、オブジェクトＯ１が選択解除された場合、次にオブジェクトＯ２が暗黙的に選択される（図２Ｂ）。暗黙的な選択は、カーソルが別のオブジェクトに近づくと直ちに、それは失われるので、一過的な感がある。
【００２５】
明示的または暗黙的に選択されたオブジェクトは、単にカーソルを用いて「ドラッグ」を実行することによって操作されてよい。「ドラッグ」は、異なる特定のアクションが入力デバイスを使用して実行されている間に実行されるカーソルを平行移動することにあり、このアクションは典型的には、カーソルを制御するために使用されるマウス、タッチパッド、またはジョイスティックのボタンの押下である。図３Ａは、ドラッグ操作中のカーソルＣの平行移動を示している。一般に、（例えば、マウスパッド上を動くマウスの軌跡に対応する）ドラッグ操作によって定義される経路ＤＰは、完全には直線的ではないが、しかしながら、例えば、数ミリメートル、例えば５ｍｍ延びる、経路の先頭部線分ＩＳは、近似的に直線であると見なされ得る。本発明の実施形態によれば、経路の先頭部線分は、カーソルの動きの初期方向を識別するために使用される。次に、その方向が動きの初期方向に最も近いカーソルによって表される座標系の軸が選択される。図３Ａの例においては、経路の先頭部線分ＩＳは、カーソルのＸ軸にほぼ沿った向きを向いており、したがって、この軸が選択され、変換の軸を構成する。都合のよいことに、画面上に表示されたカーソルは、ドラッグによって定義された経路ＤＰではなく、図３Ｂに示されるように、選択された軸へのそれの射影ＰＰを辿る。これは、必須ではないが、ユーザが、どの軸が選択されたかを理解する助けとなる。任意選択で、カーソルの形状も、選択された軸を明瞭に識別するために、変化してよい（下記参照、図５Ｂ）。
【００２６】
変換は、選択された軸によって、および経路ＰＰの長さＬに対応する数値、すなわち、選択された軸の方向におけるカーソルの変位の数値によって定義される。変換のタイプは、あらかじめ決定されており、ユーザによって選択されることができない。すなわち、本発明のカーソル／インタラクタは、単一のあらかじめ決定された種類の操作、例えば、選択された軸に沿った平行移動、または上記軸の方向におけるアフィン変換（再拡大再縮小）、またはその周りの回転を実行することだけが可能である。したがって、それは、例えば、いくつかの異なる種類の操作を実行することを可能にする特許文献１の「ロボット」よりも柔軟性が低い。しかしながら、いくつかの用途においては、単一の種類の操作は、意味があり、その場合、本発明のＧＵＩは、完全に適している。他のいくつかの用途においては、一種類の操作（多くは平行移動）が飛び抜けて頻繁に使用され、これらの場合、本発明のＧＵＩをデフォルトで使用し、必要とされたときに「汎用的な」もの（例えば、「ロボット」）に切り換えることが可能である。切り換えは、例えばマウスを使用した右ボタンのクリックを実行して、メニューを出現させ、次にメニューの適切な項目を選択することによって実行されてよい。
【００２７】
それが使用されることができる場合、本発明のＧＵＩは、先行技術によるよりもかなり速くかつより容易に、オブジェクトを操作することが可能である。特に、暗黙的な選択が使用されるとき、操作されるオブジェクト上におけるクリックは必要ではなく、カーソルをその近くに位置付けることで十分である。さらに、インタラクタ上においてクリックを行って、操作軸を選択することは必要ではない。簡単な「ジェスチャ」（ドラッグ操作）で十分である。
【００２８】
また、カーソルは、シーンに重ね合わされるだけで、その位置は重大ではないので、最低限の視覚的妨害だけが存在する。
【００２９】
図４は、本発明の方法のフローチャートである。最初に、（ｉ）において、操作されることができるオブジェクトを含む３次元シーンが画面上に表示される。次に、図１のものなど、変更されたカーソルＣがシーン上に重ね合わされる（ｉｉ）。ユーザがドラッグ操作を開始したとき（ｉｉｉ）、コンピュータシステムは、シーンの選択されたオブジェクトを探す。オブジェクトは、従来の方法で、カーソルを使用して明示的に選択されてよく、さもなければ、カーソルに最も近いオブジェクトが、暗黙的に選択されたと見なされる（ｉｖ）。次に、初期ドラッグ方向が検出され、この方向に最も近い（すなわち、それと成す角度が最も小さい）カーソルの軸が、識別される（ｖ）。次に、識別された軸に沿った、その軸に沿ったカーソルの平行移動の長さに比例した大きさを有する操作が実行される（ｖｉ）。
【００３０】
本発明の方法の特定の用途は、例えば、サーフェスの形状を自由に定義するために、メッシュのノードを動かすことにある。ノードは、点であるので、それらの平行移動自由度だけが意味を持ち、したがって、本発明のＧＵＩは、それらに対するすべての可能な操作を実行することができる。
【００３１】
図５Ａは、エッジによって接続された複数のノードＮ１、Ｎ２、Ｎ３．．．を含むメッシュＭＨを示している。暗黙的に選択されたノードＮ１は、強調表示されている。本質的にカーソルの「Ｚ」軸に沿った初期方向を有するドラッグ操作が実行される。この初期方向が検出され、結果として、
−  カーソルは、排他的にその方向に沿って動き、
−  選択されたノードＮ１は、これと同じ方向に沿って、カーソルの平行移動の長さに比例した量だけ変位させられ、それが、今度はメッシュを変形させる（図５Ｂ）。
【００３２】
図５Ａおよび図５Ｂの実施形態においては、選択されている軸についてユーザに通知するために、ドラッグ操作中、カーソルの形状が変化する。より具体的には、図５Ｂに見られるように、ドラッグ操作中、カーソルは、選択された軸Ｚだけを表示する。
【００３３】
今までは、カーソルの軸の向きが、固定されていることが仮定されていた。必ずしもそうである必要はない。例えば、図６は、ユーザが「ロボット」インタラクタＲＴを出現させ、それをメッシュの明示的に選択されたノードＮ１に関連付けることが可能な実施形態を示している。カーソルＣの軸は、「ロボット」のそれらに結び付けられ、したがって、シーンに関して自由な向きに向けられることができる。ノードＮ１が明示的に選択されたので、残りのノード（Ｎ２、Ｎ３、Ｎ４．．．）は、カーソルの位置によって影響されない。
【００３４】
本発明の方法はおそらくは、コンピュータネットワークを含み、ハードディスク、ソリッドステートディスク、またはＣＤ−ＲＯＭなどのコンピュータ可読媒体上に不揮発性形式で適切なプログラムを記憶し、そのプログラムをマイクロプロセッサおよびメモリを使用して実行する適切にプログラムされた汎用コンピュータまたはコンピュータシステムによって実行されることができる。
【００３５】
本発明の例示的な実施形態に従った方法を実施するのに適したコンピュータ−より詳細には、コンピュータ支援設計システムまたはステーション−が、図７を参照して説明される。図７においては、コンピュータは、上述したプロセスを実行する中央処理装置ＣＰＵを含む。プロセスは、実行可能プログラム、すなわち、コンピュータ可読命令のセットとして、ＲＡＭ  Ｍ１もしくはＲＯＭ  Ｍ２などのメモリ内に、またはハードディスクドライブ（ＨＤＤ）Ｍ３、ＤＶＤ／ＣＤドライブＭ４上に、またはリモートに記憶されることができる。さらに、複数のオブジェクトを含む３次元シーンを定義する１または複数のコンピュータファイルも、１もしくは複数のメモリデバイスＭ１からＭ４上に、またはリモートに記憶されてよい。
【００３６】
特許請求される本発明は、本発明のプロセスのコンピュータ可読命令および／またはデジタルファイルが記憶されるコンピュータ可読媒体の形態によって限定されない。例えば、命令およびファイルは、ＣＤ、ＤＶＤ上に、フラッシュメモリ、ＲＡＭ、ＲＯＭ、ＰＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、ハードディスク、またはサーバもしくはコンピュータなど、コンピュータ支援設計もしくはイラストレーションオーサリングステーションが通信する他の任意の情報処理デバイス内に記憶されることができる。プログラムおよびファイルは、同じメモリデバイス上に、または異なるメモリデバイス上に記憶されることができる。
【００３７】
さらに、本発明の方法を実施するのに適したコンピュータプログラムは、ＣＰＵ８００、ならびにＭｉｃｒｏｓｏｆｔ  ＶＩＳＴＡ、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ  ８または１０、ＵＮＩＸ、Ｓｏｌａｒｉｓ、ＬＩＮＵＸ、Ａｐｐｌｅ  ＭＡＣ−ＯＳ、および当業者に知られた他のシステムなどのオペレーティングシステムと連携して動作する、ユーティリティアプリケーション、バックグラウンドデーモン、もしくはオペレーティングシステムのコンポーネント、またはそれらの組み合わせとして提供されることができる。
【００３８】
中央処理装置ＣＰＵは、米国のＩｎｔｅｌ製のＸｅｎｏｎプロセッサ、もしくは米国のＡＭＤ製のＯｐｔｅｒｏｎプロセッサとすることができ、または米国のＦｒｅｅｓｃａｌｅ  Ｃｏｒｐｏｒａｔｉｏｎ製のＦｒｅｅｓｃａｌｅ  ＣｏｌｄＦｉｒｅ、ＩＭＸ、もしくはＡＲＭプロセッサなどの他のプロセッサタイプとすることができる。あるいは、中央処理装置は、米国のＩｎｔｅｌ  Ｃｏｒｐｏｒａｔｉｏｎ製のＳｋｙｌａｋｅなどのプロセッサとすることができ、または当業者が認識するように、ＦＰＧＡ、ＡＳＩＣ、ＰＬＤ上に、もしくは個別論理回路を使用して実施されることができる。さらに、中央処理装置は、上で説明された本発明のプロセスのコンピュータ可読命令を実行するために協働して作業する、複数のプロセッサとして実施されることができる。
【００３９】
図７におけるコンピュータ支援設計ステーションは、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、およびインターネットなどのネットワークとインターフェースを取るための、米国のＩｎｔｅｌ  Ｃｏｒｐｏｒａｔｉｏｎ製のＩｎｔｅｌ  Ｅｔｈｅｒｎｅｔ  ＰＲＯネットワークインターフェースカードなどのネットワークインターフェースＮＩも含む。コンピュータ支援設計ステーションは、Ｈｅｗｌｅｔｔ  Ｐａｃｋａｒｄ  ＨＰＬ２４４５ｗ  ＬＣＤモニタなどのディスプレイＤＹとインターフェースを取るための、米国のＮＶＩＤＩＡ  Ｃｏｒｐｏｒａｔｉｏｎ製のＮＶＩＤＩＡ  ＧｅＦｏｒｃｅ  ＧＴＸグラフィックスアダプタなどのディスプレイコントローラＤＣをさらに含む。汎用Ｉ／ＯインターフェースＩＦは、キーボードＫＢ、ならびにローラボール、マウス、およびタッチパッドなどのポインティングデバイスＰＤとインターフェースを取る。ディスプレイ、キーボード、およびポインティングデバイスは、ディスプレイコントローラおよびＩ／Ｏインターフェースと一緒に、ユーザが、３次元シーンを表示するために、コンピュータ支援設計ステーションによって、入力コマンドを提供すること−例えば、カーソルを動かすこと−を可能にする。
【００４０】
ディスクコントローラＤＫＣは、ＨＤＤ  Ｍ３およびＤＶＤ／ＣＤ  Ｍ４を、通信バスＣＢＳと接続し、通信バスＣＢＳは、コンピュータ支援設計ステーションのコンポーネントのすべてを相互接続するための、ＩＳＡ、ＥＩＳＡ、ＶＥＳＡ、またはＰＣＩなどとすることができる。
【００４１】
ディスプレイ、キーボード、ポインティングデバイス、ならびにディスプレイコントローラ、ディスクコントローラ、ネットワークインターフェース、およびＩ／Ｏインターフェースの一般的な特徴および機能性についての説明は、これらの特徴は知られているので、簡潔にするために、本明細書においては省略される。
【００４２】
図８は、本発明の異なる例示的な実施形態に従った方法を実施するのに適したコンピュータシステムのブロック図である。
【００４３】
図８においては、実行可能プログラムＥＸＰ、および３次元を定義するコンピュータファイルは、サーバＳＣに接続されたメモリデバイス上に格納される。メモリデバイス、およびサーバの全体的なアーキテクチャは、ディスプレイコントローラ、ディスプレイ、キーボード、および／またはポインティングデバイスが、サーバにはなくてよいことを除いて、図７を参照して上で説明されたものと同じであってよい。
【００４４】
サーバＳＣは、その場合、ネットワークＮＷを介して、アドミニストレータシステムＡＤＳおよびエンドユーザコンピュータＥＵＣに接続される。
【００４５】
アドミニストレータシステムおよびエンドユーザコンピュータの全体的なアーキテクチャは、アドミニストレータシステムおよびエンドユーザコンピュータのメモリデバイスが、実行可能プログラムＥＸＰ、および／または３次元シーンを定義するコンピュータファイルを記憶しないことを除いて、図７を参照して上で説明されたものと同じであってよい。しかしながら、エンドユーザコンピュータは、以下で説明されるように、サーバの実行可能プログラムと協働するように設計されたクライアントプログラムを記憶する。
【００４６】
理解されることができるように、ネットワークＮＷは、インターネットなどのパブリックネットワーク、またはＬＡＮもしくはＷＡＮネットワークなどのプライベートネットワーク、またはそれらの任意の組み合わせとすることができ、ＰＳＴＮまたはＩＳＤＮサブネットワークも含むことができる。ネットワークＮＷは、Ｅｔｈｅｒｎｅｔネットワークなどの有線とすることもでき、またはＥＤＧＥ、３Ｇおよび４Ｇ無線セルラシステムを含む、セルラネットワークなどの無線とすることができる。無線ネットワークは、Ｗｉ−Ｆｉ、Ｂｌｕｅｔｏｏｔｈ、または知られた他の任意の無線形態の通信とすることもできる。したがって、ネットワークＮＷは、例示的であるにすぎず、本進歩の範囲を決して限定しない。
【００４７】
エンドユーザコンピュータのメモリデバイス内に記憶され、エンドユーザコンピュータのＣＰＵによって実行されるクライアントプログラムは、サーバＳＣによって記憶され、３次元シーンまたはそれの要素を定義するファイルを格納したデータベースＤＢに、ネットワークＮＷを介してアクセスする。これは、エンドユーザが、例えば、シーンの１または複数のオブジェクトを操作することによって、そのようなファイルをオープンし、おそらくは変更することを可能にする。サーバは、上で説明されたような処理を実行し、シーンの所望の表現に対応する画像ファイルを、やはりネットワークＮＷを使用して、エンドユーザコンピュータに送信する。
【００４８】
ただ１つのアドミニストレーションシステムＡＤＳおよび１つのエンドユーザシステムＥＵＸしか、示されていないが、システムは、制限なしに、任意の数のアドミニストレーションシステムＡＤＳおよび／またはエンドユーザシステムをサポートすることができる。同様に、本発明の範囲から逸脱することなく、複数のサーバが、システム内において実施されることもできる。
【００４９】
本明細書において説明されたいずれのプロセスも、プロセス内の特定の論理機能またはステップを実施するための１または複数の実行可能命令を含む、モジュール、セグメント、またはコードの一部を表すと理解されるべきであり、代替的な実施は、本発明の例示的な実施形態の範囲内に含まれる。
【図１】
2018106715.tif 000003
【図２Ａ】
2018106715.tif 000004
【図２Ｂ】
2018106715.tif 000005
【図３Ａ】
2018106715.tif 000006
【図３Ｂ】
2018106715.tif 000007
【図４】
2018106715.tif 000008
【図５Ａ】
2018106715.tif 000009
【図５Ｂ】
2018106715.tif 000010
【図６】
2018106715.tif 000011
【図７】
2018106715.tif 000012
【図８】
2018106715.tif 000013
【外国語明細書】
2018106715000001.pdf