(57)【要約】マルチタッチデバイスは、３Ｄオブジェクト、シーン又は領域の表示画像の操作に関連する様々なジェスチャを解釈して、曖昧性を除去することが可能である。操作の例には、パン操作、ズーム操作、回転操作及びチルト操作が含まれる。この装置は、パン操作モード、ズーム操作モード、回転操作モード及び／又はチルト操作モードの様な１つ以上の単一制御モードを含む複数の操作モードを定義することができる。さらに、この操作モードは、複数パラメータを同時に変更可能とするパン操作／ズーム操作／回転操作モードの様な複数のマルチ制御モードも含むことができる。
2015526807.tif 000002
【特許請求の範囲】
【請求項１】
３Ｄ領域の画像を表示するステップと、
電子機器に関連するタッチ感知面における最初のジェスチャであって、１つ以上の接触領域及び前記１つ以上の接触領域の少なくとも１つの最初の動きを含む特性を有する最初のジェスチャを検知するステップと、
前記最初のジェスチャの前記特性のうちの１つ以上に基づいて、少なくとも１つの単一制御モード及び少なくとも１つのマルチ制御モードを含む複数のモードから操作モードを選択するステップと、
前記検知された最初のジェスチャ及び前記選択された操作モードに基づいて、前記３Ｄ領域の前記画像を変更するステップと、
を含む、電子機器を動作させる方法。
【請求項２】
前記最初のジェスチャの継続を検知するステップと、
前記最初のジェスチャの前記検知された継続及び前記選択された操作モードに基づいて、前記３Ｄ領域の前記画像をさらに変更するステップと、
をさらに含む、請求項１に記載の方法。
【請求項３】
前記継続を検知するステップ及び前記画像をさらに変更するステップが、ジェスチャ終了イベントが検知されるまで反復される、請求項２に記載の方法。
【請求項４】
前記ジェスチャ終了イベントは、前記タッチ感知面により検知された接触領域の数がゼロまで減少した場合に検知される、請求項３に記載の方法。
【請求項５】
前記ジェスチャ終了イベントは、前記タッチ感知面に接触する前記接触領域の全てが、少なくとも閾値期間、移動を停止した場合に検知される、請求項３に記載の方法。
【請求項６】
前記複数のモードは、
前記画像が基準面に対して前記画像の傾斜角度を変えることで変更される単一制御チルトモードと、
前記画像が投影面(viewing plane)を横切って視野を横方向にシフトさせることで変更される単一制御パンモードと、
前記画像が前記画像を拡大又は縮小することで変更される単一制御ズームモードと、
前記画像が前記投影面内の前記視野を回転させることで変更される単一制御回転モードと、
前記画像が、前記チルトモード、前記パンモード及び前記ズームモードに関連する前記変更の組み合わせによって変更可能であるマルチ制御パン−ズーム−回転モードと、
を含む、請求項１に記載の方法。
【請求項７】
操作モードを選択するステップは、経験則を前記最初のジェスチャに関する前記１つ以上の特性に適用するステップを含む、請求項１に記載の方法。
【請求項８】
前記３Ｄ領域の前記画像が地図を含む、請求項１に記載の方法。
【請求項９】
前記３Ｄ領域の前記画像がＣＡＤオブジェクトを含む、請求項１に記載の方法。
【請求項１０】
１つ以上のデータプロセッサと、
命令を含む１つ以上の永続的コンピュータ可読記憶媒体と、
を備える、コンピュータにより実現されるシステムであって、
前記命令は、
３Ｄ領域の画像を表示することと、
前記システムに関連するタッチ感知面における最初のジェスチャであって、１つ以上の接触領域及び前記１つ以上の接触領域の少なくとも１つの最初の動きを含む特性を有する最初のジェスチャを検知することと、
前記最初のジェスチャに関する前記特性のうちの１つ以上に基づいて、少なくとも１つの単一制御モード及び少なくとも１つのマルチ制御モードを含む複数のモードから操作モードを選択することと、
前記検知された最初のジェスチャ及び前記選択された操作モードに基づいて、前記３Ｄ領域の前記画像を変更することと、
を含む動作を前記１つ以上のデータプロセッサに実行させるよう構成される、システム。
【請求項１１】
前記最初のジェスチャの継続を検知することと、
前記最初のジェスチャの前記検知された継続及び前記選択された操作モードに基づいて、前記３Ｄ領域の前記画像をさらに変更することと、
を含む動作を前記１つ以上のデータプロセッサに実行させるよう構成された命令をさらに備える、請求項１０に記載のシステム。
【請求項１２】
前記継続を検知すること及び前記画像をさらに変更することは、ジェスチャ終了イベントが検知されるまで反復される、請求項１１に記載のシステム。
【請求項１３】
前記ジェスチャ終了イベントは、前記タッチ感知面により検知された接触領域の数がゼロまで減少した場合に検知される、請求項１２に記載のシステム。
【請求項１４】
前記ジェスチャ終了イベントは、前記タッチ感知面に接触する前記接触領域の全てが、少なくとも１つの閾値期間、移動を停止した場合に検知される、請求項１２に記載のシステム。
【請求項１５】
前記複数のモードは、
前記画像が基準面に対して前記画像の傾斜角度を変えることで変更される単一制御チルトモードと、
前記画像が投影面を横切って視野を横方向にシフトさせることで変更される単一制御パンモードと、
前記画像が前記画像を拡大又は縮小することで変更される単一制御ズームモードと、
前記画像が前記投影面内の前記視野を回転させることで変更される単一制御回転モードと、
前記画像が、前記チルトモード、前記パンモード及び前記ズームモードに関連する前記変更の組み合わせによって変更可能であるマルチ制御パン−ズーム−回転モードと、
を含む、請求項１０に記載のシステム。
【請求項１６】
操作モードを選択することは、経験則を前記最初のジェスチャに関する前記１つ以上の特性に適用することを含む、請求項１０に記載のシステム。
【請求項１７】
永続的機械可読記憶媒体内で有形的に具現化されたコンピュータプログラム製品であって、データ処理装置に対して、
３Ｄ領域の画像を表示することと、
電子機器に関連するタッチ感知面における最初のジェスチャであって、１つ以上の接触領域及び前記１つ以上の接触領域の少なくとも１つの最初の動きを含む特性を有する最初のジェスチャを検知することと、
前記最初のジェスチャに関する前記特性のうちの１つ以上に基づいて、少なくとも１つの単一制御モード及び少なくとも１つのマルチ制御モードを含む複数のモードから操作モードを選択することと、
前記検知された最初のジェスチャ及び前記選択された操作モードに基づいて、前記３Ｄ領域の前記画像を変更することと、
を実行させるよう構成される命令を含む、コンピュータプログラム製品。
【請求項１８】
前記最初のジェスチャの継続を検知することと、
前記最初のジェスチャの前記検知された継続及び前記選択された操作モードに基づいて、前記３Ｄ領域の前記画像をさらに変更することと、
をさらに備える、請求項１７に記載のコンピュータプログラム製品。
【請求項１９】
前記継続を検知すること及び前記画像をさらに変更することは、ジェスチャ終了イベントが検知されるまで反復される、請求項１８に記載のコンピュータプログラム製品。
【請求項２０】
前記ジェスチャ終了イベントは、前記タッチ感知面により検知された接触領域の数がゼロまで減少した場合に検知される、請求項１９に記載のコンピュータプログラム製品。
【請求項２１】
前記ジェスチャ終了イベントは、前記タッチ感知面に接触する前記接触領域の全てが、少なくとも１つの閾値期間、移動を停止した場合に検知される、請求項２０に記載のコンピュータプログラム製品。
【請求項２２】
前記複数のモードは、
前記画像が基準面に対して前記画像の傾斜角度を変えることで変更される単一制御チルトモードと、
前記画像が投影面を横切って視野を横方向にシフトさせることで変更される単一制御パンモードと、
前記画像が前記画像を拡大又は縮小することで変更される単一制御ズームモードと、
前記画像が前記投影面内の前記視野を回転させることで変更される単一制御回転モードと、
前記画像が、前記チルトモード、前記パンモード及び前記ズームモードに関連する前記変更の組み合わせによって変更可能であるマルチ制御パン−ズーム−回転モードと、
を含む、請求項１７に記載のコンピュータプログラム製品。
【請求項２３】
操作モードを選択することは、経験則を前記最初のジェスチャに関する前記１つ以上の特性に適用することを含む、請求項１７に記載のコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本出願は、２０１２年７月１５日に出願された米国仮出願第６１／６７１，７７４号であり、その開示は、その全体を、参照により本明細書に援用するものとする。
【０００２】
本出願は、次の米国特許及び出願：２００１年１１月２７日に発行された米国特許第６，３２６，８４６号（１９９９年１月２５日に出願された出願番号第０９／２３６，５１３号）、２００８年１２月２３日に発行された米国特許第７，４６９，３８１号（２００７年１２月１４日に出願された出願番号第１１／９５６，９６９号）、２００９年１月２０日に発行された米国特許第７，４７９，９４９号（２００８年４月１１日に出願された出願番号第１２／１０１，８３２号）、及び２００７年１月３１日に出願された米国特許出願第１１／７００，６３６号に関連する。これらの特許と出願の各開示は、その全体を参照により本願明細書において援用する。
【０００３】
本開示は、一般に、マルチタッチジェスチャ認識に関し、特に、三次元（３Ｄ）相互作用のマルチタッチジェスチャ認識の曖昧性除去に関する。
【背景技術】
【０００４】
マルチタッチデバイスでは、ユーザは、一般に１本以上の指又はスタイラスペンなどの他の接触オブジェクトでタッチ感知面に接触することにより生成されるジェスチャを用いて、表示される情報と相互作用することが可能である。接触点の数及び接触点の動作は、マルチタッチデバイスにより検知され、ジェスチャとして解釈されると、これに応じて、このデバイスは様々な動作を実行することができる。
【発明の概要】
【０００５】
本発明の特定の実施形態によれば、マルチタッチデバイスは、３Ｄオブジェクト、シーン、又は領域の表示画像に関連する様々なジェスチャをインテリジェントに解釈して、曖昧性を除去することが可能である。例えば、３Ｄ領域を示す表示画像（例えば、地図）と相互作用するときに、ユーザは、領域の様々な部分を見るための画像のパン操作、領域のより詳細、あるいは、より大きな部分を見るための拡大操作又は縮小操作、及び／又は様々な角度から領域を見るための画像の回転操作又はチルト操作を実行したいと思うことがある。別の場合では、ユーザは、単一の調整を実行したり、又は例えばパン操作あるいは回転操作中のズーム操作のように一度で複数のビューイングパラメータを自由に調整したいと思うこともある。マルチタッチデバイスは、表示画像を変更するための１つ以上のコマンドに検知されたジェスチャを変換するために、ユーザのジェスチャを検知するセンサー及び解釈ロジック（例えば、プログラマブルプロセッサ、専用回路、又はこれらの組み合わせ上で実行するソフトウェアに実装される）を含むことができる。
【０００６】
いくつかの実施形態では、解釈ロジックは、ユーザにより実行された最初のジェスチャ動作に基づいて、画像の操作モードを選択することが可能であり、画像操作コマンドは、ジェスチャ（最初のジェスチャ及び後続の動作を含む）の解釈に基づいて生成することができる。画像操作コマンドは、例えば、仮想カメラ用のビューイング位置、ビューイング方向、及び／又はビューイング角度を定義するパラメータを変更することにより画像を操作するために、デバイスによって実行可能である。例えば、操作モードは、ビューイング位置を変更するパン操作モード、画像の倍率を変更する（つまり、見られているオブジェクト又は見られている領域に近づくよう、あるいは、離れるよう仮想カメラを移動させるための）ズーム操作モード、異なる方向に仮想カメラを配向する回転操作モード、及び／又は仮想カメラに関連する傾斜角度を調整するチルト操作モードなどの１つ以上の単一制御モードを含むことができる。さらに、操作モードは、複数のパラメータを同時に変更可能とするパン操作／ズーム操作／回転操作モードなどの複数のマルチ制御モードも含むことができる。
【０００７】
以下の詳細な説明及び添付の図面を参照することにより、本発明の性質及び利点に関する理解をより深めることができよう。
【図面の簡単な説明】
【０００８】
【図１】本発明の一実施形態に係るコンピュータシステムの図である。
【図２】本発明の一実施形態に係る電子機器上に表示可能な地図を示す図である。
【図３Ａ】本発明の一実施形態に係るパン操作ジェスチャを示す図である。
【図３Ｂ】本発明の一実施形態に係るパン操作ジェスチャを示す図である。
【図４Ａ】本発明の一実施形態に係る拡大操作ジェスチャを示す図である。
【図４Ｂ】本発明の一実施形態に係る拡大操作ジェスチャを示す図である。
【図５Ａ】本発明の一実施形態に係る回転操作ジェスチャを示す図である。
【図５Ｂ】本発明の一実施形態に係る回転操作ジェスチャを示す図である。
【図６Ａ】本発明の一実施形態に係るチルト操作ジェスチャを示す図である。
【図６Ｂ】本発明の一実施形態に係るチルト操作ジェスチャを示す図である。
【図７】本発明の一実施形態に係るジェスチャを用いて画像を操作するプロセスのフローチャートである。
【図８Ａ】本発明の一実施形態に係るマルチ制御操作を示す図である。
【図８Ｂ】本発明の一実施形態に係るマルチ制御操作を示す図である。
【図９】本発明の一実施形態に係るジェスチャ入力に基づいて操作モードを選択するプロセスのフローチャートである。
【図１０】本発明の一実施形態に係るジェスチャ入力に基づいて操作モードを選択する別のプロセスのフローチャートである。
【図１１Ａ】本発明の一実施形態に係るマルチ制御操作を示す図である。
【図１１Ｂ】本発明の一実施形態に係るマルチ制御操作を示す図である。
【図１２Ａ】本発明の一実施形態に係るマルチ制御操作を示す図である。
【図１２Ｂ】本発明の一実施形態に係るマルチ制御操作を示す図である。
【発明を実施するための形態】
【０００９】
本出願は、以下の特許と文献を含み、これらをこの発明を実施するための形態の一部として包含する。
・２００１年１１月２７日に発行されたＷｅｓｔｅｒｍａｎらの米国特許第６，３２６，８４６号。
・２００８年１２月２３日に発行されたＯｒｄｉｎｇの米国特許第７，４６９，３８１号。
・２００９年１月２０日に発行されたＪｏｂｓらの米国特許第７，４７９，９４９号。
・２００８年２月１４日に公開されたＷｅｓｔｅｒｍａｎらの米国特許出願公開第２００８／００３６７４３号（２００７年１月３１日に出願された出願第１１／７００，６３６号）。
【００１０】
本発明の特定の実施形態によれば、マルチタッチデバイスは、３Ｄオブジェクト、シーン、又は領域の表示画像に関連する様々なジェスチャをインテリジェントに解釈して、曖昧性を除去することが可能である。例えば、３Ｄ領域を示す表示画像（例えば、地図）と相互作用するときに、ユーザは、領域の異なる部分を見るための画像のパン操作、領域のより詳細な部分、あるいはより大きな部分を見るための拡大操作又は縮小操作、及び／又は様々な角度から領域を見るための画像の回転操作又はチルト操作を実行したいと思うことがある。別の場合では、ユーザは、単一の調整を実行したり、又は例えば、パン操作、あるいは回転操作中のズーム操作のように一度で複数のビューイングパラメータを自由に調整したいと思うこともある。マルチタッチデバイスは、表示画像を変更するための１つ以上のコマンドに検知されたジェスチャを変換するために、ユーザのジェスチャを検知するセンサー及び解釈ロジック（例えば、プログラマブルプロセッサ、専用回路、又はこれらの組み合わせ上で実行するソフトウェアに実装される）を含むことができる。
【００１１】
いくつかの実施形態では、解釈ロジックは、ユーザにより実行された最初のジェスチャ動作に基づいて、画像の操作モードを選択することが可能であり、画像操作コマンドは、ジェスチャ（最初のジェスチャと後続の動作を含む）の解釈に基づいて生成することができる。画像操作コマンドは、例えば、仮想カメラ用のビューイング位置、ビューイング方向、及び／又はビューイング角度を定義するパラメータを変更することにより画像を操作するために、デバイスによって実行可能である。例えば、操作モードは、ビューイング位置を変更するパン操作モード、画像の倍率を変更する（つまり、見られているオブジェクト又は見られている領域に近づくよう、あるいは離れるよう仮想カメラを移動させるための）ズーム操作モード、異なる方向に仮想カメラを配向する回転操作モード、及び／又は仮想カメラに関連する傾斜角度を調整するチルト操作モードなどの１つ以上の単一制御モードを含むことができる。さらに、操作モードは、複数のパラメータを同時に変更可能とするパン操作／ズーム操作／回転操作モードなどの複数のマルチ制御モードも含むことができる。
【００１２】
Ｉ．マルチタッチ曖昧性除去システム
図１は、本発明の一実施形態に係るコンピュータシステム１００を示す。コンピュータシステム１００は、例えば、デスクトップコンピュータ又はラップトップコンピュータ、タブレットコンピュータ、スマートフォン、車載ナビゲーションシステム、パーソナルデータアシスタント（ＰＤＡ）又は特定のフォームファクタに限定されない他の任意の種類のコンピュータ機器を含む様々なフォームファクタを有する様々なコンピュータ機器のうちのいずれかとして実装可能である。コンピュータシステム１００は、処理装置１０５、ストレージサブシステム１１０、入力装置１２０、ディスプレイ１２５、ネットワークインタフェース１３５、及びバス１４０を含むことができる。
【００１３】
処理装置１０５は、１つ以上のコアを有することのできる単一のプロセッサ、又は複数のプロセッサを含むことができる。いくつかの実施形態において、処理装置１０５は、汎用の一次プロセッサに加えて、グラフィックスプロセッサ、デジタル信号プロセッサなどの１つ以上の専用コプロセッサを含むことができる。いくつかの実施形態において、いくつかの又は全ての処理装置１０５は、特定用途向け集積回路（ＡＳＩＣ）又はフィールドプログラマブルゲートアレイ（ＦＰＧＡ）のようなカスタム回路を使用して実装することができる。いくつかの実施形態において、そのような集積回路は、回路自体に記憶された命令を実行する。他の実施形態では、処理装置１０５は、ストレージサブシステム１１０内に記憶された命令を実行することができる。
【００１４】
ストレージサブシステム１１０は、システムメモリ、読み出し専用メモリ（ＲＯＭ）、及び永続的ストレージ装置などの様々なメモリユニットを含み得る。ＲＯＭは、処理装置１０５及び電子機器１００のその他のモジュールによって使用される静的データ及び命令を記憶することができる。永続的ストレージ装置は、コンピュータシステム１００の電源を停止した時でも命令やデータを記憶する不揮発性読み書き可能メモリユニットであって良い。システムメモリは、動的ランダムアクセスメモリなどの揮発性読み書きメモリ、又は必要に応じて不揮発性メモリを用いて実装することができる。このシステムメモリは、処理装置１０５によって現在使用中の命令及びデータの一部又は全てを記憶することができる。
【００１５】
ストレージサブシステム１１０又はそのユニットは、様々な種類の半導体メモリチップ（ＤＲＡＭ、ＳＲＡＭ、ＳＤＲＡＭ、フラッシュメモリ、プログラマブルＲＯＭ）などを含む、コンピュータ可読記憶媒体の任意の組み合わせを用いて実装することができる。また、磁気ディスク及び／又は光ディスクも使用することができる。いくつかの実施形態では、ストレージサブシステム１１０は、読み出し可能及び／又は書き込み可能であり得るリムーバブル記憶媒体を含むことができる。このような媒体の例としては、コンパクトディスク（ＣＤ）、読み出し専用デジタル多目的ディスク（例えば、ＤＶＤ−ＲＯＭ、２層式ＤＶＤ−ＲＯＭ）、読み出し専用及び書き込み可能Ｂｌｕｅ−Ｒａｙ（登録商標）ディスク、超高密度光ディスク、フラッシュメモリカード（例えば、ＳＤカード、ミニＳＤカード、マイクロＳＤカード等）、磁気「フロッピー（登録商標）」ディスク等が挙げられる。コンピュータ可読記憶媒体は、無線で伝達され又は有線接続を介して伝達される搬送波及び一時的電子信号を含まない。
【００１６】
いくつかの実施形態では、ストレージサブシステム１１０は、地図アプリケーション１４５などの、処理装置１０５により実行される１つ以上のソフトウェアプログラムを記憶することができる。「ソフトウェア」とは、一般的に、処理装置１０５によって実行された時、コンピュータシステム１００に様々な動作を実行させて、ソフトウェアプログラムの動作を実行する１つ以上の特定のマシン実装を定義する命令のシーケンスを意味する。命令は、読み出し専用メモリ内に存在するファームウェアとして、及び／又はプロセッサで処理するためにメモリ内に読み込むことのできる磁気記憶装置内に記憶されているアプリケーションとして、記憶することができるソフトウェアは、単一のプログラム又は必要に応じて相互作用する個別のプログラム又はプログラムモジュールの集合として実装し得る。プログラム及び／又はデータは、不揮発性記憶装置に記憶することができ、プログラム実行時に揮発性の作業メモリにその全部又は一部をコピーすることができる。処理装置１０５は、行うべきプログラム命令及び処理すべきデータをストレージサブシステム１１０から取得して、本明細書内で説明する様々な動作を行うことができる。
【００１７】
ユーザインタフェースは、１つ以上のユーザ入力装置１２０、ディスプレイ装置１２５、及び／又は及び１つ以上のその他のユーザ出力装置（図示せず）によって提供することができる。入力装置１２０はユーザがコンピューティングシステム１００に信号を供給するために用いることのできる任意の装置を含むことができ、コンピューティングシステム１００はそれら信号を特定のユーザ要求又はユーザ情報の指示として解釈することができる。様々な実施形態において、入力装置１２０は、キーボード、タッチパッド、タッチスクリーン、マウス、又は他のポインティング装置、スクロールホイール、クリックホイール、ダイヤル、ボタン、スイッチ、キーパッド、マイクロホン等のうちのいずれか又は全てを含むことができる。ジェスチャ認識を組み込む実施形態では、少なくとも１つの入力装置１２０は、複数の異なる接触領域の位置及び動作を検知可能とするタッチ感知面を提供することができる。その例が、米国特許第６，３２６，８４６号及び米国特許第７，４７９，９４９号において述べられている。だが、タッチ感知面に関する特別な実装は要求されないという点を、理解されたい。
【００１８】
ディスプレイ１２５は、電子機器１００が生成する画像を表示することができ、例えばブラウン管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、有機発光ダイオード（ＯＬＥＤ）などの発光ダイオード（ＬＥＤ）、プロジェクションシステムなどの様々な画像生成技術を、これらを支援する電子回路（例えばデジタル／アナログコンバータ又はアナログ／デジタルコンバータ、信号プロセッサなど）と共に含むことができる。いくつかの実施形態は、タッチセンシティブ入力装置とディスプレイ装置の双方として機能するタッチスクリーン（例えば、ＬＣＤ、ＬＥＤ、又はＯＬＥＤディスプレイ上のタッチセンシティブオーバーレイ）などの装置を含むことができる。ディスプレイがタッチ感知式でない実施形態では、ジェスチャに基づく入力を支援するための独立したタッチ感知面を提供可能である。
【００１９】
いくつかの実施形態において、ディスプレイ１２５に加えて、又はその代わりに、その他のユーザ出力装置を提供することができる。例として、表示灯、スピーカ、触覚「ディスプレイ」装置、プリンタなどが挙げられる。
【００２０】
いくつかの実施形態において、ユーザインタフェースは、グラフィカルユーザインタフェースを提供することができ、その中で、ディスプレイ１２５の特定のエリア内の可視画像要素は、ユーザがユーザ入力装置１２０を使用して選択するアクティブ要素又は制御要素として規定される。例えば、ユーザは、ユーザ入力装置（例えば、マウス又はトラックパッド）を操作して、オンスクリーンカーソル又はポインターを制御要素上で位置決めしたら、選択を示すために、ボタンをクリックするか又はタッチ感知面をタップ操作する。代替として、ユーザは、タッチスクリーン装置上の制御要素を（例えば、指又はスタイラスペンを使って）タッチすることができる。いくつかの実施形態では、ユーザは、制御要素に関連付けられる１つ以上の単語を話すことができる（この単語は、例えば、要素上のラベル又は要素に関連付けられる機能であり得る）。いくつかの実施形態において、タッチセンサー式装置上のユーザのジェスチャは入力コマンドとして認識及び解釈される。これらのジェスチャはディスプレイ１２５における任意の特定アレイに関連付けることができるが、必ずしもその必要はない。また、他のユーザインタフェースも実装可能である。
【００２１】
ネットワークインタフェース１３５は、電子機器１００の音声及び／又はデータ通信機能を提供することができる。いくつかの実施形態において、ネットワークインタフェース１３５は、音声及び／又はデータ用無線ネットワークを（例えばセルラー電話技術、３Ｇ、４Ｇ、若しくはＥＤＧＥなどの先端データネットワーク技術、ＷｉＦｉ（ＩＥＥＥ  ８０２．１１系規格若しくはその他の移動体通信技術又はこれらの任意の組み合わせを使用して）アクセスする無線周波数（ＲＦ）送受信機構成要素、ＧＰＳ受信器構成要素、及び／又はその他の構成要素を含むことができる。いくつかの実施形態において、ネットワークインタフェース１３５は、無線インタフェースに加えて、又はその代わりに、有線ネットワーク接続（例えば、イーサネット（登録商標））を提供することができる。ネットワークインタフェース１３５は、ハードウェア構成要素（例えば、アンテナ、変調器／復調器、エンコーダ／デコーダ、及びその他のアナログ及び／又はデジタル信号処理回路）並びにソフトウェア構成要素の組み合わせを使用して実施することができる。
【００２２】
バス１４０は、電子機器１００の多数の内部装置を通信可能に接続する様々なシステムバス、周辺バス、及びチップセットバスを含むことができる。例えば、バス１４０は、処理装置１０５をストレージサブシステム１１０と通信可能に接続することができる。バス１４０はまた、入力装置１２０及びディスプレイ１２５にも接続している。バス１４０はまた、電子機器１００をネットワークインタフェース１３５を介してネットワークにも連結している。このようにすれば、電子機器１００を複数のコンピュータシステム（例えばローカルエリアネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、イントラネット、又は複数のネットワークのネットワーク（例えばインターネット）の一部とすることができる。電子機器１００のいずれか又は全ての構成要素を本発明と共に使用することができる。
【００２３】
いくつかの実施形態は、マイクロプロセッサ、コンピュータプログラム命令をコンピュータ可読記憶媒体に記憶するストレージ及びメモリなどの電子構成要素を含む。本明細書内で説明する特徴の多くは、コンピュータ可読記憶媒体上で符号化されたプログラム命令のセットとして規定されるプロセスとして実施することができる。これらのプログラム命令が１つ以上の処理装置によって実行されるときに、プログラム命令で指示されている様々な動作を、処理装置に実行させる。プログラム命令又はコンピュータコードの例としては、コンパイラによって作成されるようなマシンコード、及びインタープリタを使用してコンピュータ、電子構成要素、又はマイクロプロセッサによって行われる高レベルコードを含むファイルが挙げられる。
【００２４】
処理装置１０５は、好適なプログラミングにより電子機器１００に様々な機能性を提供することができる。例えば、処理装置１０５は、地図アプリケーション１４５を実行することができる。地図アプリケーション１４５は、所与の領域の地図を表示する機能などの様々な機能性を提供することができる。表示領域は、地図データを利用することができる「地図作成済み」領域の全て又は一部であって良い。地図データは、例えば、ストレージサブシステム１１０においてローカルに記憶されるか又は離れた場所に記憶してから、必要に応じて例えばネットワークインタフェース１３５を介して取得することができる。様々な実施形態において、地図作成済み領域は、地球表面の一部（又は、全て）、別の惑星、あるいは、天体の表面、宇宙のある領域又は仮想的な領域（例えば、アーティストにより作成された領域）を表示可能であり、任意の時点において、地図アプリケーション１４５は、地図作成済み領域の任意の部分（例えば、全体まで）を表示可能である。地図は、概略的モデル（例えば、線画）として、写真のようにリアルなモデルとして（例えば、人工衛星、航空機及び／又は地上写真から作成するか、あるいは、アーティストによる詳細なレンダリングから作成）又はこれら２つのモデルの混合として（例えば、写真のようにリアルな画像上の簡略的な道の重ね合わせとして）レンダリングすることができる。
【００２５】
所与の任意の時点において、地図アプリケーション１４５は、地図作成済み領域の一部の領域（又は、全て）の画像を表示することができる。例えば、表示領域は、装置の現在位置及び／又は対象領域を特定するユーザ入力に基づいて選択可能である。表示領域は、例えば、ユーザ入力に基づき及び／又はコンピューティングシステム１００の位置（場所及び／又は向き）の変化に応じて動的に更新することができる。
【００２６】
コンピュータシステム１００は例示的であり、変型及び修正が可能であることが理解されるであろうコンピュータシステム１００は、本明細書内では特に説明しないその他の機能（例えば携帯電話、全地球測位システム（ＧＰＳ）、電力管理、１つ以上のカメラ、外部機器又はアクセサリを接続するための様々な接続ポートなど）を有することができる。さらに、コンピュータシステム１００は、本明細書において特定のブロックを参照して説明されているが、これらのブロックは説明の都合上定義されたものであって、構成部品の特定の物理的構成を意味することを意図していないことが理解されよう。さらに、ブロックは、物理的に異なる構成要素に対応する必要はない。ブロックは、例えば、プロセッサをプログラムすることによって、又は適正な制御回路を設けることによって様々な動作を実行するように構成することができ、様々なブロックは、初期の構成を取得する方法によって再構成が可能であるか又は不可能であり得る。本発明の実施形態は、回路とソフトウェアとの任意の組み合わせを使って実装される電子機器を含む様々な装置において実現することができる。
【００２７】
図２は、本発明の一実施形態に係る電子機器（例えば、地図アプリケーション１４５を実行するコンピュータシステム１００）上に表示可能な地図２００を示す。地図２００は、ディスプレイに適合するサイズの領域を示す。この例では、地図２００は、真上に限定せず様々な角度から見ることが可能な３Ｄ地図であり、ユーザは、ジェスチャを実行してビューを操作することができる。いくつかの実施形態では、地図２００は、２Ｄモードと３Ｄモードとを切り替えることができる。
【００２８】
ユーザは、表示された地図を操作することができる。いくつかの実施形態では、表示される地図は、３Ｄ空間内の仮想カメラの位置と向きを定義するパラメータに基づいてレンダリングされる。ユーザからのジェスチャ入力に応じて、パラメータを変更するためのコマンドを実行可能であり、これによって、カメラが再配置され（つまり、位置及び／又は向きが変化する）、地図は、新たなカメラパラメータで再レンダリング可能である。例えば、地図の地面と平行な面内で仮想カメラを並進移動させることで、地図をパン操作することが可能であり、これにより、様々なエリアを見ることができる。地面に近づくよう又は地面から離れるよう仮想カメラをその光軸に沿って並進移動させることで（又は、仮想カメラを移動させずに仮想カメラに関連する焦点距離又は倍率を変更することにより）、地図をズーム操作可能であり、これによって、ビュー内のエリアを拡大又は縮小することが可能である。仮想カメラの光軸及び／又は「上向き」ベクトルの向きを変えることによって、地図を回転することができる。光軸と地図の地面との間の「傾斜」角度を変更するよう仮想カメラを再配置することによって、地図を傾斜させることができる。この様な操作を実行するのに使用可能なジェスチャの例を、以下で述べる。
【００２９】
いくつかの実施形態では、表示された地図は、ユーザが新たな情報にアクセス可能とするためのインタフェースとしても動作可能である。例えば、ユーザは、地図上にマークされた位置（例えば、レストラン２０２又は博物館２０４）をタップ操作して、その場所に関するより多くの情報（例えば、施設の電話番号、営業時間、提供される商品やサービス、顧客レビューやフィードバック等）を得ることができる。位置に関する他の情報、例えば、現在又は予想される気象条件、次回のイベント、その位置へナビゲートするためのターンバイターン指示、駐車場の空き状況等も利用することができる。
【００３０】
図２と及び他の図は、地図画像を示しているが、実装に応じて、画像は、例えば、コンピュータ支援設計（ＣＡＤ）プログラムにより作成されたオブジェクトのモデル、現実のオブジェクト及び／又はコンピュータにより作成されたオブジェクトを含むシーン画像のレンダリング、又は現実又は仮想的な３Ｄ領域の他の任意の画像であって良い。
【００３１】
ＩＩ．単一制御モード
表示された地図（又は他の画像）を操作する際に使用可能なジェスチャの例について述べる。これらの例において、ジェスチャは、タッチ感知面上の接触の数及び接触の動作に基づいて定義される。いくつかの実施形態では、表示された接触の数は、最小数として処理され、余分な接触は全て無視される。
【００３２】
図３Ａ及び図３Ｂは、表示領域に対してユーザが選択した方向に地図の可視部分を電子機器にシフト、つまり、並進移動させる「パン操作」ジェスチャを示す。いくつかの実施形態では、カメラの配向を換えずに地図の地面と平行な面内で仮想カメラを移動させることで、パン操作を実行することができる。
【００３３】
図３Ａを参照すると、地図３００ａがタッチスクリーンディスプレイ上に表示された場合、ユーザは、接触３０２ａ（例えば、指）をスクリーン上に置いて、矢印３０４で示すある方向に接触３０２ａを移動することができる。これに応じて、電子機器は、図３Ｂの地図３００ｂで示すように指示された方向に地図を並進移動することが可能である。
【００３４】
いくつかの実施形態では、接触３０２ｂ及び地図３００ｂが共に表示領域の縁部に対してシフトされる図３Ｂに示す様に、地図上の略同じ位置が接触の下に留まるよう、地図を接触の動作３０４と連動させて並進移動させる。例えば、地図３００ａでは、美術館が接触３０２ａの下にあり、地図３００ｂでは、接触３０２ｂの略下に同美術館が留まっている。したがって、ユーザは、地図の移動の速度及び方向を制御可能であり、パン操作ジェスチャによって、地図の「ドラッグ」操作体験が得られる。地図のドラッグ操作とは、表示領域に表示される地図の一部の変更及び／又は可視部分の境界を画定するパラメータの変更を意味し得る。
【００３５】
いくつかの実施形態では、ユーザは、方向を変更することができる。例えば、ユーザは、接触３０２ａ（例えば、指）をスクリーン上に置いて、矢印３０４で示すある方向に接触３０２ａを移動させてから、接触３０２ａを別の方向（例えば、上下左右又は斜め方向）に移動可能である。これに応じて、電子機器は、接触が移動する際、接触の移動と共に地図を並進移動することができる。パン操作ジェスチャは、直線動作に限定されない。いくつかの実施形態では、ユーザは、地図用に曲線動作経路を定義することが可能である。例えば、接触３０２ａの移動は、（矢印３０４で示す直線の代わりに）曲線経路であっても良い。接触の移動は、直線移動と非直線移動の任意の組み合わせを含むことができる。
【００３６】
いくつかの実施形態では、パン操作は、１つの接触又は平行方向における２つ以上の接触の直線動作を伴うジェスチャとして見なすことが可能である。２つ（または、これより多い）接触によるパン操作は、動作の直線性、向き、及び速度を含む動作の特性の様々な組み合わせに基づいて、他のジェスチャと区別可能である。接触の相対位置を用いても、ジェスチャを区別することができる。例を、以下で説明する。
【００３７】
図４Ａ及び図４Ｂは、レンダリングする地図のサイズを電子機器に拡大させる「拡大操作」ジェスチャを示す。いくつかの実施形態では、拡大するために地面に向かうよう又は縮小するために地面から離れるよう、仮想カメラをその光軸に沿って移動させることによって、拡大操作又は縮小操作を実行することができる。いくつかの実施形態では、仮想カメラに関連する倍率又は焦点距離を変えることによって、ズーム操作を実行可能である。
【００３８】
図４Ａを参照すると、地図４００ａがタッチスクリーンディスプレイ上に表示されると、ユーザは、２つの接触４０２ａ及び４０４ａ（例えば、１本の指と親指又は２本の指）をタッチスクリーンと接触させて配置し、接触４０２、４０４を矢印４０６、４０８で示す様に互いに離して移動させることが可能である。これに応じて、電子機器は、図４Ｂで示す様に地図を拡大することができる。この動作は、外側ピンチ操作又は「逆ピンチ操作」とも呼ばれる。いくつかの実施形態では、逆ピンチ（ピンチ）動作は、矢印４０６、４０８が成す角度によって特定することができる。例えば、ゼロ度の閾値角度範囲内であれば、拡大／縮小操作を特定可能である。
【００３９】
いくつかの実施形態では、図４Ｂで示す様に地図上の略同じ位置が各接触の下に留まるよう、地図は接触の移動と連動して拡大される。例えば、接触４０２ａ及び４０２ｂは共に、地図４００ａ及び４００ｂ上の同じ交差点付近（例えば、Ｍｉｎｎａ通りと第３通りの角付近）にあり、さらに、接触４０４ａ及び４０４ｂは、地図４００ａ及び４００ｂ上の同じ場所付近（例えば、ブロックを約半分下った第３通りから少し離れた場所）にある。つまり、移動４０６、４０８によって地図４００ａの表示を４００ｂに変化させた後、接触は、地図の対象に対して類似の位置を有することが可能である。したがって、ユーザは、ズーム操作の速度、程度、及び中心位置を制御することができる。
【００４０】
いくつかの実施形態では、接触がゆっくりと移動する場合、つまり、低速逆ピンチ操作の場合、拡大動作は、接触の移動に連動する。いくつかの実施形態では、高速逆ピンチ操作ジェスチャによって、地図を所定の刻み幅まで、例えば、現倍率から次の「刻み」まで拡大させることが可能である。例えば、１０、１６、２０刻みなど、最小倍率から最大倍率まで任意の数の所定刻みが可能である。例えば、ユーザが、（例えば、都市のブロックの）超拡大ビューから超縮小ビュー（例えば、都市のビュー、州のビュー、国のビュー等）まで移動したい場合、より素早く縮小するために高速逆ピンチ操作を使うことができる。
【００４１】
別途図示していないが、レンダリングする地図のサイズを縮小するために、関連する「縮小操作」ジェスチャも定義可能である。縮小操作ジェスチャは、例えば、図４Ａ及び４Ｂの接触４０２及び４０４を離れるのではなく、近付いて移動するよう接触４０２及び４０４の動作を逆向きにする内側ピンチ操作又は「ピンチ操作」として定義可能である。高速逆ピンチ操作及び低速逆ピンチ操作並びに逆ピンチ操作接触に合わせた地図の拡大の調整を含む、逆ピンチ操作及び拡大操作に関する上記の同様の概念を、縮小操作用の内側ピンチ操作にも適用することができる。
【００４２】
ズーム操作が接触の動作と連動するいくつかの実施形態では、拡大操作及び縮小操作は、単一のジェスチャに応じて実行することができる。単一のジェスチャとは、ジェスチャ終了イベント（例えば、タッチ感知面から１つ以上の接触を取り除く）まで最初のジェスチャ時から継続するか又は発生するものとして定義可能である。例えば、ユーザは、縮小操作を開始して、遠くまで移動過ぎたと決定したら、動作を逆にして、ズームバック操作を実行することができる。この例では、縮小操作及びズームバック操作時に、ユーザの指（又は、他の接触）の２つが、タッチ感知面と接触したままである。
【００４３】
いくつかの実施形態では、拡大操作及び縮小操作は、接触間の距離を変化（増加又は減少）させるよう、略直線的に移動する２つ以上の接触によって特徴付けられる単一のジェスチャとして見なすことができる。例えば、図４Ａ及び図４Ｂに示すように、接触４０２ａ及び４０４ａは、第１の距離（４１０ａ）まで離れる。動作４０６及び４０８の後、接触４０２ｂ及び４０４ｂは、第２の距離（４１０ｂ）まで離れる。図示の逆ピンチ操作では、第１の距離は第２の距離よりも短い。ピンチ操作では、第１の距離は、第２の距離よりも長くても良い。
【００４４】
図５Ａ及び図５Ｂは、ディスプレイに対する地図の回転を電子機器に実行させることで、ユーザが様々な角度から地図を見られるようにする「回転操作」ジェスチャを示す。いくつかの実施形態では、回転操作は、仮想カメラの「上向き」ベクトルの向きを変える光軸周囲の仮想カメラの回転として実施することができる。だが、この操作では、特に光軸が地図の地面と垂直方向に向いていない場合は、３Ｄ地図を見るユーザにとって、望ましい効果が生み出されないことがある。その代わりとして、ユーザは、横向き又は上下逆のエリアを表示するよりも、別の方向からの同じエリアのビューを提示する（例えば、北方向に対して東方向を見る）回転を実行することが好ましい場合がある。したがって、いくつかの実施形態では、回転操作を、地図の地面と平行な円内で仮想カメラを移動することとして定義することができる。この円の中心は、仮想カメラの光軸が地面と交差する「目標地点」であり、円の半径は、現在の傾斜角度及びカメラの位置から決定される。同時に、円周囲の動作と共に、光軸が目標地点を向く状態を維持するよう、カメラの向きを変える。光軸が地面と垂直となる（上から真っ直ぐ見下ろす）特殊な場合では、仮想カメラの円形動作は、光軸周囲の回転となることが可能である。
【００４５】
図５Ａを参照すると、地図５００ａがタッチスクリーンディスプレイ上に表示される場合、ユーザは、２つの接触５０２ａ及び５０４ａ（例えば、１本の指と親指又は２本の指）をタッチスクリーンと接触して配置し、接触の共通の中心の略周囲で弧を描くように接触を移動させることができる。ユーザにとっては、この動作は、１本の指及び親指を用いたダイヤルのひねり操作と類似しているかもしれない。これに応じて、電子機器は、図５Ｂに示す様に地図５００ｂを回転することができる。いくつかの実施形態では、図５Ａと図５Ｂとを比較することで分かるように、地図が回転する際、通り及びランドマークの識別情報を含む地図に関連するテキスト要素は、略正しい向きを維持するよう、向きを変えることができる。
【００４６】
いくつかの実施形態では、接触５０２ａから接触５０２ｂまでの動作及び接触５０４ａから５０４ｂまでの動作（矢印５０６及び５０８で示すように）と連動して、回転操作が実行される。回転の大きさは、共通の中心の周囲の接触５０２ａ、５０４ａの３６０°全回転が３６０°全回転に対応するような大きさで良い。この場合では、地図と直交する光軸により実行される回転によって、図５Ａ及び図５Ｂに示すように、地図上の略同じ位置を接触５０２、５０４ａの下に留めることができる。例えば、接触５０２ａは、接触５０２ｂと比べると他の地図上のオブジェクトに対して地図上の略同じ位置（ブロックを約４分の１下ったＭｉｎｎａ通りから少し離れた場所）であって良く、接触５０４ａは、接触５０４ｂと比べると他の地図上のオブジェクトに対して地図上の略同じ位置（例えば、美術館付近）であって良い。光軸の他の向きについては、必ずしもこの限りでは無い。
【００４７】
いくつかの実施形態では、ジェスチャをゆっくりと実行する場合、回転は接触の動作と連動する。いくつかの実施形態では、高速回転操作ジェスチャによって、地図を所定の角度に渡り（例えば、４５°又は９０°）回転させることができる。いくつかの実施形態では、２つの接触がそれらの間のある地点周囲で同一方向に回転する場合、動作の回転（直線とは対照的な）構成要素に基づき、回転操作ジェスチャを他のジェスチャと区別することができる。
【００４８】
図６Ａ及び図６Ｂは、地面に対する地図が見られる角度を調整するために使用可能な「チルト操作」ジェスチャを示す。この角度は、傾斜角度又はピッチとも呼ばれる。いくつかの実施形態では、仮想カメラが地面と垂直な円内を移動することを除き、傾斜角度の調整は、回転操作と幾分類似して実行される。円の中心は、光軸が地面と交差する目標地点であり、円の平面は、光軸を含み、地面に垂直であるとして定義される。仮想カメラがこの鉛直方向に配向された円に沿って移動する際、光軸が目標地点を向いたままとなるよう、カメラは同時に向きを変更される。傾斜角度は、地面と光軸との間の角度として定義され、０°は地面に対応し、９０°（地面に垂直）は直下視に対応する。
【００４９】
図６Ａを参照すると、地図６００ａは、９０°の傾斜角度、即ち、地図エリアを上から直下視される。地図を傾斜させるため（又は、傾斜角度を変えるため）、ユーザは２つの接触６０２ａ及び６０４ａ（例えば、２本の指又は１本の指及び親指）を隣接してディスプレイのＸ軸に沿って配置し、接触６０２ａ、６０４ａを矢印６０６、６０８で示す様にこれらの接触を結びつける線と略直交する方向に移動させることで、図６Ｂにおける接触６０２ｂ及び６０４ｂの配置となる。図６Ｂに示すように、チルト操作ジェスチャは、直下視ではなく、地図エリアを傾いた角度で見られるよう、地図６００ｂ内のビューイング角度を変化させる。
【００５０】
傾斜角度の変化の速度と程度は、ユーザの動作に応じて決定することができる。例えば、変換因子を用いて、接触６０２ａ、６０２ｂ、６０４ａ、６０４ｂが移動する距離を傾斜角度の変化に変換可能であり、この変化を接触の動作に合わせて適用することができる。いくつかの実施形態では、スクリーンの高さの９０％に等しい距離が、地図アプリケーションにより許容される最大傾斜角度と最小傾斜角度との差分に対応するよう、変換因子が選択されるが、他の変換因子も使用可能である。接触が移動する距離は、二次元（６２０で示されるディスプレイの現方向に対して水平と垂直としてそれぞれ定義されるＸ方向及びＹ方向）又は一次元のみ（例えば、Ｘ方向の移動を無視したＹ方向のみ）において測定可能である。
【００５１】
いくつかの実施形態では、図６Ａ及び図６Ｂに示すように、接触６０２ａ、６０４ａの上方移動（表示領域の上部に向かって）によって、地面の高さのビューに向かって地図が傾斜し（傾斜角度を低減し）、さらに、接触６０２ｂ、６０４ｂの下方移動（表示領域の下方に向かって）によって、上方からのビューに向かって地図が傾斜する（傾斜角度を増加する）。ユーザは、一方向においてチルト操作ジェスチャを始動したら、これを単一のジェスチャ中で反転することができる。
【００５２】
いくつかの実施形態では、傾斜角度は、ユーザの動作とは関係なく９０°から０°の範囲に制限される。最小傾斜角度を０°に制限すると、ユーザが下から地図領域を見ること（これは非現実的であるか又は有益ではない視点である）を防止することができる。いくつかの実施形態では、最小傾斜角度は、０°よりも大きくても良い。例えば、１５°、２０°、３６°等の値であって良い。最大傾斜角度に関する制限は、９０°であって良いが、実施形態によっては、この制限は適用されない。許容されれば、９０°よりも大きい傾斜角度も、例えば、「飛行機からの逆さ吊り状態」視点としてレンダリング可能である。（これは、一部のユーザには方向感覚が失われる場合がある。）
【００５３】
チルト操作ジェスチャは、これを２つの接触を伴う他のジェスチャから区別する様々な基準にしたがって認識可能である。いくつかの実施形態では、これらの基準は、接触の相対的な位置と動作の双方に関連する。例えば、チルト操作ジェスチャを検知するために、２つの接触には、Ｘ軸と平行な直線上に略位置することが求められる。したがって、図６Ａを参照すると、各接触６０２、６０４について重心を定義可能であり（接触の重心の特定に関する更なる説明については、米国特許第６，３２６，８４６号、米国特許第７，４７９，９４９号、及び米国特許公開第２００８／００３６７４３Ｄ号を参照）、さらに、重心を結合する線６１０も定義することができる。チルト操作ジェスチャを認識するための第１の基準として、線６１０には、ディスプレイ上の水平線（例えば、基準線６１２）と略平行となることが求められる場合がある。様々な特定の閾値を使用することができる。例えば、線６１０と線６１２との間の角度は、所定の最大角度、例えば、３０°、２５°、１７°、又は他の任意の角度よりも小さいことが求められる場合がある。いくつかの実施形態では、線６１０及び線６１２を表す正規化ベクトルのドット積を計算可能であり、最小閾値を適用することができる。例えば、ドット積は、０．３、０．３５、０．４、０．５、又は他の任意の値よりも大きい。
【００５４】
この他、あるいは、代替として、ある基準を接触の動作に適用可能である。例えば、チルト操作ジェスチャを検知するために、２つの接触の動作には、Ｙ軸と略平行であることが求められる。別の例として、速度基準を動作に適用することができる。いくつかの実施形態では、ユーザが一般に傾斜角度をゆっくりと、しかも、制御された方法で変更したいということが想定されており、Ｙ方向の高速動作は、傾斜を示さないものと解釈することができる（これは、別のジェスチャ、例えば、速度に応じてパン操作又はスワイプ操作として解釈することができる）。これは、例えば、チルト操作ジェスチャに関連する接触の動作速度の上限として実装可能である。
【００５５】
本明細書内で説明するジェスチャ及び地図は例示的であり、変型及び修正が可能であることが理解されるであろう。例えば、上記のように、いくつかの実施形態では、余分な接触（ジェスチャによって定義される接触数を超える）は全て、無視される場合がある。いくつかの実施形態では、ユーザは、ジェスチャの作成中に新たな接触を追加して、元の接触のうちの１つを除去し（例えば、指の切り替え）、さらに、少なくともジェスチャによって定義された数の接触（又は、実装に応じて少なくとも１つの接触）が、常にタッチ感知面と接触した状態である限り、このアクションを同じジェスチャが継続しているものとして処理することができる。
【００５６】
他のジェスチャも、上記のジェスチャに加えて、あるいは、その代用として定義し、利用することが可能である。例えば、高速スワイプ操作では、スワイプ操作の方向の所定距離まで地図を並進移動することができる。地図上の特定位置におけるタップ操作ジェスチャによって、その位置に関する情報をデバイスに取得及び提示させることができる。ジェスチャ、ジェスチャ解釈経験則、及びジェスチャに関連する可能性のあるコマンドに関する更なる例については、米国特許第６，３２６，８４６号、第７，４６９，３８１号、第７，４７９，９４９号、及び米国特許出願公開第２００８／００３６７４３号に記載されている。
【００５７】
いくつかの実施形態では、地図の変更範囲を制限することができる。例えば、上記で述べた様に、傾斜角度を最大値及び最小値で制約可能である。ズーム操作（又は、拡大操作）も、最大倍率因子と最小倍率因子で制約可能である。さらに、例えば、地図領域が周縁部を含む場合では、パン操作も制限可能である。（これは、惑星の全表面を網羅する地図領域に関する事例ではなく、他の種類の地図、例えば、建物、都市、又は境界を有する仮想領域に関する事例である場合がある。）範囲制限を受けると、視覚的フィードバックを、例えば、米国特許第７，４６９，３８１号に記載されているゴムバンド効果を介して提供することができる。
【００５８】
いくつかの実施形態において、表示された地図の変更は、例えば、ジェスチャの移動と相関するようアニメーション化することができる。例えば、ディスプレイ上の地図の動作が、動作の変化に基づいて加速、減速、及び／又は方向変化するように見えるようにすることができる。変更が既定の変化を適用している場合（例えば、上記の高速ズーム操作ジェスチャ又は高速スクロール操作ジェスチャに応じて）、適切な制約を用いて、加速と減速を変さらに適用することができる。例えば、摩擦係数を用いて、加速及び／又は減速をモデル化することができる。摩擦モデリング及び関連する視覚効果の例は、米国特許第７，４６９，３８１号にも記載されている。これによって、ユーザから変更が自然な移動に見えるようにすることができる。
【００５９】
前述した様なジェスチャを用いて、地図、又は任意の数及び／又は任意の種類のオブジェクトを含む３Ｄ空間における領域の他の任意の画像を操作することができる。図７は、本発明の一実施形態に係る画像を操作するプロセス７００のフローチャートである。プロセス７００は、例えば、図１のコンピュータシステム１００又は他の電子機器に実装可能である。
【００６０】
ブロック７０２で、３Ｄ領域の画像を表示する。実施に応じて、この画像は、例えば、地図（例えば、図２の地図２００）、コンピュータ支援設計（ＣＡＤ）プログラムにより作成されたオブジェクトのモデル、現実のオブジェクト及び／又はコンピュータにより作成されたオブジェクトを含むシーン画像のレンダリング、又は現実又は仮想３Ｄ領域の他の任意の画像であって良い。画像は、位置、向き（例えば、回転角度）、ビューイング方向（例えば、傾斜角度）、及び倍率因子などの仮想カメラパラメータに基づきデフォルト状態として表示可能である。このデフォルト状態は、プログラムによって定義された起動パラメータ、別のプログラムから受け付けた情報（例えば、レストランのレビューを提供するアプリケーションプログラムが、ある特定のレストランの位置を示すために、地図アプリケーションを呼び出し、このレストランの位置を提供する）、又はユーザにより確立された直近のパラメータのセット（例えば、アプリケーションが起動する度に最近表示されたビューに戻す）を用いて決定可能である。
【００６１】
ブロック７０４で、プロセス７００は、デバイスのタッチ感知面上における１つ以上の接触を検知可能である。いくつかの実施形態において、タッチ感知面は、ディスプレイであって良い。いくつかの実施形態では、トラックパッド、マウス、及び他のユーザ入力装置を含む他のタッチ感知面も使用可能である。
【００６２】
ブロック７０６で、プロセス７００は、１つ以上の接触の最初のジェスチャ動作を検知することができる。最初のジェスチャ動作（ジェスチャのヒステリシスとも呼ばれる）は、意図的であると認識され、且つ、他のジェスチャに関連する他の動作と区別する上で十分大きい及び／又は十分速い任意の動作を含むことができる。ジェスチャ動作の例は、米国特許第６，３２６，８４６号、第７，４６９，３８１号、第７，４７９，９４９号及び米国特許出願公開第２００８／００３６７４３号に記載されている。
【００６３】
ブロック７０８で、プロセス７００は、接触の数と最初のジェスチャ動作に基づいて、操作モードを選択することができる。操作モードの例は、以下でさらに説明し、前述の操作（例えば、パン操作、回転操作、ズーム操作及びチルト操作）の任意の組み合わせ及び／又は他の操作を含むことができる。いくつかの実施形態では、操作モードは、図９を参照して例示、説明されるプロセスを用いて決定することができる。
【００６４】
選択した操作モード及び最初のジェスチャ動作に基づいて、プロセス７００は、表示画像を変更することができる（ブロック７１０）。例えば、パン操作モードを選択すると（例えば、図３Ａにおける最初のジェスチャ動作３０４に基づいて）、表示画像（例えば、図３Ｂの地図３００ｂ）に対するパン操作を実行することができる。任意の前述における他の操作モード及び／又は追加の操作モードを適用及び表示することができる（ブロック７１０）。
【００６５】
いくつかの実施形態では、ブロック７０６における最初のジェスチャ動作がジェスチャを特定するよう機能する間、ジェスチャ自身は最初のジェスチャ動作を拡張する場合がある。したがって、ブロック７１２において、プロセス７００は、ジェスチャに関連する新たな動作を検知し、さらに、この動作に基づいて表示画像を変更することができる（ブロック７１０に戻る）。ブロック７１４で、新たな情報が検知されなければ、プロセス７００は、ジェスチャ終了イベントが発生したかどうかを判定することができる。例えば、全ての接触がタッチ感知面から除去された場合及び／又は少なくとも閾値期間、全ての接触が止まっている場合、ジェスチャ終了イベントを検知することができる。ジェスチャ終了イベントが検知されなければ、プロセス７００は、ブロック７１２に戻って、現ジェスチャに関連する新たな動作を検知することが可能である。ジェスチャ終了イベントが発生すると、プロセス７００は、ブロック７０２に戻って、別のジェスチャを始動する別の接触を検知することができる。
【００６６】
プロセス７００によって、ユーザは、ユーザの意図を示す追加の入力を必要とせずに、任意の順序のジェスチャの任意の組み合わせを用いて、３Ｄ領域の表示画像と相互作用することが可能となる。さらに、ユーザは、操作ジェスチャを始動し、その効果を実時間で確認し、これに基づき、必要に応じて例えばジェスチャの継続、速度又は向きの変更、又はジェスチャの終了等の応答をすることができる。結論として、ユーザ体験が、自然で直感的な感覚となることができる。
【００６７】
前述のように、電子機器は、ユーザが成し得る様々なジェスチャを自動で区別して、操作モードを選択可能であり、ジェスチャ終了イベントが発生するまで、選択したモードにしたがって、後続の動作が解釈され、表示画像が操作される。次に、操作モードの選択について説明する。
【００６８】
いくつかの実施形態では、ユーザによって作成されるジェスチャは、異なる操作、例えば、前述のパン操作、ズーム操作、回転操作、又はチルト操作のうちのいずれか１つからのセットの１つ以上を示すものとして特定可能である。この場合、対応する操作を操作モードとして選択することができる。これらを、本明細書では一度に１種類のみの変更を地図ビューに適用することを示す単一制御モードとも呼ぶ。
【００６９】
ＩＩＩ．マルチ制御モード
本発明のいくつかの実施形態では、２つ以上の種類の変更を並列又は同時に実行可能である「マルチ制御」モードの呼び出しとしてジェスチャを特定することができる。マルチ制御モードの一例は、地図空間の縦軸に対して一定の傾斜角度を維持しつつ、パン操作（並進移動）、ズーム操作（拡大）、及び回転操作に対する並列又は同時変更を可能とするモードである。
【００７０】
図８Ａ及び図８Ｂは、本発明の一実施形態に係るマルチ制御操作を示す。図８Ａは、地図ビュー８００ａ、及び矢印８０６、８０８により示されるマルチ制御ジェスチャを実行する接触８０２、８０４を示す。このジェスチャは、（パン操作ジェスチャに関連する）直線動作の要素、（回転操作ジェスチャに関連する）回転動作の要素、及び（ズーム操作ジェスチャに関連する）拡張動作の要素を組み合わせている。これらの要素に基づいて、地図８００ａは並進移動操作、回転操作、及びズーム操作されて、図８Ｂに示す地図８００ｂの様な新たなビューを生成することができる。マルチ制御モードでは、地図の変換は、動作の関連成分と連動可能であり、ユーザは、所望の位置、向き、及び大きさに合わせて地図を自由に調整する体験が得られる。
【００７１】
いくつかの実施形態では、マルチ制御モードには、２つ以上の変更の任意の組み合わせ（例えば、回転操作とパン操作、パン操作とズーム操作、回転操作とチルト操作等）を含むことができ、任意の数の異なるマルチ制御モードを認識することができる。いくつかの実施形態では、チルト制御は、いかなるマルチ制御モードにも含まれず、単一制御モードとしてのみ利用可能である。
【００７２】
任意の利用可能な単一制御モード又はマルチ制御モードは、タッチ感知面を介して受け付けたジェスチャ入力に基づき、電子機器によって選択可能である。この機器は、ジェスチャの特性（例えば、接触の数、及び、例えば向き及び／又は速度などの接触の最初の動作に関する特性）に基づいて様々な経験則を実行して、特定のジェスチャが単一制御モード又はマルチ制御モードを呼び出すべきかどうか、並びに、呼び出すべき所定モードを判定することができる。
【００７３】
図９は、本発明の一実施形態に係るジェスチャ入力に基づいて操作モードを選択するプロセス９００のフローチャートである。プロセス９００は、例えば、プロセス７００のブロック７０８を実行するために使用可能である。
【００７４】
ブロック９０２で、タッチ感知面から受け付けた接触データを解析して、１つ以上の検知された接触それぞれの位置及び速度（速さ及び向き）を決定する。その後、様々な経験則を適用して、検知された動作が所定のジェスチャの何れかに対応するかどうかを判定することができる。
【００７５】
例えば、ブロック９０４で、プロセス９００は、チルト操作ジェスチャを識別するための基準を満たしたかどうかを判定することができる。図６Ａ及び図６Ｂを参照して上述したように、これらの基準は、（ａ）少なくとも２つの接触が検知されたかどうか、（ｂ）２つの接触がＸ軸と略平行に配置されているかどうか、（ｃ）接触がＹ方向に移動しているかどうか、及び（ｄ）接触が最大速度よりも遅い速度で移動しているかどうかを含むことができる。チルト操作基準と合致したら、ブロック９０６で、プロセス９００は、単一制御モードであるチルト操作モードを選択することができる。図７を参照すると、ブロック７０８においてチルト操作モードが選択されたら、後続の動作は、終了イベントが発生するまでチルト操作ジェスチャの継続として処理可能である。
【００７６】
図９を再度参照すると、ブロック９０８で、プロセス９００は、パン操作ジェスチャを認識するための基準を満たしたかどうかを判定することができる。図３Ａ及び図３Ｂを参照して上述したように、これらの基準は、（ａ）少なくとも１つの接触が検知されたかどうか及び（ｂ）接触が主として直線的に移動したかどうかを含むことができる。パン操作基準と合致したら、ブロック９１０で、プロセス９００は、別の単一制御モードであるパン操作モードを選択することができる。図７を参照すると、ブロック７０８においてパン操作モードが選択されたら、後続の動作は、終了イベントが発生するまでパン操作ジェスチャの継続として処理可能である。
【００７７】
図９を再度参照すると、ブロック９１２で、プロセス９００は、ズーム操作ジェスチャを認識するための基準を満たしたかどうかを判定することができる。図４Ａ及び図４Ｂを参照して上述したように、これらの基準は、（ａ）少なくとも２つの接触が検知されたかどうか、（ｂ）接触のうちの１つ以上が互いに向かうよう又は互いから離れるよう移動するかどうか、及び（ｃ）動作が主として、直線的であるかどうかを含むことができる。ズーム操作基準と合致したら、ブロック９１４で、プロセス９００は、第３の単一制御モードであるズーム操作モードを選択することができる。図７を参照すると、ブロック７０８においてズーム操作モードが選択されたら、後続の動作は、終了イベントが発生するまでズーム操作ジェスチャの継続として処理可能である。
【００７８】
図９を再度参照すると、ブロック９１６で、プロセス９００は、回転操作ジェスチャを認識するための基準を満たしたかどうかを判定することができる。図５Ａ及び図５Ｂを参照して上述したように、これらの基準は、（ａ）少なくとも２つの接触が検知されたかどうか、（ｂ）２つの接触が略円形パターンで移動したかどうか、及び（ｃ）この動作が共通の中心の周囲の略回転的であるかどうかを含むことができる。回転操作基準と合致したら、ブロック９１８で、プロセス９００は、第４の単一制御モードである回転操作モードを選択することができる。図７を参照すると、ブロック７０８において回転操作モードが選択されたら、後続の動作は、終了イベントが発生するまで回転操作ジェスチャの継続として処理可能である。
【００７９】
図９を再度参照すると、ブロック９２０で、プロセス９００は、マルチ制御ジェスチャを認識するための基準を満たしたかどうかを判定することができる。図８Ａ〜図８Ｂを参照して上述したように、マルチ制御モードは、様々な単一制御ジェスチャの態様を組み合わせたジェスチャで呼び出すことができる。したがって、例えば、マルチ制御モードがパン操作、ズーム操作、及び回転操作を許容する場合、マルチ制御ジェスチャを認識するための基準は、（ａ）２つ以上の接触が検知されたかどうか、（ｂ）１つ以上の接触に関する最初の動作速度が閾値よりも低いかどうか、及び（ｃ）最初の動作が少なくとも２つの単一制御ジェスチャ、例えば、パン操作とズーム操作、回転操作とズーム操作、又は回転操作とパン操作の属性を組み合わせているかどうかを含むことができる。マルチ制御基準に合致したら、ブロック９２２で、プロセス９００は、マルチ制御モードを選択することができる。図７を参照すると、ブロック７０８においてマルチ制御モードが選択されたら、後続の動作は、特定の動作に基づきパン操作、回転操、作及びズーム操作の組み合わせとして処理することができる。マルチ制御モードは、ジェスチャ終了イベントが発生するまで継続して適用することができる。
【００８０】
いくつかの実施形態では、デバイスは、表示画像の操作以外の機能を呼び出すためのジェスチャ入力を認識することができる。したがって、図９を再度参照すると、ブロック９２４において、プロセス９００は、他のいくつかのジェスチャ（例えば、タップ操作、ダブルタップ操作、スワイプ操作等）を認識するための基準を満たしたかどうかを判定することができる。複数のジェスチャに関するジェスチャ認識基準の例は、米国特許第６，３２６，８４６号、第７，４６９，３８１号、第７，４７９，９４９号、及び米国特許出願公開第２００８／００３６７４３号に記載されている。別のジェスチャが認識されると、ブロック９２６で、プロセス９００は、ジェスチャに関連するアクションを実行することができる。このアクションは、画像の変更を含む場合もあれば、含まない場合もある。図７を参照すると、ブロッ７０８において、表示画像の操作に関連しないジェスチャが認識されたら、プロセス７００は、ブロック９２４において適切なアクションを実行後、ブロック７０４に戻る（又は、対象のアクションに応じて抜ける）ことができる。
【００８１】
図９を再度参照すると、ブロック９２４においてジェスチャが認識されなければ、プロセス９００は、入力を無視することを決定することができる（ブロック９２８）。図７を参照すると、この場合では、プロセス７００は、ブロック７０４に戻って、別のジェスチャを待機することができる。
【００８２】
プロセス７００及びプロセス９００は例示的なものであり、変形及び修正が可能であることが理解されるであろう。逐次として説明されるステップは並行して行うことができ、ステップの順序を変更することができ、ステップの修正、組み合わせ、追加、又は省略も可能である。例えば、図９は基準を適用することができる特定の順序を示しているが、任意の順序を使用することができるという点を理解されたい。さらに、様々なジェスチャに関連して述べた基準は、例示的なものであり、他の基準も使用可能である。ジェスチャ入力を認識及び解釈するための技術に関する更なる説明は、米国特許第６，３２６，８４６号、第７，４６９，３８１号、第７，４７９，９４９号、及び米国特許出願公開第２００８／００３６７４３号に記載されている。
【００８３】
いくつかの実施形態では、ジェスチャ認識は、所定の基準を満たすのではなく得点付けモデルに基づくことが可能である。図１０は、得点付けモデルを実施する本発明の一実施形態に係るジェスチャ入力に基づいて操作モードを選択するプロセス１０００のフローチャートである。プロセス１０００は、例えば、プロセス７００のブロック７０８を実施するために使用可能である。
【００８４】
ブロック１００２で、タッチ感知面から受け付けた接触データを解析して、１つ以上の検知された接触それぞれの位置及び速度（速さ及び向き）を決定する。ブロック１００４で、想定されるジェスチャの所定のライブラリーの各ジェスチャについて、得点を算出することができる。このライブラリーは、例えば、前述の様なパン操作ジェスチャ、ズーム操作ジェスチャ、回転操作ジェスチャ、及びチルト操作ジェスチャを含むことが可能である。さらに、他のジェスチャも含むことができる。ライブラリーは、ジェスチャごとに得点付け関数を定義可能であり、得点は、接触及び／又はその初期動作の特性に関する数学関数に相当する。得点は、特性のあるセットを有するジェスチャが得点付けされる特定のジェスチャとなることが意図される確率を反映するよう定義可能である。いくつかの実施形態では、得点付け関数は、生物力学的制約（例えば、指の動作範囲）、ユーザの挙動に関する仮定、及び／又は意図されるジェスチャが既知とされる状況において様々なジェスチャを試みるユーザ群から収集した統計データに基づいて構築可能である。様々なアルゴリズム及び技術を用いて、様々なジェスチャの得点を定義可能であり、ライブラリーは、任意の数のジェスチャを含むことができる。いくつかの実施形態では、閾値に基づく基準及び／又は状況に基づく基準は、得点を計算する際のジェスチャ数を減らすためのフィルターとして使用可能である。
【００８５】
ブロック１００６で、閾値よりも高い得点を有する単一ジェスチャがあるかどうかを判定するために、様々なジェスチャに関連する得点を確認することが可能である。閾値は、絶対得点として、又は２つの最高得点間の差、あるいは、最高得点と平均得点との差等として定義することができる。厳密に１つのジェスチャが閾値よりも高い得点を有する場合、ブロック１００８で、閾値より高い得点を有するジェスチャに対応する単一制御モードを選択する。いくつかの実施形態では、ブロック１００８は、前述のプロセス９００のブロック９２２と同様に、画像操作に関連しないジェスチャに関する機能の実行も含むことができる。
【００８６】
ブロック１０１０で、閾値より高い得点を有するジェスチャがない場合又は閾値よりも高い得点を有する複数のジェスチャがある場合、マルチ制御モードを選択することができる。例えば、閾値よりも高い得点を有する複数のジェスチャがあれば、この様なジェスチャを全て含むマルチ制御モードを選択することができる。ブロック１００６で、閾値より高い得点を有するジェスチャがなければ、ブロック１００６においてよりも低い閾値を適用可能であり、選択されたマルチ制御モードは、このより低い閾値よりも高い得点を有するジェスチャを含むことができる。別の例として、２つ（又は３つあるいは４つ等）の最大得点が互いに十分近ければ、選択したマルチ制御モードは、２つ（又は３つあるいは４つ等）の最大得点を有するジェスチャと関連する操作を組み合わせることができる。いくつかの実施形態では、単一のマルチ制御モードを定義可能であり（例えば、回転操作、パン操作、及びズーム操作を含む）、そして、ブロック１００６における得点比較が単一の曖昧性のないジェスチャを示さない場合は常に、このモードを選択することができる。さらに、マルチ制御モードを定義及び選択するための他の技術も使用することができる。
【００８７】
更なるマルチ制御モードを、図１１Ａ、図１１Ｂ、図１２Ａ、及び図１２Ｂに示す。図１１Ａ及び図１１Ｂは、本発明の一実施形態に係るマルチ制御操作を示す。図１１Ａは、地図ビュー１１００ａ及び矢印１１０６、１１０８により示されるマルチ制御ジェスチャを実行する接触１１０２ａ、１１０４ａを示す。このジェスチャは、（パン操作ジェスチャに関連する）動作の要素及び（回転操作ジェスチャに関連する）回転動作の要素を組み合わせている。ジェスチャは、他の動作要素も含むことができるが、これについては本明細書では記載しない。
【００８８】
例えば、接触１１０２ａは、図１１Ｂの１１０２ｂまで移動するよう図１１Ａの矢印１１０６に沿って移動可能であり、それと同時に、接触１１０４ａは、図１１Ｂの１１０４ｂまで移動するよう、図１１Ａの矢印１１０８に沿って移動することができる。これらの要素に基づいて、地図１１００ａを並進移動及び回転させて、図１１Ｂに示す地図１１００ｂの様な新たなビューを生成することができる。マルチ制御モードでは、地図の変換は、動作の関連成分と連動可能であり、ユーザは、所望の位置、向き、及び大きさに合わせて地図を自由に調整する体験が得られる。
【００８９】
図１１Ａ及び図１１Ｂに示すように、可視領域内のオブジェクトの位置は地図１１００ａから地図１１００ｂに変化する。例えば、オブジェクト１１１０ａは、地図１１００ａ内の可視領域の中心付近にあり、オブジェクト１１１０ｂは、地図１１００ｂの上部に向かっている。この変化は、接触の直線移動に基づくパン操作に関連付けられても良い。さらに、可視領域内のオブジェクトの向きは、地図１１００ａから地図１１００ｂに変化する。例えば、配向インジケータ１１１５ａは、第１の方向を示し、配向インジケータ１１１５ｂは、第２の方向を示す。配向の変化は、例えば、回転操作に関連する接触の角度回転によるものであって良い。
【００９０】
図１１Ａ及び図１１Ｂに示すように、接触１１０２ａ及び１１０４ａ間の距離及び接触１１０２ｂ及び１１０４ｂ間の距離は、略同じである。それ故、図示のように、拡大又は縮小が殆ど無く（又は全く無く）、建物の大きさは略同じである。２つの（及び、２つのみの）操作モードがユーザによって望まれていると判定された場合には、２モード操作モードが発生しても良い。
【００９１】
本発明の一実施形態に係わるマルチ制御操作に関する別の例を、図１２Ａ及び図１２Ｂに示す。図１２Ａは、地図ビュー１２００ａ、及び矢印１２０６、１２０８により示されるマルチ制御ジェスチャを実行する接触１２０２ａ、１２０４ａを示す。このジェスチャは、（パン操作ジェスチャに関連する）動作の要素、及び（ズーム操作ジェスチャに関連する）縮小動作の要素を組み合わせている。ジェスチャには、動作の他の要素も含むことができるが、これについては本明細書では記載しない。
【００９２】
例えば、接触１２０２ａは、図１２Ｂの１２０２ｂまで移動するよう図１２Ａの矢印１２０６に沿って移動可能であり、それと同時に、接触１２０４ａは、図１２Ｂの１２０４ｂまで移動するよう、図１２Ａの矢印１２０８に沿って移動することができる。これらの要素に基づいて、地図１２００ａを並進移動及び回転させて、図１２Ｂに示す地図１２００ｂの様な新たなビューを生成することができる。マルチ制御モードでは、地図の変換は、動作の関連成分と連動可能であり、ユーザは、所望の位置、向き、及び大きさに合わせて地図を自由に調整する体験が得られる。
【００９３】
図１２Ａ及び図１２Ｂに示すように、可視領域内のオブジェクトの位置は地図１１００ａから地図１１００ｂまで変化する。例えば、Ｍｏｓｃｏｎｅコンベンションセンターに関連するオブジェクト（及び関連するテキスト情報）は、可視領域の縁部に対して位置を変化させる。この変化は、接触の直線動作からのパン操作に関連付けられても良い。いくつかの実施形態では、前述のように、パン操作動作を調整することができる。例えば、接触１２０２ａ及び１２０２ｂは、これらの接触が上にあるオブジェクト（例えば、建物）に対して略同じ位置にあり、接触１２０４ａ及び１２０４ｂは、これらの接触が上にあるオブジェクト（例えば、別の建物）に対して略同じ位置にある。
【００９４】
さらに、可視領域内のオブジェクトの縮尺は、地図１２００ａから地図１２００ｂまで変化する。この縮尺の変化は、縮小／拡大操作によるものであって良い。図示のように、接触１１０２ａ及び１１０４ａ間の距離は、接触１１０２ｂ及び１１０４ｂ間の距離よりも大きい。さらに、接触の動作は、他の接触に対して略直線的である。いくつかの実施形態では、前述のように、ズーム操作動作を調整することができる。例えば、接触１２０２ａ及び１２０２ｂは、これらの接触が上にあるオブジェクト（例えば、建物端部）に対して略同じ位置にあり、接触１２０４ａ及び１２０４ｂは、これらの接触が上にあるオブジェクト（例えば、同じ建物の中間部）に対して略同じ位置にある。図示のように、角度回転は殆ど無い（又は、全く無い）（例えば、これはユーザがダイヤルのひねりを真似すれば起こるであろう）。それ故、地図１２００ａ及び１２００ｂの向きは、略同じである。この向きは、地図のオブジェクションを略同じ向きで表示する他、配向インジケータ１２１５ａ及び１２１５ｂによって反映することができる。
【００９５】
本明細書内で説明するモード選択プロセスは例示的であり、変型及び修正も可能であることが理解されるであろう。逐次として説明されたステップは並行して行うこともでき、ステップの順序を変更することができ、ステップの修正、組み合わせ、追加、又は省略も可能である。得点に基づく基準及び閾値に基づく基準の様々な組み合わせを使って、様々なジェスチャを区別することができる。この基準は、限定されないが、接触の数、他の接触に対する各接触の位置、タッチ感知面に対する各接触の位置（「絶対位置」とも呼ばれる）、各接触の動作速度、各接触の動作方向（タッチ感知面に対して及び／又は１つ以上の他の接触に対して定義することができる）、各接触に関連する圧力、各接触の持続時間、連続した接触間の時間等を含み、タッチ感知面により検知可能な任意の情報を包含することができる。ジェスチャ認識は、連続的（例えば、判断木として）又は並列的に適用された所定の基準、得点付けモデル、及び／又はこれらの任意の組み合わせに基づいても良い。
【００９６】
上記の実施形態は、３Ｄ領域の表示画像の操作に関連する様々なジェスチャの認識を可能とする。ジェスチャによって、ユーザは、領域が見られる方向（例えば、回転操作及び／又はチルト操作によって）、画像の倍率（例えば、ズーム操作によって）、及び／又は可視の画像の一部の倍率（例えば、パン操作によって）を変えることができる。いくつかの実施形態では、画像操作ジェスチャの効果は、仮想カメラの視点からの画像のレンダリングによって実施可能であり、ジェスチャは、仮想カメラの位置及び／又は向きの変化として解釈することができる。単一制御モードでの操作によって、ユーザは、一度に１つの表示パメラメータを調整可能であり、一方、マルチ制御モードでの操作では、複数のビューイングパラメータを同時に調整可能とすることで、ユーザは、ビュー全体の柔軟、且つ、直感的な制御を得る。装置は、ジェスチャの特性に基づいて単一制御モードで動作するか又はマルチ制御モードで動作するかを自動で判定し、ユーザは、現在のジェスチャを終了させて、新たなジェスチャを始動することで、いつでもモードを変えられる。
【００９７】
前述のように、いくつかの実施形態は、傾斜角度を一定に維持しつつ、パン操作、ズーム操作、及び回転操作を同時に制御可能とする１つのマルチ制御モードを提供する。いくつかのアプリケーション（例えば、地図）では、このことは、ユーザにとって、傾斜角度の調整の方が他のパラメータの調整よりも方向感覚を失いやすいという点で有益となりうる。他のアプリケーションでは、他のマルチ制御モードが必要とされる場合がある。例えば、ＣＡＤアプリケーションでは、マルチ制御モードによって、回転操作中のズーム操作ではなく様々な軸周囲のオブジェクト（又は、ビュー）の回転操作が可能となる。
【００９８】
本発明を特定の実施形態に関して説明してきたが、当業者であれば、多数の修正形態が可能であることを認識するであろう。例えば、３Ｄ地図を参照して画像操作について説明しているが、類似のジェスチャや解釈を用いて、限定されないが、ＣＡＤアプリケーション、コンピュータアニメーションアプリケーション、ビデオゲーム等を含む様々なアプリケーションにおける３Ｄオブジェクト又は領域の任意の種類の画像を操作することができる。さらに、本明細書において述べた特定のジェスチャは変更可能であり、様々な実施形態には、より多いジェスチャ又はより少ないジェスチャ及び／又は前述以外のジェスチャの様々な組み合わせを含むことができる。また、ジェスチャは、様々なコマンドを示すものとして解釈することもできる。例えば、仮想的な（又は用途に応じて実際の）カメラ、又は他のオブジェクトを３Ｄ空間内に配置するためのピッチ操作ジェスチャ、ロール操作ジェスチャ、及びヨー操作ジェスチャを定義することができる。
【００９９】
いくつかの実施形態では、画像又は画像のビューの操作に関連しないジェスチャも包含可能である。例えば、ユーザは、画像を編集可能であるか（例えば、オブジェクトを追加、変更、又は再配置することによって）、又はユーザは、画像内のオブジェクトに関する追加情報（例えば、時間、電話番号、レビュー及びフィードバックなどの地図上に表示される会社に関する情報）を取得することができる。オブジェクトの例は、図１１のオブジェクト１１１０であり、これは、追加情報用に選択可能な情報アイコンに相当する。画像内のオブジェクトに関する他の例には、図２のレストラン２０２又は美術館２０４が含まれる。
【０１００】
追加情報を、画像内のオブジェクトに関連するポップアップグラフィカル要素内に提示することができる。いくつかの実施形態では、オブジェクトを選択する際、ポップアップグラフィカル要素が提示される。図１２のポップアップグラフィカル要素１２１０は、追加情報の提示に関する一例である。いくつかの実施形態では、ユーザによる画像内のオブジェクトの選択に応じて、ポップアップグラフィカル要素を表示可能であり、他の実施形態では、検索クエリに応じて、ポップアップグラフィカル要素を表示することができる。実施形態によっては、所定の基準に基づいて、ポップアップグラフィカル要素を自動で表示することができる。
【０１０１】
いくつかの実施形態において、３Ｄモード時では、ポップアップグラフィカル要素は、オブジェクトの上で「空中飛行」のようにオブジェクト上を「ホバリング（浮遊）」するように見えるようにすることができる。２Ｄモードでは、ポップアップグラフィカル要素は、オブジェクトに隣接して（例えば、オブジェクトの上、下又は隣）見えるようにすることができる。操作ジェスチャに応じて、ポップアップグラフィカル要素は、オブジェクトに対して略同じ位置のままにすることができる。例えば、ポップアップグラフィカル要素は、ズーム操作、パン操作、回転操作、チルト操作、又はこれらを組み合わせた操作後に、オブジェクト上を「ホバリング」したままでも良い。いくつかの実施形態では、ポップアップグラフィカル要素は、拡大操作又は縮小操作に応じて略同じサイズのままであるが、画像内の周囲オブジェクトのサイズは変更される。いくつかの実施形態では、ポップアップグラフィカル要素は、可視領域内で略同じ位置にあるが、画像内の周囲オブジェクトは、再配置される。
【０１０２】
いくつかの実施形態では、ポップアップグラフィカル要素に関連するオブジェクトがスクリーン上に表示される限り、ポップアップグラフィカル要素は、画像上に表示されたままである。例えば、パン操作（又は回転操作、チルト操作、ズーム操作）後、オブジェクトが可視領域内にある限りは、これら操作後に、ポップアップグラフィカル要素はスクリーン上に表示されたままでも良い。いくつかの実施形態では、オブジェクトが可視領域を抜ける場合（及び／又は３Ｄ建物オブジェクトなどの、ディスプレイ上の別のオブジェクトによって遮られる場合）、ポップアップ通知は消える。いくつかの実施形態では、オブジェクトが可視領域に再度進入すると（例えば、オブジェクトがスクリーンから外れるようビューをパン操作してから、略元のビューに戻すようパン操作するジェスチャの結果として）、ポップアップグラフィカル要素は再表示されないが、他の実施形態では、ポップアップグラフィカル要素が再表示される。
【０１０３】
さらに、本明細書で述べたジェスチャ解釈技術は、複数のジェスチャを組み合わせ、これらがさらに個別に認識されるマルチ制御操作モードをジェスチャが呼び出せる場合も含めて、ジェスチャの曖昧性を除去する機能を提供する。この様な技術は、３Ｄ画像の操作以外の状況にも適用可能であり、したがって、本明細書で述べた技術は、関連ジェスチャを区別して、３Ｄ領域又はオブジェクトの画像と関連しない相互作用を含む任意のユーザ相互作用についてマルチ制御モードを許容する他の状況においても使用可能である。
【０１０４】
ジェスチャは、任意のタッチ感知面を用いて検知することができる。いくつかの実施形態では、タッチ感知面は、ディスプレイ装置のオーバーレイ又は他の構成要素であって、タッチスクリーンインタフェースを提供しても良いが、トラックパッドのようにディスプレイ装置から独立して配置されたタッチ感知面も利用可能である。接触は、指、スタイラスペン、又は特定のタッチ感知面により検知可能な他の任意のオブジェクトを用いて得られる。いくつかの実施形態では、タッチ感知面は、近接性を感知可能であり、「接触」は、実際の物理的接触を必要とせずに表面への接近に基づいて検知可能である。
【０１０５】
本発明の実施形態は、専用の構成要素及び／又はプログラマブルプロセッサ、及び／又は他のプログラマブルデバイスの任意の組み合わせを使用して実現することができる。本明細書で述べられる様々なプロセスは、同一プロセッサ又は任意の組み合わせの異なるプロセッサ上で実装可能である。構成要素が特定の動作を実行するように構成されていると説明されている場合、このような構成は、例えばこの動作を実行するように電子回路を設計することにより、この動作を実行するように（マイクロプロセッサなどの）プログラマブルな電子回路をプログラムすることにより、又はこれらの任意の組み合わせにより、達成することができる。さらに、上記の実施形態は、特定のハードウェア及びソフトウェア構成要素を参照し得るが、当業者には、異なる組み合わせのハードウェア及び／又はソフトウェア構成要素も利用でき、ハードウェアで実行されると説明されている特定の動作がソフトウェアでも実行し得、またその逆も可能であることが理解されよう。
【０１０６】
本発明の様々な特徴が組み込むコンピュータプログラムは、様々なコンピュータ可読記憶媒体に符号化し記憶することができ、好適な媒体としては、磁気ディスク又はテープ、コンパクトディスク（ＣＤ）又はＤＶＤ（デジタル多用途ディスク）などの光学的記憶媒体、フラッシュメモリ、及びその他の永続的な媒体が挙げられる。プログラムコードで符号化されるコンピュータ可読媒体は、互換性がある電子デバイスでパッケージ化し得又はプログラムコードは、電子デバイスとは別に（例えば、インターネットからのダウンロードを介するか、別途パッケージ化されたコンピュータ可読記憶媒体として）提供され得る。
【０１０７】
それゆえ、本発明は、特定の実施形態に関して説明されているが、本発明は、以下の特許請求の範囲内での、全ての修正形態及び均等物を包含することを意図するものであることが理解されるであろう。
【図１】
2015526807.tif 000003
【図２】
2015526807.tif 000004
【図３Ａ】
2015526807.tif 000005
【図３Ｂ】
2015526807.tif 000006
【図４Ａ】
2015526807.tif 000007
【図４Ｂ】
2015526807.tif 000008
【図５Ａ】
2015526807.tif 000009
【図５Ｂ】
2015526807.tif 000010
【図６Ａ】
2015526807.tif 000011
【図６Ｂ】
2015526807.tif 000012
【図７】
2015526807.tif 000013
【図８Ａ】
2015526807.tif 000014
【図８Ｂ】
2015526807.tif 000015
【図９】
2015526807.tif 000016
【図１０】
2015526807.tif 000017
【図１１Ａ】
2015526807.tif 000018
【図１１Ｂ】
2015526807.tif 000019
【図１２Ａ】
2015526807.tif 000020
【図１２Ｂ】
2015526807.tif 000021
【手続補正書】
【提出日】平成27年2月2日(2015.2.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
３Ｄ領域の画像を表示するステップと、
前記電子機器に関連するタッチ感知面における最初のジェスチャであって、１つ以上の接触領域及び前記１つ以上の接触領域の少なくとも１つの最初の動きを含む特性を有する最初のジェスチャを検知するステップと、
前記最初のジェスチャの前記特性のうちの１つ以上に基づいて、少なくとも１つの単一制御モード及び少なくとも１つのマルチ制御モードを含む複数のモードから操作モードを選択するステップと、
前記検知された最初のジェスチャ及び前記選択された操作モードに基づいて、前記３Ｄ領域の前記画像を変更するステップと、
を含む、電子機器を動作させる方法。
【請求項２】
前記最初のジェスチャの継続を検知するステップと、
前記最初のジェスチャの前記検知された継続及び前記選択された操作モードに基づいて、前記３Ｄ領域の前記画像をさらに変更するステップと、
を含む、請求項１に記載の方法。
【請求項３】
前記継続を検知するステップ及び前記画像をさらに変更するステップが、ジェスチャ終了イベントが検知されるまで反復される、請求項２に記載の方法。
【請求項４】
前記ジェスチャ終了イベントは、前記タッチ感知面により検知された接触領域の数がゼロまで減少した場合に検知される、請求項３に記載の方法。
【請求項５】
前記ジェスチャ終了イベントは、前記タッチ感知面に接触する前記接触領域の全てが、少なくとも閾値期間、移動を停止した場合に検知される、請求項３に記載の方法。
【請求項６】
前記複数のモードは、
前記画像が基準面に対して前記画像の傾斜角度を変えることで変更される単一制御チルトモードと、
前記画像が投影面(viewing plane)を横切って視野を横方向にシフトさせることで変更される単一制御パンモードと、
前記画像が前記画像を拡大又は縮小することで変更される単一制御ズームモードと、
前記画像が前記投影面内の前記視野を回転させることで変更される単一制御回転モードと、
前記画像が、前記チルトモード、前記パンモード及び前記ズームモードに関連する前記変更の組み合わせによって変更可能であるマルチ制御パン−ズーム−回転モードと、
を含む、請求項１に記載の方法。
【請求項７】
操作モードを選択するステップは、経験則を前記最初のジェスチャに関する前記１つ以上の特性に適用するステップを含む、請求項１に記載の方法。
【請求項８】
１つ以上のデータプロセッサと、
命令を含む１つ以上のコンピュータ可読記憶媒体と、
を備える、コンピュータにより実現されるシステムであって、
前記命令は、
３Ｄ領域の画像を表示することと、
前記システムに関連するタッチ感知面における最初のジェスチャであって、１つ以上の接触領域及び前記１つ以上の接触領域の少なくとも１つの最初の動きを含む特性を有する最初のジェスチャを検知することと、
前記最初のジェスチャに関する前記特性のうちの１つ以上に基づいて、少なくとも１つの単一制御モード及び少なくとも１つのマルチ制御モードを含む複数のモードから操作モードを選択することと、
前記検知された最初のジェスチャ及び前記選択された操作モードに基づいて、前記３Ｄ領域の前記画像を変更することと、
を含む動作を前記１つ以上のデータプロセッサに実行させるよう構成される、システム。
【請求項９】
前記最初のジェスチャの継続を検知することと、
前記最初のジェスチャの前記検知された継続及び前記選択された操作モードに基づいて、前記３Ｄ領域の前記画像をさらに変更することと、
を含む動作を前記１つ以上のデータプロセッサに実行させるよう構成された命令を含む、請求項８に記載のシステム。
【請求項１０】
前記継続を検知すること及び前記画像をさらに変更することは、ジェスチャ終了イベントが検知されるまで反復される、請求項９に記載のシステム。
【請求項１１】
前記ジェスチャ終了イベントは、前記タッチ感知面により検知された接触領域の数がゼロまで減少した場合に検知される、請求項１０に記載のシステム。
【請求項１２】
前記ジェスチャ終了イベントは、前記タッチ感知面に接触する前記接触領域の全てが、少なくとも１つの閾値期間、移動を停止した場合に検知される、請求項１０に記載のシステム。
【請求項１３】
前記複数のモードは、
前記画像が基準面に対して前記画像の傾斜角度を変えることで変更される単一制御チルト操作モードと、
前記画像が投影面を横切って視野を横方向にシフトさせることで変更される単一制御パンモードと、
前記画像が前記画像を拡大又は縮小することで変更される単一制御ズームモードと、
前記画像が前記投影面内の前記視野を回転させることで変更される単一制御回転モードと、
前記画像が、前記チルトモード、前記パンモード及び前記ズームモードに関連する前記変更の組み合わせによって変更可能であるマルチ制御パン−ズーム−回転モードと、
を含む、請求項８に記載のシステム。
【請求項１４】
操作モードを選択することは、経験則を前記最初のジェスチャに関する前記１つ以上の特性に適用することを含む、請求項８に記載のシステム。
【請求項１５】
データ処理装置が実行可能な命令が格納された機械可読記憶媒体を含んだコンピュータプログラム製品であって、前記命令が、前記データ処理装置に対して、
３Ｄ領域の画像を表示することと、
電子機器に関連するタッチ感知面における最初のジェスチャであって、１つ以上の接触領域及び前記１つ以上の接触領域の少なくとも１つの最初の動きを含む特性を有する最初のジェスチャを検知することと、
前記最初のジェスチャに関する前記特性のうちの１つ以上に基づいて、少なくとも１つの単一制御モード及び少なくとも１つのマルチ制御モードを含む複数のモードから操作モードを選択することと、
前記検知された最初のジェスチャ及び前記選択された操作モードに基づいて、前記３Ｄ領域の前記画像を変更することと、
を実行させるよう構成される命令を含む、コンピュータプログラム製品。
【請求項１６】
前記最初のジェスチャの継続を検知することと、
前記最初のジェスチャの前記検知された継続及び前記選択された操作モードに基づいて、前記３Ｄ領域の前記画像をさらに変更することと、
を含む動作をデータ処理装置に実行させるよう構成された命令を含む、請求項１５に記載のコンピュータプログラム製品。
【請求項１７】
前記継続を検知すること及び前記画像をさらに変更することは、ジェスチャ終了イベントが検知されるまで反復される、請求項１６に記載のコンピュータプログラム製品。
【請求項１８】
前記ジェスチャ終了イベントは、前記タッチ感知面により検知された接触領域の数がゼロまで減少した場合に検知される、請求項１７に記載のコンピュータプログラム製品。
【請求項１９】
前記ジェスチャ終了イベントは、前記タッチ感知面に接触する前記接触領域の全てが、少なくとも１つの閾値期間、移動を停止した場合に検知される、請求項１８に記載のコンピュータプログラム製品。
【請求項２０】
前記複数のモードは、
前記画像が基準面に対して前記画像の傾斜角度を変えることで変更される単一制御チルト操作モードと、
前記画像が投影面を横切って視野を横方向にシフトさせることで変更される単一制御パンモードと、
前記画像が前記画像を拡大又は縮小することで変更される単一制御ズームモードと、
前記画像が前記投影面内の前記視野を回転させることで変更される単一制御回転モードと、
前記画像が、前記チルトモード、前記パンモード及び前記ズームモードに関連する前記変更の組み合わせによって変更可能であるマルチ制御パン−ズーム−回転モードと、
を含む、請求項１５に記載のコンピュータプログラム製品。
【請求項２１】
操作モードを選択することは、経験則を前記最初のジェスチャに関する前記１つ以上の特性に適用することを含む、請求項１５に記載のコンピュータプログラム製品。
【国際調査報告】
2015526807.tif 000022
2015526807.tif 000023
2015526807.tif 000024