(57)【特許請求の範囲】
【請求項１】
タッチスクリーン上のドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を所定の閾値と比較した結果に応じて、画面の水平方向および垂直方向の少なくとも一方のスクロールを制限する制御部と、
前記所定の閾値をドラッグ操作の過程で最大値から最小値へ変化させる閾値調整部とを含み、
前記制御部は、現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を前記閾値調整部により調整された前記所定の閾値と比較した結果に応じて、画面の水平方向および垂直方向の少なくとも一方のスクロールを制限することを特徴とするスクロール制御装置。
【請求項２】
タッチスクリーン上のドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を所定の閾値と比較した結果に応じて、画面の水平方向および垂直方向の少なくとも一方のスクロールを制限する制御部と、
タッチスクリーン上のドラッグ操作の水平方向の移動量と垂直方向の移動量を取得する移動量取得部と、
前記ドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値が所定の閾値未満である場合、前記ドラッグ操作の水平方向および垂直方向の少なくとも一方の移動量をゼロにリセットする移動量リセット部と、
前記所定の閾値をドラッグ操作の過程で最大値から最小値へ変化させる閾値調整部とをさらに備え、
前記移動量リセット部は、現在のタッチ点の水平方向、垂直方向の座標値がそれぞれ前記閾値調整部により調整された前記所定の閾値未満である場合、前記ドラッグ操作の水平方向、垂直方向の移動量をゼロにリセットし、
前記制御部は、前記移動量リセット部による処理を経た水平方向および垂直方向の移動量に応じて画面をスクロールすることを特徴とするスクロール制御装置。
【請求項３】
前記制御部は、前記移動量リセット部による処理を経た水平方向および垂直方向の移動量に応じたベクトル方向に画面をスクロールすることを特徴とする請求項２に記載のスクロール制御装置。
【請求項４】
前記制御部は、水平方向の移動量が前記移動量リセット部によりゼロにリセットされず、垂直方向の移動量が前記移動量リセット部によりゼロにリセットされる場合、画面を垂直方向にスクロールせず、水平方向にスクロールすることを特徴とする請求項２から３のいずれかに記載のスクロール制御装置。
【請求項５】
前記制御部は、垂直方向の移動量が前記移動量リセット部によりゼロにリセットされず、水平方向の移動量が前記移動量リセット部によりゼロにリセットされる場合、画面を水平方向にスクロールせず、垂直方向にスクロールすることを特徴とする請求項２から４のいずれかに記載のスクロール制御装置。
【請求項６】
前記制御部は、水平方向の移動量と垂直方向の移動量がともに前記移動量リセット部によりゼロにリセットされない場合、画面を水平方向にも垂直方向にもスクロールすることを特徴とする請求項２から５のいずれかに記載のスクロール制御装置。
【請求項７】
タッチスクリーンの水平方向のサイズと垂直方向のサイズの比にもとづいて、水平方向の移動量をリセットする判定に用いられる前記所定の閾値と垂直方向の移動量をリセットする判定に用いられる前記所定の閾値の比が設定されることを特徴とする請求項２から６のいずれかに記載のスクロール制御装置。
【請求項８】
タッチスクリーン上のドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の水平方向、垂直方向の座標値がそれぞれ所定の閾値未満である場合、水平方向、垂直方向のスクロールをロック状態にする判定部と、
水平方向のスクロールおよび垂直方向のスクロールのロック状態に応じて画面のスクロール方向を決定する決定部とをさらに備え、
前記制御部は、決定されたスクロール方向に画面をスクロールすることを特徴とする請求項１に記載のスクロール制御装置。
【請求項９】
タッチスクリーン上のドラッグ操作により画面をスクロールさせて表示する端末装置であって、
前記ドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を所定の閾値と比較した結果に応じて画面の水平方向および垂直方向の少なくとも一方のスクロールが制限された状態で画面をスクロールして表示する表示部と、
前記所定の閾値をドラッグ操作の過程で最大値から最小値へ変化させる閾値調整部とを含み、
前記表示部は、現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を前記閾値調整部により調整された前記所定の閾値と比較した結果に応じて画面の水平方向および垂直方向の少なくとも一方のスクロールが制限された状態で画面をスクロールして表示することを特徴とする端末装置。
【請求項１０】
タッチスクリーン上のドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を所定の閾値と比較した結果に応じて、画面の水平方向および垂直方向の少なくとも一方のスクロールを制限する制御ステップと、
前記所定の閾値をドラッグ操作の過程で最大値から最小値へ変化させる閾値調整ステップとを含み、
前記制御ステップは、現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を前記閾値調整ステップにより調整された前記所定の閾値と比較した結果に応じて、画面の水平方向および垂直方向の少なくとも一方のスクロールを制限することを特徴とするスクロール制御方法。
【請求項１１】
タッチスクリーン上のドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を所定の閾値と比較する機能と、
比較した結果に応じて、画面の水平方向および垂直方向の少なくとも一方のスクロールを制限する制御機能と、
前記所定の閾値をドラッグ操作の過程で最大値から最小値へ変化させる閾値調整機能とをコンピュータの実現させ、
前記制御機能は、現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を前記閾値調整機能により調整された前記所定の閾値と比較した結果に応じて、画面の水平方向および垂直方向の少なくとも一方のスクロールを制限することを特徴とするプログラム。
【請求項１２】
タッチスクリーン上のドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の位置座標がドラッグ操作におけるタッチ開始点を中心とする所定の水平方向と垂直方向の閾値で決定されるいずれの分割領域にあるかを判定した結果を受け取る機能と、
その判定結果に応じて、画面の水平方向および垂直方向の少なくとも一方のスクロールを制限する制御機能と、
前記所定の閾値をドラッグ操作の過程で最大値から最小値へ変化させる閾値調整機能とをコンピュータの実現させ、
前記制御機能は、現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を前記閾値調整機能により調整された前記所定の閾値と比較した結果に応じて、画面の水平方向および垂直方向の少なくとも一方のスクロールを制限することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画面スクロールを制御する技術、特にタッチスクリーンにおけるスクロール制御技術に関する。
【背景技術】
【０００２】
表示画面に直接、人間が指で触れることにより入力を行うことができるタッチパネルやタッチパッドなどのインタフェース機器がパーソナルコンピュータ、各種の携帯機器や携帯電話などで幅広く利用されている。ユーザはタッチパネルやタッチパッドなどのタッチスクリーンに指などで触れることで画面を操作することができる。また、携帯電話のように片手に収まる小型サイズのタッチパネルディスプレイを有する端末から、最近では表示画面の視認性を高めたり、高画質の画像を閲覧できるように、大きなサイズのタッチパネルディスプレイを備えたタブレット型の端末まで幅広い製品が開発されている。
【０００３】
特許文献１には、表裏両面に表示画面を備えた携帯型画像表示装置が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−２６０６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
タッチパネルディスプレイを備えた端末でウェブページなどを閲覧するとき、画面をスクロールしなければ全画面を見ることができないため、タッチスクリーンに対するスクロール操作は必須である。タッチスクリーンに表示されたウェブページを指でタッチしながらドラッグすることで、画面をスクロールすることのできるインタフェースが一般的であるが、ドラッグ操作により、画面をユーザの思い通りの方向にスクロールさせるのは意外に難しく、フラストレーションが溜まることがある。たとえば縦にスクロールさせたいときに、指でタッチスクリーンにタッチながらドラッグするときに、指が横にずれたりすると、横方向にスクロールしてしまうことがある。
【０００６】
本発明はこうした課題に鑑みてなされたものであり、その目的は、タッチスクリーンに対するスクロール操作を円滑に行うことのできる技術を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明のある態様のスクロール制御装置は、タッチスクリーン上のドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を所定の閾値と比較した結果に応じて、画面の水平方向および垂直方向の少なくとも一方のスクロールを制限する制御部を含む。
【０００８】
本発明の別の態様は、端末装置である。この装置は、タッチスクリーン上のドラッグ操作により画面をスクロールさせて表示する端末装置であって、前記ドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を所定の閾値と比較した結果に応じて画面の水平方向および垂直方向の少なくとも一方のスクロールが制限された状態で画面をスクロールして表示する表示部を含む。
【０００９】
本発明のさらに別の態様は、スクロール制御方法である。この方法は、タッチスクリーン上のドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を所定の閾値と比較した結果に応じて、画面の水平方向および垂直方向の少なくとも一方のスクロールを制限する。
【００１０】
本発明のさらに別の態様は、プログラムである。このプログラムは、タッチスクリーン上のドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を所定の閾値と比較する機能と、比較した結果に応じて、画面の水平方向および垂直方向の少なくとも一方のスクロールを制限する機能とをコンピュータの実現させる。
【００１１】
本発明のさらに別の態様も、プログラムである。このプログラムは、タッチスクリーン上のドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の位置座標がドラッグ操作におけるタッチ開始点を中心とする所定の水平方向と垂直方向の閾値で決定されるいずれの分割領域にあるかを判定した結果を受け取る機能と、その判定結果に応じて、画面の水平方向および垂直方向の少なくとも一方のスクロールを制限する機能とをコンピュータの実現させる。
【００１２】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１３】
本発明によれば、タッチスクリーンに対するスクロール操作を円滑に行うことができる。
【図面の簡単な説明】
【００１４】
【図１】実施の形態１に係る携帯端末の外観図である。
【図２】図１のタッチスクリーンにおける画面スクロールを制御するスクロール制御装置の構成図である。
【図３Ａ】携帯端末のタッチスクリーンをユーザが指で触れたまま上下方向、左右方向にずらすドラッグ操作を説明する図である。
【図３Ｂ】携帯端末のタッチスクリーンをユーザが指で触れたまま斜め方向にずらすドラッグ操作を説明する図である。
【図４】スクロール操作における不感領域を説明する図である。
【図５Ａ】Ｘ軸方向のスクロールロックの閾値とスクロールのロック／アンロック状態の関係を説明する図である。
【図５Ｂ】Ｙ軸方向のスクロールロックの閾値とスクロールのロック／アンロック状態の関係を説明する図である。
【図６】Ｘ軸方向およびＹ軸方向のスクロールロックの閾値とスクロール方向の関係を説明する図である。
【図７】ドラッグ操作の現在のタッチ点のＸ座標値、Ｙ座標値とスクロールロック閾値の間に成り立つ条件式により、スクロール方向を分類した表である。
【図８Ａ】ドラッグ操作の始点と現在のタッチ点の例を説明する図である。
【図８Ｂ】ドラッグ操作の始点と現在のタッチ点の例をドラッグの軌跡とともに説明する図である。
【図９】スクロールロックの閾値が固定である場合を説明する図である。
【図１０】スクロールロックの閾値の自動調整を説明する図である。
【図１１】速過ぎるドラッグ操作とスクロールロックの最大閾値の関係を説明する図である。
【図１２】ゆっくり過ぎるドラッグ操作とスクロールロックの最小閾値の関係を説明する図である。
【図１３】実施の形態１のスクロール制御装置によるスクロール制御手順を説明するフローチャートである。
【図１４】図１３のアンロック状態判定処理の詳細を説明するフローチャートである。
【図１５】図１３のスクロール方向決定処理の詳細を説明するフローチャートである。
【図１６】実施の形態２に係るスクロール制御装置の構成図である。
【図１７】実施の形態２のスクロール制御装置によるスクロール制御手順を説明するフローチャートである。
【図１８】実施の形態３に係るスクロール制御装置の構成図である。
【図１９】タッチ開始点を中心とする所定の水平方向と垂直方向の閾値で決定される９個の分割領域を説明する図である。
【図２０】ウェブページの例を説明する図である。
【図２１Ａ】垂直スクロールの例を説明する図である。
【図２１Ｂ】垂直スクロールの例を説明する図である。
【図２１Ｃ】垂直スクロールにより、タッチスクリーンの表示領域がウェブページ上で移動する様子を説明する図である。
【図２２Ａ】水平スクロールの例を説明する図である。
【図２２Ｂ】水平スクロールの例を説明する図である。
【図２２Ｃ】水平スクロールにより、タッチスクリーンの表示領域がウェブページ上で移動する様子を説明する図である。
【図２３Ａ】２次元スクロールの例を説明する図である。
【図２３Ｂ】２次元スクロールの例を説明する図である。
【図２３Ｃ】２次元スクロールにより、タッチスクリーンの表示領域がウェブページ上で移動する様子を説明する図である。
【発明を実施するための形態】
【００１５】
（実施の形態１）
図１は、実施の形態１に係る携帯端末２００の外観図である。携帯端末２００は、一例として、携帯電話、携帯情報端末、ゲーム機、タブレットコンピュータなどである。携帯端末２００は、タッチスクリーン２１０の他、必要に応じてボタン２２０や図示しないカメラなどの入出力機能を備える。
【００１６】
タッチスクリーン２１０は、タッチパネルを備えたディスプレイであり、指などによる接触点（位置）（以下、「タッチ点（位置）」と呼ぶ）と、タッチ点（位置）における接触状態を示す静電容量や電気抵抗量などの検知量を検出する入力装置である。タッチパネルは、液晶ディスプレイや有機ＥＬ（electroluminescence）ディスプレイなどのディスプレイの上に重ねて設置されており、これにより、ユーザはディスプレイの画面を見ながら、タッチパネルに指で直接触れることで画面に対する操作を入力することができる。
【００１７】
図２は、図１のタッチスクリーン２１０における画面スクロールを制御するスクロール制御装置１００の構成図である。図２に示すスクロール制御装置１００の機能構成の一部または全部は、ハードウェア、ソフトウェアまたはその組み合わせによって実装することができる。携帯端末２００は、当然、スクロール制御装置１００以外の機能を備えるが、本発明の実施の形態の説明には関係しないので、スクロール制御以外の機能構成については説明を省略する。
【００１８】
スクロール制御装置１００は、タッチ位置取得部１０、閾値調整部２０、Ｘ方向移動量取得部２２、Ｙ方向移動量取得部２４、スクロール方向決定部３０、Ｘ方向ロック判定部３２、Ｙ方向ロック判定部３４、スクロール制御部４０、および表示部５０を備える。
【００１９】
タッチスクリーン２１０に接続されたタッチパネルコントローラ（図示しない）は、タッチスクリーン２１０の各点の静電容量の変化量を測定してタッチ点の位置とタッチ強度を検出する。タッチ点の位置とタッチ強度は、たとえば１／６０秒などのサンプリング周期でサンプリングされる。ユーザがタッチスクリーン２１０に指でタッチしながらドラッグしているときは、タッチ点の位置座標とタッチ強度が時系列データとして取得される。
【００２０】
タッチパネルは、一例として、静電容量方式タッチパネルであり、タッチ位置取得部１０は、タッチパネルの各点の静電容量の変化量を測定してタッチ点の位置とタッチ点の静電容量値を検出する。指やペンなどで触れたときに何らかの測定量が時系列データとして取得できるタッチパネルであれば、静電容量方式に限らず、任意の方式のものを利用することができる。たとえば、感圧式タッチパネルでもよく、光学式タッチパネルであってもよい。
【００２１】
タッチ位置取得部１０は、タッチコントローラからタッチ点の位置座標の時系列データの入力を受け、タッチスクリーン２１０をユーザが指でタッチしながらなぞるドラッグ操作におけるタッチ点の位置座標の時系列データから、ドラッグ操作の始点と現在のタッチ点の座標位置を取得する。また、タッチ位置取得部１０は、ドラッグ操作を終えて指２３０をタッチスクリーン２１０から離した位置をドラッグ操作の終点として取得することができる。
【００２２】
タッチ位置取得部１０は、ドラッグ操作の始点を原点とし、タッチスクリーン２１０の横（水平）方向をＸ軸、縦（垂直）方向をＹ軸とする座標系における現在時刻ｔのタッチ点のＸ座標値Ｘ（ｔ）およびＹ座標値Ｙ（ｔ）を求めて、Ｘ座標値Ｘ（ｔ）はＸ方向移動量取得部２２とＸ方向ロック判定部３２に、Ｙ座標値Ｙ（ｔ）はＹ方向移動量取得部２４とＹ方向ロック判定部３４に与える。タッチパネルコントローラから入力されるタッチ点の座標がたとえばタッチスクリーン２１０の左下隅を原点とするＸＹ座標系を用いたものである場合は、現在のタッチ点のＸ座標値、Ｙ座標値からドラッグ操作の始点のＸ座標値、Ｙ座標値をそれぞれ引いた値を求めれば、ドラッグ操作の始点を原点とする現在のタッチ点の座標値を求めることができる。
【００２３】
Ｘ方向移動量取得部２２は、ドラッグ操作の過去のタッチ点のＸ座標値Ｘ（ｔ−１）と現在のタッチ点のＸ座標値Ｘ（ｔ）の差分Ｘ（ｔ）−Ｘ（ｔ−１）を求めることにより、Ｘ方向の移動量ΔＸ（ｔ）を求める。Ｙ方向移動量取得部２４は、ドラッグ操作の過去のタッチ点のＹ座標値Ｙ（ｔ−１）と現在のタッチ点のＹ座標値Ｙ（ｔ）の差分Ｙ（ｔ）−Ｙ（ｔ−１）を求めることにより、Ｙ方向の移動量ΔＹ（ｔ）を求める。
【００２４】
ここで、過去のタッチ点のＸ座標値、Ｙ座標値として、１つ前のサンプリング周期でサンプリングされたタッチ点のＸ座標値、Ｙ座標値を用いてもよく、所定数のサンプリング周期分だけ前にサンプリングされたタッチ点のＸ座標値、Ｙ座標値を用いてもよい。あるいは、過去のタッチ点のＸ座標値、Ｙ座標値として、ドラッグ操作を開始したタッチ始点のＸ座標値、Ｙ座標値を用いてもよい。
【００２５】
Ｘ方向移動量取得部２２は、求めた現在時刻ｔにおけるＸ方向の移動量ΔＸ（ｔ）をスクロール制御部４０に与える。Ｙ方向移動量取得部２４は、求めた現在時刻ｔにおけるＹ方向の移動量ΔＹ（ｔ）をスクロール制御部４０に与える。
【００２６】
ドラッグ操作中の現在時刻ｔにおけるタッチ点のＸ座標値Ｘ（ｔ）が所定の閾値Ｔｈｘ未満である場合、Ｘ方向のスクロールを行わない。同様に、現在時刻ｔにおけるタッチ点のＹ座標値Ｙ（ｔ）が所定の閾値Ｔｈｙ未満である場合、Ｙ方向のスクロールを行わない。これをスクロールのロックと呼ぶ。
【００２７】
閾値調整部２０は、Ｘ方向のスクロールロックの閾値Ｔｈｘ、Ｙ方向のスクロールロックの閾値Ｔｈｙを設定し、それぞれの閾値をＸ方向ロック判定部３２、Ｙ方向ロック判定部３４に与える。閾値Ｔｈｘ、Ｔｈｙは固定値でもよいが、後述のようにユーザの意図するスクロール操作をより確実に実現するために、閾値Ｔｈｘ、Ｔｈｙを可変にし、たとえば、最大値Ｔｈｘ＿ｍａｘ、Ｔｈｙ＿ｍａｘから最小値Ｔｈｘ＿ｍｉｎ、Ｔｈｙ＿ｍｉｎへ所定の制限時間内に徐々に変化させてもよい。この場合、閾値調整部２０は、自動調整された閾値Ｔｈｘ、Ｔｈｙをタッチ点のサンプリング頻度と同等の頻度でそれぞれＸ方向ロック判定部３２、Ｙ方向ロック判定部３４に与える。
【００２８】
Ｘ方向ロック判定部３２は、時刻ｔにおけるタッチ点のＸ座標値Ｘ（ｔ）が閾値Ｔｈｘ未満である場合、Ｘ方向のスクロールをロックし、ロック状態にする。時刻ｔにおけるタッチ点のＸ座標値Ｘ（ｔ）が閾値Ｔｈｘ未満である限り、Ｘ方向のスクロールのロック状態は維持される。Ｘ方向ロック判定部３２は、時刻ｔにおけるタッチ点のＸ座標値Ｘ（ｔ）が閾値Ｔｈｘを超えた場合、Ｘ方向のスクロールロックを解除し、アンロック（ロック解除）状態にする。タッチ点のＸ座標値Ｘ（ｔ）が閾値Ｔｈｘに等しい場合は、ロック状態、アンロック状態のどちらにしてもよい。
【００２９】
同様に、Ｙ方向ロック判定部３４は、時刻ｔにおけるタッチ点のＹ座標値Ｙ（ｔ）が閾値Ｔｈｙ未満である場合、Ｙ方向のスクロールをロックし、ロック状態にする。時刻ｔにおけるタッチ点のＹ座標値Ｙ（ｔ）が閾値Ｔｈｙ未満である限り、Ｙ方向のスクロールのロック状態は維持される。Ｙ方向ロック判定部３４は、時刻ｔにおけるタッチ点のＹ座標値Ｙ（ｔ）が閾値Ｔｈｙを超えた場合、Ｙ方向のスクロールロックを解除し、アンロック（ロック解除）状態にする。タッチ点のＹ座標値Ｘ（ｔ）が閾値Ｔｈｙに等しい場合は、ロック状態、アンロック状態のどちらにしてもよい。
【００３０】
スクロール方向決定部３０は、Ｘ方向ロック判定部３２からＸ方向のスクロールのロック／アンロック状態の通知を、Ｙ方向ロック判定部３４からＹ方向のスクロールのロック／アンロック状態の通知を受け、Ｘ方向およびＹ方向のスクロールのロック／アンロック状態にもとづいて画面のスクロール方向を「水平スクロール」、「垂直スクロール」、「２次元スクロール」、あるいは「スクロールしない」のいずれかに決定する。
【００３１】
「水平スクロール」とは、Ｘ方向（横方向）にのみ画面がスクロールするが、Ｙ方向（縦方向）には画面がスクロールしない（ロックされている）ことを意味する。「垂直スクロール」とは、Ｙ方向（縦方向）にのみ画面がスクロールするが、Ｘ方向（横方向）には画面がスクロールしない（ロックされている）ことを意味する。「２次元スクロール」とは、Ｘ方向（横方向）にもＹ方向（縦方向）にも画面がスクロールする、すなわち斜め方向も含めて、２次元平面の任意の方向に画面がスクロールすることを意味する。
【００３２】
スクロール方向決定部３０は、Ｘ方向のスクロールとＹ方向のスクロールがともにロック状態である場合、スクロールしないことに決定する。
【００３３】
スクロール方向決定部３０は、Ｘ方向のスクロールがアンロック状態であり、かつ、Ｙ方向のスクロールがロック状態である場合、Ｘ方向のスクロールだけがロック解除されているため、スクロール方向を水平スクロールに決定する。
【００３４】
スクロール方向決定部３０は、Ｙ方向のスクロールがアンロック状態であり、かつ、Ｘ方向のスクロールがロック状態である場合、Ｙ方向のスクロールだけがロック解除されているため、スクロール方向を垂直スクロールに決定する。
【００３５】
スクロール方向決定部３０は、Ｘ方向のスクロールとＹ方向のスクロールがともにアンロック状態である場合、両方向ともスクロールがロック解除されているため、スクロール方向を２次元スクロールに決定する。
【００３６】
スクロール制御部４０は、Ｘ方向移動量取得部２２から与えられる現在時刻ｔにおけるＸ方向の移動量ΔＸ（ｔ）とＹ方向移動量取得部２４から与えられる現在時刻ｔにおけるＹ方向の移動量ΔＹ（ｔ）にもとづいて、スクロール方向決定部３０により決定されたスクロール方向に画面をスクロールする。
【００３７】
決定されたスクロール方向が水平スクロールの場合、スクロール制御部４０は、Ｘ方向の移動量ΔＸ（ｔ）に応じた（たとえば比例した）スクロール量だけ水平方向に画面をスクロールする。この場合、Ｙ方向移動量取得部２４により与えられたＹ方向の移動量ΔＹ（ｔ）は無視される。
【００３８】
決定されたスクロール方向が垂直スクロールの場合、スクロール制御部４０は、Ｙ方向の移動量ΔＹ（ｔ）に応じた（たとえば比例した）スクロール量だけ垂直方向に画面をスクロールする。この場合、Ｘ方向移動量取得部２２により与えられたＸ方向の移動量ΔＸ（ｔ）は無視される。
【００３９】
決定されたスクロール方向が２次元スクロールの場合、スクロール制御部４０は、水平方向にはＸ方向の移動量ΔＸ（ｔ）に応じた（たとえば比例した）スクロール量だけ、垂直方向にはＹ方向の移動量ΔＹ（ｔ）に応じた（たとえば比例した）スクロール量だけ画面をスクロールする。言い換えれば、移動ベクトル（ΔＸ（ｔ），ΔＹ（ｔ））により決まる方向に移動ベクトルの大きさに応じた（たとえば比例した）スクロール量だけスクロールする。
【００４０】
画面スクロール制御は公知の技術を用いる。表示部５０は、スクロールされる画面をディスプレイに表示する。
【００４１】
図３Ａおよび図３Ｂは、携帯端末２００のタッチスクリーン２１０をユーザが指２３０で触れたまま上下、左右、斜め方向にずらすドラッグ操作を説明する図である。
【００４２】
図３Ａは、指２３０をタッチスクリーン２１０につけたまま上方向に動かして符号２３２で示す位置までドラッグしている様子、あるいは、指２３０をタッチスクリーン２１０につけたまま右方向に動かして符号２３４で示す位置までドラッグしている様子を示す。図３Ｂは、指２３０をタッチスクリーン２１０につけたまま右上方向に動かして符号２３６で示す位置までドラッグしている様子を示す。
【００４３】
図３Ａ、図３Ｂに示したタッチスクリーン２１０上のドラッグ操作によってユーザは画面を水平方向、垂直方向、または２次元方向にスクロールすることができる。
【００４４】
図４は、スクロール操作における不感領域２４０を説明する図である。ドラッグ操作を開始するときに指２３０が触れているタッチスクリーン２１０上の始点を原点として横方向をＸ軸、縦方向をＹ軸とする。Ｘ方向のスクロールロックの閾値Ｔｈｘ、Ｙ方向のスクロールロックの閾値Ｔｈｙに対して、（Ｔｈｘ，Ｔｈｙ）、（Ｔｈｘ，−Ｔｈｙ）、（−Ｔｈｘ，−Ｔｈｙ）、（−Ｔｈｘ，Ｔｈｙ）の４点を頂点とする矩形領域が不感領域２４０である。この不感領域２４０内では指２３０をドラッグしても、Ｘ方向、Ｙ方向のいずれの方向にもスクロールはロックされており、スクロールは起きない。
【００４５】
ドラッグ操作は、Ｘ軸の負の方向またはＹ軸の負の方向に行うこともできるが、以下では説明の簡単のため、Ｘ軸、Ｙ軸ともに正の方向にドラッグする場合を例に動作を説明する。
【００４６】
Ｘ方向のスクロールの閾値Ｔｈｘ、Ｙ方向のスクロールの閾値Ｔｈｙは同じ値でもよく、異なる値でもよい。ユーザは指２３０を動かすとき、携帯端末２００のタッチスクリーン２１０の領域の広がりを意識するため、タッチスクリーン２１０が縦長の場合、Ｘ方向（横方向）よりもＹ方向（縦方向）に大きく動かし、タッチスクリーン２１０が横長の場合、ユーザは指２３０を動かすとき、Ｙ方向（縦方向）よりもＸ方向（横方向）に大きく動かす傾向がある。そこで、縦長の場合は、Ｙ方向のスクロールの閾値ＴｈｙをＸ方向のスクロールの閾値Ｔｈｘよりも大きくし、横長の場合は、Ｘ方向のスクロールの閾値ＴｈｘをＹ方向のスクロールの閾値Ｔｈｙよりも大きくしてもよい。あるいは、タッチスクリーン２１０の縦横比にもとづいてＹ方向の閾値ＴｈｙとＸ方向の閾値Ｔｈｘの比を設定してもよい。
【００４７】
図５Ａは、Ｘ軸方向のスクロールロックの閾値とスクロールのロック／アンロック状態の関係を説明する図である。
【００４８】
タッチスクリーン２１０上の指２３０のドラッグ操作の始点のＸ座標値をＸｓ、ドラッグ操作の現在のタッチ点のＸ座標値をＸｅとする。始点を原点に取るため、始点のＸ座標値Ｘｓ＝０である。現在のタッチ点のＸ座標値Ｘｅ＝Ｘｅ１（＜Ｔｈｘ）のとき、Ｘ方向のスクロールロックの閾値Ｔｈｘに達していないので、Ｘ方向のスクロールはロック状態のままである。それに対して、現在のタッチ点のＸ座標値Ｘｅ＝Ｘｅ２（≧Ｔｈｘ）のとき、Ｘ方向のスクロールロックの閾値Ｔｈｘを超えているので、Ｘ方向のスクロールのロックは解除され、アンロック状態になる。
【００４９】
図５Ｂは、Ｙ軸方向のスクロールロックの閾値とスクロールのロック／アンロック状態の関係を説明する図である。
【００５０】
タッチスクリーン２１０上の指２３０のドラッグ操作の始点のＹ座標値をＹｓ、ドラッグ操作の現在のタッチ点のＹ座標値をＹｅとする。始点を原点に取るため、始点のＹ座標値Ｙｓ＝０である。現在のタッチ点のＹ座標値Ｙｅ＝Ｙｅ１（＜Ｔｈｙ）のとき、Ｙ方向のスクロールロックの閾値Ｔｈｙに達していないので、Ｙ方向のスクロールはロック状態のままである。それに対して、現在のタッチ点のＹ座標値Ｙｅ＝Ｙｅ２（≧Ｔｈｙ）のとき、Ｙ方向のスクロールロックの閾値Ｔｈｙを超えているので、Ｙ方向のスクロールのロックは解除され、アンロック状態になる。
【００５１】
図６は、Ｘ軸方向およびＹ軸方向のスクロールロックの閾値とスクロール方向の関係を説明する図である。
【００５２】
ドラッグ操作の始点を原点とした場合に、ドラッグ操作の現在のタッチ点のＸ座標値Ｘｅ、Ｙ座標値Ｙｅに対して、Ｘｅ＜Ｔｈｘ、Ｙｅ＜Ｔｈｙの場合、Ｘ方向およびＹ方向のスクロールはともにロック状態であり、スクロールしない。
【００５３】
Ｘｅ≧Ｔｈｘ、Ｙｅ＜Ｔｈｙの場合、Ｘ方向のスクロールはアンロック状態、Ｙ方向のスクロールはロック状態であり、水平スクロールになる。
【００５４】
Ｘｅ＜Ｔｈｘ、Ｙｅ≧Ｔｈｙの場合、Ｘ方向のスクロールはロック状態、Ｙ方向のスクロールはアンロック状態であり、垂直スクロールになる。
【００５５】
Ｘｅ≧Ｔｈｘ、Ｙｅ≧Ｔｈｙの場合、Ｘ方向およびＹ方向のスクロールはともにアンロック状態であり、２次元スクロールになる。
【００５６】
図７は、ドラッグ操作の現在のタッチ点のＸ座標値Ｘ（ｔ）、Ｙ座標値Ｙ（ｔ）とスクロールロック閾値の間に成り立つ条件式により、スクロール方向を分類した表である。
【００５７】
（１）Ｘ座標値Ｘ（ｔ）＜Ｔｈｘ、かつ、Ｙ座標値Ｙ（ｔ）＜Ｔｈｙの場合、
Ｘ方向にロック、かつ、Ｙ方向にロックであり、スクロールなし。
（２）Ｘ座標値Ｘ（ｔ）＜Ｔｈｘ、かつ、Ｙ座標値Ｙ（ｔ）≧Ｔｈｙの場合、
Ｘ方向にロック、かつ、Ｙ方向にアンロックであり、垂直スクロール。
（３）Ｘ座標値Ｘ（ｔ）≧Ｔｈｘ、かつ、Ｙ座標値Ｙ（ｔ）＜Ｔｈｙの場合、
Ｘ方向にアンロック、かつ、Ｙ方向にロックであり、水平スクロール。
（４）Ｘ座標値Ｘ（ｔ）≧Ｔｈｘ、かつ、Ｙ座標値Ｙ（ｔ）≧Ｔｈｙの場合、
Ｘ方向にアンロック、かつ、Ｙ方向にアンロックであり、２次元スクロール。
【００５８】
図８Ａは、ドラッグ操作の始点と現在のタッチ点の例を説明する図である。始点Ｐｓを原点とするＸＹ座標系で説明する。タッチ点Ｐｅ１、Ｐｅ２、Ｐｅ４、Ｐｅ６はいずれも異なるドラッグ操作における現在時刻ｔにおけるタッチ点である。
【００５９】
タッチ点Ｐｅ１は、Ｘ座標値が閾値Ｔｈｘより小さく、Ｙ座標値も閾値Ｔｈｙより小さく、不感領域２４０内にあるため、この場合はスクロールしない。タッチ点Ｐｅ２は、Ｘ座標値が閾値Ｔｈｘより小さいため、Ｘ方向のスクロールはロックされ、Ｙ座標値が閾値Ｔｈｙを超えるため、Ｙ方向のスクロールはアンロックされる。その結果、垂直スクロールになる。タッチ点Ｐｅ４は、Ｘ座標値が閾値Ｔｈｘを超えるため、Ｘ方向のスクロールはアンロックされ、Ｙ座標値が閾値Ｔｈｙより小さいため、Ｙ方向のスクロールはロックされる。その結果、水平スクロールになる。タッチ点Ｐｅ６は、Ｘ座標値が閾値Ｔｈｘを超え、Ｙ座標値も閾値Ｔｈｙを超えるため、２次元スクロールになる。
【００６０】
図８Ａでは、いずれのドラッグ操作においても、始点Ｐｓから各タッチ点Ｐｅ１、Ｐｅ２、Ｐｅ４、Ｐｅ６まで直線的に指をずらした場合を示しているが、ドラッグ操作の途中の経路は直線である必要はなく、曲線であってもかまわない。
【００６１】
図８Ｂは、ドラッグ操作の始点と現在のタッチ点の例をドラッグの軌跡とともに説明する図である。
【００６２】
第１のドラッグ軌跡２５１では、始点Ｐｓからドラッグ操作を開始し、次のサンプリング周期でタッチ点Ｐｅ１１がサンプリングされ、さらに次のサンプリング周期で現在のタッチ点Ｐｅ１２に至っている。タッチ点Ｐｅ１１の時点では、不感領域２４０内にあるため、両方向のスクロールはロックされているが、タッチ点Ｐｅ１２に至った時点では、Ｙ座標値が閾値Ｔｈｙを超えるため、Ｙ方向のスクロールがアンロックされ、垂直スクロールが開始される。いったんロックが解除されスクロール方向が決定されると、それ以降は決定されたスクロール方向が維持される。
【００６３】
第２のドラッグ軌跡２５２では、始点Ｐｓからドラッグ操作を開始し、次のサンプリング周期でタッチ点Ｐｅ２１がサンプリングされ、さらに次のサンプリング周期でタッチ点Ｐｅ２２がサンプリングされ、最後に現在のタッチ点Ｐｅ２３に至っている。タッチ点Ｐｅ２１およびＰｅ２２の時点では、不感領域２４０内にあるため、両方向のスクロールはロックされているが、タッチ点Ｐｅ２３に至った時点では、Ｘ座標値が閾値Ｔｈｘを超え、Ｙ座標値も閾値Ｔｈｙを超えるため、両方向のスクロールがアンロックされ、２次元スクロールが開始される。いったん２次元スクロールに決定されると、それ以降は２次元スクロールが維持される。
【００６４】
同様に、第３のドラッグ軌跡２５３では、始点Ｐｓからドラッグ操作を開始し、次のサンプリング周期でタッチ点Ｐｅ３１がサンプリングされ、さらに次のサンプリング周期で現在のタッチ点Ｐｅ３２に至っている。タッチ点Ｐｅ３１の時点では、不感領域２４０内にあるため、両方向のスクロールはロックされているが、タッチ点Ｐｅ３２に至った時点では、Ｘ座標値が閾値Ｔｈｘを超えるため、Ｘ方向のスクロールがアンロックされ、水平スクロールが開始される。
【００６５】
ここまでＸ方向、Ｙ方向のスクロールロックの閾値Ｔｈｘ、Ｔｈｙが固定値であるとして説明してきたが、ユーザの意図するスクロール操作をより確実に実現するためには、ユーザのドラッグ操作の過程でこれらの閾値Ｔｈｘ、Ｔｈｙを変化させることがより好ましい。閾値を変化させる理由とその効果について図９〜図１２を参照しながら説明する。
【００６６】
図９は、スクロールロックの閾値が固定である場合を説明する図である。
【００６７】
ドラッグ操作の始点Ｐｓを原点として、ユーザが２次元スクロールをしようとして指２３０をゆっくりと目標点Ｐｅ３’までドラッグしたとする。ゆっくりとドラッグすると、ドラッグ操作にかかる時間よりもサンプリング周期の方が短い場合、目標点Ｐｅ３’までドラッグしても、その手前の点Ｐｅ３が先にタッチ点としてサンプリングされる。その時点でのタッチ点Ｐｅ３のＹ座標値はＴｈｙを超えているが、Ｘ座標値はＴｈｘを超えていないため、この場合、垂直スクロールに決定され、いったん決定されたスクロール方向は維持されるので、その後目標点Ｐｅ３’までドラッグしたとしても、ユーザが意図した２次元スクロールにはならない。
【００６８】
同様に、ユーザが２次元スクロールをしようとして指２３０をゆっくりと始点Ｐｓから目標点Ｐｅ５’までドラッグしたとする。ゆっくりとドラッグすると、ドラッグ操作にかかる時間よりもサンプリング周期の方が短い場合、目標点Ｐｅ５’までドラッグしても、その手前の点Ｐｅ５が先にタッチ点としてサンプリングされる。その時点でのタッチ点Ｐｅ５のＸ座標値は閾値Ｔｈｘを超えているが、Ｙ座標値は閾値Ｔｈｙを超えていないため、この場合、水平スクロールに決定され、その後目標点Ｐｅ５’までドラッグしたとしても、２次元スクロールにはならない。
【００６９】
一方、ユーザが指２３０を素早く動かすと次のようなことが起きる。ユーザが水平スクロールをしようとして指２３０を始点Ｐｓから素早くドラッグしたとする。素早くドラッグすると、指２３０がぶれるため、Ｙ座標値が閾値Ｔｈｙを超える点Ｐｅ７までドラッグしてしまい、次のサンプリング周期で点Ｐｅ７がタッチ点として検出される。もしゆっくりドラッグしていれば、次のサンプリング周期で手前の点Ｐｅ７’が先にタッチ点としてサンプリングされることもあるが、素早くドラッグすると、サンプリング周期よりも先に点Ｐｅ７まで進んでしまう。その時点でのＰｅ７のＸ座標値が閾値Ｔｈｘを超えているだけでなく、Ｙ座標値も閾値Ｔｈｙを超えているため、この場合、２次元スクロールになり、ユーザが意図している水平スクロールにはならない。
【００７０】
このように閾値Ｔｈｘ、Ｔｈｙが固定値である場合、指２３０の動きがゆっくり過ぎる場合、逆に速過ぎる場合に、ユーザが意図したスクロール方向が実現しない可能性がある。そこで、ユーザが意図するスクロール方向をより確実に実現するために、スクロールロックの閾値Ｔｈｘ、Ｔｈｙをドラッグ操作の過程で徐々に変化させてもよい。
【００７１】
図１０は、スクロールロックの閾値の自動調整を説明する図である。Ｘ方向のスクロールロックのデフォルト閾値Ｔｈｘｄに対して、最大閾値Ｔｈｘ−ｍａｘと最小閾値Ｔｈｘ−ｍｉｎを設ける。同様に、Ｙ方向のスクロールロックのデフォルト閾値Ｔｈｙｄに対して、最大閾値Ｔｈｙ−ｍａｘと最小閾値Ｔｈｙ−ｍｉｎを設ける。ここで、デフォルト閾値Ｔｈｘｄ、Ｔｈｙｄは、閾値を可変とせず固定値とする場合の閾値Ｔｈｘ、Ｔｈｙに等しい。
【００７２】
閾値調整部２０は、Ｘ方向のスクロールロックの閾値Ｔｈｘを最大閾値Ｔｈｘ−ｍａｘから最小閾値Ｔｈｘ−ｍｉｎへ徐々に変化させ、Ｙ方向のスクロールロックの閾値Ｔｈｙを最大閾値Ｔｈｙ−ｍａｘから最小閾値Ｔｈｙ−ｍｉｎへ徐々に変化させる。
【００７３】
たとえば、タッチ位置のサンプリングレートが１／６０秒であるとすると、サンプリング周期のたとえば８フレーム分の時間を制限時間とし、ドラッグ開始から制限時間に達するまでの期間を変化期間として、閾値を最大閾値から最小閾値に変化させる。デフォルトの閾値をたとえば１．２ミリメートルとして、最大閾値はその４割増の１．６８ミリメートル、最小閾値はその４割減の０．７２ミリメートルに設定する。
【００７４】
このようにスクロールロックの閾値をデフォルト値よりも大きめの値から小さめの値へと自動的に減少させることで、図９で説明したゆっくり過ぎるドラッグ操作と速過ぎるドラッグ操作の両方に対処することができる。
【００７５】
図１１は、速過ぎるドラッグ操作とスクロールロックの最大閾値の関係を説明する図である。
【００７６】
ユーザのスクロール操作が速い場合、タッチ点が検出された時点でのＸ方向のスクロールロックの閾値Ｔｈｘは最大閾値Ｔｈｘ−ｍａｘから、Ｙ方向のスクロールロックの閾値Ｔｈｙは最大閾値Ｔｈｙ−ｍａｘから、それぞれまだ大きくは減少していない。したがって、ユーザが水平スクロールを意図して素早くドラッグ操作したときのタッチ点Ｐｅ７のＹ座標値は、その時点のＹ方向のスクロールロックの閾値Ｔｈｙよりも小さい。したがって、意図した通り、水平スクロールになり、素早くドラッグ操作しても２次元スクロールになることを避けることができる。
【００７７】
図１２は、ゆっくり過ぎるドラッグ操作とスクロールロックの最小閾値の関係を説明する図である。
【００７８】
ユーザのスクロール操作が遅い場合、タッチ点が検出された時点でのＸ方向のスクロールロックの閾値Ｔｈｘは最小閾値Ｔｈｘ−ｍｉｎへ、Ｙ方向のスクロールロックの閾値Ｔｈｙは最小閾値Ｔｈｙ−ｍｉｎへ、それぞれ近づいている。したがって、ユーザが２次元スクロールを意図してゆっくりドラッグ操作したときのタッチ点Ｐｅ３のＸ座標値は、その時点のＸ方向のスクロールロックの閾値Ｔｈｘよりも大きく、タッチ点Ｐｅ５のＹ座標値は、その時点のＹ方向のスクロールロックの閾値Ｔｈｙよりも大きい。したがって、タッチ点Ｐｅ３、Ｐｅ５のどちらの場合も意図した通り、２次元スクロールになり、ゆっくりドラッグ操作しても水平または垂直スクロールになることを避けることができる。
【００７９】
図１３は、実施の形態１のスクロール制御装置１００によるスクロール制御手順を説明するフローチャートである。
【００８０】
タッチ位置取得部１０は、ドラッグ操作の始点Ｐｓを検出する（Ｓ１０）。閾値調整部２０は、Ｘ方向、Ｙ方向のスクロールロックの閾値Ｔｈｘ、Ｔｈｙの自動調整を開始する（Ｓ１２)。以降、閾値調整部２０は、タッチ位置取得部１０によるタッチ位置のサンプリング周期に合わせて、スクロールロックの閾値も段階的に変化させる。タッチ位置取得部１０は、始点Ｐｓを原点とする座標系におけるドラッグ操作の現在時刻ｔのタッチ点Ｐｅ（Ｘ（ｔ），Ｙ（ｔ））を検出する（Ｓ１４）。
【００８１】
Ｘ方向移動量取得部２２は、以前の時刻のタッチ点のＸ座標値と現在時刻ｔのタッチ点のＸ座標値Ｘ（ｔ）の差分により、時刻ｔにおけるＸ方向の移動量ΔＸ（ｔ）を算出する（Ｓ１６）。Ｙ方向移動量取得部２４は、以前の時刻のタッチ点のＹ座標値と現在時刻ｔのタッチ点のＹ座標値Ｙ（ｔ）の差分により、時刻ｔにおけるＹ方向の移動量ΔＹ（ｔ）を算出する（Ｓ１８）。
【００８２】
Ｘ方向ロック判定部３２、Ｙ方向ロック判定部３４は、それぞれ時刻ｔのタッチ点のＸ座標値Ｘ（ｔ）、Ｙ座標値Ｙ（ｔ）を、時刻ｔにおける自動調整された閾値Ｔｈｘ、Ｔｈｙと比較することにより、Ｘ方向、Ｙ方向にスクロールをロックするかどうかを判定する（Ｓ２０）。
【００８３】
スクロール方向決定部３０は、Ｘ方向およびＹ方向のロック／アンロック状態にもとづいてスクロール方向を決定する（Ｓ２２）。スクロール制御部４０は、スクロール方向決定部３０により決定されたスクロール方向に画面のスクロール制御を行う（Ｓ２４）。スクロール方向が水平スクロールの場合、時刻ｔにおけるＸ方向の移動量ΔＸ（ｔ）に応じたスクロール量だけ水平スクロールし、スクロール方向が垂直スクロールの場合、時刻ｔにおけるＹ方向の移動量ΔＹ（ｔ）に応じたスクロール量だけ垂直スクロールする。
【００８４】
図１４は、図１３のステップＳ２０のロック判定処理の詳細を説明するフローチャートである。
【００８５】
ドラッグ操作の開始時点では、Ｘ方向ののスクロール、Ｙ方向のスクロールはともにロック状態にある。
【００８６】
Ｘ方向ロック判定部３２は、時刻ｔのタッチ点のＸ座標値Ｘ（ｔ）がＸ方向のスクロールロックの閾値Ｔｈｘ以上であるかどうかを判定する（Ｓ３０）。このときのＸ方向のスクロールロックの閾値Ｔｈｘは、閾値が固定値である場合は、デフォルト閾値Ｔｈｘｄであるが、閾値が可変である場合は、時点ｔにおける自動調整後の閾値Ｔｈｘ（ｔ）である。
【００８７】
Ｘ方向ロック判定部３２は、Ｘ（ｔ）≧Ｔｈｘであれば（Ｓ３０のＹ）、Ｘ方向のスクロールロックを解除（アンロック）し（Ｓ３２）、そうでなければ（Ｓ３０のＮ）、Ｘ方向のスクロールのロック状態を維持する。
【００８８】
次に、同様に、Ｙ方向ロック判定部３４は、時刻ｔのタッチ点のＹ座標値Ｙ（ｔ）がＹ方向のスクロールロックの閾値Ｔｈｙ以上であるかどうかを判定し（Ｓ３４）、Ｙ（ｔ）≧Ｔｈｙであれば（Ｓ３４のＹ）、Ｙ方向のスクロールロックを解除（アンロック）し（Ｓ３６）、そうでなければ（Ｓ３４のＮ）、Ｙ方向のスクロールのロック状態を維持する。
【００８９】
図１５は、図１３のステップＳ２２のスクロール方向決定処理の詳細を説明するフローチャートである。
【００９０】
スクロール方向決定部３０は、Ｘ方向のスクロールがアンロック状態であるかどうか調べ（Ｓ４０）、Ｘ方向がアンロック状態であれば（Ｓ４０のＹ）、さらにＹ方向のスクロールがアンロック状態であるかどうか調べ（Ｓ４２）、Ｙ方向もアンロック状態であれば（Ｓ４２のＹ）、スクロール方向を２次元スクロールに決定し（Ｓ４４）、Ｙ方向はロック状態であれば（Ｓ４２のＮ）、スクロール方向を水平スクロールに決定する（Ｓ４６）。
【００９１】
ステップＳ４０において、Ｘ方向のスクロールがアンロック状態でない、すなわちロック状態であれば（Ｓ４０のＮ）、さらにＹ方向のスクロールがアンロック状態であるかどうか調べ（Ｓ４８）、Ｙ方向はアンロック状態であれば（Ｓ４８のＹ）、スクロール方向を垂直スクロールに決定し（Ｓ５０）、Ｙ方向もアンロック状態でない、すなわちロック状態であれば（Ｓ４８のＮ）、スクロールなしに決定する（Ｓ５２）。
【００９２】
（実施の形態２）
本発明の実施の形態２は、実施の形態１とは、スクロール制御装置１００の構成と動作が一部異なる。ここでは、実施の形態１と異なる構成と動作について説明し、共通構成と動作については説明を省略する。
【００９３】
図１６は、実施の形態２に係るスクロール制御装置１００の構成図である。スクロール制御装置１００は、タッチ位置取得部１０、閾値調整部２０、Ｘ方向移動量取得部２２、Ｙ方向移動量取得部２４、Ｘ方向移動量リセット部４２、Ｙ方向移動量リセット部４４、スクロール制御部４０、および表示部５０を備える。
【００９４】
タッチ位置取得部１０、閾値調整部２０、Ｘ方向移動量取得部２２、およびＹ方向移動量取得部２４の動作は実施の形態１と同じであるが、求めた値の出力先が異なる。実施の形態２では、タッチ位置取得部１０は、求めた現在時刻ｔのタッチ点のＸ座標値Ｘ（ｔ）をＸ方向移動量取得部２２とＸ方向移動量リセット部４２に、求めた現在時刻ｔのタッチ点のＹ座標値Ｙ（ｔ）をＹ方向移動量取得部２４とＹ方向ロック判定部３４に与える。閾値調整部２０は、自動調整された閾値Ｔｈｘ、ＴｈｙをそれぞれＸ方向移動量リセット部４２、Ｙ方向移動量リセット部４４に与える。
【００９５】
Ｘ方向移動量取得部２２は、求めた現在時刻ｔにおけるＸ方向の移動量ΔＸ（ｔ）をスクロール制御部４０ではなく、Ｘ方向移動量リセット部４２に与え、Ｙ方向移動量取得部２４は、求めた現在時刻ｔにおけるＹ方向の移動量ΔＹ（ｔ）をスクロール制御部４０ではなく、Ｙ方向移動量リセット部４４に与える。
【００９６】
Ｘ方向移動量リセット部４２は、時刻ｔにおけるタッチ点のＸ座標値Ｘ（ｔ）が閾値Ｔｈｘ未満である場合、時刻ｔにおけるＸ方向の移動量ΔＸ（ｔ）をゼロにリセットする。Ｘ方向移動量リセット部４２は、時刻ｔにおけるタッチ点のＸ座標値Ｘ（ｔ）が閾値Ｔｈｘを超えた場合、時刻ｔにおけるＸ方向の移動量ΔＸ（ｔ）をリセットしないで元の値を維持する。Ｘ方向移動量リセット部４２による処理を経た後のＸ方向の移動量（調整後の移動量という）をΔＸ’（ｔ）とすると、ΔＸ’（ｔ）＝０またはΔＸ’（ｔ）＝ΔＸ（ｔ）である。
【００９７】
同様に、Ｙ方向移動量リセット部４４は、時刻ｔにおけるタッチ点のＹ座標値Ｙ（ｔ）が閾値Ｔｈｙ未満である場合、時刻ｔにおけるＹ方向の移動量ΔＹ（ｔ）をゼロにリセットする。Ｙ方向移動量リセット部４４は、時刻ｔにおけるタッチ点のＹ座標値Ｙ（ｔ）が閾値Ｔｈｙを超えた場合、時刻ｔにおけるＹ方向の移動量ΔＹ（ｔ）をリセットしないで元の値を維持する。Ｙ方向移動量リセット部４４による処理を経た後のＹ方向の移動量（調整後の移動量という）をΔＹ’（ｔ）とすると、ΔＹ’（ｔ）＝０またはΔＹ’（ｔ）＝ΔＹ（ｔ）である。
【００９８】
スクロール制御部４０は、Ｘ方向移動量リセット部４２から時刻ｔにおけるＸ方向の調整後の移動量ΔＸ’（ｔ）の入力を、Ｙ方向移動量リセット部４４から時刻ｔにおけるＹ方向の調整後の移動量ΔＹ’（ｔ）の入力を受け、Ｘ方向の調整後の移動量ΔＸ’（ｔ）とＹ方向の調整後の移動量ΔＹ’（ｔ）に応じたベクトル方向に画面をスクロールする。具体的にはスクロール制御部４０は、水平方向にはＸ方向の調整後の移動量ΔＸ’（ｔ）に応じた（たとえば比例した）スクロール量だけ、垂直方向にはＹ方向の調整後の移動量ΔＹ’（ｔ）に応じた（たとえば比例した）スクロール量だけ画面をスクロールする。言い換えれば、移動ベクトル（ΔＸ’（ｔ），ΔＹ’（ｔ））により決まる方向に移動ベクトルの大きさに応じた（たとえば比例した）スクロール量だけスクロールする。
【００９９】
ここで、ΔＸ’（ｔ）＝ΔＸ(ｔ)かつΔＹ’（ｔ）＝０の場合は、Ｙ方向にはスクロールせず、Ｘ方向にのみΔＸ（ｔ）に比例したスクロール量だけスクロールする水平スクロールになる。ΔＸ’（ｔ）＝０かつΔＹ’（ｔ）＝ΔＹ（ｔ）の場合は、Ｘ方向にはスクロールせず、Ｙ方向にのみΔＹ（ｔ）に比例したスクロール量だけスクロールする垂直スクロールになる。ΔＸ’（ｔ）＝ΔＸ(ｔ)かつΔＹ’（ｔ）＝ΔＹ（ｔ）の場合は、Ｘ方向にはΔＸ（ｔ）に比例したスクロール量だけスクロールし、Ｙ方向にはΔＹ（ｔ）に比例したスクロール量だけスクロールする２次元スクロールになる。ΔＸ’（ｔ）＝０かつΔＹ’（ｔ）＝０の場合は、いずれの方向にもスクロールしない。
【０１００】
このように、実施の形態２では、Ｘ方向の移動量またはＹ方向の移動量をゼロにリセットすることでＸ方向またはＹ方向のスクロールを事実上ロックし、垂直スクロールまたは水平スクロールを実現することができる。
【０１０１】
図１７は、実施の形態２のスクロール制御装置１００によるスクロール制御手順を説明するフローチャートである。
【０１０２】
タッチ位置取得部１０は、ドラッグ操作の始点Ｐｓを検出する（Ｓ３０）。閾値調整部２０は、Ｘ方向、Ｙ方向のスクロールロックの閾値Ｔｈｘ、Ｔｈｙの自動調整を開始する（Ｓ３２)。以降、閾値調整部２０は、タッチ位置取得部１０によるタッチ位置のサンプリング周期に合わせて、スクロールロックの閾値も段階的に変化させる。タッチ位置取得部１０は、始点Ｐｓを原点とする座標系におけるドラッグ操作の現在時刻ｔのタッチ点Ｐｅ（Ｘ（ｔ），Ｙ（ｔ））を検出する（Ｓ３４）。
【０１０３】
Ｘ方向移動量取得部２２は、以前の時刻のタッチ点のＸ座標値と現在時刻ｔのタッチ点のＸ座標値Ｘ（ｔ）の差分により、時刻ｔにおけるＸ方向の移動量ΔＸ（ｔ）を算出する（Ｓ３６）。Ｙ方向移動量取得部２４は、以前の時刻のタッチ点のＹ座標値と現在時刻ｔのタッチ点のＹ座標値Ｙ（ｔ）の差分により、時刻ｔにおけるＹ方向の移動量ΔＹ（ｔ）を算出する（Ｓ３８）。
【０１０４】
Ｘ方向移動量リセット部４２は、時刻ｔのタッチ点のＸ座標値Ｘ（ｔ）を時刻ｔにおける自動調整された閾値Ｔｈｘと比較することにより、時刻ｔにおけるＸ方向の移動量ΔＸ（ｔ）をゼロにリセットするかどうかを判定する（Ｓ４０）。Ｘ方向移動量リセット部４２は、Ｘ（ｔ）＜Ｔｈｘの場合、ΔＸ（ｔ）＝０にリセットし、Ｘ（ｔ）≧Ｔｈｘの場合、ΔＸ（ｔ）をリセットせず、Ｘ方向移動量取得部２２により求めた値のまま変更しない。
【０１０５】
同様に、Ｙ方向移動量リセット部４４は、時刻ｔのタッチ点のＹ座標値Ｙ（ｔ）を時刻ｔにおける自動調整された閾値Ｔｈｙと比較することにより、時刻ｔにおけるＹ方向の移動量ΔＹ（ｔ）をゼロにリセットするかどうかを判定する（Ｓ４２）。Ｙ方向移動量リセット部４４は、Ｙ（ｔ）＜Ｔｈｙの場合、ΔＹ（ｔ）＝０にリセットし、Ｙ（ｔ）≧Ｔｈｙの場合、ΔＹ（ｔ）をリセットせず、Ｙ方向移動量取得部２４により求めた値のまま変更しない。
【０１０６】
スクロール制御部４０は、Ｘ方向移動量リセット部４２による調整後の時刻ｔにおけるＸ方向の移動量ΔＸ（ｔ）と、Ｙ方向移動量リセット部４４による調整後の時刻ｔにおけるＹ方向の移動量ΔＹ（ｔ）により定まる移動ベクトル（ΔＸ（ｔ），ΔＹ（ｔ））の方向に、その移動ベクトルの長さに応じたスクロール量で、画面のスクロール制御を行う（Ｓ４４）。ΔＸ（ｔ）またはΔＹ（ｔ）がゼロにリセットされている場合、この移動ベクトルは垂直ベクトルまたは水平ベクトルになるため、垂直スクロールまたは水平スクロールになる。
【０１０７】
（実施の形態３）
本発明の実施の形態３は、実施の形態１とは、スクロール制御装置１００の構成と動作が一部異なる。ここでは、実施の形態１と異なる構成と動作について説明し、共通構成と動作については説明を省略する。
【０１０８】
図１８は、実施の形態３に係るスクロール制御装置１００の構成図である。スクロール制御装置１００は、タッチ位置取得部１０、閾値調整部２０、Ｘ方向移動量取得部２２、Ｙ方向移動量取得部２４、スクロール制御部４０、タッチ領域判定部４５、および表示部５０を備える。
【０１０９】
タッチ位置取得部１０、閾値調整部２０、Ｘ方向移動量取得部２２、およびＹ方向移動量取得部２４の動作は実施の形態１と同じであるが、タッチ位置取得部１０と閾値調整部２０が求めた値の出力先が異なる。実施の形態３では、タッチ位置取得部１０は、求めた現在時刻ｔのタッチ点のＸ座標値Ｘ（ｔ）をＸ方向移動量取得部２２とタッチ領域判定部４５に、求めた現在時刻ｔのタッチ点のＹ座標値Ｙ（ｔ）をＹ方向移動量取得部２４とタッチ領域判定部４５に与える。閾値調整部２０は、自動調整された閾値Ｔｈｘ、Ｔｈｙをタッチ領域判定部４５に与える。
【０１１０】
実施の形態１と同様、Ｘ方向移動量取得部２２は、求めた現在時刻ｔにおけるＸ方向の移動量ΔＸ（ｔ）をスクロール制御部４０に与え、Ｙ方向移動量取得部２４は、求めた現在時刻ｔにおけるＹ方向の移動量ΔＹ（ｔ）をスクロール制御部４０に与える。
【０１１１】
タッチ領域判定部４５は、時刻ｔにおけるタッチ点（Ｘ（ｔ），Ｙ（ｔ））が閾値Ｔｈｘ、Ｔｈｙで定まる不感領域２４０内または不感領域２４０外のいずれの分割領域にあるかを判定する。
【０１１２】
図１９は、タッチ開始点を中心とする水平方向の閾値Ｔｈｘと垂直方向の閾値Ｔｈｙで決定される９個の分割領域を説明する図である。
【０１１３】
タッチ開始点を原点とするＸＹ座標系において、分割領域Ｉは、−Ｔｈｘ＜Ｘ＜Ｔｈｘかつ−Ｔｈｙ＜Ｙ＜Ｔｈｙを満たす領域であり、不感領域２４０である。現在のタッチ点が分割領域Ｉにある場合、Ｘ方向、Ｙ方向のいずれの方向にもスクロールは起きない。
【０１１４】
分割領域ＩＩは、Ｔｈｘ≦Ｘかつ−Ｔｈｙ＜Ｙ＜Ｔｈｙを満たす領域であり、分割領域ＩＩＩは、Ｘ≦−Ｔｈｘかつ−Ｔｈｙ＜Ｙ＜Ｔｈｙを満たす領域である。タッチ点が分割領域ＩＩまたは分割領域ＩＩＩに到達すると、水平スクロールになる。
【０１１５】
分割領域ＩＶは、−Ｔｈｘ＜Ｘ＜ＴｈｘかつＴｈｙ≦Ｙを満たす領域であり、分割領域Ｖは、−Ｔｈｘ＜Ｘ＜ＴｈｘかつＹ≦−Ｔｈｙを満たす領域である。タッチ点が分割領域ＩＶまたは分割領域Ｖに到達すると、垂直スクロールになる。
【０１１６】
分割領域ＶＩは、Ｔｈｘ≦ＸかつＴｈｙ≦Ｙを満たす領域であり、分割領域ＶＩＩは、Ｘ≦−ＴｈｘかつＴｈｙ≦Ｙを満たす領域であり、分割領域ＶＩＩＩは、Ｘ≦−ＴｈｘかつＹ≦−Ｔｈｙを満たす領域であり、分割領域ＩＸは、Ｔｈｘ≦ＸかつＹ≦−Ｔｈｙを満たす領域であり、タッチ点が分割領域ＶＩ、ＶＩＩ、ＶＩＩＩ、ＩＸのいずれかに到達すると、２次元スクロールになる。
【０１１７】
タッチ領域判定部４５は、時刻ｔにおけるタッチ点（Ｘ（ｔ），Ｙ（ｔ））が図１９の９個の分割領域Ｉ〜ＩＸのいずれに存在するかを判定する。この領域判定は、タッチ点のＸ座標値Ｘ（ｔ）、Ｙ座標値Ｙ(ｔ)をそれぞれ閾値Ｔｈｘ、Ｔｈｙと比較することにより行うことができる。
【０１１８】
スクロール制御部４０は、タッチ領域判定部４５から現在時刻ｔにおけるタッチ点が存在する分割領域の通知を受け、現在のタッチ点が分割領域Ｉにある場合は、いずれの方向にもスクロールしない。スクロール制御部４０は、現在のタッチ点が分割領域ＩＩまたはＩＩＩにある場合は、画面を水平方向にスクロールし、現在のタッチ点が分割領域ＩＶまたはＶにある場合は、画面を垂直方向にスクロールする。スクロール制御部４０は、現在のタッチ点が分割領域ＶＩ、ＶＩＩ、ＶＩＩＩ、ＩＸのいずれかにある場合は、画面を２次元方向にスクロールする。
【０１１９】
水平スクロールの場合、スクロール制御部４０は、Ｘ方向移動量取得部２２から与えられるＸ方向の移動量ΔＸ（ｔ）に応じたスクロール量だけ水平方向にスクロールする。垂直スクロールの場合、スクロール制御部４０は、Ｙ方向移動量取得部２４から与えられるＹ方向の移動量ΔＹ（ｔ）に応じたスクロール量だけ垂直方向にスクロールする。２次元スクロールの場合、スクロール制御部４０は、水平方向にはＸ方向の移動量ΔＸ（ｔ）に応じたスクロール量だけ、垂直方向にはＹ方向の移動量ΔＹ（ｔ）に応じたスクロール量だけ画面をスクロールする。
【０１２０】
実施の形態３のスクロール制御装置１００においても、実施の形態２のスクロール制御装置１００と同様、Ｘ方向移動量リセット部４２およびＹ方向移動量リセット部４４の構成を設け、現在のタッチ点が分割領域ＩＩまたはＩＩＩにある場合は、Ｙ方向移動量リセット部４４がＹ方向移動量取得部２４から与えられるＹ方向の移動量ΔＹ（ｔ）をゼロにリセットし、現在のタッチ点が分割領域ＩＶまたはＶにある場合は、Ｘ方向移動量リセット部４２がＸ方向移動量取得部２２から与えられるＸ方向の移動量ΔＸ（ｔ）をゼロにリセットするようにしてもよい。
【０１２１】
このように、実施の形態３では、現在のタッチ点が存在する分割領域に応じて、垂直スクロール、水平スクロール、２次元スクロールを切り替えることができる。
【０１２２】
図２０〜図２３Ｃの図面を参照して、水平スクロール、垂直スクロール、および２次元スクロールの例を説明する。この例は、上述の実施の形態１〜３に共通する。
【０１２３】
図２０は、ウェブページ３００の例を説明する図である。ウェブページ３００は大きく分けて、左半分の領域と右半分の領域の二つの領域から構成されており、各領域にはニュース記事や写真、グラフなどが記載されている。
【０１２４】
携帯端末２００のタッチスクリーン２１０はウェブページ３００の全体を表示するには表示領域が小さい場合、ユーザは水平スクロール、垂直スクロール、および２次元スクロールを適宜利用しながらウェブページ３００を閲覧する。
【０１２５】
図２１Ａおよび図２１Ｂは、垂直スクロールの例を説明する図である。図２１Ａでは、携帯端末２００のタッチスクリーン２１０にウェブページ３００の左上の領域が表示されている。このとき、ユーザはタッチスクリーン２１０に触れた指を符号２３０で示す位置から上方向に符号２３２で示す位置までドラッグさせてウェブページ３００を垂直方向にスクロールしようとする。指２３０を上方向にドラッグしたときの始点を原点とするタッチ点のＸ座標値がスクロールロックの閾値Ｔｈｘ未満であれば、Ｘ方向のスクロールはロックされ、Ｙ方向のスクロールだけがアンロックされ、垂直スクロールになる。図２１Ｂは、垂直スクロールの結果である。指は符号２３２で示す位置に移動しており、ウェブページ３００は上方向にスクロールされ、ウェブページ３００の左半分の領域の下側が閲覧可能になる。
【０１２６】
図２１Ｃは、図２１Ａおよび図２１Ｂで示した垂直スクロールにより、タッチスクリーン２１０の表示領域がウェブページ３００上で移動する様子を説明する図である。上方向にドラッグすることで、タッチスクリーン２１０の表示領域は点線で囲まれた領域（符号３１０）から実線で囲まれた領域（符号３１２）に垂直方向に移動する。Ｘ方向はスクロールがロックされているため、表示領域はＸ軸方向には動かない。これによりユーザはフラストレーションを感じることなく、ウェブページ３００を垂直方向にのみスクロールさせて見たい領域を画面に表示させることができる。
【０１２７】
図２２Ａおよび図２２Ｂは、水平スクロールの例を説明する図である。図２２Ａでは、携帯端末２００のタッチスクリーン２１０にウェブページ３００の左上の領域が表示されている。このとき、ユーザはタッチスクリーン２１０に触れた指を符号２３０で示す位置から左方向に符号２３４で示す位置までドラッグさせてウェブページ３００を水平方向にスクロールしようとする。指２３０を左方向にドラッグしたときの始点を原点とするタッチ点のＹ座標値がスクロールロックの閾値Ｔｈｙ未満であれば、Ｙ方向のスクロールはロックされ、Ｘ方向のスクロールだけがアンロックされ、水平スクロールになる。図２２Ｂは、水平スクロールの結果である。指は符号２３４で示す位置に移動しており、ウェブページ３００は左方向にスクロールされ、ウェブページ３００の右半分の領域の一部が見え始めている。ユーザがさらに左方向にドラッグする動作を繰り返せば、ウェブページ３００の右半分の領域が閲覧可能になる。
【０１２８】
図２２Ｃは、図２２Ａおよび図２２Ｂで示した水平スクロールにより、タッチスクリーン２１０の表示領域がウェブページ３００上で移動する様子を説明する図である。左方向にドラッグすることで、タッチスクリーン２１０の表示領域は点線で囲まれた領域（符号３１０）から実線で囲まれた領域（符号３１４）に水平方向に移動する。Ｙ方向はスクロールがロックされているため、表示領域はＹ軸方向には動かない。これによりユーザはフラストレーションを感じることなく、ウェブページ３００を水平方向にのみスクロールさせて見たい領域を画面に表示させることができる。
【０１２９】
図２３Ａおよび図２３Ｂは、２次元スクロールの例を説明する図である。図２３Ａでは、携帯端末２００のタッチスクリーン２１０にウェブページ３００の左上の領域が表示されている。このとき、ユーザはタッチスクリーン２１０に触れた指を符号２３０で示す位置から左上方向に符号２３６で示す位置までドラッグさせてウェブページ３００を２次元方向にスクロールしようとする。指２３０を左上方向にドラッグしたときの始点を原点とするタッチ点のＸ座標値がＸ方向のスクロールロックの閾値Ｔｈｘを超え、かつ、Ｙ座標値がＹ方向のスクロールロックの閾値Ｔｈｙを超えれば、Ｘ方向、Ｙ方向の両方のスクロールがアンロックされ、２次元スクロールになる。図２３Ｂは、２次元スクロールの結果である。指は符号２３６で示す位置に移動しており、ウェブページ３００は左上方向にスクロールされ、ウェブページ３００の右下の領域の一部が見え始めている。ユーザがさらに左上方向にドラッグする動作を繰り返せば、ウェブページ３００の右下の領域が閲覧可能になる。
【０１３０】
図２３Ｃは、図２３Ａおよび図２３Ｂで示した２次元スクロールにより、タッチスクリーン２１０の表示領域がウェブページ３００上で移動する様子を説明する図である。左上方向にドラッグすることで、タッチスクリーン２１０の表示領域は点線で囲まれた領域（符号３１０）から実線で囲まれた領域（符号３１６）に右下方向に移動する。このように、ユーザは任意の２次元方向にウェブページ３００をスクロールさせて見たい領域を画面に表示させることができる。
【０１３１】
以上述べたように、本実施の形態のスクロール制御装置１００によれば、Ｘ方向、Ｙ方向にそれぞれ閾値を設けて、ドラッグ操作による各方向の現在のタッチ位置が各閾値を超えない間は各方向のスクロールをロックし、ドラッグ操作により各方向に閾値を超えるタッチ位置の移動が検出された場合に、各方向のスクロールロックの解除を行う。各方向のスクロールロックの解除状態によって、水平スクロール、垂直スクロール、２次元スクロールを切り替える。これにより、ユーザのドラッグ動作に応じたスクロール操作を行うことができ、ユーザにとって負担が少なく、直感的にも理解しやすい円滑なスクロール操作を実現することができる。
【０１３２】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【０１３３】
以下の各項目に記載された態様も本発明の範囲に含まれる。
［項目１］
タッチスクリーン上のドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の水平方向および垂直方向の少なくとも一方の座標値を所定の閾値と比較した結果に応じて、画面の水平方向および垂直方向の少なくとも一方のスクロールを制限する制御部を含むことを特徴とするスクロール制御装置。
【０１３４】
［項目２］
タッチスクリーン上のドラッグ操作におけるタッチ開始点を原点とする現在のタッチ点の水平方向、垂直方向の座標値がそれぞれ所定の閾値未満である場合、水平方向、垂直方向のスクロールをロック状態にする判定部と、
水平方向のスクロールおよび垂直方向のスクロールのロック状態に応じて画面のスクロール方向を決定する決定部とをさらに備え、
前記制御部は、決定されたスクロール方向に画面をスクロールすることを特徴とする項目１に記載のスクロール制御装置。
【０１３５】
［項目３］
前記決定部は、水平方向のスクロールと垂直方向のスクロールがともにロック状態である場合、スクロールを行わないことに決定することを特徴とする項目２に記載のスクロール制御装置。
【０１３６】
［項目４］
前記決定部は、水平方向のスクロールがロック状態でなく、垂直方向のスクロールがロック状態である場合、垂直方向にスクロールせず、水平方向にスクロールする水平スクロールにスクロール方向を決定することを特徴とする項目２または３に記載のスクロール制御装置。
【０１３７】
［項目５］
前記決定部は、垂直方向のスクロールがロック状態でなく、水平方向のスクロールがロック状態である場合、水平方向にスクロールせず、垂直方向にスクロールする垂直スクロールにスクロール方向を決定することを特徴とする項目２から４のいずれかに記載のスクロール制御装置。
【０１３８】
［項目６］
前記決定部は、水平方向のスクロールと垂直方向のスクロールがともにロック状態でない場合、水平方向にも垂直方向にもスクロールする２次元スクロールに決定することを特徴とする項目２から５のいずれかに記載のスクロール制御装置。
【０１３９】
［項目７］
前記所定の閾値をドラッグ操作の過程で最大値から最小値へ変化させる閾値調整部をさらに含み、
前記判定部は、前記閾値調整部により調整された前記所定の閾値を用いて水平方向、垂直方向のスクロールのロック状態をそれぞれ判定することを特徴とする項目２から６のいずれかに記載のスクロール制御装置。
【０１４０】
［項目８］
タッチスクリーンの水平方向のサイズと垂直方向のサイズの比にもとづいて、水平方向のスクロールのロックの判定に用いられる前記所定の閾値と素直方向のスクロールのロックの判定に用いられる前記所定の閾値の比が設定されることを特徴とする項目１から７のいずれかに記載のスクロール制御装置。
【符号の説明】
【０１４１】
１０  タッチ位置取得部、  ２０  閾値調整部、  ２２  Ｘ方向移動量取得部、  ２４  Ｙ方向移動量取得部、  ３０  スクロール方向決定部、  ３２  Ｘ方向ロック判定部、  ３４  Ｙ方向ロック判定部、  ４０  スクロール制御部、  ４２  Ｘ方向移動量リセット部、  ４４  Ｙ方向移動量リセット部、  ４５  タッチ領域判定部、  ５０  表示部、  １００  スクロール制御装置、  ２００  携帯端末、  ２１０  タッチスクリーン、  ２２０  ボタン、  ２３０  指、  ２４０  不感領域。
【図１】
0005553812.tif 000002
【図２】
0005553812.tif 000003
【図３Ａ】
0005553812.tif 000004
【図３Ｂ】
0005553812.tif 000005
【図４】
0005553812.tif 000006
【図５Ａ】
0005553812.tif 000007
【図５Ｂ】
0005553812.tif 000008
【図６】
0005553812.tif 000009
【図７】
0005553812.tif 000010
【図８Ａ】
0005553812.tif 000011
【図８Ｂ】
0005553812.tif 000012
【図９】
0005553812.tif 000013
【図１０】
0005553812.tif 000014
【図１１】
0005553812.tif 000015
【図１２】
0005553812.tif 000016
【図１３】
0005553812.tif 000017
【図１４】
0005553812.tif 000018
【図１５】
0005553812.tif 000019
【図１６】
0005553812.tif 000020
【図１７】
0005553812.tif 000021
【図１８】
0005553812.tif 000022
【図１９】
0005553812.tif 000023
【図２０】
0005553812.tif 000024
【図２１Ａ】
0005553812.tif 000025
【図２１Ｂ】
0005553812.tif 000026
【図２１Ｃ】
0005553812.tif 000027
【図２２Ａ】
0005553812.tif 000028
【図２２Ｂ】
0005553812.tif 000029
【図２２Ｃ】
0005553812.tif 000030
【図２３Ａ】
0005553812.tif 000031
【図２３Ｂ】
0005553812.tif 000032
【図２３Ｃ】
0005553812.tif 000033