(57)【要約】【課題】操作面に対する接触操作を開始してから接触操作に応じた処理が実行されるまでに要する時間の短縮を簡素な構成で実現する。【解決手段】検知部１２は、操作面への接触を検知して操作面上の接触位置を示す接触位置情報を出力する。予測部１４は、検知部１２から出力された接触位置情報が示す接触位置の時系列から、操作面への接触操作が特定されるよりも前に、検知部１２から出力された接触位置情報から特定される接触位置の数に基づいて接触操作を予測する。実行部１６は、予測部１４により予測された接触操作に応じた処理を実行する。【選択図】図１
2014137687.tif 000002
【特許請求の範囲】
【請求項１】
操作面への接触を検知して前記操作面上の接触位置を示す接触位置情報を出力する検知部と、
前記検知部から出力された前記接触位置情報が示す前記接触位置の時系列から、前記操作面への接触操作が特定されるよりも前に、前記検知部から出力された前記接触位置情報から特定される前記接触位置の数に基づいて前記接触操作を予測する予測部と、
前記予測部により予測された前記接触操作に応じた処理を実行する実行部と、
を含む情報処理装置。
【請求項２】
前記予測部は、前記接触位置の数が１つの場合、前記接触操作を、前記接触位置をスライドさせるスライド操作と予測し、前記接触位置の数が複数の場合、前記接触操作を、前記操作面上の少なくとも一対の前記接触位置の距離を伸縮させる伸縮操作と予測する請求項１に記載の情報処理装置。
【請求項３】
前記予測部は、前記接触操作を前記スライド操作と予測してから前記操作面の接触操作が前記スライド操作と特定されるよりも前に、前記接触位置の数が増加した場合、前記接触操作の予測を前記スライド操作から前記伸縮操作へ変更する請求項２に記載の情報処理装置。
【請求項４】
前記予測部は、前記接触操作を前記スライド操作と予測した場合、前記接触位置と前記操作面上に予め設定された基準線との位置関係から、前記スライド操作における前記接触位置のスライド方向を更に予測する請求項２又は請求項３に記載の情報処理装置。
【請求項５】
前記予測部は、前記接触位置と、前記操作面を分割することで得られた複数の分割領域の各々に対して設定された前記基準線のうちの何れかの前記基準線と、の位置関係から前記スライド方向を予測する請求項４に記載の情報処理装置。
【請求項６】
前記基準線が、過去に行われた前記スライド操作における接触開始位置と接触終了位置との間に位置するように、前記基準線を前記操作面に対して設定し直す基準線再設定部を更に含む請求項４又は請求項５に記載の情報処理装置。
【請求項７】
前記予測部は、前記接触操作を前記スライド操作と予測した場合、前記接触位置と前記操作面上に予め設定された基準点との位置関係から、前記スライド操作における前記接触位置のスライド方向を更に予測する請求項５又は請求項６に記載の情報処理装置。
【請求項８】
前記予測部は、前記接触位置と、前記操作面を分割することで得られた複数の分割領域の各々に対して設定された前記基準点のうちの何れかの前記基準点と、の位置関係から前記スライド方向を予測する請求項７に記載の情報処理装置。
【請求項９】
前記基準点が、過去に行われた前記スライド操作における接触開始位置と接触終了位置との間に位置するように、前記基準点を前記操作面に対して設定し直す基準点再設定部を更に含む請求項７又は請求項８に記載の情報処理装置。
【請求項１０】
前記予測部は、前記少なくとも一対の接触位置の距離が閾値以下の場合、前記接触操作を、前記伸縮操作のうち、前記一対の接触位置の距離を拡大する拡大操作であると予測し、前記一対の接触位置の距離が前記閾値を超えた場合、前記接触操作を、前記伸縮操作のうち、前記少なくとも一対の接触位置の距離を縮小する縮小操作と予測する請求項２に記載の情報処理装置。
【請求項１１】
前記閾値を、過去に行われた前記伸縮操作における前記少なくとも一対の接触位置の接触開始時の距離と前記接触終了時の距離との間に相当する値に更新する更新部を更に含む請求項１０に記載の情報処理装置。
【請求項１２】
画面を表示する表示部を更に含み、
前記実行部は、前記予測部により予測された前記接触操作に応じた画面を前記表示部に表示させる請求項１〜請求項１１の何れか１項に記載の情報処理装置。
【請求項１３】
前記予測部によって予測された前記接触操作を、前記検知部から出力された前記接触位置情報が示す前記接触位置の時系列から特定された前記接触操作と比較することで、前記予測部の予測結果が正しいか否かを判定する判定部を更に含み、
前記実行部は、前記判定部により前記予測部の予測結果が正しいと判定された場合に前記画面を前記表示部に表示させる請求項１２に記載の情報処理装置。
【請求項１４】
操作面への接触を検知して前記操作面上の接触位置を示す接触位置情報を出力し、
前記検知部から出力された前記接触位置情報が示す前記接触位置の時系列から、前記操作面への接触操作が特定されるよりも前に、前記検知部から出力された前記接触位置情報から特定される前記接触位置の数に基づいて前記接触操作を予測し、
前記予測部により予測された前記接触操作に応じた処理を実行することを含む情報処理方法。
【請求項１５】
コンピュータに、
操作面への接触を検知して前記操作面上の接触位置を示す接触位置情報を出力する検知部から出力された前記接触位置情報が示す前記接触位置の時系列から、前記操作面への接触操作が特定されるよりも前に、前記検知部から出力された前記接触位置情報から特定される前記接触位置の数に基づいて前記接触操作を予測し、
前記予測部により予測された前記接触操作に応じた処理を実行することを含む処理を実行させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
開示の技術は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【０００２】
タッチパネルを有する情報処理装置としては、スマートフォンやパーソナル・コンピュータ、ＰＤＡ(Personal Digital Assistants)、ＡＴＭ（現金自動預け払い機）などが知られている。この種の情報処理装置は、利用者によるタッチパネルへの接触操作を認識するために、タッチパネルに対して指示を与える指示体（例えば利用者の指）によるタッチパネル上の接触位置を示す接触位置情報を接触位置の総数分取得する。そのため、取得する接触位置情報が多いほど、タッチパネルに対して接触操作が開始されてから接触操作に対応する処理が実行されるまでの待機時間が長くなる。
【０００３】
複数の接触位置について接触位置情報を取得せずにタッチパネルに対する接触操作の認識を可能にする技術として、情報処理装置に近接センサを設置し、近接センサ及びタッチパネルを利用して接触操作を認識する技術が知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−１７０８３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、タッチパネルに加えて近接センサを情報処理装置に搭載すると部品点数が増えるため、コストの低廉化や情報処理装置の小型化の妨げになる、という問題点があった。
【０００６】
開示の技術は、１つの側面として、操作面に対する接触操作を開始してから接触操作に応じた処理が実行されるまでに要する時間の短縮を簡素な構成で実現することが目的である。
【課題を解決するための手段】
【０００７】
開示の技術は、検知部が、操作面への接触を検知して前記操作面上の接触位置を示す接触位置情報を出力する。また、開示の技術は、予測部が、前記検知部から出力された前記接触位置情報が示す前記接触位置の時系列から、前記操作面への接触操作が特定されるよりも前に、前記接触操作を予測する。すなわち、予測部は、前記検知部から出力された前記接触位置情報から特定される前記接触位置の数に基づいて前記接触操作を予測する。そして、開示の技術は、実行部が、前記予測部により予測された前記接触操作に応じた処理を実行する。
【発明の効果】
【０００８】
開示の技術は、１つの側面として、操作面に対する接触操作を開始してから接触操作に応じた処理が実行されるまでに要する時間の短縮を簡素な構成で実現することができる、という効果を有する。
【図面の簡単な説明】
【０００９】
【図１】実施形態に係るスマートフォンの要部機能の一例を示す機能ブロック図である。
【図２】実施形態に係るスマートフォンの電気系の構成の一例を示すブロック図である。
【図３】実施形態に係る画面更新処理の流れの一例を示すフローチャートである。
【図４】実施形態に係るスライド操作準備処理の流れの一例を示すフローチャートである。
【図５】実施形態に係る第１スライド操作準備処理の流れの一例を示すフローチャートである。
【図６】実施形態に係るスマートフォンに含まれるタッチパネルに設定された基準線としてタッチパネルを縦断する基準線の一例を示す模式図である。
【図７】実施形態に係る第２スライド操作準備処理の流れの一例を示すフローチャートである。
【図８】実施形態に係るスマートフォンに含まれるタッチパネルに設定された基準線としてタッチパネルを横断する直線の一例を示す模式図である。
【図９】実施形態に係る第３スライド操作準備処理の流れの一例を示すフローチャートである。
【図１０】実施形態に係るスマートフォンに含まれるタッチパネルに設定された基準点の一例を示す模式図である。
【図１１】実施形態に係るピンチ操作準備処理の流れの一例を示すフローチャートである。
【図１２】実施形態に係るピンチ操作準備処理で用いられるピンチ判別距離とピンチアウト操作による接触位置の移動経路との関係の一例を示す模式図である。
【図１３】実施形態に係るピンチ操作準備処理で用いられるピンチ判別距離とピンチイン操作による接触位置の移動経路との関係の一例を示す模式図である。
【図１４】実施形態に係る接触操作処理の流れの一例を示すフローチャートである。
【図１５】実施形態に係るスライド操作処理の流れの一例を示すフローチャートである。
【図１６】実施形態に係る第１スライド操作処理の流れの一例を示すフローチャートである。
【図１７】実施形態に係る右スライド操作処理の流れの一例を示すフローチャートである。
【図１８】実施形態に係る第２スライド操作処理の流れの一例を示すフローチャートである。
【図１９】実施形態に係る下スライド操作処理の流れの一例を示すフローチャートである。
【図２０】実施形態に係る第３スライド操作処理の流れの一例を示すフローチャートである。
【図２１】実施形態に係るピンチ操作処理の流れの一例を示すフローチャートである。
【図２２】実施形態に係るピンチイン操作処理の流れの一例を示すフローチャートである。
【図２３】実施形態に係る基準線再設定処理の流れの一例を示すフローチャートである。
【図２４】実施形態に係る基準点再設定処理の流れの一例を示すフローチャートである。
【図２５】実施形態に係る閾値更新処理の流れの一例を示すフローチャートである。
【図２６】実施形態に係るスマートフォンに含まれるタッチパネルに対して行われたスライド操作に応じてコンピュータ及びタッチパネルで行われる処理の流れの一例を示すシーケンス図である。
【図２７】実施形態に係るスマートフォンに含まれるタッチパネルに対して行われたピンチ操作であって２つの指示体の接触が同時でない場合のピンチ操作に応じてコンピュータ及びタッチパネルで行われる処理の流れの一例を示すシーケンス図である。
【図２８】実施形態に係るスマートフォンに含まれるタッチパネルに対して行われたピンチ操作２つの指示体の接触が同時の場合のピンチ操作に応じてコンピュータ及びタッチパネルで行われる処理の流れの一例を示すシーケンス図である。
【図２９】図２６に示す処理の流れを更に詳細に示したシーケンス図である。
【図３０】図２８に示す処理の流れを更に詳細に示したシーケンス図である。
【図３１】実施形態に係るスマートフォンに含まれるタッチパネルが４分割されて得られた分割領域の各々に対して付与された基準線及び基準点の一例を示す模式図である。
【図３２】従来のスマートフォンの電気系の構成の一例を示すブロック図である。
【図３３】従来のスマートフォンに含まれるタッチパネルに対して行われたスライド操作に応じてコンピュータ及びタッチパネルで行われる処理の流れの一例を示すシーケンス図である。
【図３４】実施形態に係るスマートフォンに含まれるタッチパネルに対して行われたピンチ操作に応じてコンピュータ及びタッチパネルで行われる処理の流れの一例を示すシーケンス図である。
【発明を実施するための形態】
【００１０】
［比較例］
以下、開示の技術の実施形態の説明に先立ち、開示の技術の比較例を説明する。図３２には、本比較例に係るスマートフォン３００の構成の一例が示されている。図３２に示すように、スマートフォン３００は、コンピュータ３０２及び各種の入出力デバイスを含む。コンピュータ３０２は、ＣＰＵ（Central Processing Unit）、揮発性のメモリ（例えばＲＡＭ（Random Access Memory））及び不揮発性の記憶部（例えばＨＤＤ（Hard Disk Drive）やフラッシュメモリなど）を備えている。
【００１１】
スマートフォン３００は、コンピュータ３０２と各種の入出力デバイスとを電気的に接続してコンピュータ３０２と各種の入出力デバイスとの間の各種情報の送受信を司るインプット・アウトプット・インターフェース（Ｉ／Ｏ）３０４を備えている。スマートフォン３００は、コンピュータ３０２がＩ／Ｏ３０４に接続されており、Ｉ／Ｏ３０４に接続されることでコンピュータ３０２と電気的に接続される入出力デバイスとして、タッチパネル・ディスプレイ３０８を備えている。
【００１２】
タッチパネル・ディスプレイ３０８は、開示の技術における検知部の一例である透過型のタッチパネル３０８Ａ及び開示の技術における表示部の一例であるディスプレイ３０８Ｂ（例えば液晶ディスプレイ）を有している。タッチパネル３０８Ａはディスプレイ３０８Ｂに重ねられている。
【００１３】
タッチパネル３０８Ａは、指示体（例えばスマートフォン３００の利用者の指）による接触を検知し、タッチパネル３０８Ａ上の指示体の接触位置を示す接触位置情報（例えば二次元座標）を出力することで指示を受け付ける。ディスプレイ３０８Ｂは各種情報を表示する。
【００１４】
スマートフォン３００は、Ｉ／Ｏ３０４に接続される入出力デバイスとして、通信部３１０、送話部３１２、受話部３１３及び外部インタフェース（Ｉ／Ｆ）３１４を備えている。
【００１５】
通信部３１０は、無線通信網の最寄の基地局との間で無線通信を行うことで、無線通信網に接続された情報処理装置（図示省略）とコンピュータ３０２との間の各種情報の送受信を司る。通信部３１０は、例えばアンテナ（図示省略）及びＲＦ（Radio Frequency）回路（図示省略）を含んで構成されている。この場合、通信部３１０は、例えば外部の情報処理装置から基地局を経由して無線で送信された信号をアンテナで受信し、受信した信号をＲＦ回路で復調処理し、受信した信号に含まれる情報をコンピュータ３０２に供給する。また、通信部３１０は、コンピュータ３０２から供給された情報を変調処理し、アンテナを介し基地局経由で外部の情報処理装置へ送信する。
【００１６】
送話部３１２は、スマートフォン３００の利用者が通話時に発した音声を検出し、検出した音声を示す音声信号をコンピュータ３０２に出力する。送話部３１２は、例えばマイクロフォン（図示省略）及び信号処理回路（図示省略）を含む。この場合、例えばマイクロフォンで音声を検出し、マイクロフォンで検出された音声を信号処理回路で音声データに変換してコンピュータ３０２を介して通信部３１０に出力する。なお、ここでは、音声データをコンピュータ３０２を介して通信部３１０に出力する態様を例示しているが、送話部３１２に含まれる信号処理部から通信部３１０に直接出力してもよい。
【００１７】
受話部３１３は、通信部３１０で受信された音声情報により示される音声を出力する。受話部３１３は、例えばＤ／Ａ（デジタル／アナログ）変換回路（図示省略）、増幅器（図示省略）及びスピーカ（図示省略）を含んでいる。この場合、例えばコンピュータ３０２から供給された音声データに対してＤ／Ａ変換回路がＤ／Ａ変換を行い、Ｄ／Ａ変換後に増幅器で増幅された音声信号をスピーカに出力する。スピーカは、増幅器から入力された音声信号に応じた音声を外部に出力する。なお、ここでは、通信部３１０で受信された音声データがコンピュータ３０２を介して受話部３１３に供給される態様を例示しているが、通信部３１０で受信された音声データがコンピュータ３０２を介さずに受話部３１３に直接供給されてもよい。
【００１８】
外部Ｉ／Ｆ３１４は、外部装置（例えばパーソナル・コンピュータやＵＳＢメモリ）が接続され、外部装置とコンピュータ３０２との間の各種情報の送受信を司る。
【００１９】
コンピュータ３０２は、タッチパネル制御ソフト３０２Ａ、ドライバソフト３０２Ｂ及びディスプレイ制御ソフト３０２Ｃを有する。タッチパネル制御ソフト３０２Ａは、タッチパネル３０８Ａを制御するためのソフトウェアである。ドライバソフト３０２Ｂは、スマートフォン３００にインストールされているＯＳ（Operating System）及びタッチパネル制御ソフト３０２Ａに対して共通化されたインタフェースを提供するソフトウェアである。ディスプレイ制御ソフト３０２Ｃは、ディスプレイ３０８Ｂを制御するためのソフトウェアである。なお、以下では、タッチパネル制御ソフト３０２Ａ、ドライバソフト３０２Ｂ及びディスプレイ制御ソフト３０２Ｃを区別して説明する必要がない場合はタッチパネル・ディスプレイ用ソフトと称する。
【００２０】
ところで、ディスプレイ３０８Ｂは、コンピュータ３０２によってディスプレイ制御ソフト３０２Ｃが実行されることで、様々な画面を表示する。ディスプレイ３０８Ｂに表示される様々な画面のうち、特定の画面（ここでは一例としてスライド表示（スクロール表示）可能な画面、拡大可能な画面及び縮小可能な画面）の態様は、スマートフォン３００が操作されることによって変化する。すなわち、特定の画面の態様は、コンピュータ３０２によってタッチパネル・ディスプレイ用ソフトが実行されることで、指示体によるタッチパネル３０８Ａへの接触操作に応じて変化する。
【００２１】
例えば、ディスプレイ３０８Ｂにスライド表示可能な画面が表示されている場合、画面は、タッチパネル３０８Ａに対して行われるスライド操作に従ってスライドする。スライド操作とは、例えばタッチパネル３０８Ａに対して１つの指示体が接触し、接触状態を維持したまま接触位置を直線的に移動させる接触操作を指す。
【００２２】
また、ディスプレイ３０８Ｂに拡大及び縮小可能な画面が表示されている場合、画面は、タッチパネル３０８Ａに対して行われるピンチアウト操作に従って拡大され、タッチパネル３０８Ａに対して行われるピンチイン操作に従って縮小される。ピンチアウト操作とは、例えばタッチパネル３０８Ａに対して２つの指示体が接触し、接触状態を維持したまま２つの接触位置を互いにの距離が拡大する方向に移動させる接触操作を指す。ピンチイン操作とは、例えばタッチパネル３０８Ａに対して２つの指示体が接触し、接触状態を維持したまま２つの接触位置を互いの距離が縮小する方向に移動させる接触操作を指す。なお、以下では、ピンチアウト操作及びピンチイン操作を区別して説明する必要がない場合は「ピンチ操作」と称する。
【００２３】
次に、図３３を参照して、タッチパネル３０８Ａに対して行われたスライド操作に応じてコンピュータ３０２及びタッチパネル３０８Ａで行われる処理について説明する。
【００２４】
図３３は、タッチパネル３０８Ａに対して行われたスライド操作に応じてコンピュータ３０２及びタッチパネル３０８Ａで行われる処理の流れの一例を示すシーケンス図である。なお、図３３に示す例では、コンピュータ３０２で行われる処理が、コンピュータ３０２によってタッチパネル制御ソフト３０２Ａ、ドライバソフト３０２Ｂ及びディスプレイ制御ソフト３０２Ｃが実行されることで実現される機能で示されている。
【００２５】
図３３に示すように、タッチパネル３０８Ａに対して指示体の接触を開始すると、タッチパネル３０８Ａは、指示体の接触を検知し、時間Ｔｔｐｓ（一例として１０ｍｓ毎）後に接触位置情報Ａｔ（０）をドライバソフト３０２Ｂへ出力する。タッチパネル制御ソフト３０２Ａは、タッチパネル３０８Ａからドライバソフト３０２Ｂを介して、接触位置情報Ａｔ（０）を取得する。
【００２６】
タッチパネル３０８Ａは、接触位置情報Ａｔ（０）を出力すると、指示体の接触状態が解除されるまで、時間Ｔｔｐｆ毎（一例として２０ｍｓ毎）に接触位置情報Ａｔ（ｎ）をドライバソフト３０２Ｂへ出力する。タッチパネル制御ソフト３０２Ａは、タッチパネル３０８Ａで指示体の接触が検知されて接触位置情報Ａｔ（ｎ）が出力される毎に、ドライバソフト３０２Ｂを介して接触位置情報Ａｔ（ｎ）（図３３に示す例では、Ａｔ（１），Ａｔ（２））を取得する。
【００２７】
タッチパネル制御ソフト３０２Ａは、接触位置情報Ａｔ（０）に続いて接触位置情報Ａｔ（１）を取得することで、指示体によるタッチパネル３０８Ａへの接触操作がスライド操作であることを認識する。タッチパネル制御ソフト３０２Ａは、スライド操作を認識すると、ディスプレイ３０８Ｂに次に表示すべき画面を示す画面データ（以下、「画面データ」という）の生成を開始し、接触位置情報Ａｔ（２）を取得したときに画面データの生成を終了する。そして、ディスプレイ制御ソフト３０２Ｃは、タッチパネル制御ソフト２０２Ｂにより生成された画面データにより示される画面をディスプレイ３０８Ｂに対して表示させるように制御を行う。
【００２８】
図３３に示す時間Ｔｔｐ−ｄｉｓは、タッチパネル３０８Ａに対してスライド操作を開始してからディスプレイ制御ソフト３０２Ｃによるディスプレイ３０８Ｂに対する制御が行われるまでに要する時間である。時間Ｔｔｐ−ｄｉｓは、下記の式（１）によって示される。式（１）において、時間Ｔｔｐｓは、タッチパネル３０８Ａへの指示体の接触が開始されてから接触位置情報Ａｔ（０）が出力されるまでに要した時間である。また、時間Ｔｄｉｓは、タッチパネル制御ソフト３０２Ａによる画面データの生成開始時から、ディスプレイ制御ソフト３０２Ｃによって画面データにより示される画面をディスプレイ３０８Ｂに表示させる制御が行われるまでに要した時間である。
【００２９】
Ｔｔｐ−ｄｉｓ＝Ｔｔｐｓ＋Ｔｔｐｆ＋Ｔｄｉｓ・・・・・・（１）
【００３０】
次に、図３４を参照して、タッチパネル３０８Ａに対して行われたピンチ操作に応じてコンピュータ３０２及びタッチパネル３０８Ａで行われる処理について説明する。ここでは、説明の便宜上、タッチパネル３０８Ａに対して２つの指示体のうちの一方が接触を開始してから時間Ｔｆｄｌｙ遅れて他方の指示体が接触を開始する場合を示している。
【００３１】
図３４は、タッチパネル３０８Ａに対して行われたピンチ操作に応じてコンピュータ３０２及びタッチパネル３０８Ａで行われる処理の流れの一例を示すシーケンス図である。なお、図３４に示す例でも図３３と同様に、コンピュータ３０２で行われる処理が、コンピュータ３０２によってタッチパネル制御ソフト３０２Ａ、ドライバソフト３０２Ｂ及びディスプレイ制御ソフト３０２Ｃが実行されることで実現される機能で示されている。
【００３２】
図３４に示すように、タッチパネル３０８Ａに対して一方の指示体が接触を開始すると、タッチパネル３０８Ａは、指示体の接触を検知し、時間Ｔｔｐｓ後に接触位置情報Ａｔ（０）をドライバソフト３０２Ｂへ出力する。タッチパネル制御ソフト３０２Ａは、タッチパネル３０８Ａからドライバソフト３０２Ｂを介して、接触位置情報Ａｔ（０）を取得する。タッチパネル３０８Ａは、接触位置情報Ａｔ（０）を出力すると、指示体の接触状態が解除されるまで、時間Ｔｔｐｆ毎に接触位置情報Ａｔ（ｎ）をドライバソフト３０２Ｂへ出力する。タッチパネル制御ソフト３０２Ａは、タッチパネル３０８Ａによって指示体の接触が検知されて接触位置情報Ａｔ（ｎ）が出力される毎に、ドライバソフト３０２Ｂを介して接触位置情報Ａｔ（ｎ）を取得する。
【００３３】
タッチパネル３０８Ａに対して他方の指示体が接触を開始すると、タッチパネル３０８Ａは、指示体の接触を検知してから所定のタイミングで接触位置情報Ｂｔ（０）をドライバソフト３０２Ｂへ出力する。所定のタイミングとは、例えばタッチパネル３０８Ａが接触位置情報Ａｔ（０）を出力してから時間Ｔｔｐｆ後の時点（図３４に示す例では、指示体の接触を検知してから時間Ｔｔｐｓ’後の時点）を指す。タッチパネル制御ソフト３０２Ａは、タッチパネル３０８Ａからドライバソフト３０２Ｂを介して、接触位置情報Ｂｔ（０）を取得する。タッチパネル３０８Ａは、接触位置情報Ｂｔ（０）を出力すると、指示体の接触状態が解除されるまで、Ｔｔｐｆ毎に接触位置情報Ｂｔ（ｎ）をドライバソフト３０２Ｂへ出力する。タッチパネル制御ソフト３０２Ａは、タッチパネル３０８Ａによって指示体の接触が検知されて接触位置情報Ｂｔ（ｎ）が出力される毎に、ドライバソフト３０２Ｂを介して接触位置情報Ｂｔ（ｎ）を取得する。
【００３４】
タッチパネル制御ソフト３０２Ａは、接触位置情報Ａｔ（０）、Ａｔ（１）、Ａｔ（２）、Ｂｔ（０）及びＢｔ（１）を取得することで、指示体によるタッチパネル３０８Ａへの接触操作がピンチ操作であることを認識する。すなわち、タッチパネル制御ソフト３０２Ａは、接触位置情報Ａｔ（０）に続いて接触位置情報Ａｔ（１）及びＢｔ（０）を取得し、更に、接触位置情報Ａｔ（２）及びＢｔ（１）を取得することで、接触操作がピンチ操作であることを認識する。タッチパネル制御ソフト３０２Ａは、ピンチ操作を認識すると、画面データの生成を開始し、接触位置情報Ａｔ（３）及びＢｔ（２）を取得したときに画面データの生成を終了する。そして、ディスプレイ制御ソフト３０２Ｃは、タッチパネル制御ソフト２０２Ｂにより生成された画面データにより示される画面をディスプレイ３０８Ｂに表示させる制御を行う。
【００３５】
図３４に示す時間Ｔｔｐ−ｄｉｓは、タッチパネル３０８Ａに対してピンチ操作を開始してから、ディスプレイ制御ソフト３０２Ｃによるディスプレイ３０８Ｂに対する制御が行われるまでに要する時間である。時間Ｔｔｐ−ｄｉｓは、下記の式（２）によって示される。なお、式（２）において、時間Ｔｔｐｓ，Ｔｔｐｆ，Ｔｄｉｓは、式（１）と同一である。
【００３６】
Ｔｔｐ−ｄｉｓ＝Ｔｔｐｓ＋２Ｔｔｐｆ＋Ｔｄｉｓ・・・・・・（２）
【００３７】
［実施形態］
次に開示の技術の実施形態の一例を詳細に説明する。なお、以下の説明では、開示の技術における情報処理装置として、多機能型の携帯電話機、いわゆるスマートフォンを例に挙げて説明するが、開示の技術は、これに限定されるものではない。開示の技術は、例えば、携帯型のパーソナル・コンピュータやＰＤＡ、据置型のパーソナル・コンピュータ、ＡＴＭなどの種々の情報処理装置にも適用可能である。なお、本実施形態では、上記比較例で説明した構成要素と同一の構成要素に同一の符号を付し、説明を省略する。
【００３８】
スマートフォン１０は、検知部１２、予測部１４、実行部１６及び表示部１８を含む。検知部１２は、操作面への接触を検知して操作面上の接触位置を示す接触位置情報を出力する。ここで言う「操作面」とは、例えばスマートフォン１０に備えられているタッチパネル・ディスプレイの表面を指す。
【００３９】
予測部１４は、検知部１２から出力された接触位置情報により示される接触位置の時系列から、操作面への接触操作が特定されるよりも前に、検知部１２から出力された接触位置情報から特定される接触位置の数に基づいて接触操作を予測する。操作面への接触操作が特定されるよりも前に接触位置情報から特定される接触位置の数とは、例えば、接触位置の開始位置（例えば接触位置の接触開始時の位置）の数を指し、操作面に接触している指示体の数に相当する。すなわち、例えば操作面に対して指示体としての指が１本接触していれば、操作面への接触操作が特定されるよりも前の接触位置の数は“１”となる。また、接触面に対して指示体としての指が２本接触していれば、操作面への接触操作が特定されるよりも前の接触位置の数は“２”となる。なお、本実施形態では、説明の便宜上、接触操作として、スライド操作及びピンチ操作を例に挙げて説明する。
【００４０】
実行部１６は、予測部１４により予測された接触操作に応じた処理を実行する。ここで言う「接触操作に応じた処理」とは、例えばスマートフォン１０に備えられているタッチパネル・ディスプレイに表示されている画面を接触操作に応じて移動させる処理を指す。
【００４１】
予測部１４は、接触位置の数が１つの場合、接触操作をスライド操作と予測する。また、予測部１４は、接触位置の数が複数の場合、接触操作を、操作面における一対の接触位置の距離を伸縮させる伸縮操作の一例であるピンチ操作であると予測する。ここで、「少なくとも一対の接触位置」とは、例えば操作面に対して２つ以上の指示体（例えば２本以上の指）が接触した位置を指す。なお、本実施形態では、錯綜を回避するために、操作面に対して２つの指示体が接触した場合（一対の接触位置の場合）を例に挙げて説明する。
【００４２】
予測部１４は、接触操作をスライド操作と予測してから、前記操作面への接触操作がスライド操作と特定されるよりも前に、接触位置の数が増加した場合、接触操作の予測をスライド操作からピンチ操作へ変更する。
【００４３】
予測部１４は、接触操作をスライド操作と予測した場合、接触位置と接触面に対して予め設定された基準線（以下、単に「基準線」という）との位置関係から、スライド操作における接触位置のスライド方向を更に予測する。なお、基準線を用いてスライド方向が予測される場合としては、例えばタッチパネル・ディスプレイに対して、正面視水平方向及び垂直方向の少なくとも一方にスライド表示可能な画面が表示されている場合が挙げられる。
【００４４】
予測部１４は、接触操作をスライド操作と予測した場合、接触位置と操作面に対して予め設定された基準点（以下、単位「基準点」という）との位置関係から、スライド操作における接触位置のスライド方向を更に予測する。基準点を用いてスライド方向が予測される場合としては、例えばタッチパネル・ディスプレイに対して、正面視水平方向及び垂直方向にスライド表示可能な画面が表示されている場合が挙げられる。また、この他にも、操作面における中心から３６０度の全方向にスライド表示可能な画面が表示されている場合が挙げられる。
【００４５】
予測部１４は、接触操作をピンチ操作と予測し、かつ、一対の接触位置の距離が閾値以下の場合、伸縮操作のうちの一対の接触位置の距離を拡大する拡大操作の一例であるピンチアウト操作であると予測する。また、予測部１４は、接触操作をピンチ操作であると予測し、かつ、一対の接触位置の距離が閾値を超えた場合、伸縮操作のうちの一対の接触位置の距離を縮小する縮小操作の一例であるピンチイン操作であると予測する。
【００４６】
スマートフォン１０は、基準線再設定部１８、基準点再設定部２０及び更新部２２を含む。基準線再設定部１８は、基準線が、過去に行われたスライド操作における接触位置の開始位置と終了位置との間に位置するように、基準線を操作面に対して設定し直す。基準点再設定部２０は、基準点が、過去に行われたスライド操作における接触位置の開始位置と終了位置との間に位置するように、基準点を操作面に対して設定し直す。なお、ここで言う「終了位置」とは、例えば接触位置の接触終了時の位置を指す。また、ここで言う「開始位置と終了位置との間」としては、例えば開始位置と終了位置との中央の位置が挙げられるが、開示の技術はこれに限定されるものではない。例えば、中央の位置よりも開始位置側に所定距離（例えばユーザによって指定された距離）だけ寄った位置や、中央の位置よりも終了位置側に所定距離だけ寄った位置であってもよい。また、ここで言う「過去に行われたスライド操作」とは、例えば過去に行われた最新のスライド操作を指すが、これに限らず、例えば過去の所定期間内に行われた単一のスライド操作であってもよい。
【００４７】
更新部２２は、予測部１４によりピンチ操作がピンチアウト操作であるか或いはピンチイン操作であるかを予測する際に用いられる上述の閾値を更新する。すなわち、閾値を、過去に行われたピンチ操作における一対の接触位置における接触位置の接触開始時の距離と接触終了時の距離との間に相当する値に更新する。
【００４８】
スマートフォン１０は、表示部２４を含む。表示部２４は、画面を表示する。実行部１６は、予測部１４により予測された接触操作に応じた画面を表示部２４に対して表示させる。なお、表示部２４としては、例えばスマートフォン１０に備えられているタッチパネル・ディスプレイに含まれるディスプレイが挙げられる。
【００４９】
スマートフォン１０は、判定部２６を含む。判定部２６は、予測部１４によって予測された接触操作の正否を判定する。すなわち、検知部１２から出力された接触位置情報により示される接触位置の時系列から特定された接触操作と比較することで、予測部１４の予測結果が正しいか否かを判定する。実行部１６は、判定部２６により予測部１４の予測結果が正しいと判定された場合に表示部２４に画面を表示させる。
【００５０】
図２には、スマートフォン１０の電気系の要部構成の一例が示されている。図２に示すように、スマートフォン１０は、比較例で説明したスマートフォン３００（図３２参照）と比較して、コンピュータ３０２に代えてコンピュータ４０を有している点が異なっている。予測部１４、実行部１６、基準線再設定部１８、基準点再設定部２０、更新部２２及び判定部２６は、例えばコンピュータ４０及び各種の入出力デバイスによって実現することができる。
【００５１】
コンピュータ４０は、ＣＰＵ（Central Processing Unit）４２、メモリ４４及び不揮発性の記憶部４６を備え、ＣＰＵ４２、メモリ４４及び記憶部４６はバス４８を介して互いに接続されている。バス４８は、Ｉ／Ｏ３０４に接続されている。なお、記憶部４６は、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどによって実現できる。
【００５２】
記憶部４６には、画面更新処理プログラム５０、基準線再設定処理プログラム５２、基準点再設定処理プログラム５４及び閾値更新処理プログラム５６（以下、区別して説明する必要がない場合は単に「プログラム」という）が記憶されている。ＣＰＵ４２は、記憶部４６から画面更新処理プログラム５０を読み出してメモリ４４に展開し、画面更新処理プログラム５０が有するプロセスを順次実行する。画面更新処理プログラム５０は、予測プロセス５０Ａ、実行プロセス５０Ｂ及び判定プロセス５０Ｃを有する。ＣＰＵ４２は、予測プロセス５０Ａを実行することで、図１に示す予測部１４として動作する。また、ＣＰＵ４２は、実行プロセス５０Ｂを実行することで、図１に示す実行部１６として動作する。更に、ＣＰＵ４２は、判定プロセス５０Ｃを実行することで、図１に示す判定部２６として動作する。
【００５３】
ＣＰＵ４２は、記憶部４６から基準線再設定処理プログラム５２を読み出してメモリ４４に展開し、基準線再設定処理プログラム５２が有するプロセスを実行する。基準線再設定処理プログラム５２は、基準線再設定プロセス５２Ａを有する。ＣＰＵ４２は、基準線再設定プロセス５２Ａを実行することで、図１に示す基準線再設定部１８として動作する。
【００５４】
ＣＰＵ４２は、記憶部４６から基準点再設定処理プログラム５４を読み出してメモリ４４に展開し、基準点再設定処理プログラム５４Ａが有するプロセスを実行する。基準点再設定処理プログラム５４は、基準点再設定プロセス５４Ａを実行することで、図１に示す基準点再設定部２０として動作する。
【００５５】
ＣＰＵ４２は、記憶部４６から閾値更新処理プログラム５６を読み出してメモリ４４に展開し、閾値更新処理プログラム５６が有するプロセスを実行する。閾値更新処理プログラム５６は、更新プロセス５６Ａを有する。ＣＰＵ４２は、更新プロセス５６Ａを実行することで、図１に示す更新部２２として動作する。
【００５６】
なお、ここではプログラムを記憶部４６から読み出す場合を例示したが、必ずしも最初から記憶部４６に記憶させておく必要はない。例えば、コンピュータ４０に接続されて使用されるＳＳＤ（Solid State Drive）、ＤＶＤディスク、ＩＣカード、光磁気ディスク、ＣＤ−ＲＯＭなどの任意の「可搬型の記憶媒体」に先ずはプログラムを記憶させておいてもよい。そして、コンピュータ４０がこれらの可搬型の記憶媒体からプログラムを取得して実行するようにしてもよい。また、通信回線を介してコンピュータ４０に接続される他のコンピュータ又はサーバ装置等の記憶部にプログラムを記憶させておき、コンピュータ４０が他のコンピュータ又はサーバ装置等からプログラムを取得して実行してもよい。
【００５７】
次に本実施形態の作用として、スマートフォン１０によって行われる画面更新処理について、図３を参照して説明する。画面更新処理は、ＣＰＵ４２が画面更新処理プログラム５０を実行することで行われる。スマートフォン１０は、タッチパネル３０８Ａが接触を検知していない場合は画面更新処理を行わず、タッチパネル３０８Ａが接触を検知した場合に画面更新処理を行う。すなわち、ＣＰＵ４２は、タッチパネル３０８Ａが接触を検知していない場合、画面更新処理プログラム５０を実行せずに、タッチパネル３０８Ａが接触を検知した場合、所定周期毎に画面更新処理プログラム５０を実行する。つまり、ＣＰＵ４２は、指示体がタッチパネル３０８Ａに接触している間、所定周期毎に画面更新処理プログラム５０を実行する。所定周期としては、例えば接触位置情報が入力される周期（一例として比較例で説明した時間Ｔｔｐｆ（図３３参照））が挙げられる。なお、ここでは、説明の便宜上、スマートフォン１０のディスプレイ３０８Ｂに、スライド操作によりスライド表示可能な画面又はピンチ操作により拡大及び縮小可能な画面が表示されている場合について説明する。また、ここでは、錯綜を回避するために、タッチパネル３０８Ａが１つ又は２つの指示体の接触を検知した場合について説明する。
【００５８】
図３は、画面更新処理の流れの一例を示すフローチャートである。図３に示す画面更新処理では、先ず、ステップ１００において、予測部１４により、タッチパネル３０８Ａから入力された接触位置情報により示される接触位置が開始位置であるか否かが判定される。ステップ１００において、タッチパネル３０８Ａから入力された接触位置情報により示される接触位置が開始位置である場合は判定が肯定されてステップ１０６へ移行する。
【００５９】
ステップ１０６において現在の開始位置の数が１である場合は判定が肯定されてステップ１０８へ移行する。ステップ１０６において現在の開始位置の数が１でない場合（２の場合）は判定が否定されてステップ１１０へ移行する。
【００６０】
ステップ１０８では、予測部１４により、一例として図４に示すスライド操作準備処理が行われ、その後、画面更新処理を終了する。
【００６１】
ステップ１１０では、予測部１４により、一例として図１１に示すピンチ操作準備処理が行われ、その後、画面更新処理を終了する。
【００６２】
一方、ステップ１００において、タッチパネル３０８Ａから入力された接触位置情報により示される接触位置が接触位置でない場合は判定が否定されてステップ１１４へ移行する。ステップ１１４では、実行部１６により、メモリ４４の所定の記憶領域に開始位置毎に、入力された最新の接触位置情報が時系列で記憶される。次のステップ１１６では、実行部１６により、一例として図１４に示す接触操作処理が行われ、その後、画面更新処理を終了する。
【００６３】
図４に示すスライド操作準備処理では、先ず、ステップ１２０において、予測部１４により、ディスプレイ３０８Ｂに現在表示されている画面が左右方向スライド画面であるか否かが判定される。「左右方向スライド画面」とは、左右方向（例えばディスプレイ３０８Ｂに対して正面視水平方向）にスライド表示可能な画面を指す。ステップ１２０においてディスプレイ３０８Ｂに現在表示されている画面が左右方向スライド画面である場合は判定が肯定されてステップ１２２へ移行する。ステップ１２２では、予測部１４により、一例として図５に示す第１スライド操作準備処理が行われ、その後、スライド操作準備処理を終了する。
【００６４】
一方、ステップ１２０において左右方向スライド画面でない場合は判定が否定されてステップ１２４へ移行する。ステップ１２４では、予測部１４により、上下方向スライド画面であるか否かが判定される。「上下方向スライド画面」とは、上下方向（例えばディスプレイ３０８Ｂに対して正面視垂直方向）にスライド表示可能な画面を指す。ステップ１２４においてディスプレイ３０８Ｂに現在表示されている画面が上下方向スライド画面である場合は判定が肯定されてステップ１２６へ移行する。ステップ１２６では、予測部１４により、一例として図７に示す第２スライド操作準備処理が行われ、その後、スライド操作準備処理を終了する。
【００６５】
一方、ステップ１２４において上下方向スライド画面でない場合（全方向スライド画面である場合）は判定が否定されてステップ１２８へ移行する。「全方向スライド画面」とは、ディスプレイ３０８Ｂの中央から３６０度の全方向に対してスライド表示可能な画面を指す。ステップ１２８では、予測部１４により、一例として図９に示す第３スライド操作準備処理が行われ、その後、スライド操作準備処理を終了する。
【００６６】
図５に示す第１スライド操作準備処理では、先ず、ステップ１２２Ａにおいて、予測部１４により、開始位置が第１基準線の左側であるか否かが判定される。ステップ１２２Ａにおいて開始位置が第１基準線の左側である場合は判定が肯定されてステップ１２２Ｂへ移行する。ここで言う「第１基準線」とは、例えば図６に示すように、タッチパネル３０８Ａの正面視中央を縦断する直線Ｙを指す。従って、タッチパネル３０８Ａは直線Ｙを境にして正面視左側の領域（以下、「左側被接触領域」という）と正面視右側の領域（以下、「右側被接触領域」という）とに大別される。図６に示す例では、接触位置情報Ａｔ（０）により特定される開始位置から接触位置情報Ａｔ（ｎ）により特定される終了位置までの接触位置の移動経路が示されており、開始位置が左側被接触領域に存在している。この場合、ステップ１２２Ａでは判定が肯定される。逆に、開始位置が右側被接触領域に存在している場合、ステップ１２２Ａでは判定が否定される。
【００６７】
ステップ１２２Ｂでは、予測部１４により、右方向スライド操作であるという予測を示す右スライド予測フラグがオンされ、その後、ステップ１２２Ｃへ移行する。なお、「右方向スライド操作」とは、例えば図６に示す左側被接触領域から右側被接触領域にかけて図６に示す直線方向に接触位置を移動させる操作を指す。
【００６８】
一方、ステップ１２２Ａにおいて接触位置が第１基準線の左側にない場合（右側にある場合（第１基準線上にある場合も含む））は判定が肯定されてステップ１２２Ｄへ移行する。ステップ１２２Ｄでは、予測部１４により、左方向スライド操作であるという予測を示す左スライド予測フラグがオンされ、その後、ステップ１２２Ｃへ移行する。なお、「左方向スライド操作」とは、例えば図６に示す右側被接触領域から左側被接触領域にかけて図６に示す直線方向と逆方向に接触位置を移動させる操作を指す。
【００６９】
ステップ１２２Ｃでは、実行部１６により、ディスプレイ３０８Ｂに現在表示されている画面をスライド量Ｓでスライド移動させた画面を示す画面データが生成されて保持され、その後、第１スライド操作準備処理を終了する。すなわち、ステップ１２２Ｃにおいて、実行部１６は、右スライド予測フラグがオンされている場合、ディスプレイ３０８Ｂに現在表示されている画面をスライド量Ｓで右方向へスライド移動させた画面を示す画面データを生成して保持する。また、ステップ１２２Ｃにおいて、実行部１６は、左スライド予測フラグがオンされている場合、ディスプレイ３０８Ｂに現在表示されている画面をスライド量Ｓで左方向へスライド移動させた画面を示す画面データを生成して保持する。なお、「右方向へスライド移動させた画面」とは、例えばディスプレイ３０８Ｂに現在表示されている画面の表示位置を図６における右側へ移動させた画面を指す。また、「左方向へスライド移動させた画面」とは、例えばディスプレイ３０８Ｂに現在表示されている画面の表示位置を図６における左側へ移動させた画面を指す。
【００７０】
図７に示す第２スライド操作準備処理では、先ず、ステップ１２６Ａにおいて、予測部１４により、接触位置が第２基準線の上側であるか否かが判定される。ステップ１２６Ａにおいて接触位置が第２基準線の上側である場合は判定が肯定されてステップ１２６Ｂへ移行する。ここで言う「第２基準線」とは、例えば図８に示すように、タッチパネル３０８Ａを横断する直線Ｘを指す。図８に示す例では、直線Ｘはタッチパネル３０８Ａの中央よりも下側に配置されている。従って、タッチパネル３０８Ａは直線Ｘを境にして正面視上側の領域（以下、「上側被接触領域」という）と正面視下側の領域（以下、「下側被接触領域」という）とに大別される。図８に示す例では、接触位置情報Ａｔ（０）により特定される開始位置から接触位置情報Ａｔ（ｎ）により特定される終了位置までの接触位置の移動経路が示されており、開始位置が上側被接触領域に存在している。この場合、ステップ１２６Ａでは判定が肯定される。逆に、開始位置が下側被接触領域に存在している場合、ステップ１２６Ａでは判定が否定される。
【００７１】
ステップ１２６Ｂでは、予測部１４により、下方向スライド操作であるという予測を示す下スライド予測フラグがオンされ、その後、ステップ１２６Ｃへ移行する。なお、「下方向スライド操作」とは、例えば図８に示す上側被接触領域から下側被接触領域にかけて図８に示す直線方向に接触位置を移動させる操作を指す。
【００７２】
一方、ステップ１２６Ａにおいて接触位置が第２基準線の上側にない場合（下側にある場合（基準線上にある場合も含む））は判定が肯定されてステップ１２６Ｄへ移行する。ステップ１２６Ｄでは、予測部１４により、上方向スライド操作であるという予測を示す上スライド予測フラグがオンされ、その後、ステップ１２６Ｃへ移行する。なお、「上方向スライド操作」とは、例えば図８に示す下側被接触領域から上側被接触領域にかけて図８に示す直線方向と逆方向に接触位置を移動させる操作を指す。
【００７３】
ステップ１２６Ｃでは、実行部１６により、ディスプレイ３０８Ｂに現在表示されている画面をスライド量Ｓでスライド移動させた画面を示す画面データが生成されて保持され、その後、第２スライド操作準備処理を終了する。ステップ１２６Ｃにおいて、実行部１６は、下スライド予測フラグがオンされている場合、ディスプレイ３０８Ｂに現在表示されている画面をスライド量Ｓで下方向へスライド移動させた画面を示す画面データを生成して保持する。また、ステップ１２６Ｃにおいて、実行部１６は、上スライド予測フラグがオンされている場合、ディスプレイ３０８Ｂに現在表示されている画面をスライド量Ｓで上方向へスライド移動させた画面を示す画面データを生成して保持する。なお、「下方向へスライド移動させた画面」とは、例えばディスプレイ３０８Ｂに現在表示されている画面の表示位置を図８における下側へ移動させた画面を指す。また、「上方向へスライド移動させた画面」とは、例えばディスプレイ３０８Ｂに現在表示されている画面の表示位置を図８における上側へ移動させた画面を指す。
【００７４】
図９に示す第３スライド操作準備処理では、先ず、ステップ１２８Ａにおいて、予測部１４により、基準点と接触位置との位置関係からスライド操作の方向を示す角度が算出される。
【００７５】
「スライド操作の方向を示す角度」とは、例えば基準点と接触位置とを結ぶ線分とタッチパネル３０８Ａにおける所定の直線とが成す角度を指す。ここで言う「基準点」とは、例えば図１０に示すように、タッチパネル３０８Ａ上の１点（基準点Ｚ）を指す。図１０に示す例では、接触位置情報Ａｔ（０）により特定される開始位置から接触位置情報Ａｔ（ｎ）により特定される終了位置までの接触位置の移動経路が示されている。また、図１０に示す例では、開始位置と基準点Ｚとの延長線上に終了位置が存在しているので、この場合、予測したスライド操作の方向と実際のスライド操作の方向とが一致していると言える。なお、本実施形態で用いる「一致」とは、所定誤差内での一致を意味する。従って、「予測したスライド操作の方向と実際のスライド操作の方向とが一致している」とは、例えば±３度以内の角度で一致していることを指す。
【００７６】
次のステップ１２８Ｂでは、予測部１４により、上記ステップ１２８Ａで算出された角度を示す角度情報が生成されて保持され、その後、ステップ１２８Ｃへ移行する。ステップ１２８Ｃでは、実行部１６により、ディスプレイ３０８Ｂに現在表示されている画面を所定角度の方向へスライド量Ｓでスライド移動させた画面を示す画面データが生成されて保持され、その後、第３スライド操作準備処理を終了する。ここで、所定角度の方向とは、例えば現時点で保持している角度情報により示される角度の方向を指す。
【００７７】
図１１に示すピンチ操作準備処理では、先ず、ステップ１３０において、予測部１４により、一対の開始位置間の距離が開示の技術における閾値の一例であるピンチ判別距離Ｌ１以下であるか否かが判定される。「開始位置間」とは、例えば所定の記憶領域に接触位置毎に記憶されている接触位置情報により特定される一対の開始位置間の距離を指す。ステップ１３０において一対の開始位置間の距離がピンチ判別距離Ｌ１以下の場合は判定が肯定されてステップ１３２へ移行する。図１２にはピンチアウト操作であると予測される場合の一対の接触位置の移動経路とピンチ判別距離Ｌ１との関係の一例が示されている。図１２に示す例では、接触位置情報Ａｔ（０），Ｂｔ（０）により特定される一対の接触位置間の距離がピンチ判別距離Ｌ１よりも短い。この場合、ステップ１３０では判定が肯定される。
【００７８】
ステップ１３２では、予測部１４により、ピンチアウト操作であるという予測を示すピンチアウト予測フラグがオンされ、その後、ステップ１３４へ移行する。ステップ１３４では、実行部１６により、ディスプレイ３０８Ｂに現在表示されている画面を所定の割合で拡大した画面（例えば拡大率Ｍの画面）を示す画面データが生成されて保持され、その後、ピンチ操作準備処理を終了する。
【００７９】
一方、ステップ１３０において一対の開始位置間の距離がピンチ判別距離Ｌ１を超えた場合は判定が否定されてステップ１３６へ移行する。図１３にはピンチイン操作であると予測される場合の一対の接触位置の移動経路とピンチ判別距離Ｌ１との関係の一例が示されている。図１３に示す例では、接触位置情報Ａｔ（０），Ｂｔ（０）により特定される一対の開始位置間の距離がピンチ判別距離Ｌ１よりも長い。この場合、ステップ１３０では判定が否定される。
【００８０】
ステップ１３６では、予測部１４により、ピンチイン操作であるという予測を示すピンチイン予測フラグがオンされ、その後、ステップ１３８へ移行する。ステップ１３８では、実行部１６により、ディスプレイ３０８Ｂに現在表示されている画面を所定の割合で縮小した画面（例えば縮小率Ｎの画面）を示す画面データが生成されて保持され、その後、ピンチ操作準備処理を終了する。
【００８１】
次に図１４に示す接触操作処理を説明する。図１４に示す接触操作処理では、先ず、ステップ１４０において、実行部１６により、現在の開始位置の数が１であるか否かが判定される。ステップ１４０において現在の開始位置の数が１である場合は判定が肯定されてステップ１４２へ移行する。ステップ１４２では、実行部１６により、一例として図１５に示すスライド操作処理が行われ、その後、接触操作処理を終了する。
【００８２】
一方、ステップ１４０において現在の接触位置の数が１でない場合（２以上の場合）は判定が否定されてステップ１４４へ移行する。ステップ１４４では、実行部１６により、一例として図２１に示すピンチ操作処理が行われ、その後、接触操作処理を終了する。
【００８３】
次に図１５に示すスライド操作処理を説明する。図１５に示すスライド操作処理では、先ず、ステップ１５０において、判定部２６により、タッチパネル３０８Ａに対する指示体の接触位置に変化があったか否かが判定される。ここで、判定部２６は、所定の記憶領域に記憶されている接触位置情報を時系列に参照することで、接触位置に変化があったか否かを判定することができる。ステップ１５０においてタッチパネル３０８Ａに対する指示体の接触位置に変化があった場合は判定が肯定されてステップ１５２へ移行する。ステップ１５０においてタッチパネル３０８Ａに対する指示体の接触位置に変化がない場合は判定が否定されてスライド操作処理を終了する。
【００８４】
ステップ１５２では、判定部２６により、ディスプレイ３０８Ｂに現在表示されている画面が左右方向スライド画面であるか否かが判定される。ステップ１５２においてディスプレイ３０８Ｂに現在表示されている画面が左右方向スライド画面である場合は判定が肯定されてステップ１５４へ移行する。ステップ１５４では、判定部２６により、一例として図１６に示す第１スライド操作処理が行われ、その後、スライド操作処理を終了する。
【００８５】
一方、ステップ１５２において左右方向スライド画面でない場合は判定が否定されてステップ１５６へ移行する。ステップ１５６では、判定部２６により、ディスプレイ３０８Ｂに現在表示されている画面が上下方向スライド画面であるか否かが判定される。ステップ１５６においてディスプレイ３０８Ｂに現在表示されている画面が上下方向スライド画面である場合は判定が肯定されてステップ１５８へ移行する。ステップ１５８では、判定部２６により、一例として図１８に示す第２スライド操作処理が行われ、その後、スライド操作処理を終了する。
【００８６】
一方、ステップ１５６において上下方向スライド画面でない場合（全方向スライド画面である場合）は判定が否定されてステップ１６０へ移行する。ステップ１６０では、判定部２６により、一例として図２０に示す第３スライド操作処理が行われ、その後、スライド操作処理を終了する。
【００８７】
次に図１６に示す第１スライド操作処理を説明する。図１６に示す第１スライド操作処理では、先ず、ステップ１５４Ａにおいて、判定部２６により、左方向スライド操作が行われたか否かが判定される。ここで、判定部２６は、所定の記憶領域に記憶されている接触位置情報を時系列に参照することで、左方向スライド操作が行われたか否かを判定することができる。ステップ１５４Ａにおいて左方向スライド操作が行われた場合は判定が肯定されてステップ１５４Ｂへ移行する。
【００８８】
ステップ１５４Ｂでは、判定部２６により、左スライド操作回数（例えば初期値が０のカウンタ）に１が加算され、その後、ステップ１５４Ｃへ移行する。ステップ１５４Ｃでは、判定部２６により、左スライド操作回数が１であるか否かが判定される。ステップ１５４Ｃにおいて左スライド操作回数が１である場合は判定が肯定されてステップ１５４Ｄへ移行する。ステップ１５４Ｃにおいて左スライド操作回数が１でない場合（２以上の場合）は判定が否定されてステップ１５４Ｆへ移行する。
【００８９】
ステップ１５４Ｄでは、判定部２６により、左スライド予測フラグがオンされているか否かが判定される。なお、ステップ１５４Ｄの判定が終了すると、左スライド予測フラグがオフされる。
【００９０】
ステップ１５４Ｄにおいて左スライド予測フラグがオンされている場合は判定が肯定されてステップ１５４Ｅへ移行する。ステップ１５４Ｅでは、実行部１６により、既に準備されている画面データ（ステップ１２２Ｃで生成された画面データ）を使って、ディスプレイ３０８Ｂに現在表示されている画面が更新され、その後、ステップ１５４Ｆへ移行する。すなわち、ステップ１５４Ｅにおいて、実行部１６は、ディスプレイ３０８Ｂに現在表示されている画面を、上記ステップ１２２Ｃで生成された画面データにより示される画面に置き換える。
【００９１】
ステップ１５４Ｆでは、実行部１６により、所定の記憶領域の最新の接触位置情報と所定の記憶領域に前回（１回前に）記憶された接触位置情報とに基づいて一意に定まるスライド量で現在の画面を左方向へスライドさせた画面を示す画面データが生成される。「一意に定まるスライド量」とは、例えば最新の接触位置情報により示される接触位置と所定の記憶領域に前回記憶された接触位置情報により示される接触位置との距離に相当するスライド量を指す。
【００９２】
ステップ１５４Ｇでは、実行部１６により、ディスプレイ３０８Ｂに現在表示されている画面が、上記ステップ１５４Ｆで生成された画面データに基づいて更新され、その後、第１スライド操作処理を終了する。すなわち、ステップ１５４Ｇにおいて、実行部１６は、ディスプレイ３０８Ｂに現在表示されている画面を、上記ステップ１５４Ｆで生成された画面データにより示される画面に置き換える。
【００９３】
一方、ステップ１５４Ｄにおいて左スライド予測フラグがオンされていない場合（例えば右スライド予測フラグがオンされている場合）は判定が否定されてステップ１５４Ｈへ移行する。ステップ１５４Ｈでは、実行部１６により、既に準備されている画面データ（ステップ１２２Ｃで生成された画面データ）が消去され、その後、ステップ１５４Ｆへ移行する。すなわち、ステップ１５４Ｈにおいて、実行部１６は、上記ステップ１２２Ｃで生成された画面データを消去する。
【００９４】
また、ステップ１５４Ａにおいて左方向スライド操作でない場合（例えば右方向スライド操作である場合）は判定が否定されてステップ１５４Ｉへ移行する。ステップ１５４Ｉでは、一例として図１７に示す右スライド操作処理が行われ、その後、第１スライド操作処理を終了する。
【００９５】
図１７に示す右スライド操作処理を説明する。図１７に示す右スライド操作処理では、先ず、ステップ１５４Ｊにおいて、判定部２６により、右スライド操作回数（例えば初期値が０のカウンタ）に１が加算され、その後、ステップ１５４Ｋへ移行する。ステップ１５４Ｋでは、判定部２６により、右スライド操作回数が１であるか否かが判定される。ステップ１５４Ｋにおいて右スライド操作回数が１である場合は判定が肯定されてステップ１５４Ｌへ移行する。ステップ１５４Ｋにおいて右スライド操作回数が１でない場合（２以上の場合）は判定が否定されてステップ１５４Ｎへ移行する。
【００９６】
ステップ１５４Ｌでは、判定部２６により、右スライド予測フラグがオンされているか否かが判定される。なお、ステップ１５４Ｌの判定が終了すると、右スライド予測フラグがオフされる。
【００９７】
ステップ１５４Ｌにおいて右スライド予測フラグがオンされている場合は判定が肯定されてステップ１５４Ｍへ移行する。ステップ１５４Ｍでは、実行部１６により、既に準備されている画面データ（ステップ１２２Ｃで生成された画面データ）を使って、ディスプレイ３０８Ｂに現在表示されている画面が更新され、その後、ステップ１５４Ｎへ移行する。すなわち、ステップ１５４Ｍにおいて、実行部１６は、ディスプレイ３０８Ｂに現在表示されている画面を、上記ステップ１２２Ｃで生成された画面データにより示される画面に置き換える。
【００９８】
ステップ１５４Ｎでは、実行部１６により、所定の記憶領域の最新の接触位置情報と所定の記憶領域に前回（１回前に）記憶された接触位置情報とに基づいて一意に定まるスライド量で現在の画面を左方向へスライドさせた画面を示す画面データが生成される。
【００９９】
ステップ１５４Ｐでは、実行部１６により、ディスプレイ３０８Ｂに現在表示されている画面が、上記ステップ１５４Ｎで生成された画面データに基づいて更新され、その後、右スライド操作処理を終了する。すなわち、ステップ１５４Ｐにおいて、実行部１６は、ディスプレイ３０８Ｂに現在表示されている画面を、上記ステップ１５４Ｎで生成された画面データにより示される画面に置き換える。
【０１００】
一方、ステップ１５４Ｌにおいて右スライド予測フラグがオンされていない場合（例えば左スライド予測フラグがオンされている場合）は判定が否定されてステップ１５４Ｑへ移行する。ステップ１５４Ｑでは、実行部１６により、既に準備されている画面データ（ステップ１２２Ｃで生成された画面データ）が消去され、その後、ステップ１５４Ｎへ移行する。すなわち、ステップ１５４Ｑにおいて、実行部１６は、上記ステップ１２２Ｃで生成された画面データを消去する。
【０１０１】
次に、図１８に示す第２スライド操作処理を説明する。図１８に示す第２スライド操作処理では、先ず、ステップ１５８Ａにおいて、判定部２６により、上方向スライド操作が行われたか否かが判定される。ここで、判定部２６は、所定の記憶領域に記憶されている接触位置情報を時系列に参照することで、上方向スライド操作が行われたか否かを判定することができる。ステップ１５４Ａにおいて上方向スライド操作が行われた場合は判定が肯定されてステップ１５８Ｂへ移行する。
【０１０２】
ステップ１５８Ｂでは、判定部２６により、上スライド操作回数（例えば初期値が０のカウンタ）に１が加算され、その後、ステップ１５８Ｃへ移行する。ステップ１５８Ｃでは、判定部２６により、上スライド操作回数が１であるか否かが判定される。ステップ１５８Ｃにおいて上スライド操作回数が１である場合は判定が肯定されてステップ１５８Ｄへ移行する。ステップ１５８Ｃにおいて上スライド操作回数が１でない場合（２以上の場合）は判定が否定されてステップ１５８Ｆへ移行する。
【０１０３】
ステップ１５８Ｄでは、判定部２６により、上スライド予測フラグがオンされているか否かが判定される。なお、ステップ１５８Ｄの判定が終了すると、上スライド予測フラグがオフされる。
【０１０４】
ステップ１５８Ｄにおいて上スライド予測フラグがオンされている場合は判定が肯定されてステップ１５８Ｅへ移行する。ステップ１５８Ｅでは、実行部１６により、既に準備されている画面データ（上記ステップ１２６Ｃで生成された画面データ）を使って、ディスプレイ３０８Ｂに現在表示されている画面が更新され、その後、ステップ１５８Ｆへ移行する。すなわち、ステップ１５８Ｅにおいて、実行部１６は、ディスプレイ３０８Ｂに現在表示されている画面を、上記ステップ１２６Ｃで生成された画面データにより示される画面に置き換える。
【０１０５】
ステップ１５８Ｆでは、実行部１６により、所定の記憶領域の最新の接触位置情報と所定の記憶領域に前回（１回前に）記憶された接触位置情報とに基づいて一意に定まるスライド量で現在の画面を上方向へスライドさせた画面を示す画面データが生成される。
【０１０６】
ステップ１５８Ｇでは、実行部１６により、ディスプレイ３０８Ｂに現在表示されている画面が、上記ステップ１５８Ｆで生成された画面データに基づいて更新され、その後、第１スライド操作処理を終了する。すなわち、ステップ１５８Ｇにおいて、実行部１６は、ディスプレイ３０８Ｂに現在表示されている画面を、上記ステップ１５８Ｆで生成された画面データにより示される画面に置き換える。
【０１０７】
一方、ステップ１５８Ｄにおいて上スライド予測フラグがオンされていない場合（例えば下スライド予測フラグがオンされている場合）は判定が否定されてステップ１５８Ｈへ移行する。ステップ１５８Ｈでは、実行部１６により、既に準備されている画面データ（上記ステップ１２６Ｃで生成された画面データ）が消去され、その後、ステップ１５８Ｆへ移行する。すなわち、ステップ１５８Ｈにおいて、実行部１６は、上記ステップ１２６Ｃで生成された画面データを消去する。
【０１０８】
一方、ステップ１５８Ａにおいて上方向スライド操作でない場合（例えば下方向スライド操作である場合）は判定が否定されてステップ１５８Ｉへ移行する。ステップ１５８Ｉでは、下スライド操作処理が行われ、その後、第２スライド操作処理を終了する。
【０１０９】
次に、図１９に示す下スライド操作処理を説明する。図１９に示す下スライド操作処理では、先ず、ステップ１５８Ｊにおいて、判定部２６により、下スライド操作回数（例えば初期値が０のカウンタ）に１が加算され、その後、ステップ１５８Ｋへ移行する。ステップ１５８Ｋでは、判定部２６により、下スライド操作回数が１であるか否かが判定される。ステップ１５８Ｋにおいて下スライド操作回数が１である場合は判定が肯定されてステップ１５８Ｌへ移行する。ステップ１５８Ｋにおいて下スライド操作回数が１でない場合（２以上の場合）は判定が否定されてステップ１５８Ｎへ移行する。
【０１１０】
ステップ１５８Ｌでは、判定部２６により、下スライド予測フラグがオンされているか否かが判定される。なお、ステップ１５８Ｌの判定が終了すると、下スライド予測フラグがオフされる。
【０１１１】
ステップ１５８Ｌにおいて下スライド予測フラグがオンされている場合は判定が肯定されてステップ１５８Ｍへ移行する。ステップ１５８Ｍでは、実行部１６により、既に準備されている画面データ（上記ステップ１２６Ｃで生成された画面データ）を使って、ディスプレイ３０８Ｂに現在表示されている画面が更新され、その後、ステップ１５８Ｎへ移行する。すなわち、ステップ１５８Ｍにおいて、実行部１６は、ディスプレイ３０８Ｂに現在表示されている画面を、上記ステップ１２６Ｃで生成された画面データにより示される画面に置き換える。
【０１１２】
ステップ１５８Ｎでは、実行部１６により、所定の記憶領域の最新の接触位置情報と所定の記憶領域に前回（１回前に）記憶された接触位置情報とに基づいて一意に定まるスライド量で現在の画面を下方向へスライドさせた画面を示す画面データが生成される。
【０１１３】
ステップ１５８Ｐでは、実行部１６により、ディスプレイ３０８Ｂに現在表示されている画面が、上記ステップ１５８Ｎで生成された画面データに基づいて更新され、その後、下スライド操作処理を終了する。すなわち、ステップ１５８Ｐにおいて、実行部１６は、ディスプレイ３０８Ｂに現在表示されている画面を、上記ステップ１５８Ｎで生成された画面データにより示される画面に置き換える。
【０１１４】
一方、ステップ１５８Ｌにおいて下スライド予測フラグがオンされていない場合（例えば上スライド予測フラグがオンされている場合）は判定が否定されてステップ１５８Ｑへ移行する。ステップ１５８Ｑでは、実行部１６により、既に準備されている画面データ（上記ステップ１２６Ｃで生成された画面データ）が消去され、その後、ステップ１５８Ｎへ移行する。すなわち、ステップ１５８Ｑにおいて、実行部１６は、上記ステップ１２６Ｃで生成された画面データを消去する。
【０１１５】
次に、図２０に示す第３スライド操作処理を説明する。図２０に示す第３スライド操作処理では、先ず、ステップ１６０Ａにおいて、判定部２６により、第３スライド操作回数（例えば初期値が０のカウンタ）に１が加算され、その後、ステップ１６０Ｂへ移行する。ステップ１６０Ｂでは、判定部２６により、第３スライド操作回数が１であるか否かが判定される。ステップ１６０Ｂにおいて第３スライド操作回数が１である場合は判定が肯定されてステップ１６０Ｃへ移行する。ステップ１６０Ｂにおいて第３スライド操作回数が１でない場合（２以上の場合）は判定が否定されてステップ１６０Ｅへ移行する。
【０１１６】
ステップ１６０Ｃでは、判定部２６により、上記ステップ１２８Ｂで生成された角度情報により示される角度と実際のスライド操作によるタッチパネル３０８Ａに対する接触位置の移動方向の角度とが一致しているか否かが判定される。なお、実行部１６は、所定の記憶領域に接触位置毎に時系列に記憶されている接触位置情報を参照することで、実際のスライド操作によるタッチパネル３０８Ａに対する接触位置の移動方向の角度を特定することができる。なお、ステップ１６０Ｃの判定が終了すると、上記ステップ１２８Ｂで保持されている角度情報が消去される。
【０１１７】
ステップ１６０Ｃにおいて上記ステップ１２８Ｂで生成された角度情報により示される角度と実際のスライド操作によるタッチパネル３０８Ａに対する接触位置の移動方向の角度とが一致している場合は、判定が肯定されてステップ１６０Ｄへ移行する。
【０１１８】
ステップ１６０Ｄでは、実行部１６により、既に準備されている画面データ（上記ステップ１２８Ｃで生成された画面データ）を使って、ディスプレイ３０８Ｂに現在表示されている画面が更新され、その後、ステップ１６０Ｅへ移行する。すなわち、ステップ１６０Ｄにおいて、実行部１６は、ディスプレイ３０８Ｂに現在表示されている画面を、上記ステップ１２８Ｃで生成された画面データにより示される画面に置き換える。
【０１１９】
ステップ１６０Ｅでは、実行部１６により、所定の記憶領域の最新の接触位置情報と所定の記憶領域に前回記憶された接触位置情報とに基づいて一意に定まるスライド量で現在の画面を所定角度の方向へスライドさせた画面を示す画面データが生成される。なお、ここで言う「所定角度」は、所定の記憶領域の最新の接触位置情報と所定の記憶領域に前回記憶された接触位置情報とに基づいて定まる。すなわち、実行部１６は、所定の記憶領域の最新の接触位置情報と所定の記憶領域に前回記憶された接触位置情報とを参照することで、現在表示されている画面をスライドさせる方向（所定角度）を特定することができる。
【０１２０】
ステップ１６０Ｆでは、実行部１６により、ディスプレイ３０８Ｂに現在表示されている画面が、上記ステップ１６０Ｅで生成された画面データに基づいて更新され、その後、第３スライド操作処理を終了する。すなわち、ステップ１６０Ｆにおいて、実行部１６は、ディスプレイ３０８Ｂに現在表示されている画面を、上記ステップ１６０Ｅで生成された画面データにより示される画面に置き換える。
【０１２１】
一方、ステップ１６０Ｃにおいて上記ステップ１２８Ｂで生成された角度情報により示される角度と実際のスライド操作によるタッチパネル３０８Ａに対する接触位置の移動方向の角度とが一致していない場合は判定が否定されてステップ１６０Ｇへ移行する。ステップ１６０Ｇでは、実行部１６により、既に準備されている画面データ（上記ステップ１２８Ｃで生成された画面データ）が消去され、その後、ステップ１６０Ｅへ移行する。すなわち、ステップ１６０Ｇにおいて、実行部１６は、上記ステップ１２８Ｃで生成された画面データを消去する。
【０１２２】
図２１は、ピンチ操作処理の流れの一例を示すフローチャートである。図２１に示すピンチ操作処理では、先ず、ステップ１７０において、判定部２６により、一対の接触位置の距離に変化があったか否かが判定される。すなわち、判定部２６は、所定の記憶領域に記憶されている接触位置情報を時系列に参照することで、一対の接触位置の距離に変化があったか否かを判定することができる。ステップ１７０において一対の接触位置の距離に変化があった場合は判定が肯定されてステップ１７２へ移行する。ステップ１７０において一対の接触位置の距離に変化がない場合は判定が否定されてピンチ操作処理を終了する。
【０１２３】
ステップ１７２では、判定部２６により、一対の接触位置の距離が長くなったか否かが判定される。ここで、判定部２６は、所定の記憶領域に記憶されている接触位置情報を時系列に参照することで、一対の接触位置の距離が長くなったか否かを判定することができる。ステップ１７２において一対の接触位置の距離が長くなった場合は判定が肯定されてステップ１７４へ移行する。
【０１２４】
ステップ１７４では、判定部２６により、ピンチアウト操作回数（例えば初期値が０のカウンタ）に１が加算され、その後、ステップ１７６へ移行する。ステップ１７６では、判定部２６により、ピンチアウト操作回数が１であるか否かが判定される。ステップ１７６においてピンチアウト操作回数が１である場合は判定が肯定されてステップ１７８へ移行する。ステップ１７６において左スライド操作回数が１でない場合（２以上の場合）は判定が否定されてステップ１８２へ移行する。
【０１２５】
ステップ１７８では、判定部２６により、ピンチアウト予測フラグがオンされているか否かが判定される。ステップ１７８においてピンチアウト予測フラグがオンされている場合は判定が肯定されてステップ１８０へ移行する。ステップ１８０では、実行部１６により、既に準備されている画面データ（上記ステップ１３４で生成された画面データ）を使って、ディスプレイ３０８Ｂに現在表示されている画面が更新され、その後、ステップ１８２へ移行する。すなわち、ステップ１８０において、実行部１６は、ディスプレイ３０８Ｂに現在表示されている画面を、上記ステップ１３４で生成された画面データにより示される画面に置き換える。
【０１２６】
ステップ１８２では、実行部１６により、所定の記憶領域に開始位置毎に記憶された接触位置情報のうち最新の接触位置情報と前回記憶された接触位置情報とに基づいて一意に定まる拡大率で現在の画面を拡大させた画面を示す画面データが生成される。「一意に定まる拡大率」とは、例えば所定の記憶領域に開始位置毎に前回記憶された各接触位置情報により示される一対の接触位置の距離に対する所定の記憶領域に記憶された最新の各接触位置情報により示される一対の接触位置の距離の割合を指す。
【０１２７】
ステップ１８４では、実行部１６により、ディスプレイ３０８Ｂに現在表示されている画面が、上記ステップ１８２で生成された画面データに基づいて更新され、その後、第１スライド操作処理を終了する。すなわち、ステップ１８４において、実行部１６は、ディスプレイ３０８Ｂに現在表示されている画面を、上記ステップ１８２で生成された画面データにより示される画面に置き換える。
【０１２８】
一方、ステップ１７８においてピンチアウト予測フラグがオンされていない場合（例えばピンチイン予測フラグがオンされている場合）は判定が否定されてステップ１８６へ移行する。ステップ１８６では、実行部１６により、既に準備されている画面データ（上記ステップ１３４で生成された画面データ）が消去され、その後、ステップ１８２へ移行する。すなわち、ステップ１８６において、実行部１６は、上記ステップ１３４で生成された画面データを消去する。
【０１２９】
一方、ステップ１７２において一対の接触位置の距離が長くなっていない場合（縮まった場合）は判定が肯定されてステップ１８８へ移行する。ステップ１８８では、一例として図２２に示すピンチイン操作処理が行われ、その後、ピンチイン操作処理を終了する。
【０１３０】
次に、図２２に示すピンチイン操作処理を説明する。図２２に示すピンチイン操作処理では、先ず、ステップ１８８Ａにおいて、判定部２６により、ピンチイン操作回数（例えば初期値が０のカウンタ）に１が加算され、その後、ステップ１８８Ｂへ移行する。ステップ１８８Ｂでは、判定部２６により、ピンチイン操作回数が１であるか否かが判定される。ステップ１８８Ｂにおいてピンチイン操作回数が１である場合は判定が肯定されてステップ１８８Ｃへ移行する。ステップ１８８Ｂにおいてピンチイン操作回数が１でない場合（２以上の場合）は判定が否定されてステップ１８８Ｅへ移行する。
【０１３１】
ステップ１８８Ｃでは、判定部２６により、ピンチイン予測フラグがオンされているか否かが判定される。ステップ１８８Ｃにおいてピンチイン予測フラグがオンされている場合は判定が肯定されてステップ１８８Ｄへ移行する。ステップ１８８Ｄでは、実行部１６により、既に準備されている画面データ（上記ステップ１３８で生成された画面データ）を使って、ディスプレイ３０８Ｂに現在表示されている画面が更新され、その後、ステップ１８８Ｅへ移行する。すなわち、ステップ１８８Ｄにおいて、実行部１６は、ディスプレイ３０８Ｂに現在表示されている画面を、上記ステップ１３８で生成された画面データにより示される画面に置き換える。
【０１３２】
ステップ１８８Ｅでは、実行部１６により、所定の記憶領域に開始位置毎に記憶された接触位置情報のうち最新の接触位置情報と前回記憶された接触位置情報とに基づいて一意に定まる縮小率で現在の画面を縮小させた画面を示す画面データが生成される。「一意に定まる縮小率」とは、例えば所定の記憶領域に開始位置毎に前回記憶された各接触位置情報により示される一対の接触位置の距離に対する所定の記憶領域に記憶された最新の各接触位置情報により示される一対の接触位置の距離の割合を指す。
【０１３３】
次のステップ１８８Ｆでは、実行部１６により、ディスプレイ３０８Ｂに現在表示されている画面が、上記ステップ１８８Ｅで生成された画面データに基づいて更新され、その後、ピンチイン操作処理を終了する。すなわち、ステップ１８８Ｆにおいて、実行部１６は、ディスプレイ３０８Ｂに現在表示されている画面を、上記ステップ１８８Ｅで生成された画面データにより示される画面に置き換える。
【０１３４】
一方、ステップ１８８Ｃにおいてピンチイン予測フラグがオンされていない場合（例えばピンチアウト予測フラグがオンされている場合）は判定が否定されてステップ１８８Ｇへ移行する。ステップ１８８Ｇでは、実行部１６により、既に準備されている画面データ（上記ステップ１３８で生成された画面データ）が消去され、その後、ステップ１８８Ｅへ移行する。すなわち、ステップ１８８Ｇにおいて、実行部１６は、上記ステップ１３８で生成された画面データを消去する。
【０１３５】
次に、第１又は第２スライド操作処理が行われた際にＣＰＵ４２が基準線点設定処理プログラム５２を実行することでスマートフォン１０によって行われる基準線再設定処理について、図２３を参照して説明する。
【０１３６】
図２３に示す基準線再設定処理では、ステップ２００において、基準線再設定部１８により、タッチパネル３０８Ａに対するスライド操作が解除されたか（例えば指示体がタッチパネル３０８Ａから離れたか）否かが判定される。ステップ２００においてタッチパネル３０８Ａに対するスライド操作が解除された場合は判定が肯定されてステップ２０２へ移行する。ステップ２００においてタッチパネル３０８Ａに対するスライド操作が解除されていない場合（スライド操作中である場合）は判定が否定されてステップ２０１へ移行する。
【０１３７】
ステップ２０１では、基準線再設定部１８により、第１又は第２スライド操作処理が終了したか否かが判定される。ステップ２０１において第１又は第２スライド操作処理が終了した場合は判定が肯定されて基準線再設定処理を終了する。ステップ２０１において第１又は第２スライド操作処理が終了していない場合は判定が否定されてステップ２００へ移行する。
【０１３８】
ステップ２０２では、基準線再設定部１８により、所定の記憶領域の接触位置情報に基づいて、スライド操作における開始位置と終了位置との間の所定位置に現在の基準線を平行移動させることで基準線（第１基準線又は第２基準線）を設定し直す。ここで言う「所定位置」としては、例えばスライド操作における開始位置と終了位置との中央に相当する位置が挙げられるが、開示の技術はこれに限定されるものではない。例えば、スライド操作における開始位置と終了位置との中央から開始位置側又は終了位置側に所定量だけ寄った位置を所定位置としてもよい。
【０１３９】
次のステップ２０４では、基準線再設定部１８により、所定の記憶領域に現在記憶されている接触位置情報が消去され、その後、基準線再設定処理を終了する。
【０１４０】
次に、第３スライド操作処理が行われた際にＣＰＵ４２が基準線点付与処理プログラム５４を実行することでスマートフォン１０によって行われる基準点再設定処理について、図２４を参照して説明する。
【０１４１】
図２４に示す基準点再設定処理では、ステップ２１０において、基準点再設定部２０により、タッチパネル３０８Ａに対するスライド操作が解除されたか（例えば指示体がタッチパネル３０８Ａから離れたか）否かが判定される。ステップ２１０においてタッチパネル３０８Ａに対するスライド操作が解除された場合は判定が肯定されてステップ２１２へ移行する。ステップ２１０においてタッチパネル３０８Ａに対するスライド操作が解除されていない場合（スライド操作中の場合）は判定が否定されてステップ２１１へ移行する。
【０１４２】
ステップ２１１では、基準点再設定部２０により、第３スライド操作処理が終了したか否かが判定される。ステップ２１１において第３スライド操作処理が終了した場合は判定が肯定されて基準点再設定処理を終了する。ステップ２１１において第３スライド操作処理が終了していない場合は判定が否定されてステップ２１０へ移行する。
【０１４３】
ステップ２１２では、基準点再設定部２０により、所定の記憶領域の接触位置情報に基づいて、スライド操作における開始位置と接触終了位置との間の所定位置に基準点を移動させることで基準点を設定し直す。ここで言う「所定位置」としては、例えばスライド操作における開始位置と終了位置との中央に相当する位置が挙げられる。
【０１４４】
次のステップ２１４では、基準点再設定部２０により、所定の記憶領域に現在記憶されている接触位置情報が消去され、その後、基準点再設定処理を終了する。
【０１４５】
次に、ピンチ操作処理が行われた際にＣＰＵ４２が閾値更新処理プログラム５６を実行することでスマートフォン１０によって行われる閾値更新処理について、図２５を参照して説明する。
【０１４６】
図２５に示す閾値更新処理では、ステップ２２０において、更新部２２により、タッチパネル３０８Ａに対するピンチ操作が解除されたか（例えば２つの指示体がタッチパネル３０８Ａから離れたか）否かが判定される。ステップ２２０においてタッチパネル３０８Ａに対するピンチ操作が解除された場合は判定が肯定されてステップ２２２へ移行する。ステップ２２０においてタッチパネル３０８Ａに対するピンチ操作が解除されていない場合（ピンチ操作中の場合）は判定が否定されたステップ２２１へ移行する。
【０１４７】
ステップ２２１では、更新部２２により、ピンチ操作処理が終了したか否かが判定される。ステップ２２１においてピンチ操作処理が終了した場合は判定が肯定されてピンチ操作処理を終了する。ステップ２２１においてピンチ操作処理が終了していない場合は判定が否定されてステップ２２０へ移行する。
【０１４８】
ステップ２２２では、更新部２２により、一対の接触位置の距離と一対の終了位置の距離との間に相当する距離（以下、「中間距離」という）が算出される。ステップ２２２において、更新部２２は、所定の記憶領域に開始位置毎に時系列で記憶されている接触位置情報を参照することで中間距離を算出することができる。ここで言う「中間距離」としては、例えば一対の開始位置の距離と一対の終了位置の距離との平均値が挙げられるが、開示の技術はこれに限定されない。例えば、一対の開始位置の距離と一対の終了位置の距離との間の値であればよく、平均値に対して所定の係数を乗じて得た値を中間距離としてもよい。
【０１４９】
次のステップ２２４では、更新部２２により、現在設定されているピンチ判別距離Ｌ１が上記ステップ２２２で算出された中間距離に相当する値に変更されることでピンチ判別距離Ｌ１が更新される。
【０１５０】
次のステップ２２６では、更新部２２により、所定の記憶領域に現在記憶されている接触位置情報が消去され、その後、閾値更新処理を終了する。
【０１５１】
次に、図２６に示すコンピュータ４０及びタッチパネル３０８Ａで行われる処理の流れを説明する。なお、図２６に示す例では、コンピュータ３０２で行われる処理が、予測部１４、実行部１６及び判定部２６により実現される機能で示されている。
【０１５２】
図２６に示すように、タッチパネル３０８Ａに対して指示体の接触を開始すると、タッチパネル３０８Ａは、指示体の接触を検知し、時間Ｔｔｐｓ後に接触位置情報Ａｔ（０）を予測部１４へ出力する。予測部１４は、タッチパネル３０８Ａから出力された接触位置情報Ａｔ（０）を取得する。
【０１５３】
タッチパネル３０８Ａは、接触位置情報Ａｔ（０）を出力すると、指示体の接触状態が解除されるまで、時間Ｔｔｐｆ毎に接触位置情報Ａｔ（ｎ）を予測部１４へ出力する。予測部１４は、タッチパネル３０８Ａによって指示体の接触が検知されて接触位置情報Ａｔ（ｎ）が出力される毎に、接触位置情報Ａｔ（ｎ）を取得する。
【０１５４】
予測部１４は、接触位置情報Ａｔ（０）を取得すると、これから行われようとしている接触操作がスライド操作であると予測する。続いて、実行部１６は、ディスプレイ３０８Ｂに次にスライド表示すべき画面を示す画面データ（以下、「第１予測時生成画面データ」という）を生成する。第１予測時生成画面データの生成に要する時間は、例えば時間Ｔｄｉｓである。
【０１５５】
予測部１４は、接触位置情報Ａｔ（１）を取得すると、現在行われている接触操作がスライド操作であると認識する。判定部２６は、予測部１４による予測結果と実際の接触操作とが一致しているか否かを判定する。判定部２６は、予測部１４による予測結果が正しかった場合（スライド操作であるという予測が正しかった場合）、ディスプレイ３０８Ｂに現在表示されている画面の更新が可能であると判定する。
【０１５６】
実行部１６は、判定部２６によりディスプレイ３０８Ｂに現在表示されている画面の更新が可能であると判定された場合、ディスプレイ３０８Ｂに現在表示されている画面を、第１予測時生成画面データにより示される画面に置き換えることで画面を更新する。
【０１５７】
図２６に示す時間Ｔｔｐ−ｄｉｓは、タッチパネル３０８Ａに対してスライド操作を開始してから実行部１６による画面更新の制御が行われるまでに要する時間である。時間Ｔｔｐ−ｄｉｓは、下記の式（３）によって示され、図３３に示す比較例の時間Ｔｔｐ−ｄｉｓと比較して、時間Ｔｔｐｆだけ短い。つまり、スマートフォン１０は、比較例で説明したスマートフォン３００と比較して、タッチパネル２０８Ａに対する接触操作を開始してから接触操作に応じた処理が実行されるまでに要する時間を時間Ｔｔｐｆだけ短縮することができる。
【０１５８】
Ｔｔｐ−ｄｉｓ＝Ｔｔｐｓ＋Ｔｄｉｓ・・・・・・（３）
【０１５９】
次に、図２７に示すコンピュータ４０及びタッチパネル３０８Ａで行われる処理の流れについて説明する。なお、図２７に示す例は、説明の便宜上、タッチパネル３０８Ａに対して２つの指示体のうちの一方の接触が開始されてから時間Ｔｆｄｌｙ遅れて他方の指示体の接触が開始された場合を示している。また、図２７に示す例では、コンピュータ３０２で行われる処理が、予測部１４、実行部１６及び判定部２６により実現される機能で示されている。
【０１６０】
図２７に示すように、タッチパネル３０８Ａに対して一方の指示体の接触が開始されると、タッチパネル３０８Ａは、指示体の接触を検知し、時間Ｔｔｐｓ後に接触位置情報Ａｔ（０）を予測部１４へ出力する。予測部１４は、タッチパネル３０８Ａから出力された接触位置情報Ａｔ（０）を取得する。
【０１６１】
タッチパネル３０８Ａは、接触位置情報Ａｔ（０）を出力すると、指示体の接触状態が解除されるまで、時間Ｔｔｐｆ毎に接触位置情報Ａｔ（ｎ）を予測部１４へ出力する。予測部１４は、タッチパネル３０８Ａによって指示体の接触が検知されて接触位置情報Ａｔ（ｎ）が出力される毎に、接触位置情報Ａｔ（ｎ）を取得する。
【０１６２】
タッチパネル３０８Ａに対して他方の指示体の接触が開始されると、タッチパネル３０８Ａは、指示体の接触を検知してから所定時期に接触位置情報Ｂｔ（０）を予測部１４へ出力する。所定時期とは、例えばタッチパネル３０８Ａが接触位置情報Ａｔ（０）を出力してから時間Ｔｔｐｆ後の時点（図２７に示す例では、指示体の接触を検知してから時間Ｔｔｐｓ’後の時点）を指す。予測部１４は、タッチパネル３０８Ａから出力された接触位置情報Ｂｔ（０）を取得する。タッチパネル３０８Ａは、接触位置情報Ｂｔ（０）を出力すると、指示体の接触状態が解除されるまで、Ｔｔｐｆ毎に接触位置情報Ｂｔ（ｎ）を予測部１４へ出力する。予測部１４は、タッチパネル３０８Ａによって指示体の接触が検知されて接触位置情報Ｂｔ（ｎ）が出力される毎に、接触位置情報Ｂｔ（ｎ）を取得する。
【０１６３】
予測部１４は、接触位置情報Ａｔ（０）を取得すると、これから行われようとしている接触操作がスライド操作であると予測する。続いて、実行部１６は、第１予測時生成画面データを生成する。ここで、予測部１４は、接触位置情報Ａｔ（１），Ｂｔ（０）を取得すると、これから行われようとしている接触操作がピンチ操作であるという予測に切り替える。予測がスライド操作からピンチ操作に切り替えられると、実行部１６は、第１予測時生成画面データを消去し、次に表示すべき画面（拡大又は縮小画面）を示す画面データ（以下、「第２予測時生成画面データ」という）を生成する。第２予測時生成画面データの生成に要する時間は、例えば時間Ｔｄｉｓである。
【０１６４】
予測部１４は、接触位置情報Ａｔ（２），Ｂｔ（１）を更に取得すると、接触位置情報Ａｔ（１），Ａｔ（２），Ｂｔ（０），Ｂｔ（１）から、現在行われている接触操作がピンチ操作であると認識する。判定部２６は、予測部１４による予測結果と実際の接触操作とが一致しているか否かを判定する。判定部２６は、予測部１４による予測結果が正しかった場合（ピンチ操作であるという予測が正しかった場合）、ディスプレイ３０８Ｂに現在表示されている画面の更新が可能であると判定する。
【０１６５】
実行部１６は、判定部２６によりディスプレイ３０８Ｂに現在表示されている画面の更新が可能であると判定された場合、ディスプレイ３０８Ｂに現在表示されている画面を、第２予測時生成画面データにより示される画面に置き換えることで画面を更新する。
【０１６６】
図２７に示す時間Ｔｔｐ−ｄｉｓは、タッチパネル３０８Ａに対してピンチ操作を開始してから実行部１６による画面更新の制御が行われるまでに要する時間である。時間Ｔｔｐ−ｄｉｓは、下記の式（４）によって示され、図３４に示す比較例の時間Ｔｔｐ−ｄｉｓと比較して、時間Ｔｔｐｆ短い。つまり、スマートフォン１０は、比較例で説明したスマートフォン３００と比較して、タッチパネル２０８Ａに対する接触操作を開始してから接触操作に応じた処理が実行されるまでに要する時間を時間Ｔｔｐｆだけ短縮することができる。
【０１６７】
Ｔｔｐ−ｄｉｓ＝Ｔｔｐｓ＋Ｔｔｐｆ＋Ｔｄｉｓ・・・・・・（４）
【０１６８】
次に、図２８に示すコンピュータ４０及びタッチパネル３０８Ａで行われる処理の流れを説明する。図２８には、タッチパネル３０８Ａに対して２つの指示体が同時に接触を開始した場合が示されている。ここで言う「同時」とは、例えば２つの指示体のうちの先に１つ目の指示体の接触が開始されてから所定時間（例えば時間Ｔｔｐｓの２／３の時間）以内に２つ目の指示体による接触が開始された場合のことを指す。
【０１６９】
図２８に示すように、タッチパネル３０８Ａに対して２つの指示体による接触が同時に開始されると、タッチパネル３０８Ａは、２つの指示体の接触を検知し、時間Ｔｔｐｓ後に接触位置情報Ａｔ（０），Ｂｔ（０）を予測部１４へ出力する。予測部１４は、タッチパネル３０８Ａから出力された接触位置情報Ａｔ（０），Ｂｔ（０）を取得する。ここで、予測部１４は、接触位置情報Ａｔ（０），Ｂｔ（０）を取得すると、これから行われようとしている接触操作がピンチ操作であると予測する。実行部１６は、予測部１４によりピンチ操作であると予測された場合、第２予測時生成画面データを生成する。
【０１７０】
予測部１４は、接触位置情報Ａｔ（１），Ｂｔ（１）を更に取得すると、接触位置情報Ａｔ（１），Ａｔ（０），Ｂｔ（１），Ｂｔ（０）から、現在行われている接触操作がピンチ操作であると認識する。判定部２６は、予測部１４による予測結果と実際の接触操作とが一致しているか否かを判定する。判定部２６は、予測部１４による予測結果が正しかった場合（ピンチ操作であるという予測が正しかった場合）、ディスプレイ３０８Ｂに現在表示されている画面の更新が可能であると判定する。実行部１６は、判定部２６によりディスプレイ３０８Ｂに現在表示されている画面の更新が可能であると判定された場合、図２７に示す例と同様に、画面を更新する。
【０１７１】
図２８に示す例において、時間Ｔｔｐ−ｄｉｓは、タッチパネル３０８Ａに対してピンチ操作を開始してから実行部１６による画面更新の制御が行われるまでに要する時間である。時間Ｔｔｐ−ｄｉｓは、下記の式（５）によって示され、図３４に示す比較例の時間Ｔｔｐ−ｄｉｓと比較して、時間Ｔｔｐｆ短い。つまり、スマートフォン１０は、比較例で説明したスマートフォン３００と比較して、タッチパネル２０８Ａに対する接触操作を開始してから接触操作に応じた処理が実行されるまでに要する時間を時間Ｔｔｐｆだけ短縮することができる。
【０１７２】
Ｔｔｐ−ｄｉｓ＝Ｔｔｐｓ＋Ｔｄｉｓ・・・・・・（５）
【０１７３】
次に、図２９に示す処理の流れを説明する。図２９に示すように、検知部１２は、スライド操作が行われると、接触位置情報Ａｔ（ｎ）を所定時間毎に出力する。図２９に示す例では、開始位置を示す接触位置情報Ａｔ（０）から終了位置を示す接触位置情報Ａｔ（ｌａｓｔ）まで例示されている。
【０１７４】
予測部１４は、検知部１２から出力された接触位置情報Ａｔ（０）を受信し、接触位置情報Ａｔ（０）から開始位置を認識する。予測部１４は、接触位置情報Ａｔ（０）から開始位置を認識すると、スライド操作であると予測し、現在表示されている画面をスライド量Ｓで画面を移動させた画面を示す画面データＤｉｓ（０）の生成を開始する。
【０１７５】
次に、予測部１４は、接触位置情報Ａｔ（１）を取得すると、接触位置情報Ａｔ（０），Ａｔ（１）から移動方向を認識する。また、接触位置情報Ａｔ（１）が接触位置情報Ａｔ（０）から移動していれば現在行われている接触操作がスライド操作であると特定する。
【０１７６】
実行部１６は、現在行われている接触操作がスライド操作であると特定された場合、次に表示すべき画面を示す画面データＤｉｓ（１）の生成を開始する。ここで、実行部１６は、画面データＤｉｓ（０）の生成を終了する。そして、予測部１４による予測結果が特定された接触操作と一致していた場合（実際の接触操作がスライド操作であった場合）、生成した画面データＤｉｓ（０）に基づいてディスプレイ３０８Ｂの画面を更新する。なお、実行部１６は、予測部１４による予測結果が特定された接触操作と不一致の場合（実際の接触操作がピンチ操作であった場合）、画面データＤｉｓ（０）を消去し、画面データＤｉｓ（０）に基づく画面更新を行わない。
【０１７７】
次に、予測部１４は、接触位置情報Ａｔ（ｎ）（例えばＡｔ（２））を取得すると、接触位置情報Ａｔ（ｎ−１）（例えばＡｔ（１）），Ａｔ（ｎ）から移動方向を認識する。また、接触位置情報Ａｔ（ｎ）が接触位置情報Ａｔ（ｎ−１）から移動していれば現在行われている接触操作がスライド操作であると特定する。実行部１６は、現在行われている接触操作がスライド操作であると特定された場合に次に表示すべき画面を示す画面データＤｉｓ（ｎ）の生成を開始する。ここで、実行部１６は、画面データＤｉｓ（ｎ−１）の生成を終了し、生成した画面データＤｉｓ（ｎ−１）に基づいてディスプレイ３０８Ｂの画面を更新する。
【０１７８】
次に、図３０に示す処理の流れを説明する。図３０に示すように、検知部１２は、ピンチ操作が行われると、接触位置情報Ａｔ（ｎ），Ｂｔ（ｎ）を所定時間毎に出力する。図３０に示す例では、開始位置を示す接触位置情報Ａｔ（０），Ｂｔ（０）から終了位置を示す接触位置情報Ａｔ（ｌａｓｔ），Ｂｔ（ｌａｓｔ）まで例示されている。
【０１７９】
予測部１４は、検知部１２から出力された接触位置情報Ａｔ（０），Ｂｔ（０）を受信し、接触位置情報Ａｔ（０），Ｂｔ（０）から２つの指示体によるタッチパネル３０８Ａへの開始位置を認識する。予測部１４は、接触位置情報Ａｔ（０），Ｂｔ（０）から開始位置を認識すると、ピンチ操作であると予測し、現在表示されている画面を拡大率Ｍ又は縮小率Ｎで画面を拡大又は縮小させた画面を示す画面データＤｉｓ（０）の生成を開始する。なお、拡大率Ｍは、タッチパネル３０８Ａに対する接触操作がピンチアウト操作であると予測された場合に用いられ、縮小率Ｎは、タッチパネル３０８Ａに対するウ接触操作がピンチイン操作であると予測された場合に用いられる。
【０１８０】
次に、予測部１４は、接触位置情報Ａｔ（１），Ｂｔ（１）を取得すると、接触位置情報Ａｔ（０），Ａｔ（１）から一方の指示体の接触位置の移動方向を認識し、接触位置情報Ｂｔ（０），Ｂｔ（１）から他方の指示体の接触位置の移動方向を認識する。また、接触位置情報Ａｔ（１），Ｂｔ（１）が接触位置情報Ａｔ（０），Ｂｔ（０）から移動していれば現在行われている接触操作がピンチ操作であると特定する。
【０１８１】
実行部１６は、現在行われている接触操作がピンチ操作であると特定された場合に次に表示すべき画面を示す画面データＤｉｓ（１）の生成を開始する。ここで、実行部１６は、画面データＤｉｓ（０）の生成を終了する。そして、予測部１４による予測結果が特定された接触操作と一致していた場合（実際の接触操作がピンチ操作であった場合）、生成した画面データＤｉｓ（０）に基づいてディスプレイ３０８Ｂの画面を更新する。なお、実行部１６は、予測部１４による予測結果が特定された接触操作と不一致の場合（実際の接触操作がスライド操作であった場合）、画面データＤｉｓ（０）を消去し、画面データＤｉｓ（０）に基づく画面更新を行わない。
【０１８２】
次に、予測部１４は、接触位置情報Ａｔ（ｎ）（例えばＡｔ（２）），Ｂｔ（ｎ）（例えばＢｔ（２））を取得すると、接触位置情報Ａｔ（ｎ−１）（例えばＡｔ（１）），Ａｔ（ｎ）から移動方向を認識する。また、接触位置情報Ａｔ（ｎ），Ｂｔ（ｎ）が接触位置情報Ａｔ（ｎ−１），Ｂｔ（ｎ−１）から移動していれば現在行われている接触操作がピンチ操作であると特定する。実行部１６は、現在行われている接触操作がピンチ操作であると特定された場合に次に表示すべき画面を示す画面データＤｉｓ（ｎ）の生成を開始する。ここで、実行部１６は、画面データＤｉｓ（ｎ−１）の生成を終了し、生成した画面データＤｉｓ（ｎ−１）に基づいてディスプレイ３０８Ｂの画面を更新する。
【０１８３】
以上説明したように、本実施形態に係るスマートフォン１０では、予測部１４により、タッチパネル３０８Ａへの接触操作が特定されるよりも前に、接触位置の数（開始位置）に基づいて接触操作が予測される。そして、予測部１４により予測された接触操作に応じた処理が実行部１６により実行される。従って、本実施形態に係るスマートフォン１０は、タッチパネル３０８Ａに対する接触操作を開始してから接触操作に応じた処理が実行されるまでに要する時間の短縮を簡素な構成で実現することができる。
【０１８４】
また、本実施形態に係るスマートフォン１０では、開始位置の数が１つの場合、接触操作をスライド操作であると予測部１４により予測される。また、開始位置の数が複数の場合、接触操作をピンチ操作であると予測部１４により予測される。従って、本実施形態に係るスマートフォン１０は、接触操作がスライド操作であるか或いはピンチ操作であるかを容易に予測することができる。
【０１８５】
また、本実施形態に係るスマートフォン１０では、スライド操作であると予測部１４により予測されてからスライド操作が特定されるよりも前に、開始位置の数が増加した場合、接触操作の予測がスライド操作からピンチ操作へ変更される。従って、本実施形態に係るスマートフォン１０は、ピンチ操作であるにも拘らずスライド操作であると誤って予測することを抑制することができる。
【０１８６】
また、本実施形態に係るスマートフォン１０では、接触操作をスライド操作であると予測部１４により予測された場合、開始位置と基準線との位置関係から接触位置のスライド方向が予測部１４により予測される。従って、本実施形態に係るスマートフォン１０は、スライド操作によるスライド方向を予測することができる。
【０１８７】
また、本実施形態に係るスマートフォン１０では、基準線が、過去に行われたスライド操作における開始位置と終了位置との間に位置するように、基準線が基準線再設定部１８によりタッチパネル３０８Ａに対して設定し直される。従って、本実施形態に係るスマートフォン１０は、スライド操作によるスライド方向の予測精度の低下を抑制することができる。
【０１８８】
また、本実施形態に係るスマートフォン１０では、接触操作をスライド操作であると予測部１４により予測された場合、開始位置と基準点との位置関係から接触位置のスライド方向が予測部１４により予測される。従って、本実施形態に係るスマートフォン１０は、スライド操作によるスライド方向を予測することができる。
【０１８９】
また、本実施形態に係るスマートフォン１０では、基準点が、過去に行われたスライド操作における開始位置と終了位置との間に位置するように、基準点が基準点再設定部２０によりタッチパネル３０８Ａに対して設定し直される。従って、本実施形態に係るスマートフォン１０は、スライド操作によるスライド方向の予測精度の低下を抑制することができる。
【０１９０】
また、本実施形態に係るスマートフォン１０では、ピンチ操作による一対の接触位置の距離がピンチ判別距離Ｌ１以下の場合、ピンチアウト操作であると予測部１４により予測される。また、ピンチ操作による一対の接触位置の距離がピンチ判別距離Ｌ１を超えた場合、ピンチイン操作であると予測部１４により予測される。従って、本実施形態に係るスマートフォン１０は、ピンチ操作がピンチアウト操作であるか或いはピンチイン操作であるかを容易に予測することができる。
【０１９１】
また、本実施形態に係るスマートフォン１０では、過去のピンチ操作における一対の開始位置の距離と一対の終了位置の距離との間の距離に相当する値がピンチ判別距離Ｌ１として用いられるようにピンチ判別距離Ｌ１が更新される。従って、本実施形態に係るスマートフォン１０は、ピンチ操作の種類の予測精度の低下を抑制することができる。
【０１９２】
また、本実施形態に係るスマートフォン１０では、予測部１４により予測された接触操作に応じた画面が実行部１６によってディスプレイ３０８Ｂに表示される。従って、本実施形態に係るスマートフォン１０は、タッチパネル３０８Ａに対する接触操作を開始してから接触操作に応じた画面が表示されるまでに要する時間の短縮を簡素な構成で実現することができる。
【０１９３】
また、本実施形態に係るスマートフォン１０では、検知部１２から出力された接触位置情報により示される接触位置の時系列によって特定された接触操作と比較されることで予測部１４の予測結果が正しいか否かが判定部２６により判定される。また、判定部２６により予測部１４の予測結果が正しいと判定された場合に、予測部１４により予測された接触操作に応じた画面が実行部１６によってディスプレイ３０８Ｂに表示される。従って、本実施形態に係るスマートフォン１０は、接触操作に対応しない画面が表示されることを抑制することができる。
【０１９４】
なお、上記実施形態では、接触操作に応じて画面を更新する場合を例示したが、開示の技術はこれに限定されるものではない。例えば、接触操作に応じた通信を行うようにしてもよい。接触操作に応じた通信の一例としては、接触操作に応じて電子メールの送信やサーバ装置に対して電子メールの問い合わせ（サーバ装置に未受信の電子メールが格納されているか否かの問い合わせ）を行う形態例が挙げられる。
【０１９５】
この場合、例えば、スマートフォン１０のディスプレイ３０８Ｂに電子メールを送信するための画面が表示されている状態で所定の表示領域に対応するタッチパネル３０８Ａの領域に対してスライド操作が行われた場合に電子メールを送信する。すなわち、予測部１４が接触操作をスライド操作であると予測した場合に、実行部１６は、電子メールを送信可能な状態とし、スライド操作が確定したときに電子メールの送信を開始する。これにより、予測部１４による予測を行わない場合に比べ、タッチパネル３０８Ａへの接触が開始されてから電子メールの送信が開始されるまでに要する時間を短くすることができる。
【０１９６】
また、スマートフォン１０のディスプレイ３０８Ｂに電子メールの問い合わせを行うための画面が表示されている状態で所定の表示領域に対応するタッチパネル３０８Ａの領域に対してピンチイン操作に相当する接触操作が行われた場合に問い合わせを行う。すなわち、予測部１４が接触操作をピンチイン操作に相当する接触操作であると予測した場合に、実行部１６は、電子メールの問い合わせが可能な状態とし、ピンチイン操作が確定したときに電子メールの問い合わせを開始する。これにより、予測部１４による予測を行わない場合に比べ、タッチパネル３０８Ａへの接触が開始されてから電子メールの問い合わせが開始されるまでに要する時間を短くすることができる。
【０１９７】
開示の技術は、例えば接触操作に応じて通信手段を選択する場合にも適用可能である。この場合、例えば、スマートフォン１０に通信手段としてBluetooth（登録商標）と赤外線通信機能とが選択可能に搭載されている場合に接触操作に応じてBluetooth（登録商標）又は赤外線通信機能による通信を行う形態例が挙げられる。すなわち、予測部１４は、タッチパネル３０８Ａの所定の領域に対して行われた接触操作がスライド操作であると予測した場合にBluetooth（登録商標）による通信が可能な状態とし、スライド操作が確定したときにBluetooth（登録商標）による通信を開始する。また、予測部１４は、タッチパネル３０８Ａの所定の領域に対して行われた接触操作がピンチ操作に相当する接触操作であると予測した場合に赤外線通信機能による通信が可能な状態とする。そして、ピンチ操作に相当する接触操作が確定したときに赤外線通信機能による通信を開始する。
【０１９８】
また、上記実施形態では、タッチパネル３０８Ａが１つの基準線及び１つの基準点を有する場合について説明したが、開示の技術はこれに限定されるものではなく、タッチパネル３０８Ａが複数の基準線及び複数の基準点を有していてもよい。例えば、図３１に示すように、タッチパネル３０８Ｂが行列状に４分割されて得られた各分割領域に対して１つの基準線及び１つの基準点を設定するようにしてもよい。この場合、予測部１４は、分割領域毎に、接触位置と基準線との位置関係からスライド操作によるスライド方向を予測し、接触位置と基準点との位置関係からスライド操作によるスライド方向を予測する。図３１に示す例では、分割領域毎に、分割領域を縦断する直線αと分割領域を横断する直線βとが設定されており、分割領域毎に基準点γが設定されている。従って、第１スライド操作準備処理では予測部１４により分割領域単位で接触位置が基準線αの左側か否かが判定され、第２スライド操作準備処理では予測部１４により分割領域単位で接触位置が基準線βの上側か否かが判定される。また、第３スライド操作準備処理では予測部１４により分割領域単位でスライド方向の角度が算出される。
【０１９９】
なお、図３１に示す例では、タッチパネル３０８Ｂが４分割された場合が示されているが、これに限らず、タッチパネル３０８Ｂが複数の領域に分割され、分割された領域毎に１つの基準線及び１つの基準点が設定されていればよい。
【０２００】
また、タッチパネル３０８Ｂを分割して得た各領域に対して基準線及び基準点を必ず設定する必要はない。すなわち、他の領域と比較して重要度が高いと事前に認められた予め定められた領域に対して基準線及び基準点を設定し、それ以外の領域に対しては基準線及び基準点を設定しなくてもよい。スマートフォン１０は、予め定められた領域以外の領域に対して接触操作が行われた場合、予測部１４による予測を行わずに従来通りに接触操作に応じた画面更新を行えばよい。
【０２０１】
また、上記実施形態では、接触操作によりタッチパネル３０８Ａから出力された接触位置情報の全てを所定の記憶領域に時系列で記憶する場合を例示したが、必ずしも接触位置情報の全てを記憶しなくてもよい。すなわち、接触位置を示す接触位置情報と最新の２つの接触位置の各々を示す接触位置情報とが所定の記憶領域に時系列で記憶されていればよい。
【０２０２】
また、上記実施形態では、開始位置が２つの場合に予測部１４がピンチ操作と予測する場合を例示したが、これに限らず、開始位置が３つ以上であってもピンチ操作と予測してもよい。この場合、例えば、３つ以上の開始位置のうち、タッチパネル３０８Ａにより最も早く指示体の接触が検知された２つの開始位置をピンチ操作の開始位置として採用する。
【０２０３】
また、上記実施形態では、予測部１４がスライド操作及びピンチ操作を予測する場合を例示したが、これに限らず、予測部１４は回転操作を予測してもよい。例えば、開始位置が１つの場合はスライド操作と予測し、開始位置が２つの場合にピンチ操作と予測し、開始位置が３つ以上の場合に回転操作と予測する。また、ピンチ操作はできないものの回転操作ができる画面がディスプレイ３０８Ｂに表示されている場合、予測部１４は、開始位置が２つの場合に回転操作と予測してもよい。
【０２０４】
また、上記実施形態では、ソフトウェア構成で図１に示す各部（例えば予測部１４、実行部１６、基準線再設定部１８、基準点再設定部２０、更新部２２及び判定部２６）を実現する場合の形態例を挙げて説明したが、開示の技術はこれに限定されない。例えば、図１に示す予測部１４、実行部１６、基準線再設定部１８、基準点再設定部２０、更新部２２及び判定部２６の少なくとも１つがハードウェア構成で実現されてもよい。この場合、ハードウェア資源として、複数の機能の回路１つにまとめた集積回路であるＡＳＩＣ（Application Specific Integrated Circuit）やプログラマブルロジックデバイスを利用する例が挙げられる。
【０２０５】
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
【０２０６】
以上の実施形態に関し、更に以下の付記を開示する。
【０２０７】
（付記１）
操作面への接触を検知して前記操作面上の接触位置を示す接触位置情報を出力する検知部と、前記検知部から出力された前記接触位置情報が示す前記接触位置の時系列から、前記操作面への接触操作が特定されるよりも前に、前記検知部から出力された前記接触位置情報から特定される前記接触位置の数に基づいて前記接触操作を予測する予測部と、前記予測部により予測された前記接触操作に応じた処理を実行する実行部と、
【０２０８】
（付記２）
前記予測部は、前記接触位置の数が１つの場合、前記接触操作を、前記接触位置をスライドさせるスライド操作と予測し、前記接触位置の数が複数の場合、前記接触操作を、前記操作面上の少なくとも一対の前記接触位置の距離を伸縮させる伸縮操作と予測する付記１に記載の情報処理装置。
【０２０９】
（付記３）
前記予測部は、前記接触操作を前記スライド操作と予測してから前記操作面の接触操作が前記スライド操作と特定されるよりも前に、前記接触位置の数が増加した場合、前記接触操作の予測を前記スライド操作から前記伸縮操作へ変更する付記２に記載の情報処理装置。
【０２１０】
（付記４）
前記予測部は、前記接触操作を前記スライド操作と予測した場合、前記接触位置と前記操作面上に予め設定された基準線との位置関係から、前記スライド操作における前記接触位置のスライド方向を更に予測する付記２又は付記３に記載の情報処理装置。
【０２１１】
（付記５）
前記予測部は、前記操作面に重ねられた表示領域に現在表示されている画面が前記表示領域を横断する方向にスライド表示可能な画面の場合、前記操作面を縦断する直線を前記基準線とし、前記接触位置と前記基準線との位置関係から前記接触位置のスライド方向を予測する付記４に記載の情報処理装置。
【０２１２】
（付記６）
前記予測部は、前記操作面に重ねられた表示領域に現在表示されている画面が前記表示領域を縦断する方向にスライド表示可能な画面の場合、前記操作面を横断する直線を前記基準線とし、前記接触位置と前記基準線との位置関係から前記接触位置のスライド方向を予測する付記４に記載の情報処理装置。
【０２１３】
（付記７）
前記予測部は、前記接触位置と、前記操作面を分割することで得られた複数の分割領域の各々に対して設定された前記基準線のうちの何れかの前記基準線と、の位置関係から前記スライド方向を予測する付記４〜付記６の何れか１つに記載の情報処理装置。
【０２１４】
（付記８）
前記基準線が、過去に行われた前記スライド操作における接触開始位置と接触終了位置との間に位置するように、前記基準線を前記操作面に対して設定し直す基準線再設定部を更に含む付記４〜付記７の何れか１つに記載の情報処理装置。
【０２１５】
（付記９）
前記予測部は、前記接触操作を前記スライド操作と予測した場合、前記接触位置と前記操作面上に予め設定された基準点との位置関係から、前記スライド操作における前記接触位置のスライド方向を更に予測する付記２記載の情報処理装置。
【０２１６】
（付記１０）
前記予測部は、前記接触位置と、前記操作面を分割することで得られた複数の分割領域の各々に対して設定された前記基準点のうちの何れかの前記基準点と、の位置関係から前記スライド方向を予測する付記９に記載の情報処理装置。
【０２１７】
（付記１１）
前記基準点が、過去に行われた前記スライド操作における接触開始位置と接触終了位置との間に位置するように、前記基準点を前記操作面に対して設定し直す基準点再設定部を更に含む付記９又は付記１０に記載の情報処理装置。
【０２１８】
（付記１２）
前記予測部は、前記少なくとも一対の接触位置の距離が閾値以下の場合、前記接触操作を、前記伸縮操作のうち、前記一対の接触位置の距離を拡大する拡大操作であると予測し、前記一対の接触位置の距離が前記閾値を超えた場合、前記接触操作を、前記伸縮操作のうち、前記少なくとも一対の接触位置の距離を縮小する縮小操作と予測する付記２に記載の情報処理装置。
【０２１９】
（付記１３）
前記閾値を、過去に行われた前記伸縮操作における前記少なくとも一対の前記接触位置の接触開始時の距離と前記接触終了時の距離との間に相当する値に更新する更新部を更に含む付記１２に記載の情報処理装置。
【０２２０】
（付記１４）
画面を表示する表示部を更に含み、前記実行部は、前記予測部１４により予測された前記接触操作に応じた画面を前記表示部に表示させる付記１〜付記１４の何れか１つに記載の情報処理装置。
【０２２１】
（付記１５）
前記予測部によって予測された前記接触操作を、前記検知部から出力された前記接触位置情報が示す前記接触位置の時系列から特定された前記接触操作と比較することで、前記予測部の予測結果が正しいか否かを判定する判定部を更に含み、前記実行部は、前記判定部により前記予測部の予測結果が正しいと判定された場合に前記画面を前記表示部に表示させる付記１４に記載の情報処理装置。
【０２２２】
（付記１６）
前記検知部から出力された前記接触位置情報を時系列に記憶するメモリを更に含み、前記予測部は、前記メモリに記憶されている前記接触位置情報により示される接触位置の時系列から前記操作面への接触操作が特定されるよりも前に、前記メモリに記憶されている前記接触位置情報から特定される接触位置の数に基づいて前記接触操作を予測する付記１〜付記１５の何れか１つに記載の情報処理装置。
【０２２３】
（付記１７）
前記検知部から出力された前記接触位置情報を時系列で記憶するメモリを更に含み、前記基準線再設定部は、前記メモリに記憶されている前記接触位置情報に基づいて、基準線が、過去に行われた前記スライド操作における接触開始位置と接触終了位置との間に位置するように前記基準線を前記操作面に対して設定し直す付記８に記載の情報処理装置。
【０２２４】
（付記１８）
前記検知部から出力された前記接触位置情報を時系列で記憶するメモリを更に含み、前記基準点再設定部は、前記メモリに記憶されている前記接触位置情報に基づいて、前記基準点が、過去に行われた前記スライド操作における接触開始位置と接触終了位置との間に位置するように前記基準点を前記操作面に対して設定し直す付記１１に記載の情報処理装置。
【０２２５】
（付記１９）
前記検知部１２から出力された前記接触位置情報を時系列で記憶するメモリを更に含み、前記更新部２２は、前記メモリに記憶されている前記接触位置情報に基づいて、前記閾値を、過去に行われた前記伸縮操作における一対の接触位置における接触開始時の距離と接触終了時の距離との間に相当する値が前記閾値として用いられるように前記閾値を更新する付記１３に記載の情報処理装置。
【０２２６】
（付記２０）
操作面への接触を検知して前記操作面上の接触位置を示す接触位置情報を出力し、前記検知部から出力された前記接触位置情報が示す前記接触位置の時系列から、前記操作面への接触操作が特定されるよりも前に、前記検知部から出力された前記接触位置情報から特定される前記接触位置の数に基づいて前記接触操作を予測し、前記予測部により予測された前記接触操作に応じた処理を実行することを含む情報処理方法。
【０２２７】
（付記２１）
コンピュータに、操作面への接触を検知して前記操作面上の接触位置を示す接触位置情報を出力する検知部から出力された前記接触位置情報が示す前記接触位置の時系列から、前記操作面への接触操作が特定されるよりも前に、前記検知部から出力された前記接触位置情報から特定される前記接触位置の数に基づいて前記接触操作を予測し、前記予測部により予測された前記接触操作に応じた処理を実行することを含む処理を実行させるための情報処理プログラム。
【符号の説明】
【０２２８】
１０  スマートフォン
１２  検知部
１４  予測部
１６  実行部
１８  基準線再設定部
２０  基準点再設定部
２２  更新部
２４  表示部
２６  判定部
【図１】
2014137687.tif 000003
【図２】
2014137687.tif 000004
【図３】
2014137687.tif 000005
【図４】
2014137687.tif 000006
【図５】
2014137687.tif 000007
【図６】
2014137687.tif 000008
【図７】
2014137687.tif 000009
【図８】
2014137687.tif 000010
【図９】
2014137687.tif 000011
【図１０】
2014137687.tif 000012
【図１１】
2014137687.tif 000013
【図１２】
2014137687.tif 000014
【図１３】
2014137687.tif 000015
【図１４】
2014137687.tif 000016
【図１５】
2014137687.tif 000017
【図１６】
2014137687.tif 000018
【図１７】
2014137687.tif 000019
【図１８】
2014137687.tif 000020
【図１９】
2014137687.tif 000021
【図２０】
2014137687.tif 000022
【図２１】
2014137687.tif 000023
【図２２】
2014137687.tif 000024
【図２３】
2014137687.tif 000025
【図２４】
2014137687.tif 000026
【図２５】
2014137687.tif 000027
【図２６】
2014137687.tif 000028
【図２７】
2014137687.tif 000029
【図２８】
2014137687.tif 000030
【図２９】
2014137687.tif 000031
【図３０】
2014137687.tif 000032
【図３１】
2014137687.tif 000033
【図３２】
2014137687.tif 000034
【図３３】
2014137687.tif 000035
【図３４】
2014137687.tif 000036