(57)【要約】【課題】  従来のオブジェクトの移動操作では、少しだけ移動させる操作を行うのが困難であり、また大量のデータをスクロールする点で利便性の低いものであった。【解決手段】  タッチパネルに接触している物体の移動量と、その物体の個数を検出し、表示部に表示されているオブジェクトであって、タッチパネルに接触している物体により指示されているオブジェクトを判別する。そして、タッチパネルに接触している物体の移動量とその物体の個数とに応じて、オブジェクトの操作量を決定してオブジェクトの表示を制御する。【選択図】  図４
2013105461.tif 000002
【特許請求の範囲】
【請求項１】
タッチパネルを備えた表示部を有する情報処理装置であって、
前記タッチパネルに接触している物体の移動量を検出する移動検出手段と、
前記タッチパネルに接触している物体の個数を検出する個数検出手段と、
前記表示部に表示されているオブジェクトであって、前記タッチパネルに接触している物体により指示されているオブジェクトを判別する判別手段と、
前記移動検出手段により検出された前記移動量と前記個数検出手段により検出された前記物体の個数とに応じて、前記判別手段で判別された前記オブジェクトの操作量を決定して前記オブジェクトの表示を制御する制御手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記操作量は、前記物体の移動量と前記物体の個数の関数との積で求められ、前記制御手段は、前記操作量に応じて前記オブジェクトを移動することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記操作量は、前記物体の移動量を前記物体の個数の関数で除算した値で求められ、前記制御手段は、前記操作量に応じて前記オブジェクトを移動することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
所定の時間あたりの前記移動量を基に、前記タッチパネルに接触している物体の移動速度を求める速度算出手段を更に有し、
前記制御手段は、前記物体の個数の関数と前記移動速度とに基づいて前記オブジェクトをスクロールさせることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記オブジェクトがページを示す場合、前記タッチパネルに接触している物体の移動方向及び前記タッチパネルに接触している物体の個数を基に前記オブジェクトのページをめくるページ数を算出する算出手段を更に有し、
前記制御手段は、前記算出手段により算出された前記ページ数を前記操作量とし、前記ページ数に従って前記オブジェクトのページをめくるように表示することを特徴とする請求項１に記載の情報処理装置。
【請求項６】
タッチパネルを備えた表示部を有する情報処理装置を制御する制御方法であって、
移動検出手段が、前記タッチパネルに接触している物体の移動量を検出する移動検出工程と、
個数検出手段が、前記タッチパネルに接触している物体の個数を検出する個数検出工程と、
判別手段が、前記表示部に表示されているオブジェクトであって、前記タッチパネルに接触している物体により指示されているオブジェクトを判別する判別工程と、
制御手段が、前記移動検出工程で検出された前記移動量と前記個数検出工程で検出された前記物体の個数とに応じて、前記判別工程で判別された前記オブジェクトの操作量を決定して前記オブジェクトの表示を制御する制御工程と、
を有することを特徴とする情報処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、タッチパネルを備えた情報処理装置及びその制御方法に関する。
【背景技術】
【０００２】
タッチパネルを備えた表示部（タッチスクリーンディスプレイ）を備える情報端末では、指を画面に沿ってなぞることにより画面のオブジェクトを移動する移動操作や、指を弾くような動作をトリガにしてスクロールを開始するフリック操作を行うことができる。これら操作の利便性を向上する技術として、タッチパネルに接触している指の数が複数かどうかを判断して、移動操作を行うか、スクロール操作を行うかを変更するものがある（例えば特許文献１）。また、スクロール処理の利便性を向上させる技術として、スクロール操作対象オブジェクトの表示位置に応じて、事前に登録されたスクロール位置毎のスクロール量を用いて、画面上でスクロールする量を変更するものがある（例えば特許文献２）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１１−１０２２７４号公報
【特許文献２】特開２００２−２４４６４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来のオブジェクトの移動操作では、少しだけ移動させる操作を行うのが困難であった。例えば、ある表示オブジェクトを画面上で１画素分だけ移動させたい場合でも、タッチパネルの座標検知精度の誤差や、指の震え等の要因により、２画素以上移動したり、全く移動しないという場合があった。
【０００５】
また従来のスクロール操作では、大量のデータをスクロールする点で利便性の低いものであった。例えば従来のスクロール操作では、フリック操作における指を弾く動作のスピード（強さ）や、事前に登録されたスクロール量によりスクロール速度を変更できる。しかし、所定の値以上の速さでスクロールすることができない。この所定の値を大きくすることで、全体のスクロール速度を速めることはできるが、その一方で、低速度のスクロールを実現することが困難になる。そのため、状況に応じて、上記所定の値を変更すれば、この問題は解決できるが、そのためには所定の値を変更するための操作が必要になり、ユーザにとっての利便性の点で好ましくない。
【０００６】
本発明の目的は、上記従来技術の問題点を解決することにある。
【０００７】
本発明の特徴は、タッチパネルに接触する物体の移動量と物体の個数とに応じて、表示されているオブジェクトの移動やスクロール等の操作量を制御することにより、ユーザにとって利便性の高いオブジェクトの操作制御を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するために本発明の一態様に係る情報処理装置は以下のような構成を備える。即ち、
タッチパネルを備えた表示部を有する情報処理装置であって、
前記タッチパネルに接触している物体の移動量を検出する移動検出手段と、
前記タッチパネルに接触している物体の個数を検出する個数検出手段と、
前記表示部に表示されているオブジェクトであって、前記タッチパネルに接触している物体により指示されているオブジェクトを判別する判別手段と、
前記移動検出手段により検出された前記移動量と前記個数検出手段により検出された前記物体の個数とに応じて、前記判別手段で判別された前記オブジェクトの操作量を決定して前記オブジェクトの表示を制御する制御手段と、を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ユーザにとって利便性の高いオブジェクトの操作制御を提供できるという効果がある。
【図面の簡単な説明】
【００１０】
【図１】本実施形態に係るタッチスクリーン付き情報端末の利用環境を示す概略図。
【図２】実施形態に係る情報端末のハードウェア構成を示すブロック図。
【図３】タッチパネルへの指の接触状態を表す位置情報の一例を説明する図。
【図４】実施形態１に係る情報端末において、タッチパネルへの指の接触状態を検知し、それに応じた処理を実行する例を説明するフローチャート。
【図５】図４のＳ１０７の処理に該当する、実施形態１に係るタッチパネルにタッチしている指が移動した場合の処理を説明するフローチャート。
【図６】図４のＳ１０９の処理に該当する、タッチパネル上で指をはじいた場合の処理を説明するフローチャート。
【図７】実施形態１に係る情報端末の表示部に表示されたジョブ履歴画面で、接触している指を移動することにより画面をスクロールする例を説明する図。
【図８】実施形態２に係る情報端末の表示部での画像の移動を説明する図。
【図９】実施形態３に係る情報端末における指の本数に応じたページめくり処理を説明するフローチャート。
【図１０】実施形態３に係るページめくり処理を説明する図。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１２】
図１は、本発明の実施形態に係るタッチスクリーン付き情報端末（情報処理装置）の利用環境を示す概略図である。
【００１３】
情報端末１００は、無線ＬＡＮ１０１を介して画像形成装置（例えば複合機）１０２、デジタルカメラ１０３、及びプロジェクタ１０４と接続されている。これにより情報端末１００は、画像形成装置１０２で読み取られたスキャンデータ、ジョブ履歴などのデータを画像形成装置１０２から受信し、情報端末１００に表示することができる。また情報端末１００から画像データを画像形成装置１０２に送信して印刷させることもできる。更に情報端末１００は、デジタルカメラ１０３で撮影された画像データを受信したり、或いはプロジェクタ１０４に対して画像データを送信して表示させることもできる。以下本実施形態では、画像形成装置１０２と組み合わせた場合のアプリケーションを例に説明する。尚、情報端末１００との接続方式は無線ＬＡＮ１０１を例にして示しているが、有線ＬＡＮ等の他の方式での接続でも良い。
【００１４】
図２は、実施形態に係る情報端末１００のハードウェア構成を示すブロック図である。
【００１５】
情報端末１００は、主にメインボード２０１、表示部（ＬＣＤ）２０２、タッチパネル２０３、ボタンデバイス２０４を有している。尚、タッチパネル２０３は透明で、表示部２０２の画面上に配置され、指或いはペンなどで指示された画面上の位置などを出力する。
【００１６】
メインボード２０１は、主にＣＰＵ２１０、ＩＥＥＥ８０２．１１ｂモジュール２１１、ｉｒＤＡモジュール２１２、電源コントローラ２１３、ディスプレイコントローラ（ＤＩＳＰＣ）２１４を有している。更に、メインボード２０１は、パネルコントローラ（ＰＡＮＥＬＣ）２１５、ＦＬＡＳＨ ＲＯＭ２１６、ＲＡＭ２１７を有している。これら各部は、バス（不図示）によって接続されている。
【００１７】
ＣＰＵ２１０は、バスに接続される各デバイスを総括的に制御すると共に、ＦＬＡＳＨ ＲＯＭ２１６に記憶された、制御プログラムとしてのファームウェアを実行する。ＲＡＭ２１７は、ＣＰＵ２１０の主メモリ、ワークエリア、及び、表示部２０２に表示するビデオデータを記憶する表示用メモリを提供している。
【００１８】
ディスプレイコントローラ２１４は、ＣＰＵ２１０の要求に応じて、ＲＡＭ２１７に展開された画像データを表示部２０２へ転送するとともに、表示部２０２を制御する。その結果、表示部２０２に画像が表示される。パネルコントローラ２１５は、タッチパネル２０３上の指又はスタイラスペンなどの指示物による押下位置をＣＰＵ２１０に伝える。またボタンデバイス２０４の押下されたキーに対応するキーコード等をＣＰＵ２１０に伝える。
【００１９】
なお、ＣＰＵ２１０はタッチパネル２０３への以下の操作を検出できる。タッチパネルを指やペンで触れたこと（以下、タッチダウンと称する）。タッチパネルを指やペンで触れている状態であること（以下、タッチオンと称する）。タッチパネルを指やペンで触れたまま移動していること（以下、ムーブと称する）。タッチパネルへ触れていた指やペンを離したこと（以下、タッチアップと称する）。タッチパネルに何も触れていない状態（以下、タッチオフと称する）。これらの操作や、タッチパネル上に指やペンが触れている位置座標はバスを通じてＣＰＵ２１０に通知され、ＣＰＵ２１０は通知された情報に基づいてタッチパネル上にどのような操作が行なわれたかを判定する。ムーブについてはタッチパネル上で移動する指やペンの移動方向についても、位置座標の変化に基づいて、タッチパネル上の垂直成分（以下ｙ座標）・水平成分（以下ｘ座標）毎に判定できる。またタッチパネル上をタッチダウンから一定のムーブを経てタッチアップをしたとき、ストロークを描いたこととする。素早くストロークを描く操作をフリックと呼ぶ。フリックは、タッチパネル上に指を触れたまま、ある程度の距離だけ素早く動かして、そのまま離すといった操作であり、言い換えればタッチパネル上を指ではじくように素早くなぞる操作である。ＣＰＵ２１０は、所定距離以上を、所定速度以上でムーブしたことが検出され、そのままタッチアップが検出されるとフリックが行なわれたと判定できる。また、所定距離以上のムーブが検出され、そのままタッチオンが検出されている場合には、ドラッグが行なわれたと判定するものとする。また、タッチパネル２０３は同時に複数の押下位置を検知することが可能で、その場合ＣＰＵ２１０には押下位置の数分の位置情報が送信される。尚、タッチパネル２０３は、抵抗膜方式や静電容量方式、表面弾性波方式、赤外線方式、電磁誘導方式、画像認識方式、光センサ方式等、様々な方式のタッチパネルのうちいずれの方式のものを用いても良い。
【００２０】
電源コントローラ２１３は、外部電源（不図示）と接続されて電力の供給を受ける。これによって、電源コントローラ２１３に接続された充電池（不図示）を充電しながら、且つ、情報端末１００全体に電力を供給する。もし、外部電源から電力が供給されないときは、充電池からの電力を情報端末１００全体に供給する。ＩＥＥＥ８０２．１１ｂモジュール２１１は、ＣＰＵ２１０の制御に基づいて、画像形成装置１０２のＩＥＥＥ８０２．１１ｂモジュール（不図示）との無線通信を確立し、情報端末１００との通信を仲介する。ｉｒＤＡモジュール２１２は、例えばデジタルカメラ１０３のｉｒＤＡモジュールとの間での赤外線通信を可能にしている。
【００２１】
［実施形態１］
以下、図３〜図７を参照して、本発明の実施形態１に係る情報端末１００におけるスクロール処理について説明する。尚、本実施形態に係る処理は、情報端末１００のソフトウェアにより実現されるが、ハードウェアにより実現されても良い。
【００２２】
図３（Ａ）〜（Ｃ）は、タッチパネル２０３へタッチしている指の位置を表す位置情報の一例を説明する図である。
【００２３】
図３（Ａ）は、ある時点で、指がタッチされている位置情報Ｐnを示しており、座標１、座標２、座標３は、３本の指がタッチされている座標値を示している。図３（Ｂ）は、図３（Ａ）の直前の位置情報Ｐn-1を示しており、座標１、座標２、座標３は、３本の指がタッチされている座標値を示している。図３（Ｃ）は、図３（Ａ）と図３（Ｂ）との間の座標の変動量（移動量）を示している。
【００２４】
図４は、本発明の実施形態１に係る情報端末１００において、タッチパネル２０３への指の接触状態を検知し、それに応じた処理を実行する例を説明するフローチャートである。この処理は、指或いはペン等によるオブジェクトの移動処理を必要とするアプリケーションが起動された場合に実行され、そのアプリケーションが終了されるまで引き続き実行される。ここでは指によりタッチパネル２０３がタッチされる場合で説明するが、スタイラスペンなど別の物体を用いても良い。尚、この処理を実行するプログラムはＦＬＡＳＨ ＲＯＭ２１６に記憶されており、そのプログラムをＣＰＵ２１０の制御の下に実行することにより実現される。
【００２５】
まずＳ１０１で、ＣＰＵ２１０は、初期化処理として、タッチパネル２０３にタッチしている指の位置を示す位置情報Ｐnと、タッチしている指の数を示す指本数Ｆnを「０」に初期化してＲＡＭ２１７に記憶する。次にＳ１０２に進み、ＣＰＵ２１０はＲＡＭ２１７に記憶されている位置情報Ｐnと、指本数Ｆn、及び検知時刻Ｔnを、それぞれ直前の位置情報Ｐn-1、直前の接触本数Ｆn-1、直前の検知時刻Ｔn-1としてＲＡＭ２１７に記憶し、変数ｎを＋１する。この時Ｐn-1、Ｆn-1、及びＴn-1の値は、それぞれＰn-2、Ｆn-2、及びＴn-2に記憶される。即ち、一般的に表すと、Ｐn-m+1、Ｆn-m+1、及びＴn-m+1の値は、それぞれＰn-m、Ｆn-m、及びＴn-mに記憶される。これによりＲＡＭ２１７には、それまでの検知情報がＰn-m，Ｆn-m，Ｔn-mとして所定期間分記憶される。ここでｍは、何回前かを表す値であり、例えばＰn-3は３回前の検知時の位置情報を意味する。
【００２６】
次にＳ１０３に進み、ＣＰＵ２１０は、パネルコントローラ２１５から、タッチパネル２０３における指による現在の接触状態を取得してＲＡＭ２１７に記録する。このときパネルコントローラ２０３から送られてくる位置情報をＰnとし、また位置情報の数を指本数Ｆnとして扱う（個数検出）。また、その検知した時刻をＴnとして記憶する。
【００２７】
次にＳ１０４に進み、ＣＰＵ２１０は、位置情報の数、即ち、タッチしている指の本数が増えたかどうかを調べ、新たな指によるタッチが検知された場合はＳ１０５へ進み、そうでなければＳ１０６へ進む。具体的な条件は、直前の指本数Ｆn-1が「０」で、現在の指本数Ｆnが「１」以上であれば、新たな指によるタッチが行われたと判定する。
【００２８】
Ｓ１０５でＣＰＵ２１０は、操作対象となるオブジェクトを判別してＲＡＭ２１７に記憶する。操作対象とするオブジェクトの判別方法は、アプリケーションに応じて適宜設定できる。例えば、タッチパネル２０３上でタッチしている指の座標の中央位置に対応して、表示部２０２の画面の最前面に表示されているオブジェクトである。また別の例としては、タッチパネル２０３上でタッチしている指の座標の中央位置で、表示部２０２の画面の最前面に表示されているオブジェクトを包含するリストオブジェクトである。
【００２９】
Ｓ１０４で、新たな指によるタッチが検出されないときはＳ１０６に進み、ＣＰＵ２１０は、それまでタッチしていた指がタッチパネル２０３上で移動されたか否かを判定する。指が移動されたと判定するとＳ１０７に進み、そうでなければＳ１０８へ進む。タッチパネル２０３上での指の移動の検知は、直前の位置情報に含まれる各指の座標値と、対応する各指の現在の位置情報に含まれる座標値とを比較することにより行う。ここで一つでも一致しない座標値があれば、タッチされている指が移動したと判定する。例えば図３に示すような位置情報の場合、図３（Ａ）の座標１のｘ座標は「３０６」で、図３（Ｂ）の座標１のｘ座標は「３０２」であり、これらは一致しない。この場合、座標１に対応する指がタッチパネル２０３上で移動したと判定する。図３の例では座標１〜３のいずれも移動しているため、３本の指がタッチパネル２０３上で移動していると判定される。
【００３０】
Ｓ１０７でＣＰＵ２１０は、図５を参照して後述する、指が移動されたと判定した場合の処理を実行する。
【００３１】
またＳ１０８では、ＣＰＵ２１０は全ての指が離されたかどうかを調べ、全ての指が離されたことを検知した場合はＳ１０９へ進み、そうでなければＳ１０２に進む。即ち、Ｓ１０８では、直前の指の接触本数Ｆn-1が１以上で、現在の指本数Ｆnが「０」の場合に、全ての指が離されたと判定する。Ｓ１０９において、ＣＰＵ２１０は別途定める指が離された場合の処理を行う。尚、Ｓ１０９では、全ての指がタッチパネル２０３から離されると、次に指でタッチパネル２０３の画面上をはじく操作が行われると想定している。
【００３２】
図５は、図４のＳ１０７の処理に該当する、実施形態１に係るタッチパネル２０３にタッチしている指が移動した場合の処理を説明するフローチャートである。
【００３３】
まずＳ５０１で、ＣＰＵ２１０は、その指でタッチされているオブジェクトの移動可能な方向を決定する。前述の図４のＳ１０５で決定した、対象となるオブジェクトによっては、そのオブジェクトが移動できる方向が決まっている場合がある。例えば、そのオブジェクトがリストの場合、そのオブジェクトは、そのリストを構成する要素が並ぶ方向にしか移動できないのが一般的である。よってＣＰＵ２１０は、Ｓ１０５で決定したオブジェクトに基づいて、移動可能な方向情報を取得することで、移動可能な方向がｘ方向であるか、ｙ方向であるか、全方向であるかを決定する。
【００３４】
次にＳ５０２に進み、ＣＰＵ２１０は、タッチパネル２０３上で移動された指の移動量を算出する。ここではＣＰＵ２１０は、現在の位置情報Ｐnと直前の位置情報Ｐn-1とから、各指のｘ座標、ｙ座標それぞれについて座標値の差分を計算する。
【００３５】
図３（Ｃ）は、このようにして求められた各指の座標値の差分の算出結果を示している。ＣＰＵ２１０は更に、３本の指に対応する座標値の差分の平均値を、ｘ座標、ｙ座標毎に算出する。図３（Ｃ）の平均は、その結果を示しており、３本の指の移動量の平均値がｘ方向に「６」、ｙ方向に「４」であることを示している。尚、ここでは、Ｓ５０１で決定した移動方向以外の方向の移動量の算出は省略して良い。例えば、オブジェクトがｘ方向にのみ移動する場合は、ｙ方向の移動量は算出しなくてもよい。
【００３６】
次にＳ５０３に進み、ＣＰＵ２１０は、対象オブジェクトの移動量を算出する。このオブジェクトの移動量は、指の移動量に指の本数の関数を乗じたものとする。即ち、ｎ番目の検知でのオブジェクトの移動量Ｄnは、Ｄn＝（Ｐn−Ｐn-1）×ｆ（Ｆn）で表される。ここで、ｆ（Ｆn）は指の本数Ｆnの関数である。関数ｆ（Ｆn）として最も単純なものは、指の本数そのもの、即ち、ｆ（Ｆn）＝Ｆnである。この場合、オブジェクトの移動量Ｄnは、Ｄn＝（Ｐn−Ｐn-1）×Ｆnとなる。
【００３７】
ここで、指の移動量に対してオブジェクトの移動量を増加させたい場合は、例えばｆ（Ｆn）＝２×Ｆnなどの関数を適用することで実現可能である。ｆ（Ｆn）或いはＤnは、アプリケーションに応じて自由に変更可能である。後述する実施形態２及び実施形態３では、これらを変更した例を説明する。以下、ここではオブジェクトの移動量の算出式として、Ｄn＝（Ｐn−Ｐn-1）×Ｆnを用いた場合を例に説明する。図３（Ｃ）において、前述したように指の移動量はｘ方向に「６」、ｙ方向に「４」である。また指の本数Ｆnは「３」であるため、この場合のオブジェクトの移動量Ｄnは、ｘ方向に６×３＝１８、ｙ方向に４×３＝１２となる。
【００３８】
次にＳ５０４に進み、ＣＰＵ２１０は、オブジェクトの移動処理を行う。オブジェクトの位置は、位置情報と同じ座標系で保持されている。例えば、オブジェクトの位置情報と、指がタッチしている位置情報とが一致する場合、オブジェクトと指とは同じ位置に存在すると言える。またオブジェクトの移動は、オブジェクトの座標値を変更して再描画することで可能となる。Ｓ５０４では、オブジェクトの座標値に、Ｓ５０３で求めた移動量分を加算し、再度、そのオブジェクトの描画処理を行うことでオブジェクトの移動を実現する。但し、座標値の加算はＳ５０１で求めた方向に対してのみ行う。
【００３９】
図６は、図４のＳ１０９の指が離された場合の処理、即ち、タッチパネル２０３上で指をはじいた場合の処理を説明するフローチャートである。
【００４０】
まずＳ６０１で、ＣＰＵ２１０は、図５のＳ５０１と同様にして、オブジェクトの移動方向が、ｘ方向か、ｙ方向か、全方向かを決定する。次にＳ６０２に進み、ＣＰＵ２１０は、指の移動速度を算出する。この指の移動速度算出は、所定の回数分の過去の位置情報Ｐn-m及び検知時刻Ｔn-mと、直前の位置情報Ｐn-1及び検知時刻Ｔn-1とを用いて行う。これらデータの指毎の座標値の差分（Ｐn-1−Ｐn-m）の平均値を、その移動に要した時間（Ｔn-1−Ｔn-m）で割ることにより、単位時間当たりの速度が求められる。
【００４１】
次にＳ６０３に進み、ＣＰＵ２１０は、Ｓ６０２で求められた単位時間当たりの移動速度に、所定の回数分の過去での指の本数Ｆn-mを乗じ、これを単位時間当たりのオブジェクトの移動量としてＲＡＭ２１７に記憶する。尚、ここでは指の移動速度と指の本数を基にして移動量を算出しているが本発明はこれに限定されない。例えば、Ｓ６０２で、移動速度ではなく加速度を求め、これと指の本数から移動量を決定してもよい。
【００４２】
次にＳ６０４に進み、ＣＰＵ２１０は、Ｓ６０１で求めた方向へ、Ｓ６０３で求めた単位時間当たりのオブジェクトの移動量分、所定の表示更新周期で繰り返しオブジェクトを移動する。尚、この表示更新周期ごとの移動量は、検知時刻Ｔnごとに更新される単位時間当たりの速度に応じて適宜変更される。
【００４３】
図７は、実施形態１に係る情報端末の表示部２０２に表示された過去のジョブ情報を示すジョブ履歴画面７００で、接触している指を移動することにより画面をスクロールする例を説明する図である。
【００４４】
ジョブ履歴情報は公知の方法でＩＥＥＥ８０２.１１ｂモジュール２１１を介して画像形成装置１０２で取得されたものである。ここでは操作対象オブジェクトの一例としてジョブ履歴を示しているが、操作対象はどんなものでも構わない。例えば写真などの画像やＷｅｂページでも良い。
【００４５】
ここで図４の指の移動検出処理フローを適用した場合の指と移動対象オブジェクトの位置関係について図７を用いて具体的に説明する。尚、ここでは特にＳ１０７において図５の指の本数に応じた移動処理を適用した例と、Ｓ１０９において図６の指のはじき処理を適用した例について詳しく説明する。
【００４６】
図７（Ａ）は、時刻Ｘ時Ｘ分Ｘ秒０ミリ秒の時に、ジョブ履歴の内容を表すジョブリストに２本の指を接触した状態を表している。図７（Ｂ）は、時刻Ｘ時Ｘ分Ｘ秒２００ミリ秒の時の状況を示しており、図７（Ａ）から指７０３が白抜き矢印７０４の方向へ移動した状態を示している。図７（Ａ）の状態から指の移動を検知すると、図４のＳ１０７の指の移動検出処理において、図５のフローチャートで示す移動処理が実行される。
【００４７】
このジョブリストは上下方向にしか動かない事を予め指定してあり、これによりＳ５０１では移動する方向はｙ方向と決定される。またＳ５０２で求められる指７０３の移動量は、ジョブリストの２行分である（白抜き矢印７０４の先端から終端までの差分）。更に、Ｓ５０３では、指の移動量に指の本数である「２」が乗じられることで、オブジェクトの移動量はジョブリストの４行分となる。これらから、Ｓ５０４では、黒矢印７０５で示すように、ジョブリストがｙ方向へ４行分スクロールされる。
【００４８】
ここでは、指７０３による押下の検知が移動前と移動後の２回のみとしている。しかし、前述のように図４の指の移動検出処理は所定の間隔で繰り返し行われる。通常この間隔は十分短いため、図７（Ａ）から図７（Ｂ）の状態へ変遷する間に、図５の指の本数に応じた指が移動した場合の処理は複数回実行される可能性がある。但し、この場合でも、それぞれの検知時点で前回位置との差分を計算し、その都度移動処理を行えば最終的には同じ位置に移動されることになるため、結果は変わらない。
【００４９】
尚、指の押下の検出間隔が十分小さければ、指を途中で離したり、タッチする指を追加した場合、指の本数が影響するのは各移動処理時点での移動量である。そのため、指を動かしながら指の数を増減させることでオブジェクトの移動速度の加減速が可能になる。
【００５０】
以下、更に図７（Ｂ）の状況の直後に指が全て離された状況を考える。指が全て離されたとき、Ｓ１０９において図６の指が離された場合の処理が実行される。
【００５１】
このジョブリストは、前述したように上下方向にしか移動しないことを予め指定してあり、これによりＳ６０１では移動する方向はｙ方向と決定される。ここで、指の検知が２０ｍｓ毎に１回行われ、Ｓ６０２における参照する過去に遡るデータの個数（前記所定の回数）が「１０」であると仮定する。この場合、Ｓ６０２では、２００ｍｓ前のデータ（即ち図７（Ａ）の状況）と、直前のデータ（図７（Ｂ）の状況）とを比較する。これら２つを比較すると、指は２００ｍｓでリスト２行分動いている（白矢印７０４）ため、１０行／ｓの速さで指が動いていることが分かる。
【００５２】
更に、Ｓ６０３では、この速さに指の本数である「２」を乗じ、オブジェクトの単位時間当たりの移動量を２０行／sと決定する。そしてＳ６０４において、表示更新周期毎にこの速さでジョブリストをスクロールする。例えば、表示更新周期が５０ｍｓであった場合は、表示更新周期（５０ｍｓ）ごとに２０行／ｓ×０．０５＝１行分だけスクロールする。
【００５３】
以上説明したように実施形態１によれば、スクロール操作や移動操作において、接触する指の本数を変更することにより、その操作量（移動量）を変更することが可能となる。これによりユーザは、大量のデータを含むリストをスクロール表示する場合や、非常に大きな画像（例えば地図画像）を移動するような場合に、より少ない時間で目的のデータや場所を表示することが可能になる。
【００５４】
またその操作量の変更は、指の数を変更するだけであるため、単純かつ容易にできる。またその変更量も指の数の倍数、或いはその定数倍という直観的な変更量であるため、より利便性の高いスクロール操作やオブジェクトの移動を実現できる。
【００５５】
［実施形態２］
次に本発明の実施形態２について説明する。尚、実施形態２に係る情報端末１００の構成等は前述の実施形態１と同じであるため、その説明を省略する。
【００５６】
実施形態２では、精密な操作を要するアプリケーションにおける移動制御処理を示す。実施形態１では、図５の指の本数に応じた移動処理において、オブジェクトの移動量を指の移動量に指の本数を乗じたものとした。この目的は、大量のデータをより速く移動する点にあった。
【００５７】
一方、実施形態２では、精密な操作を実現することを目的とし、Ｓ５０３におけるオブジェクトの移動量を、指の移動量を指の本数で除算したものとする。即ち、オブジェクトの移動量Ｄnの算出式において、ｆ（Ｆn）＝１／Ｆnを利用し、Ｄn＝（Ｐn−Ｐn-1）／Ｆnとする。この移動量がＳ５０４によりオブジェクトの座標値に加算される。尚、オブジェクトの座標値は、内部的には実数値で保持されており、小数点以下の情報も保持可能である。そして表示する時には整数部のみを用いる。
【００５８】
以下、図８を用いて具体的な例を示す。
【００５９】
図８は、実施形態２に係る情報端末１００の表示部２０２で画像の移動を説明する図である。ここでは、画像編集画面として２つの画像（画像Ａ８０１、画像Ｂ８０２）を表示している。ユーザはドラッグ操作を行うことで、これら２つの画面を編集領域８０３内の任意の場所へ移動することが出来る。図８（Ａ）は、画像Ｂ８０２に指８０４をタッチした状態を示し、図８（Ｂ）は、図８（Ａ）から指８０４が白抜き矢印８０５のように移動された後の様子を示している。
【００６０】
このとき、Ｓ５０３におけるオブジェクトの移動量を、指の移動量を指の本数で割ったものとすれば、指の本数が２本であるため、オブジェクトの移動量は黒矢印８０６で示すように、指の移動量（白矢印８０５の先端から末尾までの距離）の半分となる。この結果、図８（Ｂ）のように画像Ｂ８０２は画像Ａ８０１に隣接する位置まで移動される。
【００６１】
尚、前述したように、タッチする指の数を変更することによるオブジェクトの移動量の変更は、指の数の変更後、即座に反映される。例えば図８（Ａ）において、ユーザが画像Ｂ８０２を画像Ｂ８０１にぴったりと隣接させたいとする。このとき画像Ｂ８０２がより画像Ａ８０１に近づくまでは１本の指で操作することで、等倍の移動量でオブジェクト（画像Ｂ８０２）を移動できる。そして画像Ｂ８０２が画像Ａ８０１に近づき、微調整が必要な位置になると、タッチしている指の数を２本にする。これにより、１／２の移動量で操作が可能となる。
【００６２】
また場合によっては、指を離すときに別の座標が検知され、それによりオブジェクトが微調整後の位置より更に移動してしまう可能性がある。この問題は、微調整後、所定の時間、指の静止状態が続いたらオブジェクトの移動を確定させる処理を追加することによって解決できる。また或いは、移動確定ボタンを用意し、微調整中に移動確定ボタンが押下されると、移動している画像の位置を確定するようにしても良い。
【００６３】
以上説明したように実施形態２によれば、ユーザがオブジェクトの精密な移動操作を行いたい場合に、タッチする指の数を増やすことにより、指の移動量に対するオブジェクトの移動量を減少させて、オブジェクトの移動量の微調整を行うことが可能となる。これにより、座標検知精度が低いタッチスクリーンを利用するユーザや、指位置の微調整が難しいユーザでも、オブジェクトの精密な位置調整が可能となるため、利便性が高くなる。例えば、タッチパネルの座標検知精度が低く、静止状態でも検知する座標値が常に１画素程度前後するような端末でも、４本の指を用いればその誤差も４分の１になり、精密な操作がし易くなる。また同様に、指位置の微調整が難しい姿勢での操作時や、身体上の理由などにより指の震えがあっても、接触させる指の本数を増やすことで、指の震えによる影響を抑えることが可能となるため、操作性が向上できるという効果がある。
【００６４】
［実施形態３］
次に本発明を実施するための第３の実施形態について説明する。尚、実施形態３に係る情報端末１００の構成等は前述の実施形態１，２と同じであるため、その説明を省略する。
【００６５】
実施形態３では、その他のアプリケーションにおける適用例として、電子文書のページめくり操作を要するアプリケーションにおける制御処理を説明する。
【００６６】
図９は、実施形態３に係る情報端末における指の本数に応じたページめくり処理を説明するフローチャートである。尚、この処理を実行するプログラムはＦＬＡＳＨ ＲＯＭ２１６に記憶されており、そのプログラムをＣＰＵ２１０の制御の下に実行することにより実現される。
【００６７】
Ｓ９０１とＳ９０２の処理は、それぞれ図５のＳ５０１及びＳ５０２と同等の処理である。そしてＳ９０３に進み、ＣＰＵ２１０は、現在の操作でページめくり処理を行うか否かを判定する。具体的にはまず、指の押下位置に対して所定の距離以上指が移動されたかを判定し、所定の距離以上指が移動されないと判定した場合は、ページめくり処理は行わないと判定する。また、現在の表示ページが終端のページであり、それ以上めくるべきページが無い場合にページめくり処理は行わないと判定する。また、現在のドラッグ操作において、既にページめくりが実行されている場合にページめくりを行わないと判定する。即ち、一度指を離すまで２回ページめくる処理を行うことはしない。これらの条件を基にページめくりを行うか否かを判定し、ページめくり処理を行うと判定した場合Ｓ９０４に進むが、そうでないときはこのページめくり処理を終了する。
【００６８】
Ｓ９０４では、ＣＰＵ２１０は、ページの移動量（めくるページ数）を指の本数Ｆnとする。次にＳ９０５に進み、ＣＰＵ２１０は、予め定義されるページの移動処理を、Ｓ９０４で求めたページ数分行う。ここでは、めくられたページの表示方法については問わない、単純に現在のページ画像と同じ位置に移動先のページの画像を表示するだけでも良いし、その間に画像をめくるように見せるアニメーションを追加しても良い。
【００６９】
以下、図１０を用いて具体的な例を説明する。
【００７０】
図１０は、実施形態３に係るページめくり処理を説明する図である。図１０では、情報端末１００の表示部２０２に電子文書ビューア画面として２つのページ画像（ページ１（１００１）、ページ２（１００２））を表示している状態を示している。ユーザはページ２（１００２）上で左方向に指でドラッグ操作を行うことにより、ページめくり操作を行うことができる。図１０（Ａ）と図１０（Ｂ）はそれぞれ、ページめくり操作の前と後の指の動きと表示画面の関係を示している。指１００３を白矢印１００４のように動かすと、Ｓ９０４で、めくるページ数は、タッチしている指の本数に応じて「２」と決定される。また続いてＳ９０５で、２ページ分のページ移動処理が行われる。こうして最終的に、図１０（Ｂ）に示すように、図１０（Ａ）の状態に対して２ページ分のページがめくられた、５，６ページが表示された状態となる。
【００７１】
以上説明したように実施形態３によれば、ページめくり操作において、接触する指の本数を変更することで、そのめくるページ数を変更することができる。これによりユーザは、接触している指の本数分だけページをめくることができるため、より直観的なページめくり操作が可能となる。
【００７２】
尚、上記実施形態１〜３では、タッチパネルへの指による接触を例に説明したが本発明はこれに限定されるものでなく、ペン等の物体を接触させても良く、複数の物体が接触されているとき、それらの個数を識別できる構成であれば良い。
【００７３】
以上説明した本実施形態によれば、ユーザは大量のデータを含むリストをスクロールする場合や、非常に大きな画像（例えば地図画像）を移動するような場合に、より少ない時間で目的のデータや場所を表示することが可能になる。また、座標検知精度が低いタッチスクリーンを利用するユーザや、指位置の微調整が難しいユーザでも、オブジェクトの精密な位置調整が可能となるため、利便性の高い操作制御が可能となる。
【００７４】
（その他の実施例）
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。また、上述の実施形態の一部を適宜組み合わせてもよい。
【００７５】
また、上述の情報処理装置は、様々な装置を含むものである。例えば、パーソナルコンピュータやＰＤＡ、携帯電話端末に限らず、プリンタ、スキャナ、ＦＡＸ、複写機、複合機、カメラ、ビデオカメラ、その他の画像ビューワ等を含む。
【００７６】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2013105461.tif 000003
【図２】
2013105461.tif 000004
【図３】
2013105461.tif 000005
【図４】
2013105461.tif 000006
【図５】
2013105461.tif 000007
【図６】
2013105461.tif 000008
【図７】
2013105461.tif 000009
【図８】
2013105461.tif 000010
【図９】
2013105461.tif 000011
【図１０】
2013105461.tif 000012