(57)【特許請求の範囲】
【請求項１】
入力面上で指示体によって指示される位置を繰り返し検出する位置検出手段と、
ディスプレイに表示されている画像に、前記位置検出手段で検出される位置の変化を反映した動きを与える出力制御手段と、を備え、
前記出力制御手段は、前記位置検出手段に検出される位置が静止した状態で所定時間が経過した後の、所定の条件が満たされている期間には、前記表示されている画像に対して前記位置の変化を反映した動きを与えず、
前記所定の条件は、前記位置検出手段に検出される位置が静止した状態で前記所定時間が経過してからの時間が、前記位置検出手段に検出された位置が静止していた時間の長さに応じて異なる長さの無効時間を越えていない場合に満たされることを特徴とする、
情報処理装置。
【請求項２】
前記出力制御手段は、前記位置検出手段に検出された位置が前回検出された位置から所定の距離を超えて移動した場合に、前記ディスプレイに表示されている画像に、前記移動を反映した動きを与え、
前記位置検出手段に検出された位置が前回検出された位置から前記所定の距離を超える移動をしていない時間が前記所定時間に達した後の、前記所定の条件が満たされている期間には、前記位置検出手段に検出された位置が前回検出された位置から前記所定の距離を超えて移動しても、前記表示されている画像に対して前記移動を反映した動きを与えないことを特徴とする、
請求項１に記載の情報処理装置。
【請求項３】
前記位置検出手段に検出された位置が前回検出された位置から所定の距離を超えて移動していなければ、前記位置検出手段に検出された位置が静止していると判定する静止判定手段を備えることを特徴とする、
請求項１または２に記載の情報処理装置。
【請求項４】
入力面上で指示体によって指示される位置を繰り返し検出する位置検出手段と、
ディスプレイに表示されている画像に、前記位置検出手段で検出される位置の変化を反映した動きを与える出力制御手段と、を備え、
前記出力制御手段は、前記位置検出手段に検出される位置が静止した状態で所定時間が経過した後の、所定の条件が満たされている期間には、前記表示されている画像に対して前記位置の変化を反映した動きを与えず、
前記所定の条件は、前記位置検出手段に検出される位置が、静止した状態で前記所定時間が経過した後で変化したことによる移動距離が、前記位置検出手段に検出された位置が静止していた時間の長さに応じて異なる距離が選ばれる無効化距離を越えていない場合に満たされることを特徴とする、
情報処理装置。
【請求項５】
前記無効化距離は、前記位置検出手段に検出された位置が移動した方向に応じて異なる距離が選ばれることを特徴とする、
請求項４に記載の情報処理装置。
【請求項６】
前記出力制御手段によって前記画像に与えられる動きは、前記ディスプレイに表示されているカーソルまたはスライドバーの移動であることを特徴とする、
請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記位置検出手段に検出される位置に関する情報に基づいて、前記所定の条件が満たされているかを判別する判別手段をさらに備え、
前記出力制御手段は、前記判別手段により前記所定の条件が満たされていないと判別されるようになった時点から、前記表示されている画像に対して、前記位置検出手段に検出される前記位置の変化を反映した動きを与えることを特徴とする、
請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
入力面上で指示体によって指示される位置を繰り返し検出する位置検出手段と、
ディスプレイに表示されている画像に、前記位置検出手段で検出される位置の変化を反映した動きを与える出力制御手段と、を備え、
前記位置検出手段は、前記入力面に対する前記指示体のタッチを検出するセンサにより所定の時間間隔で取得されるデータに基づいて、前記入力面に接触していた前記指示体が前記入力面から離間したことを検出し、
前記出力制御手段は、前記位置検出手段に検出されるタッチ位置が静止した状態で所定時間が経過した後で、前記位置検出手段に検出される前記タッチ位置の移動を前記ディスプレイに表示されている画像に反映し、さらに、前記位置検出手段に検出されるタッチ位置が静止した状態で前記所定時間が経過してから前記位置検出手段が前記指示体の前記入力面からの離間を検出するまでの時間が無効時間より短い場合に所定の条件が満たされているとして、前記ディスプレイに表示されている画像を、前記タッチ位置が前記所定時間の間静止していた位置に応じた画像に戻すことを特徴とする、
情報処理装置。
【請求項９】
前記位置検出手段は、前記入力面に対する前記指示体のタッチを検出するセンサにより所定の時間間隔で取得されるデータに基づいて、タッチ位置を検出することを特徴とする、
請求項１乃至８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記位置検出手段は、前記データに基づいて、前記入力面に接触していた前記指示体が前記入力面から離間したことを検出し、
前記出力制御手段は、前記位置検出手段に検出されるタッチ位置が静止した状態で前記所定時間が経過した後で、前記所定の条件が満たされている間に、前記位置検出手段が前記指示体の前記入力面からの離間を検出すると、前記タッチ位置が前記所定時間の間静止していた位置に応じた画像を前記ディスプレイに表示させることを特徴とする、
請求項９に記載の情報処理装置。
【請求項１１】
前記位置検出手段に検出される位置が静止した状態で所定時間が経過してから前記所定の条件が満たされている間の前記位置の変化を無効とし、前記所定の条件を満たさなくなると前記位置の変化を有効とする無効化手段を更に備え、
前記出力制御手段は、前記無効化手段に無効とされた前記位置の変化を、前記ディスプレイに表示されている画像に反映せず、
前記無効化手段は、前記位置検出手段に検出される位置が静止した状態で所定時間が経過した後に前記位置検出手段に検出される位置が再び変化し始めた時点から、無効時間内に検出される前記位置の変化を無効とし、前記無効時間を経過した後で検出される前記位置の変化を有効とすることを特徴とする、
請求項１乃至１０のいずれか１項に記載の情報処理装置。
【請求項１２】
前記無効化手段は、前記位置検出手段に検出される位置が静止した状態で所定時間が経過した後に、前記位置検出手段に検出される前記位置の変化による移動距離が無効化距離未満の間は前記位置の変化を無効とし、前記移動距離が前記無効化距離以上に達した場合の変化を有効とすることを特徴とする、
請求項１１に記載の情報処理装置。
【請求項１３】
前記無効化手段は、前記位置検出手段に検出される位置が静止した状態で所定時間が経過した後に、前記位置検出手段に検出される位置が再び変化するまでの時間に応じて前記無効時間或いは前記無効化距離を設定することを特徴とする、
請求項１２に記載の情報処理装置。
【請求項１４】
前記入力面は、位置検出センサと前記ディスプレイとが一体に構成されたタッチパネルであることを特徴とする、
請求項１乃至１３のいずれか１項に記載の情報処理装置。
【請求項１５】
情報処理装置が、
位置検出手段により、入力面上で指示体によって指示される位置を繰り返し検出する位置検出工程と、
出力制御手段により、ディスプレイに表示されている画像に、前記位置検出手段に検出される位置の変化を反映した動きを与える出力制御工程と、を含み、
前記出力制御工程では、前記位置検出手段に検出される位置が静止した状態で所定時間が経過した後の、所定の条件が満たされている期間には、前記表示されている画像に対して前記位置の変化に反映した動きを与えず、
前記位置検出手段に検出される位置が静止した状態で前記所定時間が経過してからの時間が、前記位置検出手段に検出された位置が静止していた時間の長さに応じて異なる長さの無効時間を越えていない場合に、前記所定の条件が満たされることを特徴とする、
情報処理装置の制御方法。
【請求項１６】
情報処理装置が、
位置検出手段により、入力面上で指示体によって指示される位置を繰り返し検出する位置検出工程と、
出力制御手段により、ディスプレイに表示されている画像に、前記位置検出手段に検出される位置の変化を反映した動きを与える出力制御工程と、を含み、
前記出力制御工程では、前記位置検出手段に検出される位置が静止した状態で所定時間が経過した後の、所定の条件が満たされている期間には、前記表示されている画像に対して前記位置の変化に反映した動きを与えず、
前記位置検出手段に検出される位置が、静止した状態で前記所定時間が経過した後で変化したことによる移動距離が、前記位置検出手段に検出された位置が静止していた時間の長さに応じて異なる距離が選ばれる無効化距離を越えていない場合に、前記所定の条件が満たされることを特徴とする、
情報処理装置の制御方法。
【請求項１７】
情報処理装置が、
位置検出手段により、入力面上で指示体によって指示される位置を繰り返し検出する位置検出工程と、
出力制御手段により、ディスプレイに表示されている画像に、前記位置検出手段に検出される位置の変化を反映した動きを与える出力制御工程と、を含み、
前記位置検出工程では、前記入力面に対する前記指示体のタッチを検出するセンサにより所定の時間間隔で取得されるデータに基づいて、前記入力面に接触していた前記指示体が前記入力面から離間したことを検出し、
前記出力制御工程では、前記位置検出手段に検出される位置が静止した状態で所定時間が経過した後で、前記位置検出手段に検出される前記タッチ位置の移動を前記ディスプレイに表示されている画像に反映し、さらに、前記位置検出手段に検出されるタッチ位置が静止した状態で前記所定時間が経過してから前記位置検出手段が前記指示体の前記入力面からの離間を検出するまでの時間が無効時間より短い場合に所定の条件が満たされているとして、前記ディスプレイに表示されている画像を、前記タッチ位置が前記所定時間の間静止していた位置に応じた画像に戻すことを特徴とする、
情報処理装置の制御方法。
【請求項１８】
指示体が所定の入力面にタッチする位置を検出して当該位置を表すデータを出力する位置検出センサに接続されるコンピュータを、
入力面上で指示体によって指示される位置を繰り返し検出する位置検出手段、
ディスプレイに表示されている画像に、前記位置検出手段に検出される位置の変化を反映した動きを与える出力制御手段、として機能させ、
前記出力制御手段では、前記位置検出手段に検出される位置が静止した状態で所定時間が経過した後の、所定の条件が満たされている期間には、前記表示されている画像に対して前記位置の変化に反映した動きを与えず、
前記所定の条件は、前記位置検出手段に検出される位置が静止した状態で前記所定時間が経過してからの時間が、前記位置検出手段に検出された位置が静止していた時間の長さに応じて異なる長さの無効時間を越えていない場合に満たされることを特徴とする、
コンピュータプログラム。
【請求項１９】
指示体が所定の入力面にタッチする位置を検出して当該位置を表すデータを出力する位置検出センサに接続されるコンピュータを、
入力面上で指示体によって指示される位置を繰り返し検出する位置検出手段、
ディスプレイに表示されている画像に、前記位置検出手段に検出される位置の変化を反映した動きを与える出力制御手段、として機能させ、
前記出力制御手段では、前記位置検出手段に検出される位置が静止した状態で所定時間が経過した後の、所定の条件が満たされている期間には、前記表示されている画像に対して前記位置の変化に反映した動きを与えず、
前記所定の条件は、前記位置検出手段に検出される位置が、静止した状態で前記所定時間が経過した後で変化したことによる移動距離が、前記位置検出手段に検出された位置が静止していた時間の長さに応じて異なる距離が選ばれる無効化距離を越えていない場合に満たされることを特徴とする、
コンピュータプログラム。
【請求項２０】
指示体が所定の入力面にタッチする位置を検出して当該位置を表すデータを出力する位置検出センサに接続されるコンピュータを、
入力面上で指示体によって指示される位置を繰り返し検出する位置検出手段、
ディスプレイに表示されている画像に、前記位置検出手段に検出される位置の変化を反映した動きを与える出力制御手段、として機能させ、
前記位置検出手段では、前記入力面に対する前記指示体のタッチを検出するセンサにより所定の時間間隔で取得されるデータに基づいて、前記入力面に接触していた前記指示体が前記入力面から離間したことを検出し、
前記出力制御手段では、前記位置検出手段に検出される位置が静止した状態で所定時間が経過した後で、前記位置検出手段に検出される前記タッチ位置の移動を前記ディスプレイに表示されている画像に反映し、さらに、前記位置検出手段に検出されるタッチ位置が静止した状態で前記所定時間が経過してから前記位置検出手段が前記指示体の前記入力面からの離間を検出するまでの時間が無効時間より短い場合に所定の条件が満たされているとして、前記ディスプレイに表示されている画像を、前記タッチ位置が前記所定時間の間静止していた位置に応じた画像に戻すことを特徴とする、
コンピュータプログラム。
【請求項２１】
請求項１８乃至２０のいずれか１項に記載のコンピュータプログラムを記憶するコンピュータにより読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＧＵＩ（Graphical User Interface）を用いた入力が可能な情報処理装置に関する。
【背景技術】
【０００２】
ディスプレイと位置検出センサであるタッチパッドとを組み合わせて構成されるタッチパネルは、ＧＵＩを用いた入力操作が可能である。ＧＵＩでは、ディスプレイに表示されたＧＵＩパーツであるカーソルやスライダーバーを、ユーザが指やスタイラス等の指示体により操作する。カーソルは、例えば文字列を選択する際の始点及び終点を決める際に用いられる。スライダーバーは、例えば音量や画面の明るさの調節等に用いられる。タッチパネルを入力装置として備える情報処理装置は、タッチパッドにより指示体がタッチする位置を検出し、その位置に対応するＧＵＩパーツに応じた処理を実行する。
【０００３】
指示体によってカーソル位置を決定する場合、一般的に、指示体がタッチパッドをタッチしている間は、カーソル位置がタッチ位置に追従する。指示体がタッチパッドから離間した場合、離間する直前の位置でカーソルが停止する。文字列選択の場合には、カーソルの停止位置が終点となる。特許文献１は、指示体を用いて文字列を容易且つ確実に選択する装置を開示する。この装置は、文字列の選択にアイコンを用いる。ユーザは、アイコンを指示体でタッチして移動させ、アイコンから指示体を離すことで文字列を選択する。指示体がアイコンを移動させた範囲内の文字列が選択された文字列となる。特許文献２は、カーソルの静止時間、つまり指示体によるタッチ位置の静止時間が閾値を超えたときのカーソルの位置を終点とする描画システムを開示する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−０２１７８７号公報
【特許文献２】特開２０１２−１８５６９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
アイコンを用いてカーソルの位置を決定する場合、指示体がタッチパッドから離間する際に微少なブレが発生することがある。また、指のようにタッチパッドへの接触面積が大きい指示体では、指示体をタッチパッドから離間する際に、指示体の接触部分が同じタイミングで離間しないことがある。これは、タッチ位置の微妙な変化として検出され、カーソルの位置が意図せず移動してしまう原因となる。指示体が閾値を超えた時間だけ静止する位置をカーソル位置として決定することで、タッチパッドから指示体を離間する際に発生するブレに起因したカーソル位置のズレを防止することができる。
【０００６】
しかしながら、例えばユーザが迷って指示体のタッチ位置が静止した場合にもカーソル位置が決定してしまう。この場合、ユーザは、文字列の選択を最初からやり直す必要がある。また、ユーザが迷った場合を考慮して静止時間の閾値を大きい値にすると、カーソル位置を決定するために指示体を長時間静止させなければならず、操作性が低下する。
【０００７】
本発明は、上記の問題を解決するために、カーソル位置を決定する際の操作性を向上させた情報処理装置を提供することを主たる課題とする。
【課題を解決するための手段】
【０００８】
上記課題を解決する本発明の情報処理装置は、入力面上で指示体によって指示される位置を繰り返し検出する位置検出手段と、ディスプレイに表示されている画像に、前記位置検出手段で検出される位置の変化を反映した動きを与える出力制御手段と、を備え、前記出力制御手段は、前記位置検出手段に検出される位置が静止した状態で所定時間が経過した後の、所定の条件が満たされている期間には、前記表示されている画像に対して前記位置の変化を反映した動きを与えず、前記所定の条件は、前記位置検出手段に検出される位置が静止した状態で前記所定時間が経過してからの時間が、前記位置検出手段に検出された位置が静止していた時間の長さに応じて異なる長さの無効時間を越えていない場合に満たされることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、無効条件を満たす間のタッチ位置の移動を無効とすることで、カーソル位置を決定する際の操作性が向上する。
【図面の簡単な説明】
【００１０】
【図１】（ａ）、（ｂ）は情報処理装置の説明図。
【図２】指示体の入力面へのタッチに応じた入力制御処理を表すフローチャート。
【図３】（ａ）〜（ｃ）は、時刻毎のタッチ位置の説明図。
【図４】（ａ）〜（ｃ）は、ディスプレイに表示される画像の例示図。
【図５】指示体の入力面へのタッチに応じた入力制御処理を表すフローチャート。
【発明を実施するための形態】
【００１１】
以下、図面を参照して実施形態を詳細に説明する。ただし、本実施形態に記載されている構成要素はあくまでも例示であり、本発明の範囲をそれらのみに限定する趣旨のものではない。
【００１２】
図１は、本実施形態の情報処理装置の説明図である。図１（ａ）は、情報処理装置のハードウェア構成図である。情報処理装置１００は、タッチパッド１０７、ディスプレイ１０８、及び外部記憶装置１０９に接続される。タッチパッド１０７は、例えば透過性の高いシート状の位置検出センサであり、ディスプレイ１０８の表示面上に配置される。これによりタッチパッド１０７及びディスプレイ１０８は一体に構成されてタッチパネルを形成する。情報処理装置１００は、例えばタッチパッド１０７、ディスプレイ１０８、及び外部記憶装置１０９が一体に構成されたタブレット端末やスマートフォンにより実現できる。
【００１３】
タッチパッド１０７は、指やスタイラス等の指示体が接触するタッチパッド１０７上のタッチ位置を検出する。タッチパッド１０７は、検出したタッチ位置を表すデータを情報処理装置１００に送信する。タッチパッド１０７は、例えば抵抗膜方式、静電容量方式、赤外線方式、超音波方式、音響波方式、振動検出方式等によりタッチ位置を検出する。また、タッチパッド１０７の他に、距離画像センサやステレオカメラ等の三次元空間の位置検出装置等を位置検出センサに用いて、指示体のタッチ位置を検出してもよい。
【００１４】
ディスプレイ１０８は、ＧＵＩパーツの表示や、情報処理装置１００による各種処理結果の表示を行う。ディスプレイ１０８は、例えば液晶ディスプレイ、テレビモニタ、プロジェクタ等である。本実施形態においては、タッチパッド１０７に静電容量方式を採用し、ディスプレイ１０８に液晶ディスプレイを用いる。ディスプレイ１０８上に設けられたタッチパッド１０７の表面が入力面であり、指示体が接触する。
【００１５】
外部記憶装置１０９は、情報処理装置１００で処理されるデータやコンピュータプログラムを格納する。外部記憶装置１０９は、例えば、メディア（記録媒体）と、当該メディアへのアクセスを実現するための外部記憶ドライブとで実現することができる。このようなメディアとしては、例えば、ハードディスク、フレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤ、ＵＳＢメモリ、ＭＯ、フラッシュメモリ等が知られている。また、外部記憶装置１０９は、ネットワークを介して接続されたサーバ装置等であってもよい。
【００１６】
情報処理装置１００は、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、入力Ｉ／Ｆ１０４、出力Ｉ／Ｆ１０５、及び入出力Ｉ／Ｆ１０６を備える。ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、入力Ｉ／Ｆ１０４、出力Ｉ／Ｆ１０５、及び入出力Ｉ／Ｆ１０６は、バス１１０を介して通信可能に接続される。
【００１７】
ＣＰＵ（Central Processing Unit）１０１は、ＲＯＭ（Read Only Memory）１０２及び外部記憶装置１０９からコンピュータプログラムを読み込み実行する。ＣＰＵ１０１は、ＲＡＭ（Random Access Memory）１０３を作業領域に用いてコンピュータプログラムを実行する。これによりＣＰＵ１０１は、情報処理装置１００の動作を制御する。
【００１８】
入力Ｉ／Ｆ（インタフェース）１０４は、タッチパッド１０７と情報処理装置１００とのインタフェース制御を行う。例えば、入力Ｉ／Ｆ１０４は、タッチパッド１０７から指示体のタッチ位置を表すデータを取得してＣＰＵ１０１へ送信する。
【００１９】
出力Ｉ／Ｆ（インタフェース）１０５は、ディスプレイ１０８と情報処理装置１００とのインタフェース制御を行う。例えば、出力Ｉ／Ｆ１０５は、ＣＰＵ１０１の指示に応じて、ディスプレイ１０８に、ＧＵＩパーツや各種処理結果を表示させるためのデータを送信する。ディスプレイ１０８は、出力Ｉ／Ｆ１０５から取得するデータに応じた画像を表示する。
【００２０】
入出力Ｉ／Ｆ（インタフェース）１０６は、外部記憶装置１０９と情報処理装置１００とのインタフェース制御を行う。例えば、入出力Ｉ／Ｆ１０６は、外部記憶装置１０９からコンピュータプログラムやデータを取得してＣＰＵ１０１へ送信する。入出力Ｉ／Ｆ１０６は、ＣＰＵ１０１の指示に応じて、外部記憶装置１０９へデータを記憶させる。
【００２１】
図１（ｂ）は、情報処理装置１００の機能ブロック図である。情報処理装置１００は、ＣＰＵ１０１がコンピュータプログラムを実行することで、各機能を実現する。情報処理装置１００は、タッチ位置検出部１２１、静止判定部１２２、無効化部１２３、及び出力制御部１２４として機能する。なお、これらの機能は、少なくとも一部をハードウェアとして実現してもよい。この機能ブロックは、指示体が入力面をタッチすることによるタッチ位置の検出、及びタッチに応じたカーソル位置の変化を表す画像の表示についての処理を行うものである。
【００２２】
タッチ位置検出部１２１は、入力Ｉ／Ｆ１０４を介してタッチパッド１０７から取得するデータに基づき、ユーザが指示体でタッチした入力面上のタッチ位置を検出する。本実施形態では、タッチ位置検出部１２１は、入力Ｉ／Ｆ１０４を介して、タッチパッド１０７から所定の時間間隔でデータを取得する。タッチ位置検出部１２１が入力Ｉ／Ｆ１０４を介して取得するデータには、タッチ位置の他に、タッチ位置の検出時刻が含まれる。タッチ位置検出部１２１は、指示体が入力面から離間したときには、タッチ位置を検出しなかったことを表すデータをタッチパッド１０７から取得する。
【００２３】
静止判定部１２２は、タッチ位置検出部１２１で検出したタッチ位置及びその検出時刻に基づいて、指示体のタッチ位置が静止しているか否かを検出する。静止判定部１２２は、タッチ位置の静止を検出すると、タッチ位置の静止状態を表す静止フラグをオンに設定する。静止判定部１２２は、例えば、所定の時間の間、タッチ位置の変化が所定の距離内であるときに、指示体のタッチ位置が静止していることを検出する。この所定の時間を、以降、「静止判定時間」という。静止判定時間は、カーソル位置を決定するための静止が判定できればよく、例えば２００ミリ秒である。所定の距離を、以降、「移動判定閾値」という。移動判定閾値は、指示体の微少なブレを許容するため、例えば１．５［ｍｍ］である。なお、静止判定部１２２は、文字列選択の際のカーソル位置の場合、隣の文字にタッチ位置が移動しなければタッチ位置の静止を検出する。同様に静止判定部１２２は、スライダーバーの場合、隣の目盛り位置にタッチ位置が移動しなければタッチ位置の静止を検出する。
【００２４】
無効化部１２３は、静止判定部１２２がタッチ位置の静止を検出した後に、所定の無効化条件を満たす間のタッチ位置の移動を無効と判定し、無効化条件を満たさなくなるとタッチ位置の移動を有効と判定する。本実施形態では、無効化条件を、例えばタッチ位置が静止したと判定された後にタッチ位置が移動を再開した時点からの時間（以下、「無効時間」という。）とする。例えば静止フラグがオンに設定された後に指示体が入力面から離間する際にタッチ位置の移動が検出されてブレが発生すると、無効化部１２３は、このブレの発生が無効時間内であれば、このブレに相当するタッチ位置の移動を無効と判定する。無効時間は、指示体が静止後に移動を再開して入力面から離間するまでの時間であるため、例えば１００ミリ秒程度である。無効時間を経過した後に無効化部１２３は、タッチ位置の移動を有効と判定して静止フラグをオフに設定する。そのために、無効時間の経過後にタッチ位置の移動が継続する場合、情報処理装置１００は、ユーザが一旦停止した指示体の移動を再開したと判定する。
【００２５】
出力制御部１２４は、タッチ位置検出部１２１が検出する指示体のタッチ位置に応じた画像を生成して、ディスプレイ１０８に表示させる。出力制御部１２４は、無効化部１２３がタッチ位置の移動を無効と判定している期間は、当該期間のタッチ位置の移動を無効とするような画像をディスプレイ１０８に表示させる。指示体のタッチ位置に応じた画像は、例えば、カーソルがタッチ位置に追従する画像である。
【００２６】
図２は、このような情報処理装置１００による、指示体の入力面へのタッチに応じた入力制御処理を表すフローチャートである。この処理は、入力Ｉ／Ｆ１０４がタッチパッド１０７からデータを取得することで実行される。
【００２７】
タッチ位置検出部１２１は、入力Ｉ／Ｆ１０４を介してタッチパッド１０７から取得したデータに基づいて、指示体の入力面上におけるタッチ位置を検出する（Ｓ２０１）。タッチ位置検出部１２１は、検出したタッチ位置を、その検出時刻をとともにＲＡＭ１０３に記憶する。タッチパッド１０７から取得したデータがタッチ位置を検出しなかったことを表す場合、タッチ位置検出部１２１は、タッチ位置が検出されなかったことをＲＡＭ１０３に記憶する。
【００２８】
静止判定部１２２は、ＲＡＭ１０３を参照して、タッチ位置検出部１２１で検出されたタッチ位置が移動しているか否かを判定する（Ｓ２０２）。静止判定部１２２は、タッチ位置が移動判定閾値を超えて前回取得したタッチ位置から移動しているか否かにより、タッチ位置の移動を判定する。タッチ位置が移動している場合（Ｓ２０２：Y）、無効化部１２３は、静止フラグがオンであるか否かを判定する（Ｓ２０３）。静止フラグがオンである場合（Ｓ２０３：Y）、無効化部１２３は、無効時間が経過したか否かを判定する（Ｓ２０４）。無効時間が経過していない場合（Ｓ２０４：N）、情報処理装置１００はそのまま処理を終了する。つまりＳ２０４の判定結果が「NO」の場合、タッチ位置の移動は、有効な操作情報としてカーソルやスライドバーの移動に用いられることがない。このように、本実施形態では、無効時間内に生じたタッチ位置の移動は、無効化部１２３によって操作情報として利用しないことが決定される。言い換えれば、無効時間内に生じたタッチ位置の移動は、無効化されることになる。
【００２９】
無効時間が経過した場合（Ｓ２０４：Y）、無効化部１２３は、静止フラグをオフに設定する（Ｓ２０５）。静止フラグがオフである場合（Ｓ２０３：N）、或いは無効化部１２３が静止フラグをオフに設定した後に、出力制御部１２４は、タッチ位置の移動に基づいてカーソル位置を移動させた画像を生成し、ディスプレイ１０８に表示させる（Ｓ２０６）。つまり、Ｓ２０４の判定結果が「YES」の場合、タッチ位置の移動は、有効な操作情報として用いられることになる。
【００３０】
タッチ位置が移動していない場合（Ｓ２０２：N）、静止判定部１２２は、ＲＡＭ１０３を参照して、タッチ位置が静止して静止判定時間が経過したか否かを判定する（Ｓ２０７）。静止判定時間が経過していない場合（Ｓ２０７：N）、情報処理装置１００はそのまま処理を終了する。静止判定時間が経過した場合（Ｓ２０７：Y）、静止判定部１２２は、静止フラグをオンに設定する（Ｓ２０８）。静止フラグがオンに設定されると、情報処理装置１００は処理を終了する。
【００３１】
以上のような情報処理装置１００は、指示体が入力面をタッチしたまま移動する場合、指示体によるタッチ位置の移動にカーソルが追従する画像をディスプレイ１０８に表示する。指示体が静止する場合、情報処理装置１００は、指示体のタッチ位置が移動を再開しても無効時間内であればこれを無効化する。無効時間の経過後に指示体のタッチ位置が移動する場合、情報処理装置１００は、これに基づいてカーソル位置を決定する。
【００３２】
ユーザの指示体による操作に対する情報処理装置１００の処理の具体例を説明する。図３は、指示体による入力面へのタッチ開始からタッチ終了までの時刻毎のタッチ位置の説明図である。図４は、指示体による入力面へのタッチ時に、ディスプレイ１０８に表示される画像の例示図である。図３（ａ）の説明図は、図４（ａ）の画像の例示図に対応する。図３（ｂ）の説明図は、図４（ｂ）の画像の例示図に対応する。図３（ｃ）の説明図は、図４（ｃ）の画像の例示図に対応する。
【００３３】
図３は、指示体の入力面へのタッチ開始を検出した時刻ｔ１におけるタッチ位置を原点（０，０）として、タッチ位置の座標を表す。座標が記載されていない部分は、タッチ位置が検出されていないことを表す。座標は、ディスプレイ１０８の解像度に合わせてドット（dot）で表される。本実施形態では、入力Ｉ／Ｆ１０４がタッチパッド１０７からデータ（タッチ位置）を取得する時間間隔を２０ミリ秒とする。時刻ｔ１〜ｔ５及び時刻ｔ６〜ｔ９は、それぞれの時間間隔が２０ミリ秒となる。
【００３４】
図４は、図３の時刻ｔ５〜ｔ１０の間にディスプレイ１０８に表示される画像である。ディスプレイ１０８は、タッチパッド１０７と一体に構成されたタッチパネルであるため、ディスプレイ１０８の表示面が入力面４００と重なる。図中、ディスプレイ１０８の左右方向をｘ軸、上下方向をｙ軸として、タッチ位置をｘ軸及びｙ軸の座標で表す。図３のタッチ位置はこの座標に対応する。
【００３５】
入力面４００が指示体であるユーザの指４０１にタッチ操作されることで、文字列が選択される。現在選択されている文字列は、文字列選択範囲４０２として塗りつぶし等によって表現される。開始位置アイコン４０３は、文字列選択範囲４０２の開始位置を示す。終了位置アイコン４０４は、文字列選択範囲４０２の終了位置を示す。
【００３６】
図３、図４により、図２の処理の具体的例を説明する。
図３（ａ）、図３（ｂ）では、時刻ｔ１でユーザが指４０１を入力面４００に接触させる。時刻ｔ２、ｔ３では、ユーザは指４０１を入力面４００に接触させたまま終了位置アイコン４０４の位置まで移動させる。時刻ｔ４〜ｔ６では、ユーザが指４０１を入力面４００の終了位置アイコン４０４の位置で静止させる。
【００３７】
時刻ｔ１では、ユーザが指４０１で入力面４００をタッチする。入力Ｉ／Ｆ１０４は、タッチ位置を表すデータをタッチパッド１０７から取得して、タッチ位置検出部１２１に入力する。タッチ位置検出部１２１は、取得したデータに基づいて、タッチ位置として座標（０，０）を検出する（Ｓ２０１）。時刻ｔ１ではタッチ開始時であり、タッチ位置の移動は発生しておらず、タッチ位置の静止判定時間も経過していないため、情報処理装置１００は、処理を終了する（Ｓ２０２：N、Ｓ２０７：N）。なお、時刻ｔ１がタッチ操作の開始時点となるため、出力制御部１２４は、座標（０，０）に開始位置アイコン４０３を表示する。
【００３８】
時刻ｔ２では、ユーザが指４０１を入力面４００にタッチしたまま座標（１０，０）に移動させる。入力Ｉ／Ｆ１０４は、時刻ｔ１から２０ミリ秒経過したタイミングでタッチパッド１０７からデータを取得する。これによりタッチ位置検出部１２１は、タッチ位置として座標（１０，０）を検出する（Ｓ２０１）。時刻ｔ２では、タッチ位置がｘ軸方向に１０ドット移動している。静止判定部１２２は、時刻ｔ１から時刻ｔ２の間のタッチ位置の移動距離が、移動判定閾値を超えていれば、タッチ位置が移動したと判定する。本実施形態では、移動判定閾値を１０ドットとする。この例では、移動距離が１０ドットであるために、静止判定部１２２は、タッチ位置が移動したと判定する（Ｓ２０２：Y）。無効化部１２３は、静止フラグを確認する（Ｓ２０３）。静止フラグの初期値がオフであり、時刻ｔ２の時点で静止フラグの書き換えは行われていない。そのために、無効化部１２３は静止フラグがオフであることを確認する（Ｓ２０３：N）。出力制御部１２４は、タッチ位置の座標（１０，０）にカーソルが移動した画像を生成してディスプレイ１０８に表示する（Ｓ２０６）。
【００３９】
時刻ｔ３では、ユーザが指４０１を入力面４００にタッチしたまま座標（２０，０）に移動させる。この場合の処理は時刻ｔ２の場合と同様であるので説明を省略する。
【００４０】
時刻ｔ４では、ユーザは入力面４００に指４０１を接触させたまま移動を止める。入力Ｉ／Ｆ１０４は、時刻ｔ３から２０ミリ秒経過したタイミングでタッチパッド１０７から、時刻ｔ３のときと同じタッチ位置を表すデータを取得する。これによりタッチ位置検出部１２１は、タッチ位置として座標（２０，０）を検出する（Ｓ２０１）。静止判定部１２２は、時刻ｔ３から時刻ｔ４の間のタッチ位置の移動距離が移動判定閾値未満であるため、タッチ位置が移動していないと判定する（Ｓ２０２：N）。静止判定部１２２は、タッチ位置の静止を検出したばかりで静止判定時間が経過していないため、そのまま処理を終了する（Ｓ２０７：N）。
【００４１】
時刻ｔ５では、ユーザは指４０１をほぼ静止させたままである。本実施形態では、最後に移動と判定された位置からの距離をタッチ位置の移動距離とする。そのために、時刻ｔ５のタッチ位置の移動の判定は、時刻ｔ３の時点のタッチ位置からの距離により行われる。時刻ｔ５では、時刻ｔ３からのタッチ位置からの移動距離が５ドットであり、移動判定閾値未満である。そのために静止判定部１２２は、タッチ位置が移動していないと判定する（Ｓ２０２：N）。静止判定部１２２は、タッチ位置が静止して静止判定時間が経過したかを判定する（Ｓ２０７）。
【００４２】
タッチ位置の静止時間は、例えばタッチ位置の静止が検出された時刻（時刻ｔ４）をＲＡＭ１０３に保持しておき、その後、タッチ位置の静止が検出される度に、その時点の時刻とＲＡＭ１０３に保持した時刻とから算出する。例えば、Ｓ２０７の処理を行うタイミングで、時刻のＲＡＭ１０３への保持や静止時間の算出を行う。静止判定部１２２は、タッチ位置の静止時間と静止判定時間とにより、静止判定時間が経過を判定する（Ｓ２０７）。本実施形態では、静止判定時間を２００ミリ秒とする。静止判定部１２２は、時刻ｔ５の時点でタッチ位置が静止して２０ミリ秒経過しているが、２００ミリ秒を超えていないためそのまま処理を終了する（Ｓ２０７：N）。
【００４３】
なお、指４０１の移動が再開し、再度静止することも考えられる。そのために、例えば、移動が発生した際にフラグをオンとしておき、Ｓ２０７にてフラグがオンのときにその時点の時刻を保持し、フラグをオフにするとしてもよい。こうすることで、指４０１の移動が発生した際には、再度その時点の時刻が保持され、静止判定が行われる。静止判定部１２２は、ＲＡＭ１０３に保持した時刻を、タッチ位置の移動が検出された場合に静止が解除されたと見なして消去する。或いは、静止判定部１２２は、タッチ操作の開始又は終了時、すなわち指４０１の入力面４００へのタッチ時又は離間時にＲＡＭ１０３に保持した時刻を消去する。また、本実施形態では、等時間間隔でタッチ位置を表すデータを取得するため、これを利用してデータの取得回数で静止時間を計測してもよい。
【００４４】
時刻ｔ６は、時刻ｔ５の時点から静止状態を保ったまま、時間が１８０ミリ秒経過している。ユーザは、指４０１の移動を止めたままである。タッチ位置検出部１２１は、タッチ位置として座標（２０，０）を検出する（Ｓ２０１）。静止判定部１２２は、時刻ｔ３のタッチ位置に対して移動距離が０ドットであるため、タッチ位置が移動していないと判定する（Ｓ２０２：N）。静止判定部１２２は、最初にタッチ位置が静止した時刻ｔ４からの経過時間が２００ミリ秒であるため、静止判定時間が経過したと判定する（Ｓ２０７：N）。静止判定部１２２は、静止フラグをオンに設定して処理を終了する（Ｓ２０８）。
【００４５】
時刻ｔ１〜時刻ｔ６までの操作に応じて、図４（ａ）〜（ｃ）の時刻ｔ６に示すように、文字列選択範囲４０２は、「かき」を選択する。時刻ｔ６では静止状態に入っているため、ユーザは、この「かき」を選択したものとする。なお、この後、静止状態が継続された場合は、時刻ｔ６と同様の処理が繰り返し実行される。
【００４６】
図３（ａ）〜図３（ｃ）では、時刻ｔ７以降の指４０１の動きが異なる。図３（ａ）、図３（ｃ）では、ユーザが指４０１を静止させた後に、無効時間内（時刻ｔ９）に入力面４００から離間させる。図３（ｂ）では、ユーザが無効時間の経過後に指４０１の移動を再開する。
【００４７】
図３（ａ）の場合について時刻ｔ７以降の処理を説明する。
時刻ｔ７では、ユーザが指４０１を入力面４００から離間させる際のブレで、タッチ位置が移動する。タッチ位置検出部１２１は、タッチ位置の座標（３０，０）を検出する（Ｓ２０１）。静止判定部１２２は、時刻ｔ３のときのタッチ位置に対して移動距離が１０ドットであり、移動判定閾値の１０ドットを超えたため、タッチ位置が移動したと判定する（Ｓ２０２：Y）。無効化部１２３は、時刻ｔ６の時点で静止フラグがオンとなっているために（Ｓ２０３：Y）、無効時間が経過しているか否かを判定する（Ｓ２０４）。無効化部１２３は、静止判定された直後で無効時間が経過していないために（Ｓ２０４：N）、そのまま処理を終了する。これにより、情報処理装置１００は、指４０１が１０ドット移動しているが、無効化されているために、この移動に基づく処理を行わない。そのため、図４（ａ）の時刻ｔ７のように終了位置アイコン４０４の位置は時刻ｔ６の時点から移動しない。
【００４８】
時刻ｔ８では、ユーザが指４０１を入力面４００から離す際のブレにより、時刻ｔ７の時点から更にタッチ位置が移動する。タッチ位置検出部１２１は、タッチ位置の座標（４０，０）を検出する（Ｓ２０１）。静止判定部１２２は、前回、タッチ位置が移動したと判定した時刻ｔ７のときのタッチ位置に対して移動距離が１０ドットであり、移動判定閾値の１０ドットを超えたため、タッチ位置が移動したと判定する（Ｓ２０２：Y）。無効化部１２３は、時刻ｔ６の時点で静止フラグがオンとなっているために（Ｓ２０３：Y）、無効時間が経過したか否かを判定する（Ｓ２０４）。本実施形態では、無効時間を１００ミリ秒とする。無効化部１２３は、時刻ｔ８の時点で２０ミリ秒経過しているが、１００ミリ秒を超えていないためそのまま処理を終了する（Ｓ２０４：N）。時刻ｔ８においても、時刻ｔ７同様、図４（ａ）の時刻ｔ８のようにカーソル位置は移動しない。
【００４９】
無効化の経過時間は、例えば、時刻ｔ７のように静止後にタッチ位置が移動を再開した時刻をＲＡＭ１０３に保持しておき、その後、無効時間の経過の確認処理を行う度にその時点の時刻とＲＡＭ１０３に保持した時刻とから算出することができる。無効化部１２３は、算出した経過時間が無効時間を超えたか否かによりＳ２０４の判定を行う。無効化部１２３は、ＲＡＭ１０３に保持した時刻を、例えば無効時間の経過後に行うＳ２０５の処理のタイミングで消去する。或いは、無効化部１２３は、タッチ操作の開始又は終了時、すなわちタッチ時又はリリース時にＲＡＭ１０３に保持した時刻を消去する。
【００５０】
時刻ｔ９では、ユーザが指４０１を入力面４００から離間する。そのためにタッチパッド１０７は、タッチ位置を検出しなくなり、入力Ｉ／Ｆ１０４にタッチ位置を検出していないことを表すデータを入力する。情報処理装置１００は、このデータに応じて、指４０１が入力面４００から離間した場合のカーソル位置を決定する処理を行う。これにより文字列選択範囲４０２が確定する。図４（ａ）の時刻ｔ９では、文字列選択範囲４０２は「かき」に決定される。図４（ａ）の時刻ｔ９では、文字列選択範囲が決定したことを示すため、開始位置アイコン４０３と終了位置アイコン４０４の表示を消去している。
【００５１】
このように、タッチ位置の静止後に指示体（指４０１）をタッチパッド１０７（入力面４００）から離間する際に指示体が移動しても、無効化処理により、ユーザが指示体を静止させた位置にカーソル位置を決定することができる。
【００５２】
図３（ｂ）の場合について時刻ｔ７以降の処理を説明する。時刻ｔ８までの処理は、図３（ａ）の場合と同様であるので説明を省略する。
【００５３】
時刻ｔ９では、ユーザが指４０１のタッチ位置の移動を再開する。時刻ｔ９は、時刻ｔ７から４０ミリ秒経過しているが、無効時間の１００ミリ秒は経過していない。そのために時刻ｔ９では時刻ｔ８と同様の処理が行われる。時刻ｔ９では、ユーザが意図して指４０１のタッチ位置を移動させているが、情報処理装置１００は、タッチ位置の移動に基づく処理を行わない。そのために、図４（ｂ）の時刻ｔ９に示すように、指４０１のタッチ位置に終了位置アイコン４０４が追従しない。
【００５４】
時刻ｔ１０は、時刻ｔ９から６０ミリ秒経過している。この間、ユーザは、指４０１のタッチ位置の移動を継続する。タッチ位置検出部１２１は、タッチ位置の座標（９０，０）を検出する（Ｓ２０１）。検出したタッチ位置は、前回移動したと判定したタッチ位置の座標に対して１０ドットである。静止判定部１２２は、移動判定閾値を超えてタッチ位置が移動しているため、タッチ位置が移動していると判定する（Ｓ２０２：Y）。無効化部１２３は、静止フラグが時刻ｔ６でオンに設定されているために（Ｓ２０３：Y）、無効時間が経過したか否かを判定する（Ｓ２０４）。無効化部１２３は、移動が再開された時刻ｔ７がＲＡＭ１０３に保持した時刻から１００ミリ秒経過しているため、無効時間が経過したと判定して（Ｓ２０４：Y）、静止フラグをオフに設定する（Ｓ２０５）。出力制御部１２４は、通常通り、タッチ位置が座標（５０，０）に移動したことに応じた処理を行う（Ｓ２０６）。これにより、図４（ｂ）の時刻ｔ１０のように、指４０１の位置に終了位置アイコン４０４が追従する画像がディスプレイ１０８に表示される。図４（ｂ）の例では、一旦静止したときの文字列選択範囲４０２である「かき」が、タッチ位置の移動が再開したことにより「かきくけ」となっている。ユーザは、終了位置アイコン４０４の所望の位置への移動を再開できる。
【００５５】
このように、タッチ位置の静止後であっても、無効時間が経過した後はタッチ位置の移動にカーソル位置が追従する。そのために、情報処理装置１００は、ユーザがタッチ位置の移動を一旦停止した後に再開した場合でも、それに応じた画像を表示可能である。
【００５６】
図３（ａ）、（ｂ）では、タッチ位置の移動に追従しつつ、無効化期間内の指示体（指４０１）のタッチ位置の移動を無効化する。すなわち、無効化期間内で発生したタッチ位置の移動を無かったものとするように、無効化期間の開始前の静止時のタッチ位置にカーソル位置を停止させる。図３（ｃ）は、ユーザの操作としては図３（ａ）と同様である。しかし、無効化処理を指示体が入力面から離間した後に行う場合を示している。この処理について、図４（ｃ）と図５を併せて用いて説明する。図５は、情報処理装置１００による指示体の入力面へのタッチに応じた入力制御処理を表すフローチャートであり、図２と同処理については同符号を付している。
【００５７】
情報処理装置１００は、タッチ位置検出部１２１によりタッチ位置の座標を検出した場合（Ｓ４０１：N）、静止判定部１２２によりタッチ位置が移動しているか否かを判定する（Ｓ２０２）。タッチ位置が移動している場合（Ｓ２０２：Y）、出力制御部１２４は、タッチ位置の移動に基づいてカーソル位置を移動させた画像を生成し、ディスプレイ１０８に表示させる（Ｓ２０６）。
【００５８】
タッチ位置が移動していない場合（Ｓ２０２：N）、静止判定部１２２は、ＲＡＭ１０３を参照して、タッチ位置が静止して静止判定時間が経過したか否かを判定する（Ｓ２０７）。静止判定時間が経過していない場合（Ｓ２０７：N）、情報処理装置１００は処理を終了する。静止判定時間が経過している場合（Ｓ２０７：Y）、静止判定部１２２は、静止フラグをオンに設定する（Ｓ２０８）。静止フラグがオンに設定されると、情報処理装置１００は処理を終了する。
【００５９】
タッチ位置検出部１２１は、タッチ位置を検出しない場合、指示体が入力面から離間したと判定する（Ｓ４０１：Y）。この場合、無効化部１２３は、静止フラグがオンであるか否かを判定する（Ｓ４０２）。静止フラグがオンの場合（Ｓ４０２：Y）、無効化部１２３は、無効時間が経過したか否かを判定する（Ｓ４０３）。無効時間が経過していない場合（Ｓ４０３：N）、カーソル位置を静止開始時の位置に移動する（Ｓ４０４）。無効時間が経過した場合（Ｓ４０３：Y）、或いはカーソル位置の移動後に、無効化部１２３は静止フラグをオフに設定する（Ｓ４０５）。静止フラグをオフに設定した後、或いは静止フラグがオフの場合（Ｓ４０２：N）、情報処理装置１００は離間時の処理を行う（Ｓ４０６）。以上により処理が終了する。
【００６０】
図３（ｃ）、図４（ｃ）により、図５の処理の具体例を説明する。時刻ｔ１〜時刻ｔ６までは、図３（ａ）、図３（ｂ）と同様の処理が行われる。Ｓ４０１の処理では、指４０１の離間の判定が行われるが、時刻ｔ１〜時刻ｔ６では指４０１が入力面４００を継続してタッチしているために、タッチ位置の移動の判定処理が行われる（Ｓ２０２）。時刻ｔ１では、タッチ位置が移動せず、タッチ位置が静止もしていないためにそのまま処理が終了する（Ｓ２０２：N、Ｓ２０７：N）。時刻ｔ２、時刻ｔ３では、タッチ位置が移動しているために、タッチ位置の移動に基づいてカーソル位置を移動させた画像がディスプレイ１０８に表示される（Ｓ２０２：Y、Ｓ２０６）。時刻ｔ４、時刻ｔ５では、タッチ位置が移動判定閾値を超えるほど移動しておらず、静止判定時間が経過していないためそのまま処理が終了する（Ｓ２０２：N、Ｓ２０７：N）。時刻ｔ６では、タッチ位置が移動せず、静止判定時間を経過したために、静止フラグがオンに設定される（Ｓ２０２：N、Ｓ２０７：Y、Ｓ２０８）
【００６１】
時刻ｔ７では、ユーザが入力面４００をタッチする指４０１を移動させる。タッチ位置検出部１２１は、タッチ位置の座標（３０，０）を検出する。指４０１が離間していないため（Ｓ４０１：N）、静止判定部１２２は、前回移動したと判定された時刻ｔ３の時点の位置からの移動距離を導出する。静止判定部１２２は、移動距離が１０ドットであり移動判定閾値以上であるためタッチ位置が移動していると判定する（Ｓ２０２：Y）。出力制御部１２４は、タッチ位置の移動に基づいてカーソル位置を移動させた画像を生成し、ディスプレイ１０８に表示させる（Ｓ２０６）。図４（ｃ）の時刻ｔ７に示すように、タッチ位置が移動するが隣接する文字にカーソルが移動する程の移動量がないために、終了位置アイコン４０４の位置は変化しない。
【００６２】
時刻ｔ８では、時刻ｔ７と処理は同様であるが、時刻ｔ８に比べて更に１０ドット移動しているため、図４（ｃ）の時刻ｔ８のように、終了位置アイコン４０４の位置が隣の文字に移動する。それにより、文字列選択範囲４０２は、「かきく」となる。このように、静止後であっても、タッチ位置の移動に即座に追従する。
【００６３】
時刻ｔ９では、ユーザが入力面４００から指４０１を離間させる。タッチ位置検出部１２１は、タッチ位置の座標を検出することができないために、指４０１が入力面４００から離間したと判定する（Ｓ４０１：Y）。無効化部１２３は、静止フラグを確認する（Ｓ４０２）。静止フラグが時刻ｔ６の時点でオンになっているため（Ｓ４０２：Y）、無効化部１２３は、無効時間の経過を判定する（Ｓ４０３）。無効時間の経過の判定は、例えば静止後にタッチ位置が移動を開始した時点の時刻（時刻ｔ７）をＲＡＭ１０３に保持しておき、無効時間の経過判定を行う度に、保持した時刻からその時点の時刻までの経過時間が無効時間以上であるか否かで行われる。ＲＡＭ１０３に保持する時刻は、Ｓ４０５の処理時、或いはタッチ操作の開始時に消去される。
【００６４】
無効化部１２３は、時刻ｔ９が時刻ｔ７から４０ミリ秒経過しており、無効時間である１００ミリ秒を超えていないために、無効時間が経過していないと判定する（Ｓ４０３：N）。出力制御部１２４は、例えば静止開始時である時刻ｔ４のタッチ位置（２０，０）を静止時座標としてＲＡＭ１０３に保持して、カーソルが静止時座標に移動したかのような画像をディスプレイ１０８に表示させる（Ｓ４０４）。これにより、静止後のタッチ位置の移動が無かったものとなるような画像が表示される。時刻ｔ７、時刻ｔ８でタッチ位置が移動した場合であっても、時刻ｔ４の静止時のタッチ位置にカーソルを戻すことができる。
【００６５】
無効化部１２３は、静止フラグをオフに設定する（Ｓ４０５）。出力制御部１２４は、指４０１の入力面４００からの離間時に実行するカーソル位置の決定処理を行う（Ｓ４０６）。これにより、図４（ｃ）の時刻ｔ９のように、終了位置アイコン４０４の位置が時刻ｔ４の静止時のタッチ座標に戻り、時刻ｔ８で「かきく」であった文字列選択範囲４０２が、「かき」というユーザが所望する文字列選択範囲４０２に戻る。
【００６６】
なお、無効時間の経過後に指４０１が入力面４００から離間した場合（Ｓ４０３：Y）、Ｓ４０４の処理が行われずに静止フラグがオフになり、カーソル位置の決定処理が行われる（Ｓ４０５、Ｓ４０６）。指４０１が静止することなく入力面４００から離間した場合（Ｓ４０２：N）、静止フラグがオンにならず、カーソル位置の決定処理が行われる（Ｓ４０６）。これにより、無効時間内のタッチ位置の移動が反映された状態となる。
【００６７】
以上のように本実施形態の情報処理装置１００は、タッチ位置が静止判定時間を超えて静止したことによりタッチ位置の静止を判定し、その後の無効時間の間はタッチ位置の移動を無効化する。これにより、指示体がタッチパッド１０７から離間する際のブレを無効化することができる。指示体が静止したときのタッチ位置に応じてカーソル位置が決定するために、ユーザの所望の位置にカーソル位置が決定する。また、無効時間を超えて指示体のタッチ位置が移動する場合には、ユーザがタッチ操作を継続する意思があり、情報処理装置１００はタッチ位置の移動の無効化を解除する。これによりユーザは、カーソル位置の移動で迷い、途中で静止したとしても、指示体によるタッチ位置の移動を再開することでタッチ操作を継続することができる。
【００６８】
なお、無効化条件は、無効時間に限らず、距離（無効化距離）を用いてもよい。例えば、無効化距離を超えてタッチ位置が移動しない場合、情報処理装置１００は、このタッチ位置の移動を無効化してもよい。例えば、情報処理装置１００は、タッチパッド１０７から指示体を離間する際のブレで取り得る距離を無効化距離とし、この距離を超えた移動はユーザの意思による移動と判定し、無効化距離未満の移動を指示体が離間する際のブレと判定する。また、無効時間内であっても、１回のタッチ位置の移動で大きめに設定した無効化距離以上にタッチ位置が移動した場合には、移動の意思があると判定し、無効化を解除する。この場合、無効化を解除する際に静止フラグをオフに設定する。
【００６９】
情報処理装置１００は、タッチ位置が静止している時間に応じて無効時間や無効化距離を変更してもよい。例えば、情報処理装置１００は、タッチ位置が静止している時間が長いほど、無効時間や無効化距離を長くする。このような構成では、ユーザが長時間静止させて確実にカーソル位置を決定させようとした場合に、長い時間或いは長い距離の間、不要なタッチ位置の移動を無効化することができるようになる。
【００７０】
情報処理装置１００は、横方向（x軸方向）の移動と、縦方向（ｙ軸方向）の移動とで無効時間や無効化距離を変更してもよい。例えば、文字列選択の際には、横方向への移動は１文字ずれるだけであり選択後の微調整が比較的容易だが、縦方向への移動は別の行へ移動してしまい選択後の微調整は困難となる。そのため、無効化時のタッチ位置の移動方向を判定し、縦方向へ移動している際は、無効時間や無効化距離を長くして、横方向への移動時よりも長い時間或いは長い距離の間、タッチ位置の移動を無効化する。
【００７１】
情報処理装置１００は、指示体のタッチ位置の座標に基づいて移動を判定しているが、これに限らず、文字列選択時のカーソルが移動した文字数や、スライダーバーが移動した目盛りの数で判定してもよい。また、静止判定を、移動距離が移動判定閾値を超えないことで行っているが、これに限らず、移動速度を閾値として判定してもよい。更に、指示体の速度が減速を続けている（加速度が負の値となる）時間が所定の時間を超えたか否かや、減速の度合いが閾値を超えたか否か等で判定してもよい。更に、指示体が入力面４００を押圧する圧力が閾値を超えたか否かや、閾値を超えた時間が所定の時間を超えたか否か等で判定してもよい。情報処理装置１００は、静止判定時間や無効時間を計測する処理をタッチ位置が通知される度に実行するが、これに限らず、タイマを起動して満了した場合に経過後の処理を行うようにしてもよい。
【００７２】
また、図３（ｃ）の場合、情報処理装置１００は、無効時間の経過判定を指示体の離間時に行うことにより１回で済ませているが、タッチ位置を取得する度に経過時間を判定し、フラグを立てることとしてもよい。図３（ｃ）の場合、指示体の静止後であってもタッチ位置の移動処理を行うことで、ユーザが意図して操作した場合においてもタイムラグがなく、反応することができる。ユーザがカーソル位置を所望の位置に移動して静止し、指示体を離間してカーソル位置を決定する意思がある場合にのみ静止時の座標にカーソルを移動することができるため、よりユーザの意図に近い処理を実行することができる。
【００７３】
以上のような情報処理装置１００は、文字列選択やスライダーバーの操作の他に、アイコンや画像の移動、トリミング位置決め、マルチタッチ操作による拡大縮小操作、回転操作等の操作性の向上にも用いることができる。つまり、本実施形態の情報処理装置１００は、指示体をタッチパッドから離間した時点で操作位置が決定されるものについて有効である。
【００７４】
［その他の実施形態］
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵ、ＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0006566767.tif 000002
【図２】
0006566767.tif 000003
【図３】
0006566767.tif 000004
【図４】
0006566767.tif 000005
【図５】
0006566767.tif 000006