(57)【要約】【課題】  表示されたカーソル、または他のナビゲーションコントロールが、異なる解像度においてなど、異なるモードで制御されることを可能にするポインティングデバイス、およびそのポインティングデバイスの使用方法を提供する。【解決手段】  ポインティングデバイスは、第１のポインティング要素および第２のポインティング要素を含むことが可能である。第１のポインティング要素と第２のポインティング要素は、それぞれの独自のナビゲーションモードを使用して、同一のナビゲーションコントロールを独立して制御することができる。ポインティングデバイスは、さらに、または代替として、ナビゲーションモード間で切り替えを行う切り替え機能を有することも可能である。このようにして、単一のポインティング要素を使用して、様々なナビゲーションモードに従ってナビゲーションコントロールを制御することができる。【選択図】  図１５
2005243021.tif 000002
【特許請求の範囲】
【請求項１】
ディスプレイを有するコンピュータ上で実行されるナビゲーションソフトウェアと通信するように構成されたポインティングデバイスであって、
物理的入力を感知するように構成されたセンサであって、前記ポインティングデバイスが、前記物理的入力に従って前記ディスプレイ上でナビゲーションコントロールを動かすように前記ナビゲーションソフトウェアに要求するように構成されている、センサと、
第１の状態および第２の状態を有するセレクタであって、前記ポインティングデバイスが、前記セレクタの状態に応じて第１のナビゲーションモードまたは第２のナビゲーションモードに従って前記ナビゲーションコントロールを動かすように前記ナビゲーションソフトウェアに要求するように構成されている、セレクタと
を備えたことを特徴とするポインティングデバイス。
【請求項２】
請求項１に記載のポインティングデバイスと、
前記ナビゲーションソフトウェアを表すコンピュータ実行可能命令を格納するコンピュータ読み取り可能な記録媒体と
を備えたことを特徴とするキット。
【請求項３】
前記ナビゲーションソフトウェアは、第１のナビゲーションエンジンおよび第２のナビゲーションエンジンを含み、前記第１のナビゲーションモードは、前記第１のナビゲーションエンジンを利用し、前記第２のナビゲーションモードは、前記第２のナビゲーションエンジンを利用することを特徴とする請求項２に記載のキット。
【請求項４】
前記セレクタに加え、左クリックボタンと右クリックボタンをさらに含むことを特徴とする請求項１に記載のポインティングデバイス。
【請求項５】
前記セレクタは、前記第１の状態と前記第２の状態の異なる１つをそれぞれが表す複数の異なる物理的位置を有することを特徴とする請求項１に記載のポインティングデバイス。
【請求項６】
前記セレクタは、ポインティングデバイスの角度を感知するように構成された角度センサであることを特徴とする請求項１に記載のポインティングデバイス。
【請求項７】
前記第１のナビゲーションモードにおいて、前記ナビゲーションコントロールは、前記物理的入力に従って第１の感度で動き、前記第２のナビゲーションモードにおいて、前記ナビゲーションコントロールは、同一の前記物理的入力に従って第２の異なる感度で動くことを特徴とする請求項１に記載のポインティングデバイス。
【請求項８】
前記物理的入力は、ポインティングデバイスの動きであり、前記第１のナビゲーションモードにおいて、前記ナビゲーションコントロールは、ポインティングデバイスの前記動きに対して第１の関係を有する量だけ動き、前記第２のナビゲーションモードにおいて、前記ナビゲーションコントロールは、ポインティングデバイスの前記動きに対して第２の異なる関係を有する量だけ動くことを特徴とする請求項１に記載のポインティングデバイス。
【請求項９】
前記ナビゲーションコントロールは、前記第１のナビゲーションモードと前記第２のナビゲーションモードの両方において、ポインティングデバイスの前記動きに従って直線的に動くことを特徴とする請求項８に記載のポインティングデバイス。
【請求項１０】
前記ポインティングデバイスは表面上を動くように構成されており、
前記セレクタは、前記表面を支えにポインティングデバイスに印加された圧力の量に応答する
ことを特徴とする請求項１に記載のポインティングデバイス。
【請求項１１】
前記セレクタは、第１の軸を中心に回転可能であり、第２の軸を中心に傾け可能なスクロールホイールであり、前記第１の状態および前記第２の状態は、前記スクロールホイールの傾きで選択されることを特徴とする請求項１に記載のポインティングデバイス。
【請求項１２】
英数字セクションを有するキーボードと一体化されないことを特徴とする請求項１に記載のポインティングデバイス。
【請求項１３】
前記ナビゲーションコントロールは、カーソルであることを特徴とする請求項１に記載のポインティングデバイス。
【請求項１４】
ディスプレイを有するコンピュータ上で実行されるナビゲーションソフトウェアと通信するように構成されたポインティングデバイスであって、
少なくとも２つの自由度でポインティングデバイスの動きを感知するように構成された第１のセンサであって、前記ポインティングデバイスが、該ポインティングデバイスの動きに従って前記ディスプレイ上のナビゲーションコントロールを動かすように前記ナビゲーションソフトウェアに要求するように構成されている、第１のセンサと、
少なくとも２つの自由度で物理的入力を感知するように構成された第２のセンサであって、前記ポインティングデバイスが、前記物理的入力に従って前記ディスプレイ上の前記ナビゲーションコントロールを動かすように前記ナビゲーションソフトウェアに要求するように構成されている、第２のセンサと
を備えたことを特徴とするポインティングデバイス。
【請求項１５】
請求項１４に記載のポインティングデバイスと、
前記ナビゲーションソフトウェアを表すコンピュータ実行可能命令を格納するコンピュータ読み取り可能な記録媒体と
を備えたことを特徴とするキット。
【請求項１６】
前記第１のセンサは、光センサであることを特徴とする請求項１４に記載のポインティングデバイス。
【請求項１７】
前記第１のセンサは、トラックボールセンサであることを特徴とする請求項１４に記載のポインティングデバイス。
【請求項１８】
前記第２のセンサは、タッチセンシティブ面であり、前記物理的入力は、前記面における動きを含むことを特徴とする請求項１４に記載のポインティングデバイス。
【請求項１９】
前記第１のセンサは、光センサまたはトラックボールセンサであることを特徴とする請求項１８に記載のポインティングデバイス。
【請求項２０】
前記第２のセンサは、ジョイスティックであることを特徴とする請求項１４に記載のポインティングデバイス。
【請求項２１】
前記第１のセンサは、光センサまたはトラックボールセンサであることを特徴とする請求項２０に記載のポインティングデバイス。
【請求項２２】
前記ナビゲーションコントロールは、カーソルであることを特徴とする請求項１４に記載のポインティングデバイス。
【請求項２３】
ユーザの小さい筋肉群の動きに応答して、第１の縮尺で、表示されたナビゲーションコントロールの動きを制御するステップと、
ユーザの大きい筋肉群の動きに応答して、異なる第２の縮尺で、表示されたナビゲーションコントロールの動きを制御するステップと
を備えることを特徴とするコンピュータにおける方法。
【請求項２４】
前記小さい筋肉群の動きは、前記ユーザの指の動きを含み、前記大きい筋肉群の動きは、前記ユーザの腕の動きを含むことを特徴とする請求項２３に記載の方法。
【請求項２５】
前記大きい筋肉群の動きは、ポインティングデバイスが平行移動するようにさせるが、前記大きい筋肉群の動きは、ポインティングデバイスが平行移動するようにさせないことを特徴とする請求項２３に記載の方法。
【請求項２６】
前記ナビゲーションコントロールは、カーソルであることを特徴とする請求項２３に記載の方法。
【請求項２７】
筐体と、
前記筐体の動きに応答して表示されたナビゲーションコントロールの２次元の動きを制御するように構成された第１のポインティングデバイスと、
前記筐体に物理的に結合され、前記筐体の動き以外のユーザ入力に応答して、表示された前記ナビゲーションコントロールの２次元の動きを制御するように構成された第２のポインティングデバイスと
を備えたことを特徴とする装置。
【請求項２８】
前記第１のポインティングデバイスは、マウスであり、前記第２のポインティングデバイスは、タッチパッド、ジョイスティック、またはトラックボールのいずれかであることを特徴とする請求項２７に記載の装置。
【請求項２９】
前記第１のポインティングデバイスは、第１の縮尺で、表示された前記ナビゲーションコントロールを制御し、前記第２のポインティングデバイスは、異なる第２の縮尺で、表示された前記ナビゲーションコントロールを制御することを特徴とする請求項２７に記載の装置。
【請求項３０】
英数字セクションを有するキーボードと一体化されないことを特徴とする請求項２７に記載の装置。
【請求項３１】
前記ナビゲーションコントロールは、カーソルであることを特徴とする請求項２７に記載の装置。
【請求項３２】
請求項２７に記載の装置と、
前記第１のポインティングデバイスおよび前記第２のポインティングデバイスに従って前記装置からコマンドを受け取るステップと、前記コマンドに従って前記表示されたナビゲーションコントロールを動かすステップと、を含むステップを実行するためのコンピュータ実行可能命令を格納するコンピュータ読み取り可能な記録媒体と
を備えたことを特徴とするキット。
【請求項３３】
ディスプレイを有するコンピュータ上で実行されるナビゲーションソフトウェアと通信するように構成されたポインティングデバイスであって、
絶対トラッキングを使用して前記ディスプレイ上でナビゲーションコントロールを制御するように構成された第１のポインティング要素と、
相対トラッキングを使用して前記ナビゲーションコントロールを制御するように構成された第２のポインティング要素と
を備えたことを特徴とするポインティングデバイス。
【請求項３４】
前記第１のポインティング要素は、ライトガンを含み、前記ディスプレイは、前記ディスプレイに入射する前記ライトガンから発せられた光の位置を感知するように構成されることを特徴とする請求項３３に記載のポインティングデバイス。
【請求項３５】
請求項３３に記載のポインティングデバイスと、
前記第１のポインティング要素に対するユーザ入力に関連する第１のデータを受け取り、前記第１のデータに従って絶対トラッキングを使用して前記ナビゲーションコントロールを制御するステップと、前記第２のポインティング要素に対するユーザ入力に関連する第２のデータを受け取り、前記第２のデータに従って相対トラッキングを使用して前記ナビゲーションコントロールを制御するステップと、を含むステップを実行するためのコンピュータ実行可能命令を格納するコンピュータ読み取り可能な記録媒体と
を備えたことを特徴とするキット。
【請求項３６】
前記ナビゲーションコントロールは、カーソルであることを特徴とする請求項３３に記載のポインティングデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スクリーン上のカーソルの動きを制御することを対象とし、より詳細には、異なるモードの動きに従ってそのような動きを制御することを対象とする。
【背景技術】
【０００２】
コンピュータディスプレイがより安く製造されるようになるにつれ、ユーザは、より高い解像度のディスプレイを選択する傾向がより高くなる。実際、ディスプレイの費用が低いことにより、多くのユーザは、より多数のピクセルを有するより大きい全体の表示領域を提供するように、２つ以上のディスプレイを一緒にリンクすることを始めている。しかし、ユーザは、全体の表示領域が大きくなるにつれ、グラフィカルユーザインタフェースのスクリーン上のカーソルを制御することがより難しくなることにも気付いている。カーソルを完全に制御するのに必要とされる２つのタイプのカーソルの動きが基本的に存在する。第１に、ユーザは、十分な精度でカーソルを制御する必要がある。つまり、ユーザは、ピクセル単位でなど、高い解像度（resolution）でカーソルを制御できることを見込むはずである。そのような高い解像度の要件は、今日、多くのソフトウェアアプリケーションに既に必要とされており、新たなアプリケーションおよび将来のアプリケーションに関して、さらに高い解像度の要件を予期することができる。これは、描画アプリケーションまたは手書きデジタルインクアプリケーションを使用する場合、特に重要である。第２に、ユーザは、表示領域の一方の端から他方の端にカーソルを都合よく動かすことができなければならない。例えば、ユーザが、単にカーソルを動かし、ディスプレイ全体を移動するのに、繰り返しの多いマウスの動きを行うのは、効果的ではなく、疲れさせられる。
【０００３】
いくつかの文献に上述のような従来の技術に関連した技術内容が開示されている（例えば、特許文献１〜３参照）。
【０００４】
【特許文献１】米国特許第５、６００、７７６号明細書
【特許文献２】米国特許第５、６８９、７０３号明細書
【特許文献３】米国特許第６、４６０、０５８号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００５】
残念ながら、以上２つのニーズは、従来のカーソル制御システムを使用しては、互いに相容れない。マウスが、カーソルを高い精度で動かすように構成されている場合、カーソルは、任意の所与のマウスの動きに対してあまり大きくは動かない。同様に、マウスが、長い距離にわたってカーソルを効率的に動かすように構成されている場合、カーソルは、より小さい距離範囲で正確に制御可能ではない。
【０００６】
本発明は、このような状況に鑑みてなされたもので、その目的とするところは、表示されたカーソル、または他の表示されたナビゲーションコントロールが、異なるモードで制御されることを可能にするポインティングデバイスおよび方法を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の諸態様は、表示されたカーソル、または他の表示されたナビゲーションコントロールが、異なる解像度においてなど、異なるモードで制御されることを可能にするポインティングデバイスを提供することを対象とする。ポインティングデバイスは、１つまたは複数のポインティング要素などの１つまたは複数のサブデバイスを含むことが可能である。例えば、同一のポインティングデバイスの第１のポインティング要素と第２のポインティング要素が、それぞれの独自のナビゲーションモードを使用して、同一のナビゲーションコントロールを独立に制御することが可能である。ポインティングデバイスは、ナビゲーションモード間で切り替えを行う切り替え機能をさらに、または代替として有することも可能である。このようにして、単一のポインティング要素を使用して、様々なナビゲーションモードに従ってナビゲーションコントロールを制御することができる。いずれの場合も、ポインティングデバイスは、キーボードまたはコンピュータなどのより大きいデバイスの一部であることも、いずれのキーボードからも物理的に分離しているなど、他のデバイスから物理的に分離していることも可能である。
【０００８】
本発明のさらなる態様は、ユーザが、第１のナビゲーションモードで（例えば、より高い解像度で）、より小さい筋肉群（例えば、指）を使用してナビゲーションコントロールを制御し、第２のナビゲーションモードで（例えば、より低い解像度で）、より大きい筋肉群（例えば、腕）を使用して同一のナビゲーションコントロールを制御することができるようにすることを対象とする。
【０００９】
本発明のさらなる態様は、ナビゲーションモードの異なる１つをそれぞれが実施する複数のナビゲーションエンジンを使用することを対象とする。代替として、またはさらに、所与のナビゲーションエンジンが、ナビゲーションモードの異なる１つをそれぞれが実施するいくつかのサブエンジンを有することも可能である。
【００１０】
本発明のさらなる態様は、前述したナビゲーションエンジンの１つまたは複数のを含むことが可能なポインティングデバイスとソフトウェアの両方を含むキットを提供することを対象とする。
【００１１】
本発明の以上の態様、およびその他の態様は、例示的な実施形態の以下の詳細な説明を考慮することで、明白となろう。
【００１２】
本発明の以上の概要、ならびに例示的な実施形態の以下の詳細な説明は、添付の図面と併せて読むことで、よりよく理解される。図面は、特許請求する発明に関して、例としてであって、限定としてではなく含めている。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照して本発明を適用できる実施形態を詳細に説明する。
【００１４】
一般的なコンピューティングプラットフォーム 
図１は、本発明の様々な態様を実施するように構成し、使用することができる従来の汎用デジタルコンピューティング環境の例を示す機能ブロック図である。図１では、例示的なコンピュータ１００が、プロセッサ１１０、システムメモリ１２０、ならびにシステムメモリからプロセッサ１１０までを含む様々なシステムコンポーネントを結合するシステムバス１３０を含む。コンピュータ１００は、メインフレーム、サーバ、パーソナルコンピュータ、ラップトップコンピュータ、またはパームトップコンピュータなどの、ただし、以上には限定されない任意のタイプのコンピュータであることが可能である。
【００１５】
図１のコンピュータ１００の構造の詳細を説明すると、システムバス１３０は、様々なバスアーキテクチャのいずれかを使用する、メモリバスまたはメモリコントローラ、周辺バス、およびローカルバスを含め、いくつかのタイプのバス構造のいずれであることも可能である。システムメモリ１２０は、読み取り専用メモリ（ＲＯＭ）１４０、およびランダムアクセスメモリ（ＲＡＭ）１５０を含む。
【００１６】
スタートアップ中などに、コンピュータ１００内部の要素間で情報を転送するのを助ける基本ルーチンを含むＢＩＯＳ（Basic Input/Output System）１６０が、ＲＯＭ１４０の中に格納される。コンピュータ１００は、ハードディスク（図示せず）に対して読み取りおよび書き込みを行うためのハードディスクドライブ１７０、リムーバブルな磁気ディスク１９０に対して読み取りまたは書き込みを行うための磁気ディスクドライブ１８０、ならびにＣＤ（compact disc）−ＲＯＭまたは他の光媒体などのリムーバブルな光ディスク１９２に対して読み取りまたは書き込みを行うための光ディスクドライブ１９１も含む。ハードディスクドライブ１７０、磁気ディスクドライブ１８０、および光ディスクドライブ１９１は、それぞれ、ハードディスクドライブインタフェース１９２、磁気ディスクドライブインタフェース１９３、および光ディスクドライブインタフェース１９４でシステムバス１３０に接続される。以上のドライブ群、および関連するコンピュータ可読媒体により、コンピュータ可読命令、データ構造、プログラムモジュール、およびその他のデータの不揮発性ストレージがコンピュータ１００に提供される。
【００１７】
磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジ、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）などの、データを格納することができ、コンピュータがアクセス可能な他のタイプのコンピュータ可読媒体も、典型的な動作環境において使用されることが可能であることが、当業者には認められよう。本明細書で使用する「コンピュータ可読媒体」という用語には、単一の媒体だけでなく、例えば、ＣＤ−ＲＯＭの集合、またはＣＤ−ＲＯＭとコンピュータメモリの組合せなどの、物理的に別個の媒体の集合も含まれるものとする。
【００１８】
オペレーティングシステム１９５、１つまたは複数のアプリケーションプログラム１９６、他のプログラムモジュール群１９７、および／またはプログラムデータ１９８を含め、いくつかのプログラムモジュールが、ハードディスクドライブ１７０、磁気ディスク１９０、光ディスク１９２、ＲＯＭ１４０、および／またはＲＡＭ１５０に格納されることが可能である。ユーザは、キーボード１０１やポインティングデバイス１０２などの入力デバイス群を介して、コマンドおよび情報をコンピュータ１００に入力することができる。キーボード１０１は、複数のボタンおよび／または他のユーザ入力デバイス群を有することが可能である。複数のボタンは、数字セクションおよび英数字セクションを含むことが可能である。他の入力デバイス群には、マイク、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナ、スタイラスなどが含まれることが可能である。以上の入力デバイス、およびその他の入力デバイスは、システムバスに結合されたシリアルポートインタフェース１０６を介して、プロセッサ１１０に結合すること、あるいはパラレルポート、ゲームポート、またはユニバーサルシリアルバス（ＵＳＢ）などの他のインタフェース群で結合することができる。さらに、以上のデバイスは、適切なインタフェース（図示せず）を介してシステムバス１３０に直接に結合してもよい。
【００１９】
モニタ、または他のタイプのディスプレイ１０７も、ビデオアダプタ１０８などのインタフェースを介して、システムバス１３０に接続することができる。モニタに加え、パーソナルコンピュータは、通常、スピーカやプリンタなどの他の周辺出力デバイス群（図示せず）も含む。好適実施形態では、手書き入力をデジタル式にキャプチャするために、スタイラスデジタイザ（ｄｉｇｉｔｉｚｅｒ）１６５、および付随するスタイラス１６６が提供される。スタイラスデジタイザ１６５とシリアルポートの間に直接接続を示しているが、実際には、スタイラスデジタイザ１６５は、当技術分野で周知のパラレルポートまたは他のインタフェース、およびシステムバス１３０を介して、プロセッサ１１０に直接に結合してもよい。さらに、デジタル１６５をディスプレイ１０７と別に示しているが、デジタイザ１６５の使用可能な入力領域が、ディスプレイ１０７の表示領域と同一の広がりを有することが好ましい。さらに、デジタイザ１６５は、ディスプレイ１０７に組み込まれてもよく、あるいはディスプレイ１０７に重ね合わされる、または別の形で付加される別個のデバイスとして存在してもよい。
【００２０】
コンピュータ１００は、リモートコンピュータ１０９のような、１つまたは複数のリモートコンピュータに対する論理接続を使用するネットワーク化された環境において動作することができる。リモートコンピュータ１０９は、サーバ、ルータ、ネットワークＰＣ（personal computer）、ピアデバイス、または他の一般的なネットワークノードであることが可能であり、通常、コンピュータ１００に関連して前述した要素の多く、またはすべてを含むが、メモリ記憶装置１１１だけを図１に例示している。図１に示した論理接続には、ローカルエリアネットワーク（ＬＡＮ）１１２およびワイドエリアネットワーク（ＷＡＮ）１１３が含まれる。そのようなネットワーキング環境は、オフィス、企業全体のコンピュータ網、イントラネット、およびインターネットで一般的である。
【００２１】
ＬＡＮネットワーキング環境で使用される場合、コンピュータ１００は、ネットワークインタフェースまたはネットワークアダプタ１１４を介してローカルネットワーク１１２に接続される。ＷＡＮネットワーキング環境で使用される場合、コンピュータ１００は、通常、インターネットなどのワイドエリアネットワーク１１３を介して通信を確立するためのモデム１１５、または他の手段を含む。内部にあることも、外部にあることも可能なモデム１１５は、シリアルポートインタフェース１０６を介してシステムバス１３０に接続される。ネットワーク化された環境では、コンピュータ１００に関連して示したプログラムモジュール群、またはプログラムモジュール群の諸部分は、リモートメモリ記憶装置の中に格納されることが可能である。
【００２２】
図示したネットワーク接続は、例示的であり、コンピュータ間で通信リンクを確立するための他の技術も使用できることが認められよう。ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）、イーサネット（登録商標）、ＦＴＰ（file transfer protocol）、ＨＴＴＰ（hypertext transfer protocol）などの様々な周知のプロトコルのいずれかの存在が、想定されており、システムは、ユーザが、ＷｅｂベースのサーバからインターネットＷｅｂページを取り出すことができるようにするようにクライアント−サーバ構成で運用することができる。様々な従来のＷｅｂブラウザのいずれかを使用して、Ｗｅｂページ上のデータを表示し、操作することができる。
【００２３】
カーソル 
図２を参照すると、コンピュータ１００は、ディスプレイ１０７上にカーソル２０１を表示することができる。カーソル２０１は、ディスプレイ１０７の領域内で、２次元で動くことができる。通常、何らかのタイプのポインティングデバイスを使用してカーソル２０１の動きを制御する。例えば、マウス１０２および／またはスタイラス１６６を使用することができる。破線矢印で示すとおり、カーソル２０１は、ユーザがポインティングデバイスをどのように制御するかに応じて、短い距離２０２、または長い距離２０３、動かされることが可能である。破線矢印２０２、２０３は、カーソル２０１が動く特定の方向を示しているが、カーソル２０１は、ディスプレイ１０７上で任意の方向に動くことが可能である。
【００２４】
図３を参照すると、ディスプレイ１０７は、単一の物理的なディスプレイデバイス、またはディスプレイデバイス１０７ａおよび１０７ｂなどの、複数の個別のディスプレイデバイスから成ることが可能である。しばしば、そのような複数のディスプレイデバイスは、利用可能な表示領域の全体量を実質的に大きくするように、互いに隣接して配置される。図３に示すとおり、カーソル２０１は、複数のディスプレイデバイス１０７ａ、１０７ｂの１つだけの範囲内に留まることも、複数のディスプレイデバイス１０７ａ、１０７ｂ全体を、あたかもディスプレイデバイス１０７ａ、１０７ｂが１つの連続したディスプレイであるかのように動くこともできる。いずれのディスプレイにカーソル２０１が入っているかは、カーソル２０１がどこにどれだけ動かされたかに依存することが可能である。例えば、カーソル２０１は、少量だけ右方向に動かされて（破線矢印３０２で示す）、ディスプレイ１０７ａの範囲内に留まることが可能である。あるいは、カーソル２０１は、カーソル２０１がディスプレイデバイス１０７ａの右端に達するように十分に右方向に動かされ、ディスプレイデバイス１０７ｂの左端から、右方向に動き続けるように（破線矢印３０３で示す）命令されることも可能である。
【００２５】
他のタイプのナビゲーションコントロール 
従来の表示されるカーソル２０１は、可能な多数のタイプの表示されるナビゲーションコントロールの１つに過ぎない。コンピュータシステム内で移動するための他の諸技術も使用することができる。例えば、コンピュータ上の情報を仮想の球体（ｖｉｒｔｕａｌ  ｓｐｈｅｒｅ）に編成して、ディスプレイ１０７上に表示された仮想の球体の回転により、情報のいずれの部分にアクセスを行うことができるかが制御されることも可能である。その場合、仮想の球体（表示されるナビゲーションコントロールである）を異なるナビゲーションモードで操作する（例えば、ナビゲーションモードに応じて、球体を異なる速度、または異なる解像度で回転させる）ことができることが、ユーザが、情報の所望の部分を効率的に、正確に探し出すことができるようにするのに役立つ。また、仮想現実インタフェースを介するナビゲーションは、そのようなインタフェースを介して移動している最中に、本明細書で説明するように異なるナビゲーションモードにアクセスすることができれば、より効率的にすることができる。例えば、仮想現実インタフェースにおいて、ユーザは、仮想の３次元で移動することができ、それらの次元における動きが、特定のナビゲーションモードに従ってポインティングデバイスによって制御されることが可能である。本明細書における発明の態様の多くは、例示的にカーソル２０１を制御することに関連して説明する。ただし、それらの態様は、他のタイプのナビゲーションコントロールにも適用することができる。
【００２６】
例示的なマルチモードの（multi-modal）ポインティングデバイス 
図４を参照すると、カーソル２０１を動かすようにコンピュータ１００に要求することにより（例えば、コンピュータ１００にデータを送ることにより）、コンピュータ１００と通信するポインティングデバイス４００が提供されることが可能である。以下に説明するとおり、コンピュータ１００上で実行されている１つまたは複数のナビゲーションエンジンが、ポインティングデバイスからデータを受け取り、そのデータに従ってカーソル２０１を動かす。データを通信するため、ポインティングデバイス４００は、コンピュータ１００に無線結合されても、配線を介して結合されてもよい。多くのポインティングデバイスの場合にそうであるように、ポインティングデバイス４００は、キーボード１０１のような、英数字部分を有するキーボードと一体でないことが可能である。代替として、ポインティングデバイス４００は、従来のポインティングデバイスが、従来のラップトップコンピュータ上でキーボードと組み合わされる仕方と同様の形で、キーボードと一体化されてもよい。例示的なポインティングデバイス４００は、ハウジング（ｈｏｕｓｉｎｇ）などの筐体（ｂｏｄｙ）４０１を含む。筐体４０１は、１つまたは複数のボタン４０２、４０３に結合すること、またはボタン４０２、４０３を含むことが可能である。例えば、ボタン４０２は、従来の左クリックボタンであることが可能であり、ボタン４０３は、従来の右クリックボタンであることが可能であり、左クリックボタンおよび右クリックボタンは、例えば、ＷＩＮＤＯＷＳ（登録商標）ブランドのオペレーティングシステム、およびその他のオペレーティングシステムによって認識される。このため、そのようなオペレーティングシステムでは、ボタン４０２を使用して、例えば、ディスプレイ１０７上のオブジェクトを選択することができ、ボタン４０３を使用して、例えば、コンテキスト依存メニューを呼び出すことができる。
【００２７】
ポインティングデバイス４００の筐体４０１は、図４の上右隅に４つのより大きい破線矢印で示すとおり、（この例では）２つの自由度でユーザが平行移動させることができる。オブジェクトの平行移動は、オブジェクトの中心軸の周りでオブジェクトを単に回転させることに対比される、オブジェクトが全体として移動させられるタイプの動きである。例えば、ポインティングデバイス４００が、従来のマウスに類似した形態である場合、ポインティングデバイス４００は、表面（例えば、平面）全体で平行移動させることができる。そのような実施形態では、筐体４０１自体を１次ポインティング要素と見なすことができ、したがって、１次ポインティング要素を動かすことにより、カーソル２０１の平行移動が生じさせられる。筐体４０１が表面上に置かれる場合（従来のマウスがそうであるように）、１次ポインティング要素のセンサが、表面に沿った筐体４０１の位置の変化を検出する。センサは、当技術分野で周知であるように、従来のトラックボールタイプのセンサ、または従来の光センサなどの、任意のタイプのセンサであることが可能である。表示されたカーソル２０１は、筐体４０１の動きのように、１次ポインティング要素に対するユーザ入力に従ってディスプレイ１０７全体で平行移動することが可能である。より一般的には、ナビゲーションコントロール（例えば、カーソル２０１）が、１次ポインティング要素に対するユーザ入力に従って、ディスプレイ１０７上で動かされる、または別の形で操作されることが可能である。ナビゲーションコントロールの動きには、平行移動、および／または、ヨー（ｙａｗ）、ピッチ（ｐｉｔｃｈ）、および／またはロール（ｒｏｌｌ）などの回転が含まれることが可能である。
【００２８】
ポインティングデバイス４００は、筐体４０１に結合された２次ポインティング要素をさらに含むことが可能である。２次ポインティング要素も、表示されたカーソル２０１の平行移動を制御することができ、より一般的には、ナビゲーションコントロールの動きを制御することができる。このため、単一のポインティングデバイス４００が、同一のデバイスに組み込まれた２つの異なるポインティング要素を含むことが可能である。２次ポインティング要素は、様々な形態のいずれであることも可能である。例えば、２次ポインティング要素は、ジョイスティック４０４であることが可能である。その場合、ジョイスティック４０４は、カーソル２０１の動きを制御するように、２次元で様々な方向に動かすことができ、かつ／または傾けることができることが可能である。例えば、ユーザが、ジョイスティック４０４を図４の上に向けてなど、ある方向に動かした場合、カーソル２０１が、ディスプレイ１０７の上に向かう方向で平行移動することが可能である。あるいは、ユーザが、ジョイスティック４０４を図４の左側に向かう方向に動かした場合、カーソル２０１は、ディスプレイ１０７の左に向かう方向に平行移動することが可能である。一般に、２次ポインティング要素は、複数の自由度でユーザの動きを検出し、ユーザの動きに従って平行移動するように表示されたカーソル２０１に命令することができる。２次ポインティング要素（故に、カーソル２０１）は、２つ、３つ、４つ、またはそれを超える自由度で制御することができる。例えば、２つの自由度には、前方／後方および左／右が含まれることが可能である。３つの自由度には、例えば、前方／後方、左／右、および上／下が含まれることが可能である。４つの自由度には、例えば、前方／後方、左／右、上／下、ならびに上／下軸（または別の軸）の周りの回転が含まれることが可能である。
【００２９】
２次ポインティング要素の他の例には、タッチセンシティブ面（ｔｏｕｃｈ−ｓｅｎｓｉｔｉｖｅ  ｓｕｒｆａｃｅ）５０１（図５）、トラックボール６０１（図６）、または傾け可能なスクロールホイール（ｓｃｒｏｌｌ  ｗｈｅｅｌ）（図８）が含まれるが、以上には限定されない。タッチセンシティブ面５０１は、タッチセンシティブ面５０１におけるユーザの動きなどの物体の動きを感知し、これに応答して、ポインティングデバイス４００が、ディスプレイ１０７において平行移動するように表示されたカーソル２０１に命令する。同様に、ユーザがトラックボール６０１を動かしたことに応答して、ポインティングデバイス４００が、ディスプレイ１０７において平行移動するように表示されたカーソル２０１に命令する。２次ポインティング要素が、傾け可能なスクロールホイール８０１である場合、そのような傾け可能なスクロールホイールが当技術分野で知られ、ＭｉｃｒｏｓｏｆｔブランドのＷｉｒｅｌｅｓｓ  Ｏｐｔｉｃａｌ  Ｍｏｕｓｅ  ２．０マウスのような製品に実装される。そのような傾け可能なスクロールホイールが、第１の軸を中心に順方向または逆方向に回転し、第２の軸（通常、第１の軸に垂直な）を中心に傾くことが可能である。通例では、傾け可能なスクロールホイールを操作することは、ドキュメントがスクロールされること、またはパン（ｐａｎ）されることを生じさせるが、カーソルが平行移動することは生じさせない。カーソル２０１は、そのため、例えば、スクロールホイール８０１を逆方向および順方向に回転させることにより、上下に平行移動するように制御することができる。カーソル２０１は、例えば、スクロールホイール８０１を左右に傾けることにより、右左に平行移動するようにさらに制御することができる。以上のタイプの２次ポインティング要素のいずれに関しても、ディスプレイ１０７においてカーソルが平行移動する方向、速度、および／または距離は、ユーザが２次ポインティング要素に印加する入力に依存する。
【００３０】
２次ポインティング要素は、ユーザの予期される方向に面して筐体４０１の最上部、あるいは図４〜６に示すように、筐体４０１の前部、後部、または側部などの、筐体４０１に対してどこに配置されることも可能である。一般に、ユーザがポインティングデバイス４００を扱っている最中に、ユーザが容易にアクセスすることができるように２次ポインティング要素を配置することが望ましい可能性がある。
【００３１】
図４〜６では、例えば、ユーザは、一組の筋肉を使用して１次ポインティング要素を制御することができ、第２の組の筋肉を使用して２次ポインティング要素を制御することができることが注目に値する。例えば、図４では、ユーザは、ユーザの腕および／または手を使用して１次ポインティング要素（この場合、筐体４０１の動き）を制御することができる。２次ポインティング要素の制御（この場合、ジョイスティック４０４の動き）は、ユーザの指で実行することができる。このため、この例では、同一のポインティングデバイス上で、より大きい筋肉群（この場合、腕）が一方のポインティング要素を制御し、より小さい筋肉群（この場合、指）が他方のポインティング要素を制御する。この構成は、より大きい距離にわたる（より低い解像度の動きで）カーソル２０１の平行移動を制御するのに１次ポインティング要素が使用され、より小さい、より正確な距離にわたる（より高い解像度の動きで）カーソル２０１の平行移動を制御するのに２次ポインティング要素が使用される場合に、特に便利である可能性がある。通常、指などの、人のより小さい筋肉群は、腕などの、人のより大きい筋肉群よりも、より正確に制御することができる。カーソル２０１の平行移動を制御するのに使用することができる他の筋肉群には、ユーザの手首、胴、脚、足、目、および頭が含まれる。
【００３２】
様々な筋肉群を使用してカーソルの動きを制御する場合、適切なセンサを１次ポインティング要素および／または２次ポインティング要素に実装することができる。例えば、ユーザの目の位置が、ポインティング要素に対する入力として使用される場合、ポインティング要素は、ユーザの目の位置を測定するセンサを含むことが可能である。そのようなセンサは、周知である。あるいは、部屋の中のユーザの身体の位置が、ポインティング要素に対する入力として使用される場合、ポインティング要素は、例えば、ユーザの位置を特定する魚眼レンズを有するカメラを含むことが可能である。
【００３３】
ポインティングデバイス４００は、概して、従来のマウスと同様の全体的な外観を有するように図４〜６に例示しているが、本発明の諸態様によるポインティングデバイスは、様々な形態のいずれをとることも可能である。ポインティングデバイスは、マウス、スタイラス、トラックボール、ジョイスティック、タッチセンシティブ面、および／または他の任意のタイプのポインティングデバイスの形態であることが可能である。例えば、図７は、スタイラスの形態で例示的なポインティングデバイス７００を示す。ポインティングデバイス７００は、特にディスプレイ１０７が、タッチセンシティブ面または近接センシティブ（ｐｒｏｘｉｍｉｔｙ−ｓｅｎｓｉｔｉｖｅ）面（例えば、デジタイザと一体化されたディスプレイ）である場合、ディスプレイ１０７と直接に対話することができる。その場合、カーソル２０１は、スタイラス様のポインティングデバイス７００の先端がポイントするディスプレイ１０７上のどこにでも平行移動することができる。これは、絶対トラッキング（ｔｒａｃｋｉｎｇ）として知られている。というのは、ポインティングデバイス７００は、カーソル２０１の絶対（相対に対比される）位置を制御することができるからである。ポインティングデバイス７００は、代替として、ポインティングデバイス７００の先端からレーザ光線を発することなどにより、ディスプレイ１０７とそれほど直接的にではなく対話してもよい。ディスプレイ１０７に入射するレーザ光線７０２の場所（ディスプレイ１０７が、レーザ光線７０２の場所を感知する場合）により、カーソル２０１がどこに平行移動すべきかが示される。この場合も、これは、絶対トラッキングの例である。スタイラス様のポインティングデバイス７００は、代替として、電磁的になど、他の形でディスプレイ１０７と対話してもよい。
【００３４】
ポインティングデバイス７００は、ジョイスティック、トラックボール、またはタッチセンシティブ面などの、ただし、以上には限定されない任意の形態であることが可能な２次ポインティング要素７０１をさらに含むことが可能である。例示した実施形態では、２次ポインティング要素７０１は、スタイラス７００の一方の終端に配置され、多くのラップトップキーボード上で通例、使用される「消しゴム（ｅｒａｓｅｒ）」タイプのポインティングデバイスなどの、ジョイスティック様のデバイスの形態である。２次ポインティング要素７０１は、ユーザが、相対トラッキングを使用して、２次元でカーソル２０１に対する制御を行使することができるようにすることが可能である。ユーザは、特定の方向で２次ポインティング要素７０１を押さえ付け、カーソル２０１が、スクリーン上で対応する方向に平行移動するようにすることができる。相対トラッキングでは、カーソル２０１は、ディスプレイ１０７上の特定の絶対位置に移動するように指示されるのではなく、特定の方向に平行移動するように指示される。このため、相対トラッキングでは、カーソル２０１の位置は、平行移動するように指示される前のカーソル２０１の以前の位置に依存するが、絶対ポインティングでは、これは必ずしも当てはまらない。ポインティングデバイス７００は、２次ポインティング要素７０１に従うデータを、配線または無線を介して（図示するとおり）コンピュータ１００に通信することができる。絶対トラッキングのために便利に使用することができるポインティング要素の別の例が、タッチセンシティブ面５０１である。その場合、ポインティングデバイス４００は、カーソル２０１の相対トラッキング（例えば、筐体４０１の動きに従う）と絶対トラッキング（例えば、タッチセンシティブ面５０１上におけるユーザの指の絶対位置に従う）の両方を提供することができる。
【００３５】
図８を参照すると、別のポインティングデバイス８００は、２つ以上のナビゲーションモード間で切り替え可能である。その場合、２次ポインティング要素も含まれることも、含まれないことも可能である。図示するとおり、例示的なポインティングデバイス８００は、上下にスクロールを行うだけでなく、左右に傾きもする（スクロールホイール８０１近くの左右の破線矢印で示すとおり）スクロールホイール８０１を含む。スクロールホイール８０１を回転させることにより、ディスプレイ１０７をスクロールすることができる。また、通常、左右のスクロールなどの様々な機能を、従来のスクロールホイールを左右に傾けることによって実施することができる。ただし、この例示的な実施形態では、スクロールホイール８０１を左または右に傾けることにより、ナビゲーションモード間で切り替えが行われる。
【００３６】
ナビゲーションモードは、ポインティングデバイス８００の制御が、ディスプレイ１０７上のカーソル２０１の平行移動にどのように影響を与えるかを定義する。ナビゲーションモードは、カーソル２０１の速度、平行移動解像度、平行移動距離、および／または加速などの、ただし、以上には限定されない、カーソル２０１平行移動の様々な態様を定義することができる。ナビゲーションモードは、カーソル平行移動のＸ方向とＹ方向のいずれか、または両方に関して、それらのカーソル平行移動の態様を定義することができる。例えば、第１のナビゲーションモードは、カーソル平行移動の態様がＸ方向とＹ方向で同一であるように定義することができ、他方、第２のナビゲーションモードは、カーソル２０１が、Ｘ方向において、Ｙ方向の２倍の速さで、それらの方向の対応するユーザ入力に対して平行移動するようにさせることができる。このナビゲーションモードは、例えば、ユーザが、いくつかのディスプレイを水平方向に配置し、したがって、横断する距離が、Ｙ方向よりＸ方向ではるかに大きい場合に選択するのが有効である。一般に、様々なナビゲーションモードは、第２の方向と比べた第１の方向において、同一のカーソル平行移動の態様、または異なるカーソル平行移動の態様を定義する。また、一部のナビゲーションモードは、ポインティングデバイス８００の操作（例えば、動き）の間で直線的な関係を定義することができるが、他の動きモードは、直線的ではないように関係を定義することができる。２つのナビゲーションモード間の切り替えを以上の例に関して説明したが、３つ以上のナビゲーションモードが利用可能であってもよく、ユーザが、３つ以上のナビゲーションモード間で切り替えを行うことができてもよい。
【００３７】
このため、例えば、ユーザがスクロールホイール８０１を左に傾けたことに応答して、第１のナビゲーションモードが選択され、ユーザがスクロールホイール８０１を右に傾けたことに応答して、第２の異なるナビゲーションモードが選択されることが可能である。この例では、第１のナビゲーションモードは、第２のナビゲーションモードより高い解像度であることが可能である。これは、ポインティングデバイス８００に対する同一のユーザ入力に対して、カーソル２０１が、第１のナビゲーションモードにおいて、第２のナビゲーションモードよりも、ディスプレイ１０７において短い距離を平行移動することを意味する。例えば、ポインティングデバイス８００が表面上に置かれる場合、ユーザが、右を指し、わずかにユーザに向かう直線でポインティングデバイス８００を動かすことが可能である。そのような動きは、表面上の所与の距離にわたり、所与の速度および加速で行われることが可能である。第１のナビゲーションモードでは、カーソル２０１は、図２の破線矢印２０２で示すとおり、平行移動することが可能である。しかし、第２のナビゲーションモードでは、まったく同一の仮定的なユーザ入力に応答して、カーソル２０１は、破線矢印２０３で示すより長い距離を平行移動することが可能である。同様に、所与のユーザ入力により、カーソル２０１が、図３の破線矢印３０２で示すとおり動くようにさせられる一方で、同一のユーザ入力により、カーソル２０１が、破線矢印３０３で示す、より大きい距離を動くようにさせられることが可能である。
【００３８】
ポインティングデバイス８００の変形も構想される。例えば、ポインティングデバイス８００は、図９に示すとおり、専用のスイッチ９０１を有することも可能である。スイッチ９０１は、ナビゲーションモード間で切り替えを行うために使用される（例えば、左右に傾けること）だけでなくスクロールするためにも使用される（例えば、順方向／逆方向の回転）ことが可能なスクロールホイール８０１とは異なり、ナビゲーションモード間で切り替えを行うことに専用であることが可能である。スイッチ９０１は、押しボタン、２位置スイッチ、３（またはそれ以上）位置スイッチ、スライドスイッチ、ダイヤル、感圧スイッチ、傾きセンシティブスイッチ、またはタッチセンシティブセンサなどの、ただし、以上には限定されない任意のタイプのユーザ入力要素であることが可能である。また、スイッチ９０１は、好ましくは、ユーザがポインティングデバイス８００を扱っている最中にユーザに好都合な（例えば、人間工学的に実際的な）場所に配置されるが、ポインティングデバイス８００上のどこにでも配置されることが可能である。例えば、スイッチ９０１は、ポインティングデバイス８００の後部に（図８に示すとおり）、左側部または右側部に、前部に、または最上部に（スクロールホイール８０１の場合と同様に）あることが可能である。代替として、ボタン４０２、４０３のいずれか、または両方を使用して、ナビゲーションモード間で切り替えを行うことができる。ポインティングデバイス４００に関して前述したとおり、ポインティングデバイス８００は、任意の形態であることが可能であり、図８および図９に示したマウスタイプのポインティングデバイスに限定されない。
【００３９】
図１０を参照すると、スイッチ９０１は、感圧スイッチ１００２として実現することができる。この例では、ポインティングデバイス８００は、表面１００３上に置かれることが可能であり、感圧スイッチ１００２は、ユーザが、ポインティングデバイス８００を十分な圧力（すなわち、所定の圧力閾値を超える）で表面１００３に押さえ付けているかどうかを検出することができる。ポインティングデバイス８００が十分に押さえ付けられているかどうかに応じて、第１のナビゲーションモードまたは第２のナビゲーションモードが、カーソル２０１の平行移動に適用される。このため、例えば、ユーザが、表面１００３においてポインティングデバイス８００を平行移動させているが、十分な圧力でポインティングデバイス８００を押さえ付けていない場合、カーソル２０１は、第１のナビゲーションモードに従ってディスプレイ１０７において平行移動する。しかし、ユーザが、十分な圧力でポインティングデバイス８００を押さえ付けながら、表面１００３においてポインティングデバイス８００を平行移動させている場合、カーソル２０１は、第２のナビゲーションモードに従ってディスプレイ１０７において平行移動する。図１０には、表面１００３におけるポインティングデバイス８００の動きを感知するセンサ１００１も示されている。センサ１００１は、光センサ、トラックボールセンサ、または他の任意のセンサであることが可能である。そのようなセンサは、当技術分野で周知であり、例えば、多くの従来のマウスにおいて使用される。
【００４０】
図１１を参照すると、ポインティングデバイス８００は、空中にある間にも使用可能であるようにさらに構成されることが可能である。この事例では、ポインティングデバイス８００は、ポインティングデバイス８００の空中の動き（例えば、空中の平行移動および／または他の動き）を感知することができるセンサ１１０１を含むことが可能である。そのようなセンサ、例えば、ジャイロスコープセンサは、周知である。その場合、センサ１００１、または別のセンサが、ポインティングデバイス８００が表面１００３上に置かれているか否かを検出することができる。このため、例えば、ポインティングデバイス８００が、表面１００３上に置かれ、動いているか、または空中で動いているかに応じて、異なるナビゲーションモードが適用されることが可能である。
【００４１】
図１２を参照すると、ポインティングデバイス８００は、（平行移動センシティブであることに加えて）回転センシティブであることが可能である。つまり、ポインティングデバイス８００は、ユーザが、ポインティングデバイス８００を（破線矢印で示すとおり）時計方向に回転させているか、または反時計方向に回転させているかを検出するように構成されることが可能である。そのような回転は、表面１００３上で、または空中で行われることが可能であり、表面１００３に垂直な軸などの、任意の所望の軸の周りで行われることが可能である。センサ１００１、または別のセンサが、その回転、または基準の向きに対するポインティングデバイス８００の向きさえ感知するように構成されることが可能である。周知の磁気技術、音響技術、または光学技術などの、様々な技術を使用して、ポインティングデバイス８００の向きを測定することができる。例えば、ポインティングデバイス８００は、ポインティングデバイス８００の向きを追跡するための内蔵磁気コンパスまたはジャイロスコープを有することが可能である。回転の方向、または絶対角度に応じて、異なるナビゲーションモードが選択され、適用されることが可能である。このため、例えば、ポインティングデバイス８００が、表面１００３において動かされながら、左側に向かって角度を成す場合、第１のナビゲーションモードがカーソル２０１に適用される。他方、ポインティングデバイス８００が、表面１００３において動かされながら、右側に向かって角度を成す場合、第２のナビゲーションモードが適用される。このようにして、複数のナビゲーションモードが、ポインティングデバイス８００のそれぞれの異なる角度（またはそれぞれの異なる角度範囲）に関連付けられることが可能である。
【００４２】
コンピュータ１００および／またはポインティングデバイス８００は、時計方向または反時計方向のポインティングデバイス８００の動きに関わるジェスチャを感知するように構成されることが可能である。このため、例えば、急速な小さい反時計方向の回転などのジェスチャにより、第１のナビゲーションモードが選択される一方で、急速な時計方向の回転により、第２のナビゲーションモードが選択されることが可能である。ポインティングデバイス８００のその後の動きにより、カーソル２０１が、最後に選択されたナビゲーションモードに従って平行移動するようにさせられる。一般に、ポインティングデバイスで行われる任意のジェスチャを使用して、ナビゲーションモードを選択することができる。
【００４３】
前述したとおり、ポインティングデバイスは、配線または無線を介してコンピュータ１００に結合することができる。図１３に示すとおり、ポインティングデバイス４００（または７００または８００）は、ベース受信機１３０１を介して無線でコンピュータ１００に結合することができる。ＭｉｃｒｏｓｏｆｔブランドのＷｉｒｅｌｅｓｓ  Ｏｐｔｉｃａｌ  Ｄｅｓｋｔｏｐ  Ｒｅｃｅｉｖｅｒ２．０Ａなどの、そのようなベース受信機は、周知である。図示するとおり、ベース受信機１３０１は、ユーザがナビゲーションモード間で切り替えを行うことを可能にするスイッチ１３０２を有することが可能である。代替として、図１４に示すとおり、キーボード１０１が、ユーザがナビゲーションモード間で切り替えを行うことを可能にするスイッチ１４０１を有してもよい。スイッチ９０１のように機能するスイッチのさらに別の場所は、コンピュータ１００自体の上である。スイッチ１３０２および１４０１は、スイッチ９０１に関して説明したスイッチのような、任意のタイプのスイッチであることが可能であり、スイッチ９０１と同一の形で機能することが可能である。
【００４４】
以上、ポインティングデバイスおよびナビゲーションモードの様々な例を説明してきた。しかし、本発明の諸態様は、それらの例に限定されない。ポインティングデバイスは、第１のポインティング要素と第２のポインティング要素の様々な組合せを有することが可能である。例えば、好ましくは、より低い解像度のカーソル制御のために使用されることが可能な一部のポインティング要素には、慣性センサ、傾きセンサ、レーザポインタまたはライトガン（ｌｉｇｈｔ  ｇｕｎ）およびセンサ、光センサ（ビデオカメラなどの）、音響センサ（超音波センサなどの）、または目または顔の角度を追跡するセンサが含まれるが、以上には限定されない。以上は、より大きい筋肉群を使用して制御することができるポインティング要素である。好ましくは、より高い解像度のカーソル制御のために使用されることが可能な一部のポインティング要素には、トラックボール、タッチパッド、ポテンショメータ、または高解像度ホイールが含まれるが、以上には限定されない。以上は、より小さい筋肉群を使用して制御することができるポインティング要素である。ただし、本発明は、より小さい筋肉群、またはより大きい筋肉群を使用することには限定されず、あるいは、いずれの特定のタイプのポインティングデバイスまたはポインティング要素にも限定されない。
【００４５】
マルチモードのナビゲーション 
図１５を参照すると、コンピュータ１００は、高解像度ナビゲーションモードや低解像度ナビゲーションモードなどの、複数の異なるナビゲーションモードでカーソル２０１を制御することができる。前述したとおり、他のタイプのナビゲーションモードも使用することができる。この例では、例示のため、図８に示したポインティングデバイス４００が、図１５の流れ図に関連して使用されるものと想定する。ただし、ポインティングデバイスの他の実施形態を使用してもよい。
【００４６】
１つまたは複数のナビゲーションエンジンが、コンピュータ１００内部に存在することが可能である。ナビゲーションエンジンは、ポインティングデバイス４００から情報を受け取り、その情報に応答してポインタ２０１をいつ、どのように動かすかを決めるソフトウェア、ハードウェア、および／またはファームウェアであることが可能である。複数のナビゲーションモードを実施するのに、複数のナビゲーションエンジンを使用することも（図１６に示すように）、複数のモードを有する単一のナビゲーションエンジンを使用することも（図１７に示すように）可能である。図１６を参照すると、２つ以上の別個のナビゲーションエンジン１６０１および１６０２が、ポインティングデバイスの動きの量（またはポインティングデバイスに対する他のユーザ入力の量）を示すデータを、ポインティングデバイス（例えば、ポインティングデバイス４００）から受け取るように構成されることが可能である。データは、ポインティングデバイスにおけるポインティング要素の特定の１つまたは複数に対するユーザの入力に従うことが可能である。いずれのナビゲーションモードが適用されるかに応じて、ナビゲーションエンジン１６０１、１６０２の異なる１つが、カーソル２０１をどれだけ平行移動させるかを算出した後、カーソル２０１を実際に平行移動させる。図１７で、単一のナビゲーションエンジン１７０１が、ナビゲーションモードの異なる１つを実施するようにそれぞれが構成された複数の部分を有することが可能である。複数の部分は、別々にコーディングされることも、コードの諸部分を共有することも可能である。いずれのナビゲーションモードが適用されるかに応じて、ナビゲーションエンジン１７０１の諸部分の異なる１つが、カーソル２０１をどれだけ平行移動させるかを算出した後、カーソル２０１を実際に平行移動させることが可能である。
【００４７】
コンピュータ１００のナビゲーションエンジンは、例示として、以下のとおり動作することができる。ステップ１５０１で、ポインティングデバイス４００が、表面（表面１００３のような）において、特定の方向でＭ単位の距離（Ｍミリメートルのような）、動かされることが可能である。ポインティングデバイス４００は、動きの量および方向を示すデータをコンピュータ１００に与えることができる。これに応答して、ステップ１５０２で、コンピュータ１００は、表示されたカーソル２０１がディスプレイ１０７上で平行移動すべき量および方向を算出し、カーソル２０１を実際に平行移動させることができる。この量は、ポインティングデバイス４００の動きの量および／または方向の何らかの線形、または非線形の関数であることが可能であり、アクティブなナビゲーションモードに応じる（ａ  ｆｕｎｃｔｉｏｎ  ｏｆ）ことがさらに可能である。例えば、カーソル２０１は、Ｆ×Ｍピクセルだけ平行移動されることが可能であり、ここで、Ｆは、アクティブなナビゲーションモードによって定義される乗数である。Ｆは、各ナビゲーションモードに関して一定であっても、可変であってもよい。一般に、より高い解像度のナビゲーションモードに関して、Ｆは、より小さく、より低い解像度のナビゲーションモードに関して、Ｆは、より大きい。したがって、高解像度ナビゲーションモードでは、Ｆは、より大きく、所与の動きＭに対して、カーソル２０１平行移動Ｆ×Ｍは、より短い（図２に破線矢印２０２で示す動きのように）。同様に、低解像度ナビゲーションモードでは、Ｆは、より小さく、所与の同一の動きＭに対して、カーソル２０１平行移動Ｆ×Ｍは、より長い（図２の破線矢印２０３で示す動きのように）。
【００４８】
ポインティングデバイス４００は、ナビゲーションモードのいずれがカーソル２０１の平行移動に適用されるべきかを示すナビゲーションモードデータを、コンピュータ１００にさらに与えることができる。そのようなナビゲーションモードデータは、定期的に送られることも、ナビゲーションモードが変更されるべき場合、またはそれ以外で選択される必要がある場合（スタートアップ時などの）にだけ送られることも可能である。したがって、ステップ１５０３で、コンピュータ１００は、いずれのナビゲーションモードが現在、適用されるかを判定し、そのナビゲーションモードによって規定される倍率Ｆを設定（または維持）することができる。例えば、高解像度ナビゲーションモードがアクティブである場合は、ステップ１５０４で、Ｆが、より低い値（または値のセット）に設定されるか、または維持される。低解像度ナビゲーションモードがアクティブである場合は、ステップ１５０５で、Ｆが、より高い値（または値のセット）に設定されるか、または維持される。
【００４９】
結論 
以上、コンピュータディスプレイ上のカーソルを制御する様々な仕方を説明してきた。本発明の諸態様を使用して、ユーザは、例えば、より短い距離にわたってカーソルを正確に制御できる一方、それでも、所望される場合、はるかに大きい距離にわたってカーソルを動かすことができる。ユーザは、ポインティングデバイスを変える、または階層化された構成メニューを移動する必要なしに、以上の異なる形で同一のカーソルを制御できることが可能である。実際、ユーザは、ユーザの他のコンピュータ活動が比較的わずかしか中断されずに、カーソルに対する様々なレベルの制御を「オンザフライ（ｏｎ  ｔｈｅ  ｆｌｙ）」で行使できることが可能である。
【００５０】
本発明の様々な態様を実現する、本明細書で説明した例示的なシステムおよび方法を例として示したが、もちろん、本発明は、それらの実施形態に限定されないことが理解されよう。特に以上の教示に鑑みて、当業者は、変更形態を実施することができる。例えば、前述した実施形態の要素のそれぞれを単独で利用すること、またはその他の実施形態の諸要素と組合せで利用することもできる。また、本発明を添付の特許請求の範囲を使用して定義しているが、この特許請求の範囲は、本発明が、本明細書で説明した要素およびステップを任意の組合せ、または部分的な組合せで含むことを意図していることから、典型的である。また、本発明の真の趣旨および範囲を逸脱することなく、変更形態を実施することができることも認識され、理解されよう。
【図面の簡単な説明】
【００５１】
【図１】本発明の態様による例示的なデジタルコンピューティング環境を示す機能ブロック図である。
【図２】表示されたカーソルタイプのナビゲーション要素を示す例示的なコンピュータディスプレイの図である。
【図３】表示されたカーソルタイプのナビゲーション要素を示す例示的なコンピュータディスプレイの図である。
【図４】第１のポインティング要素および第２のポインティング要素、および／またはナビゲーションモード間で切り替えを行うためのスイッチを有する例示的なポインティングデバイスを示す図である。
【図５】第１のポインティング要素および第２のポインティング要素、および／またはナビゲーションモード間で切り替えを行うためのスイッチを有する例示的なポインティングデバイスを示す図である。
【図６】第１のポインティング要素および第２のポインティング要素、および／またはナビゲーションモード間で切り替えを行うためのスイッチを有する例示的なポインティングデバイスを示す図である。
【図７】第１のポインティング要素および第２のポインティング要素、および／またはナビゲーションモード間で切り替えを行うためのスイッチを有する例示的なポインティングデバイスを示す図である。
【図８】第１のポインティング要素および第２のポインティング要素、および／またはナビゲーションモード間で切り替えを行うためのスイッチを有する例示的なポインティングデバイスを示す図である。
【図９】第１のポインティング要素および第２のポインティング要素、および／またはナビゲーションモード間で切り替えを行うためのスイッチを有する例示的なポインティングデバイスを示す図である。
【図１０】第１のポインティング要素および第２のポインティング要素、および／またはナビゲーションモード間で切り替えを行うためのスイッチを有する例示的なポインティングデバイスを示す図である。
【図１１】第１のポインティング要素および第２のポインティング要素、および／またはナビゲーションモード間で切り替えを行うためのスイッチを有する例示的なポインティングデバイスを示す図である。
【図１２】第１のポインティング要素および第２のポインティング要素、および／またはナビゲーションモード間で切り替えを行うためのスイッチを有する例示的なポインティングデバイスを示す図である。
【図１３】例示的なポインティングデバイスを、ナビゲーションモード切り替え機能を有する無線受信機とともに示す平面図である。
【図１４】ナビゲーションモード切り替え機能を有する例示的なキーボードを示す平面図である。
【図１５】マルチモードのカーソル制御を実施するための例示的な方法を示す流れ図である。
【図１６】ナビゲーションエンジンの例示的なセットを示す機能ブロック図である。
【図１７】サブエンジンを有する例示的なナビゲーションエンジンを示す機能ブロック図である。
【符号の説明】
【００５２】
１００  コンピュータ
１０１  キーボード
１０７  ディスプレイ
４００、７００、８００  ポインティングデバイス
１３０１  ベース受信機
１３０２、１４０１  スイッチ
１６０１、１６０２、１７０１  ナビゲーションエンジン
【図１】
2005243021.tif 000003
【図２】
2005243021.tif 000004
【図３】
2005243021.tif 000005
【図４】
2005243021.tif 000006
【図５】
2005243021.tif 000007
【図６】
2005243021.tif 000008
【図７】
2005243021.tif 000009
【図８】
2005243021.tif 000010
【図９】
2005243021.tif 000011
【図１０】
2005243021.tif 000012
【図１１】
2005243021.tif 000013
【図１２】
2005243021.tif 000014
【図１３】
2005243021.tif 000015
【図１４】
2005243021.tif 000016
【図１５】
2005243021.tif 000017
【図１６】
2005243021.tif 000018
【図１７】
2005243021.tif 000019
【外国語明細書】
2005243021000001.pdf