(57)【特許請求の範囲】
【請求項１】
画面に表示された操作対象を移動させる第１の指示入力を受け付ける入力受付手段と、
前記第１の指示入力によって単位時間内に前記操作対象が移動した量が閾値を超えた場合において、該単位時間内における前記操作対象の移動の向きとは逆向きに前記操作対象を移動させる第２の指示入力を前記入力受付手段が受け付けても、前記操作対象を移動させず、前記移動の向きに前記操作対象を移動させる第３の指示入力を前記入力受付手段が受け付けると、前記操作対象を移動させる移動制御手段と、
を備え、
前記移動制御手段は、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超える前において、第２の条件が満たされた場合には、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた後、前記第２の指示入力を前記入力受付手段が受け付けると、前記操作対象を移動させる、
ことを特徴とする情報処理装置。
【請求項２】
前記移動制御手段は、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた後において、第１の条件が満たされた場合には、前記第２の指示入力を前記入力受付手段が受け付けると、前記操作対象を移動させる、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１の条件は、前記第１の指示入力によって前記操作対象が移動した量が前記閾値を超えた後において、第１の長さの時間の間、前記入力受付手段が指示入力を受け付けなかった場合に、満たされる、
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記第２の条件は、前記入力受付手段が前記第１の指示入力を受け付ける前において、第２の長さの時間の間、前記入力受付手段が指示入力を受け付けなかった場合に、満たされる、
ことを特徴とする請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
前記移動制御手段は、前記第２の条件が満たされた後、更に第３の条件が満たされた場合には、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた後、前記第２の指示入力を前記入力受付手段が受け付けても、前記操作対象を移動させない、
ことを特徴とする請求項１から４のいずれか１項に記載の情報処理装置。
【請求項６】
前記第３の条件は、前記第２の条件が満たされた後において、第３の長さの時間の間、前記入力受付手段によって指示入力を受け付けなかった場合に、満たされる、
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた場合、前記移動の向きを示す情報を前記画面に表示する表示制御手段を更に備える、
ことを特徴とする請求項１から６のいずれか１項に記載の情報処理装置。
【請求項８】
前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた場合、該単位時間内における前記操作対象の移動の向きを含まず、該移動の向きとは逆向きを含む向きの範囲を、前記操作対象の移動を禁止する向きの範囲として設定する禁止範囲設定手段を更に備え、
前記移動制御手段は、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた場合において、前記設定された範囲内の向きに前記操作対象を移動させる指示入力を前記入力受付手段が受け付けても、前記操作対象を移動させず、前記設定された範囲外の向きに前記操作対象を移動させる指示入力を前記入力受付手段が受け付けると、前記操作対象を移動させる、
ことを特徴とする請求項１から７のいずれか１項に記載の情報処理装置。
【請求項９】
前記禁止範囲設定手段は、前記操作対象の移動を禁止する向きの範囲として、前記移動の向きとの成す角度が予め定められた角度以上離れた向きの範囲を設定する、
ことを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記操作対象は、前記画面に表示されたカーソルであり、
前記入力受付手段は、ポインティングデバイスを介して、前記カーソルを移動させる指示入力を受け付ける、
ことを特徴とする請求項１から９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記操作対象は、前記画面において使用者によって接触された位置に表示された画像であり、
前記入力受付手段は、前記画面に重畳されたタッチパネルを介して、前記使用者によって接触された位置に表示された画像を移動させる指示入力を受け付ける、
ことを特徴とする請求項１から９のいずれか１項に記載の情報処理装置。
【請求項１２】
画面に表示された操作対象を移動させる第１の指示入力を受け付け、
受け付けた前記第１の指示入力に従って前記操作対象を移動させ、
前記第１の指示入力によって単位時間内に前記操作対象が移動した量が閾値を超えた場合において、該単位時間内における前記操作対象の移動の向きとは逆向きに前記操作対象を移動させる第２の指示入力を受け付けても、前記操作対象を移動させず、前記移動の向きに前記操作対象を移動させる第３の指示入力を受け付けると、前記操作対象を移動させ、
前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超える前において、第２の条件が満たされた場合には、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた後、前記第２の指示入力を受け付けると、前記操作対象を移動させる、
ことを特徴とする移動制御方法。
【請求項１３】
コンピュータを、
画面に表示された操作対象を移動させる第１の指示入力を受け付ける入力受付手段、
前記第１の指示入力によって単位時間内に前記操作対象が移動した量が閾値を超えた場合において、該単位時間内における前記操作対象の移動の向きとは逆向きに前記操作対象を移動させる第２の指示入力を前記入力受付手段が受け付けても、前記操作対象を移動させず、前記移動の向きに前記操作対象を移動させる第３の指示入力を前記入力受付手段が受け付けると、前記操作対象を移動させる移動制御手段、
として機能させ、
前記移動制御手段は、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超える前において、第２の条件が満たされた場合には、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた後、前記第２の指示入力を前記入力受付手段が受け付けると、前記操作対象を移動させる、
ように機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、移動制御方法及びプログラムに関する。
【背景技術】
【０００２】
画面に表示されたカーソル等の操作対象を移動させる操作を支援する技術が知られている。例えば特許文献１は、マウス等の物理的な移動量に対して、画面のスクロール量を自由に決められるようにしたスクロール制御装置および方法を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−１８７５４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
マウス、スライドパッド（タッチパッド又はトラックパッド等ともいう）又はトラックボール等のポインティングデバイスによって、画面に表示されたカーソル等の操作対象を、特定の向きに比較的長い距離に亘って移動させる指示を入力することがある。このような指示をマウスによって入力する場合、使用者は、特定の向きにマウスを移動させた後、マウスを持ち上げて元の位置に戻し、更に同じ向きにマウスを移動させる、との動作を繰り返す必要がある。同様に、このような指示をスライドパッド又はトラックボール等によって行った場合、使用者は、スライドパッド又はトラックボール上で特定の向きに指を移動させた後、スライドパッド又はトラックボールから指を上げて元の位置に戻し、更に同じ向きに指を移動させる、との動作を繰り返す必要がある。また、スライド操作（フリック操作等ともいう）によって、タッチパネルの画面に表示された画像を、特定の向きへ比較的長い距離に亘って移動させる場合にも、使用者は、タッチパネル上で特定の向きに指を移動させた後、タッチパネルから指を上げて元の位置に戻し、更に同じ向きに指を移動させる、との動作を繰り返す必要がある。
【０００５】
このような、マウスを持ち上げて元の位置に戻す、又は、指を上げて元の位置に戻す、との動作は、例えば神経疾患又は筋疾患等によって運動機能に障害を有する者にとっては、困難を伴うことがあった。更には、運動機能に障害を有さない健常者にとっても、特に操作対象を素早く移動させたい場合等において、繰り返し動作が負担になることがあった。そのため、運動機能に障害を有する者と健常者とのどちらの使用者にとっても、少ない負担で画面に表示された操作対象を移動させることが求められていた。
【０００６】
本発明は、以上のような課題を解決するためのものであり、使用者にとって少ない負担で画面に表示された操作対象を移動させることが可能な情報処理装置、移動制御方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の第１の観点に係る情報処理装置は、
画面に表示された操作対象を移動させる第１の指示入力を受け付ける入力受付手段と、
前記第１の指示入力によって単位時間内に前記操作対象が移動した量が閾値を超えた場合において、該単位時間内における前記操作対象の移動の向きとは逆向きに前記操作対象を移動させる第２の指示入力を前記入力受付手段が受け付けても、前記操作対象を移動させず、前記移動の向きに前記操作対象を移動させる第３の指示入力を前記入力受付手段が受け付けると、前記操作対象を移動させる移動制御手段と、
を備え、
前記移動制御手段は、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超える前において、第２の条件が満たされた場合には、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた後、前記第２の指示入力を前記入力受付手段が受け付けると、前記操作対象を移動させる、
ことを特徴とする。
【０００８】
前記移動制御手段は、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた後において、第１の条件が満たされた場合には、前記第２の指示入力を前記入力受付手段が受け付けると、前記操作対象を移動させてもよい。
【０００９】
前記第１の条件は、前記第１の指示入力によって前記操作対象が移動した量が前記閾値を超えた後において、第１の長さの時間の間、前記入力受付手段が指示入力を受け付けなかった場合に、満たされてもよい。
【００１１】
前記第２の条件は、前記入力受付手段が前記第１の指示入力を受け付ける前において、第２の長さの時間の間、前記入力受付手段が指示入力を受け付けなかった場合に、満たされてもよい。
【００１２】
前記移動制御手段は、前記第２の条件が満たされた後、更に第３の条件が満たされた場合には、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた後、前記第２の指示入力を前記入力受付手段が受け付けても、前記操作対象を移動させなくてもよい。
【００１３】
前記第３の条件は、前記第２の条件が満たされた後において、第３の長さの時間の間、前記入力受付手段によって指示入力を受け付けなかった場合に、満たされてもよい。
【００１４】
上記情報処理装置は、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた場合、前記移動の向きを示す情報を前記画面に表示する表示制御手段を更に備えてもよい。
【００１５】
上記情報処理装置は、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた場合、該単位時間内における前記操作対象の移動の向きを含まず、該移動の向きとは逆向きを含む向きの範囲を、前記操作対象の移動を禁止する向きの範囲として設定する禁止範囲設定手段を更に備え、
前記移動制御手段は、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた場合において、前記設定された範囲内の向きに前記操作対象を移動させる指示入力を前記入力受付手段が受け付けても、前記操作対象を移動させず、前記設定された範囲外の向きに前記操作対象を移動させる指示入力を前記入力受付手段が受け付けると、前記操作対象を移動させてもよい。
【００１６】
前記禁止範囲設定手段は、前記操作対象の移動を禁止する向きの範囲として、前記移動の向きとの成す角度が予め定められた角度以上離れた向きの範囲を設定してもよい。
【００１７】
前記操作対象は、前記画面に表示されたカーソルであり、前記入力受付手段は、ポインティングデバイスを介して、前記カーソルを移動させる指示入力を受け付けてもよい。
【００１８】
前記操作対象は、前記画面において使用者によって接触された位置に表示された画像であり、前記入力受付手段は、前記画面に重畳されたタッチパネルを介して、前記使用者によって接触された位置に表示された画像を移動させる指示入力を受け付けてもよい。
【００１９】
上記目的を達成するため、本発明の第２の観点に係る移動制御方法は、
画面に表示された操作対象を移動させる第１の指示入力を受け付け、
受け付けた前記第１の指示入力によって前記操作対象を移動させ、
前記第１の指示入力によって単位時間内に前記操作対象が移動した量が閾値を超えた場合において、該単位時間内における前記操作対象の移動の向きとは逆向きに前記操作対象を移動させる第２の指示入力を受け付けても、前記操作対象を移動させず、前記移動の向きに前記操作対象を移動させる第３の指示入力を受け付けると、前記操作対象を移動させ、
前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超える前において、第２の条件が満たされた場合には、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた後、前記第２の指示入力を受け付けると、前記操作対象を移動させる、
ことを特徴とする。
【００２０】
上記目的を達成するため、本発明の第３の観点に係る発明のプログラムは、
コンピュータを、
画面に表示された操作対象を移動させる第１の指示入力を受け付ける入力受付手段、
前記第１の指示入力によって単位時間内に前記操作対象が移動した量が閾値を超えた場合において、該単位時間内における前記操作対象の移動の向きとは逆向きに前記操作対象を移動させる第２の指示入力を前記入力受付手段が受け付けても、前記操作対象を移動させず、前記移動の向きに前記操作対象を移動させる第３の指示入力を前記入力受付手段が受け付けると、前記操作対象を移動させる移動制御手段、
として機能させ、
前記移動制御手段は、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超える前において、第２の条件が満たされた場合には、前記第１の指示入力によって前記単位時間内に前記操作対象が移動した量が前記閾値を超えた後、前記第２の指示入力を前記入力受付手段が受け付けると、前記操作対象を移動させる、
ように機能させる。
【発明の効果】
【００２１】
本発明によれば、使用者にとって少ない負担で画面に表示された操作対象を移動させることができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施形態１に係る情報処理装置の物理構成を示す図である。
【図２】本発明の実施形態１に係る情報処理装置の機能構成を示す図である。
【図３】画面に表示されたカーソルが移動する様子を示す図である。
【図４】カーソルの移動制御のモード遷移を示す図である。
【図５】（ａ）、（ｂ）共に、単位時間内にカーソルが移動した量が閾値を超えた場合におけるカーソルの移動ベクトルの例を示す図である。
【図６】カーソルの移動を禁止する範囲の設定例を示す図である。
【図７】（ａ）は、マウスの入力操作の例を示す図である。（ｂ）は、ガイドモードにおけるカーソルの動きを示す図である。（ｃ）は、アンロックモードにおけるカーソルの動きを示す図である。
【図８】情報処理装置が実行する移動制御処理の流れを示すフローチャートである。
【図９】変形例１においてカーソルの移動を禁止する範囲の設定例を示す図である。
【図１０】（ａ）は、タッチパネルにおける入力操作の例を示す図である。（ｂ）は、ガイドモードにおける画面の更新を示す図である。（ｃ）は、アンロックモードにおける画面の更新を示す図である。
【図１１】（ａ）は、ゲームにおけるタッチパネルの入力操作の例を示す図である。（ｂ）は、ガイドモードにおけるキャラクタ画像の動きを示す図である。（ｃ）は、アンロックモードにおけるキャラクタ画像の動きを示す図である。
【発明を実施するための形態】
【００２３】
以下、本発明の実施形態に係る情報処理装置、移動制御方法及びプログラムについて、図面を参照しながら説明する。なお、図中同一又は相当する部分には同一符号を付す。
【００２４】
（実施形態１）
実施形態１に係る情報処理装置１００は、物理的には、図１に示すように、構成される。情報処理装置１００は、例えば汎用のデスクトップ型又はノート型のパーソナルコンピュータである。図１に示すように、情報処理装置１００は、制御部１と、計時部２と、記憶部３と、入力部４と、表示部５と、バス６と、を備える。
【００２５】
制御部１は、ＲＯＭ（Read Only Memory）と、ＲＡＭ（Random Access Memory）と、ＣＰＵ（Central Processing Unit）と、を備える。ＲＯＭは、本実施形態に係る情報処理プログラム、及び、各種初期設定、ハードウェアの検査、プログラムのロード等を行うための初期プログラム等を記憶する。ＲＡＭは、ＣＰＵが実行する各種ソフトウェアプログラム、これらのソフトウェアプログラムの実行に必要なデータ等を一時的に記憶するワークエリアとして機能する。ＣＰＵは、様々な処理及び演算を実行する中央演算処理部である。
【００２６】
制御部１は、命令及びデータを転送するための伝送経路であるバス６を介して情報処理装置１００の各部と接続され、情報処理装置１００全体を制御する。また、制御部１において、ＣＰＵは、ＲＯＭに記憶された情報処理プログラムをＲＡＭに読み出して、その情報処理プログラムを実行することにより、図２に示す機能を実現する。
【００２７】
計時部２は、情報処理装置１００の電源がオフの間も計時を継続するＲＴＣ（Real Time Clock）等の計時用のデバイスを備える。計時部２は、後述するモード遷移条件となる時間を計測する。
【００２８】
記憶部３は、例えばハードディスクドライブ又はフラッシュメモリ等のような不揮発性メモリを備える。記憶部３は、後述する閾値Ｒ等の制御部１が各種処理を行うために使用する各種のプログラム及びデータ、制御部１が各種処理を行うことにより生成又は取得する各種データを記憶する。
【００２９】
入力部４は、マウス、スライドパッド、又は、トラックボール等のポインティングデバイスを備える。入力部４は、ポインティングデバイスの操作を介して、画面に表示されたカーソル等の操作対象を移動させる量と向きとを受け付ける。また、入力部４は、キーボード又はキーパッド等のような、文字入力デバイスも備える。入力部４は、ポインティングデバイス又は文字入力デバイスを介して受け付けた指示内容を示す信号を生成し、制御部１に供給する。
【００３０】
表示部５は、例えば、液晶ディスプレイ又は有機ＥＬ（Electro Luminescence）ディスプレイ等のような表示デバイスを備える。表示部５は、制御部１から画像信号を取得し、取得した画像信号に従った画像を表示デバイスの画面に出力する。
【００３１】
情報処理装置１００は、機能的には、図２に示すように、入力受付部１１０と、移動制御部１２０と、禁止範囲設定部１３０と、タイマー設定部１４０と、表示制御部１５０と、を備える。移動制御部１２０は、サーチモード移動制御部１２１と、ガイドモード移動制御部１２２と、アンロックモード移動制御部１２３と、モード切替部１２４と、の機能を含む。
【００３２】
入力受付部１１０は、画面に表示された操作対象を移動させる指示入力を受け付ける。操作対象とは、具体的にはカーソル（ポインタ等ともいう）等であって、表示部５の画面に表示され、使用者の操作によって画面内を移動するものである。入力受付部１１０は、ポインティングデバイスを介して、表示部５の画面に表示された操作対象であるカーソルを移動させる指示入力を受け付ける。ポインティングデバイスとは、具体的には、マウス、スライドパッド（タッチパッド又はトラックパッド等ともいう。）又はトラックボール等である。入力受付部１１０は、情報処理装置１００に入力部４として備えられたポインティングデバイスを介して、表示部５の画面に表示された操作対象であるカーソルを移動させる量と向きとの指示を含む指示入力を受け付ける。このように、入力受付部１１０は、制御部１が入力部４等と協働することによって実現される。
【００３３】
以下では、表示部５の画面に表示されたカーソルを移動させる指示入力を受け付けるためのポインティングデバイスとして、マウスを使用する場合について説明する。すなわち、入力受付部１１０は、カーソルを移動させる指示入力として、使用者がマウスを移動させた向きとマウスを移動させた量とを受け付ける。但し、ポインティングデバイスとしてスライドパッド又はトラックボールを用いた場合も、同様に説明することができる。
【００３４】
移動制御部１２０は、入力受付部１１０が操作対象を移動させる指示入力を受け付けると、受け付けた指示入力に従って、表示部５の画面に表示された操作対象であるカーソルを移動させる。移動制御部１２０は、制御部１が表示部５及び計時部２等と協働することによって実現される。
【００３５】
図３に、操作対象としてカーソル２００が表示された画面の例を示す。表示部５の画面には、画面内の横方向及び縦方向をそれぞれＸ軸及びＹ軸に設定した仮想座標におけるＡ点（ｘ１，ｙ１）に、カーソル２００が表示されている。このような状態において、使用者がマウスを移動させることによって入力受付部１１０が指示入力を受け付けると、移動制御部１２０は、図３に示すように、カーソル２００を例えばＢ点（ｘ２，ｙ２）まで移動させる。このように、移動制御部１２０は、使用者がマウスを移動させた向きに、マウスを移動させた量に比例した量だけ、カーソル２００を移動させる。
【００３６】
より詳細に説明すると、移動制御部１２０は、図４に示すように、（１）サーチモード、（２）ガイドモード、及び、（３）アンロックモードの３つのモードのうちのいずれかのモードで、カーソル２００を移動制御する。
（１）サーチモードは、入力受付部１１０が受け付けた指示入力によって単位時間内にカーソル２００が移動した量が閾値Ｒを超えたか否かを判別し、単位時間内にカーソル２００が移動した量が閾値Ｒを超えた場合にその移動の向きを検出（サーチ）する第１のモードである。
（２）ガイドモードは、サーチモードにおいて検出された向きとは逆向きへカーソル２００を移動させる指示入力を入力受付部１１０が受け付けても、カーソル２００を移動させない第２のモードである。
（３）アンロックモードは、カーソル２００の移動に制限を設けず、入力受付部１１０が受け付けた指示入力に従ってカーソル２００を移動させる第３のモードである。
以下、各モードにおける操作対象の移動制御、及び、モード間の切り替えの詳細について、説明する。
【００３７】
図２に示す情報処理装置１００の機能構成の説明に戻る。移動制御部１２０は、サーチモードとガイドモードとアンロックモードとの切替、及び、各モードにおけるカーソル２００の移動を制御するために、サーチモード移動制御部１２１と、ガイドモード移動制御部１２２と、アンロックモード移動制御部１２３と、モード切替部１２４と、を備える。
【００３８】
サーチモード移動制御部１２１は、移動制御部１２０がサーチモードで動作している場合において、入力受付部１１０が取得した指示入力に基づいて、カーソル２００を移動制御する。具体的に説明すると、サーチモード移動制御部１２１は、使用者がマウスを移動させた向きに、マウスを移動させた量に比例した量だけ、カーソル２００を移動させる。
【００３９】
このようにカーソル２００を移動させながら、サーチモード移動制御部１２１は、単位時間内にカーソル２００が移動した量が閾値を超えたか否かを判別する。そして、単位時間内にカーソル２００が移動した量が閾値を超えた場合、サーチモード移動制御部１２１は、この単位時間内におけるカーソル２００の移動の向きを検出する。
【００４０】
具体的に説明すると、図５（ａ）に示すように、カーソル２００の現在位置を原点とする仮想座標（Ｘ、Ｙ）において、単位時間内にベクトルＭ１で表されるように直線的にカーソル２００が移動した場合、単位時間内にカーソル２００が移動した量は閾値Ｒを超えている。そのため、この場合、サーチモード移動制御部１２１は、単位時間内にカーソル２００が移動した量が閾値Ｒを超えたと判別し、その際のカーソル２００の移動の向きとして、ベクトルＭ１で表される移動の向きを検出する。
【００４１】
これに対して、図５（ａ）に示した仮想座標（Ｘ、Ｙ）において、単位時間内にベクトルＭ２又はＭ３で表されるようにカーソル２００が移動した場合、単位時間内にカーソル２００が移動した量は閾値Ｒを超えていない。そのため、この場合、サーチモード移動制御部１２１は、単位時間内にカーソル２００が移動した量が閾値Ｒを超えたと判別せず、その際のカーソル２００の移動の向きを検出しない。
【００４２】
また、図５（ｂ）に破線で示すように、カーソル２００が直線的には移動しない場合もある。このような場合、単位時間の開始時点の位置（原点）からの距離が閾値Ｒを超えた場合、すなわち、図５（ｂ）に示した仮想座標（Ｘ、Ｙ）におけるカーソル２００の座標がＣ点に到達した場合に、サーチモード移動制御部１２１は、単位時間内にカーソル２００が移動した量が閾値Ｒを超えたと判別する。このとき、サーチモード移動制御部１２１は、単位時間の開始時点の位置（原点）からカーソル２００の移動量が閾値Ｒを超えた時点の位置（Ｃ点）に向かうベクトルＣ１の向きを、この単位時間内におけるカーソル２００の移動の向きとして検出する。
【００４３】
このような閾値Ｒは、予め固定値として情報処理プログラム内に設定してもよいし、入力部４から使用者が適宜変更できるようにしてもよい。また、単位時間は適宜定めることができる。例えば、単位時間を１秒と定めた場合、閾値Ｒを超えるのに要した時間が１秒未満である場合は、サーチモード移動制御部１２１は、その間におけるカーソル２００の移動の向きを検出する。その一方で、閾値Ｒを超えるのに要した時間が１秒以上であった場合は、その間におけるカーソル２００の移動の向きを検出しない。
【００４４】
サーチモード移動制御部１２１が、単位時間内にカーソル２００が移動した量が閾値Ｒを超えたと判別し、その間におけるカーソル２００の移動の向きを検出した場合、禁止範囲設定部１３０は、検出された向きに基づいて、カーソル２００の移動を禁止する向きの範囲（移動禁止範囲）を設定する。具体的に説明すると、禁止範囲設定部１３０は、単位時間内にカーソル２００が移動した量が閾値Ｒを超えた場合、この単位時間内におけるカーソル２００の移動の向きを含まず、この移動の向きとは逆向きを含む向きの範囲を、移動禁止範囲として設定する。
【００４５】
具体的には、図６に示すように、カーソル２００の現在位置を原点とする仮想座標（Ｘ、Ｙ）において、Ｘ軸の正の向きを中心として角度が±４５度以内の向きの範囲、Ｙ軸の正の向きを中心として角度が±４５度以内の向きの範囲、Ｘ軸の負の向きを中心として角度が±４５度以内の向きの範囲、及び、Ｙ軸の負の向きを中心として角度が±４５度以内の向きの範囲の４つの範囲が、移動禁止範囲の候補として予め設定されている。禁止範囲設定部１３０は、これら４つの範囲のうち、検出された向きが含まれる範囲以外の３つの範囲（図６において斜線で示した範囲）を、移動禁止範囲として設定する。
【００４６】
図２に示した情報処理装置１００の機能構成の説明に戻る。モード切替部１２４は、移動制御部１２０がサーチモードで動作している場合において、単位時間内にカーソル２００が移動した量が閾値Ｒを超えると、移動制御部１２０の動作モードを、サーチモードからガイドモードに切り替える。
【００４７】
ガイドモード移動制御部１２２は、移動制御部１２０がガイドモードで動作している場合において入力受付部１１０が取得した指示入力に基づいて、カーソル２００を移動制御する。具体的に説明すると、ガイドモード移動制御部１２２は、サーチモード時に入力受付部１１０が受け付けた第１の指示入力によって単位時間内にカーソル２００が移動した量が閾値Ｒを超えた場合において、この単位時間内におけるカーソル２００の移動の向きとは逆向きにカーソル２００を移動させる第２の指示入力を入力受付部１１０が受け付けても、カーソル２００を移動させず、この移動の向きにカーソル２００を移動させる第３の指示入力を入力受付部１１０が受け付けると、カーソル２００を移動させる。
【００４８】
具体例について、図６を参照して説明する。サーチモード時に入力受付部１１０が受け付けた第１の指示入力によって、単位時間内にカーソル２００が移動した量が閾値Ｒを超えた場合、禁止範囲設定部１３０は、サーチモード移動制御部１２１によって検出されたカーソル２００の移動の向きが含まれる範囲以外の３つの範囲（図６において斜線で示した範囲）を、移動禁止範囲として設定する。この状態において、第２の指示入力として、ベクトルＫ１又はＫ２で表されるように、移動禁止範囲内の向きにカーソル２００を移動させる指示入力を入力受付部１１０が受け付けた場合、ガイドモード移動制御部１２２は、第２の指示入力には従わず、カーソル２００を移動させない。これに対して、第３の指示入力として、ベクトルＫ３で表されるように、移動禁止範囲外の向きにカーソル２００を移動させる指示入力を入力受付部１１０が受け付けた場合、ガイドモード移動制御部１２２は、第３の指示入力に従って、カーソル２００を移動させる。
【００４９】
ガイドモードにおけるカーソル２００の移動制御について、図７（ａ）及び（ｂ）を参照して説明する。図７（ａ）に示すようにマウスの位置を「１」、「２」、「３」、「４」の順に往復移動させた場合、ガイドモードにおいて、カーソル２００は、図７（ｂ）に示すように「１」、「２」、「３」、「４」の順に移動する。なお、図７（ｂ）は、ガイドモードに遷移した際のカーソル２００の移動が、図６に示したように画面内において右上の向きへの移動であった場合の例である。すなわち、図６に示したように、上下左右の４つの範囲のうちのこの移動の向きを含まない３つの範囲が移動禁止範囲として設定されている。
【００５０】
より詳細に説明すると、ガイドモード移動制御部１２２は、マウスの位置を「１」から「２」に移動させる入力操作を受け付けると、マウスの移動と同様に、画面上のカーソル２００を「１」から「２」に移動させる。これに対して、ガイドモード移動制御部１２２は、マウスの位置を「２」から「３」に移動させる入力操作を受け付けても、画面上のカーソル２００を「２」から移動させない。「２」から「３」への向きは、ガイドモードに遷移した際にカーソル２００が移動した「１」から「２」への向きと逆向きであり、カーソル２００の移動を禁止する向きであるからである。更に、ガイドモード移動制御部１２２は、マウスの位置を「３」から「４」に移動させる入力操作を受け付けると、画面上のカーソル２００を「３」から「４」に移動させる。「３」から「４」に向かう向きは、「１」から「２」への向きと同じ向きであり、カーソル２００の移動を禁止する向きではないからである。
【００５１】
このように、ガイドモードにおいて、使用者は、マウスを持ち上げる動作をすることなく、限られた場所でマウスを往復させるだけで、画面上のカーソル２００を特定の向きに順次移動させることができる。そのため、使用者が例えば神経疾患又は筋疾患等によって運動機能に障害を有する者であっても、特定の向きにカーソル２００を移動させる操作を容易に行うことができる。
【００５２】
図２に示した情報処理装置１００の機能構成の説明に戻る。モード切替部１２４は、移動制御部１２０がガイドモードで動作している場合において、第１の条件が満たされると、移動制御部１２０の動作モードを、ガイドモードからサーチモードに切り替える。この第１の条件は、ガイドモードを解除する条件である。具体的には、第１の条件は、図４に示すように、移動制御部１２０がガイドモードで動作している場合、すなわち単位時間内にカーソル２００が移動した量が閾値Ｒを超えた後において、第１の長さの時間Ｔ１の間、入力受付部１１０が指示入力を受け付けなかった場合に、満たされる。
【００５３】
具体的に説明すると、移動制御部１２０は、第１の指示入力によって単位時間内にカーソル２００が移動した量が閾値Ｒを超えたことによって、動作モードがガイドモードに遷移した後であっても、時間Ｔ１の間指示入力を受け付けなかった場合には、移動禁止範囲を解除する。そのため、移動制御部１２０は、第１の指示入力での移動の向きの逆向き等のような、移動禁止範囲内の向きにカーソル２００を移動させる第２の指示入力を入力受付部１１０が受け付けても、受け付けた第２の指示入力に従ってカーソル２００を移動させる。
【００５４】
モード切替部１２４は、移動制御部１２０がサーチモードで動作している場合において、第２の条件が満たされると、移動制御部１２０の動作モードを、サーチモードからアンロックモードに切り替える。この第２の条件は、動作モードをアンロックモードに遷移させるための条件である。具体的には、第２の条件は、図４に示すように、移動制御部１２０がサーチモードで動作している場合、すなわち移動制御部１２０の動作モードをガイドモードに遷移させる第１の指示入力を受け付ける前において、第２の長さの時間Ｔ２の間、入力受付部１１０が指示入力を受け付けなかった場合に、満たされる。
【００５５】
アンロックモード移動制御部１２３は、移動禁止範囲の制限を設けることなく、表示部５の画面に表示されたカーソル２００を、入力受付部１１０によって受け付けられた指示入力に従って移動させる。具体的に説明すると、アンロックモード移動制御部１２３は、単位時間内に閾値Ｒを超えてカーソル２００を移動させる第１の指示入力を受け付けても、動作モードをガイドモードには遷移させない。そのため、その後に、たとえ第１の指示入力での移動の向きの逆向きにカーソル２００を移動させる第２の指示入力を入力受付部１１０が受け付けても、受け付けた第２の指示入力に従ってカーソル２００を移動させる。
【００５６】
アンロックモードにおけるカーソル２００の移動制御について、図７（ａ）及び（ｃ）を参照して説明する。図７（ａ）に示すようにマウスの位置を「１」、「２」、「３」、「４」の順に往復移動させた場合、アンロックモードにおいて、カーソル２００は、図７（ｃ）に示すように「１」、「２」、「３」、「４」の順に移動する。
【００５７】
より詳細に説明すると、アンロックモード移動制御部１２３は、マウスの位置を「１」から「２」に移動させる入力操作を受け付けると、マウスの移動と同様に、画面上のカーソル２００を「１」から「２」に移動させる。そして、アンロックモード移動制御部１２３は、マウスの位置を「２」から「３」に移動させる入力操作を受け付けると、画面上のカーソル２００を「２」から「３」に、すなわち、元の「１」の位置に戻るように移動させる。アンロックモードでは、カーソル２００の移動を禁止する向きの範囲（移動禁止範囲）が設定されていないからである。更に、アンロックモード移動制御部１２３は、マウスの位置を「３」から「４」に移動させる入力操作を受け付けると、画面上のカーソル２００を「３」から「４」に移動させる。
【００５８】
このように、アンロックモードでは、画面上のカーソル２００は、マウスの移動の通りに移動する。そのため、使用者は、自由にカーソル２００を操作することができる。使用者がガイドを必要としない者である場合にも、情報処理装置１００を通常通り違和感なく使用することができる。
【００５９】
モード切替部１２４は、移動制御部１２０がアンロックモードで動作している場合において、第３の条件が満たされると、移動制御部１２０の動作モードを、アンロックモードからサーチモードに切り替える。この第３の条件は、アンロックモードを解除する条件である。具体的には、第３の条件は、図４に示すように、移動制御部１２０がアンロックモードモードで動作している場合、すなわち上述した第２の条件が満たされた後において、第３の長さの時間Ｔ３の間、入力受付部１１０が指示入力を受け付けなかった場合に、満たされる。
【００６０】
具体的に説明すると、移動制御部１２０は、アンロックモードにおいて時間Ｔ３の間指示入力を受け付けなかった場合には、アンロックモードを解除し、動作モードをサーチモードに戻す。サーチモードにおいて、移動制御部１２０は、単位時間内にカーソル２００が移動した量が閾値Ｒを超えた場合には、動作モードをガイドモードに遷移させる。すなわち、移動制御部１２０は、第１の指示入力によって単位時間内にカーソル２００を移動した量が閾値Ｒを超えた後、移動禁止範囲内の向きにカーソル２００を移動させる第２の指示入力を入力受付部１１０が受け付けても、カーソル２００を移動させない。
【００６１】
タイマー設定部１４０は、制御部１が計時部２の示す時刻を計測することにより実現する。タイマー設定部１４０は、モード遷移の条件として使用する時間Ｔ１，Ｔ２，Ｔ３を設定し、タイマーを起動した時刻から設定された時間が経過するまでの時間を計測する。具体的には、図４に示す状態遷移図において、ガイドモードからサーチモードに遷移する第１の条件として使用される時間Ｔ１、サーチモードからアンロックモードに遷移する第２の条件として使用される時間Ｔ２、アンロックモードからサーチモードに遷移する第３の条件として使用される時間Ｔ３、のタイマー値を設定し、タイマー値が経過するまでの時間を計測する。時間Ｔ１，Ｔ２，Ｔ３の長さは、それぞれ予め固定値として情報処理プログラム内に設定しておいてもよいし、入力部４を介して使用者が設定できるようにしてもよい。
【００６２】
表示制御部１５０は、情報処理装置１００が現在動作している動作モードを示すモード画像を表示部５に表示する。具体的に説明すると、サーチモードでの動作時には、表示制御部１５０は、図３に示すように、サーチモードで動作中であることを示すモード画像２１１として表示する。ガイドモードでの動作時には、表示制御部１５０は、図７（ｂ）に示すように、ガイドモードで動作中であることを示すモード画像２１２として表示する。アンロックモードでの動作時には、表示制御部１５０は、図７（ｃ）に示すように、アンロックモードで動作中であることを示すモード画像２１３として表示する。このように、表示制御部１５０は、制御部１が表示部５等を協働することによって実現される。
【００６３】
ガイドモードにおいて表示されるモード画像２１２には、サーチモードからガイドモードに遷移する際に検出されたカーソル２００の移動の向きを示す矢印の情報が含まれる。すなわち、表示制御部１５０は、サーチモードにおいて受け付けられた指示入力によって単位時間内にカーソル２００が移動した量が閾値Ｒを超え、動作モードがガイドモードに遷移した場合、その移動の向きを示す情報を画面に表示する。具体的には図７（ｂ）に示したように、表示制御部１５０は、モード画像２１２の中に右上の向きの矢印を表示する。これにより、使用者は、現在のモードが右上の向きへカーソル２００を移動させるモードであって、それ以外の向きへの移動が禁止されていることを認識することができる。
【００６４】
以上のような情報処理装置１００が実行するカーソル２００の移動制御処理の流れについて、図８に示すフローチャートを参照して説明する。
【００６５】
例えば使用者が情報処理装置１００に予めインストールされた専用のアプリケーションを実行することにより、制御部１のＣＰＵが情報処理プログラムを起動する。これにより、図８に示すフローチャートは、開始する。
【００６６】
制御部１は、情報処理プログラムを起動すると、まず、情報処理装置１００の動作モードを、サーチモードに遷移させる（ステップＳ１）。この遷移は、図４に示す状態遷移図のプログラム起動時のサーチモードへの遷移に該当する。動作モードをサーチモードに遷移させると、制御部１は、アンロックモードへ遷移する条件となる時間Ｔ２の計時を開始する（ステップＳ２）。時間Ｔ２は、サーチモードでの動作時における入力操作の中断時間を監視するための第２の長さの時間である。
【００６７】
サーチモードにおいて、時間Ｔ２の計時を開始すると、制御部１は、入力受付部１１０として機能し、入力部４を介して指示入力を受け付けたか否かを判別する（ステップＳ３）。
【００６８】
指示入力を受け付けていない場合（ステップＳ３；ＮＯ）、制御部１は、ステップＳ２において計時を開始してから時間Ｔ２が経過したか否かを判別する（ステップＳ４）。時間Ｔ２が経過していない場合（ステップＳ４；ＮＯ）、制御部１は、引き続きステップＳ３において、指示入力を待ち受ける。
【００６９】
指示入力を受け付けると（ステップＳ３；ＹＥＳ）、制御部１は、サーチモード移動制御部１２１として機能し、受け付けた指示入力に従ってカーソル２００を移動させる（ステップＳ５）。すなわち、制御部１は、使用者がマウスを移動させた向きに、マウスを移動させた量に比例した量だけ、表示部５の画面に表示されたカーソル２００を移動させる。
【００７０】
カーソル２００を移動させると、制御部１は、単位時間内にカーソル２００が移動した量が閾値Ｒを超えたか否かを判別する（ステップＳ６）。単位時間内にカーソル２００が移動した量が閾値Ｒを超えていないと判別した場合（ステップＳ６；ＮＯ）、制御部１は、処理をステップＳ２に戻す。ステップＳ２において、制御部１は、時間Ｔ２の計時をリセットし、時間Ｔ２を計時し直す。そして、制御部１は、ステップＳ３において、入力部４を介して更なる指示入力を受け付けたか否かを判別する。
【００７１】
単位時間内にカーソル２００が移動した量が閾値Ｒを超えたと判別した場合（ステップＳ６；ＹＥＳ）、制御部１は、その単位時間内におけるカーソル２００の移動の向きを検出する（ステップＳ７）。そして、制御部１は、禁止範囲設定部１３０として機能し、カーソル２００の移動を禁止する向きの範囲（移動禁止範囲）を設定する（ステップＳ８）。具体的に説明すると、制御部１は、図６に示したように、予め定められた４つの範囲のうちから、検出した移動の向きを含まない３つの範囲を、移動禁止範囲として設定する。
【００７２】
移動禁止範囲を設定すると、制御部１は、モード切替部１２４として機能し、動作モードをガイドモードに遷移させる（ステップＳ９）。この遷移は、図４に示すサーチモードからガイドモードへの遷移に該当する。このとき、動作モードがガイドモードに切り替わったことを使用者に通知するため、制御部１は、図示しないスピーカからチャイム音を出力する。また、制御部１は、表示制御部１５０として機能し、図７（ｂ）に示したように、表示部５の画面内に、ガイドモードで動作していることを示すモード画像２１２を表示する。ガイドモードで動作していることを示すモード画像２１２には、検出したカーソル２００の移動の向きを示す矢印の情報が含まれる。
【００７３】
動作モードをガイドモードに遷移させると、制御部１は、サーチモードへの遷移条件となる時間Ｔ１の計時をスタートする（ステップＳ１０）。時間Ｔ１は、ガイドモードでの動作時における入力操作の中断時間を監視する第１の長さの時間である。
【００７４】
ガイドモードにおいて、時間Ｔ１の計時を開始すると、制御部１は、入力受付部１１０として機能し、入力部４を介して新たな指示入力を受け付けたか否かを判別する（ステップＳ１１）。
【００７５】
新たな指示入力を受け付けていない場合（ステップＳ１１；ＮＯ）、制御部１は、ステップＳ１０において計時を開始してから時間Ｔ１が経過したか否かを判別する（ステップＳ１２）。時間Ｔ１が経過していない場合（ステップＳ１２；ＮＯ）、制御部１は、引き続きステップＳ１１において、入力部４を介して新たな指示入力を待ち受ける。
【００７６】
新たな指示入力を受け付けると（ステップＳ１１；ＹＥＳ）、制御部１は、ガイドモード移動制御部１２２として機能し、ガイドモードでカーソル２００を制御する（ステップＳ１３）。具体的に説明すると、制御部１は、受け付けた新たな指示入力が、ステップＳ８において設定された移動禁止範囲外の向きにカーソル２００を移動させる指示入力であった場合には、受け付けた指示入力に従って表示部５の画面に表示されたカーソル２００を移動させる。これに対して、受け付けた新たな指示入力が、ステップＳ８において設定された移動禁止範囲内の向きにカーソル２００を移動させる指示入力であった場合には、受け付けた指示入力には従わず、表示部５の画面に表示されたカーソル２００を移動させない。
【００７７】
ガイドモードでカーソル２００を制御すると、制御部１は、処理をステップＳ１０に戻す。ステップＳ１０において、制御部１は、時間Ｔ１の計時をリセットし、時間Ｔ１を計時し直す。そして、制御部１は、ステップＳ１１において、入力部４を介して更なる指示入力を待ち受ける。
【００７８】
ガイドモードにおいて、計時を開始してから時間Ｔ１が経過するまでの間、指示入力を受け付けなかった場合（ステップＳ１２；ＹＥＳ）、制御部１は、処理をステップＳ１に戻す。そして、制御部１は、ステップＳ１において、モード切替部１２４として機能し、動作モードをサーチモードに遷移させる。この遷移は、図４に示すガイドモードからサーチモードへの遷移に該当する。このとき、動作モードがサーチモードに切り替わったことを使用者に通知するため、制御部１は、図示しないスピーカからチャイム音を出力する。また、制御部１は、表示制御部１５０として機能し、図３に示したように、表示部５の画面内に、サーチモードで動作していることを示すモード画像２１１を表示する。
【００７９】
サーチモードにおいて、計時を開始してから時間Ｔ２が経過するまでの間、指示入力を受け付けなかった場合（ステップＳ４；ＹＥＳ）、制御部１は、モード切替部１２４として機能し、動作モードをアンロックモードに遷移させる（ステップＳ１４）。この遷移は、図４に示すサーチモードからアンロックモードへの遷移に該当する。このとき、動作モードがアンロックモードに切り替わったことを使用者に通知するため、制御部１は、図示しないスピーカからチャイム音を出力する。また、制御部１は、表示制御部１５０として機能し、図７（ｃ）に示したように、表示部５の画面内に、アンロックモードで動作していることを示すモード画像２１３を表示する。
【００８０】
動作モードをアンロックモードに遷移させると、制御部１は、時間Ｔ３の計時を開始する（ステップＳ１５）。時間Ｔ３は、アンロックモードでの動作時における入力操作の中断時間を監視する第３の長さの時間である。
【００８１】
アンロックモードにおいて、時間Ｔ３の計時を開始すると、制御部１は、入力受付部１１０として機能し、入力部４を介して新たな指示入力を受け付けたか否かを判別する（ステップＳ１６）。
【００８２】
新たな指示入力を受け付けていない場合（ステップＳ１６；ＮＯ）、制御部１は、ステップＳ１５において計時を開始してから時間Ｔ３が経過したか否かを判別する（ステップＳ１７）。時間Ｔ３が経過していない場合（ステップＳ１７；ＮＯ）、制御部１は、引き続きステップＳ１６において、入力部４を介して更なる指示入力を待ち受ける。
【００８３】
新たな指示入力を受け付けた場合は（ステップＳ１６；ＹＥＳ）、制御部１は、アンロックモード移動制御部１２３として機能し、アンロックモードでカーソル２００を制御する（ステップＳ１８）。具体的に説明すると、制御部１は、移動禁止範囲を設けることはなく、受け付けた指示入力に従って表示部５の画面に表示されたカーソル２００を移動させる。
【００８４】
アンロックモードでカーソル２００を制御すると、制御部１は、処理をステップＳ１５に戻す。ステップＳ１５において、制御部１は、時間Ｔ３の計時をリセットし、時間Ｔ３を計時し直す。そして、制御部１は、ステップＳ１６において、入力部４を介して更なる指示入力を待ち受ける。
【００８５】
アンロックモードにおいて、計時を開始してから時間Ｔ３が経過するまでの間、指示入力を受け付けなかった場合（ステップＳ１７；ＹＥＳ）、制御部１は、処理をステップＳ１に戻す。そして、制御部１は、ステップＳ１において、モード切替部１２４として機能し、動作モードをサーチモードに遷移させる。この遷移は、図４に示すアンロックモードからサーチモードへの遷移に該当する。このとき、動作モードがサーチモードに切り替わったことを使用者に通知するため、制御部１は、図示しないスピーカからチャイム音を出力する。また、制御部１は、表示制御部１５０として機能し、図３に示したように、表示部５の画面内に、サーチモードで動作していることを示すモード画像２１１を表示する。
【００８６】
このように、情報処理装置１００は、サーチモード、ガイドモード、及び、アンロックモードという３つのモードの間で動作モードを遷移させながら、表示部５の画面に表示されたカーソル２００の移動を制御する。
【００８７】
以上説明したように、実施形態１に係る情報処理装置１００は、マウスによる指示入力によって単位時間内にカーソル２００が移動した量が閾値Ｒを超えた場合に、動作モードをガイドモードに遷移させ、その指示入力によってカーソル２００が移動した向きとは逆向きにカーソル２００を移動させる新たな指示入力が受け付けられても、カーソル２００を移動させない。そのため、使用者は、特定の向きにマウスを移動させた後、マウスを持ち上げて元の位置に戻し、更に同じ向きにマウスを移動させる、との動作を繰り返さなくても、限られた場所でマウスを往復させるだけで、画面に表示されたカーソル２００を、特定の向きに比較的長い距離に亘って移動させることができる。その結果、使用者が例えば神経疾患又は筋疾患等によって運動機能に障害を有するためマウスを持ち上げることが難しい者であっても、少ない負担で画面に表示されたカーソル２００を移動させることができ、運動機能に障害を有する者の社会参加機会を拡大することにつながる。
【００８８】
また、マウスではなくスライドパッド又はトラックボールを用いた場合でも同様である。すなわち、スライドパッド又はトラックボール上で特定の向きに指を移動させた後、スライドパッド又はトラックボールから指を上げて元の位置に戻し、更に同じ向きに指を移動させる、との動作を繰り返さなくても、限られた場所で指を往復させるだけで、画面に表示されたカーソル２００を、特定の向きに比較的長い距離に亘って移動させることができる。その結果、使用者が例えば神経疾患又は筋疾患等によって運動機能に障害を有するためスライドパッド又はトラックボールから指を離すことが難しい者であっても、少ない負担で画面に表示されたカーソル２００を移動させることができる。
【００８９】
また、情報処理装置１００は、動作モードとして、カーソル２００の移動を制限するガイドモードだけでなく、カーソル２００の移動を制限しないアンロックモードを有する。そのため、使用者がガイドを必要としない者である場合にも、情報処理装置１００をアンロックモードで動作させることによって、情報処理装置１００を通常通り違和感なく使用することができる。
【００９０】
また、情報処理装置１００は、予め定められた時間の間指示入力を受け付けなかった場合に、動作モードを遷移させた。これにより、動作モードの切替を行うために、キーボードのキー操作やマウスのクリック操作等を行わなくてよいため、使用者の操作の手間を省くことが出来る。そのため、例えば自由に操作することが難しい者であっても、簡単に動作モードを切り替えることができる。
【００９１】
（変形例１）
上記実施形態１では、禁止範囲設定部１３０は、カーソル２００の移動を禁止する向きの範囲（移動禁止範囲）として、カーソル２００の現在位置を原点とする仮想座標（Ｘ、Ｙ）における予め設定された４つの範囲のうちから、検出されたカーソル２００の移動の向きが含まれる範囲以外の３つの範囲を設定した。しかしながら、本発明において、移動禁止範囲の設定方法はこれに限らない。例えば禁止範囲設定部１３０は、４以外の数の範囲のうちから移動禁止範囲を設定してもよい。
【００９２】
また、単位時間内にカーソル２００が移動した量が閾値Ｒを超えた場合において、この単位時間内におけるカーソル２００の移動の向きとは逆向きへのカーソル２００の移動のみを禁止してもよいし、この移動の向き以外の向きへのカーソル２００の移動を全て禁止してもよい。すなわち、単位時間内にカーソル２００が移動した量が閾値Ｒを超えた場合において、この単位時間内におけるカーソル２００の移動の向きとは逆向きにはカーソル２００を移動させず、この移動の向きにカーソル２００を移動させるものであれば、他のどの向きへのカーソル２００の移動を禁止するかは自由である。
【００９３】
また、本発明において、禁止範囲設定部１３０は、カーソル２００の移動を禁止する向きの範囲として、検出されたカーソル２００の移動の向きとの成す角度が予め定められた角度以上離れた向きの範囲を設定してもよい。具体的には図９に示すように、禁止範囲設定部１３０は、検出した向きが第１象限で４５°の角度の向きとなる新たな仮想座標（Ｘ２，Ｙ２）を設定する。そして、仮想座標（Ｘ２，Ｙ２）における原点から第２象限、第３象限、及び、第４象限への向きを、つまり、検出されたカーソル２００の移動の向きに対して±４５度以上離れた向きの範囲を、画面上のカーソルの移動を禁止する向きの範囲（移動禁止範囲）として設定する。これにより、ガイドモードに遷移する際に検出されたカーソル２００の移動の向きがどの向きであっても、柔軟に移動禁止範囲を設定することができる。
【００９４】
なお、移動禁止範囲を設定するための角度は、４５度に限らず、例えば、検出されたカーソル２００の移動の向きに対して±１５度又は±３０度以上離れた向きへカーソル２００を移動しないように設定してもよい。
【００９５】
また、実施形態１では、ガイドモードに遷移する際に検出されるカーソル２００の移動の向きは、図５（ｂ）に示したように、単位時間の開始時点の位置（原点）からカーソル２００の移動量が閾値Ｒを超えた時点の位置（Ｃ点）に向かうベクトルＣ１の向きであった。しかし、サーチモード移動制御部１２１は、単位時間内にカーソル２００が移動した量が閾値Ｒを超えた場合、仮想座標における原点から単位時間後におけるカーソル２００の位置（Ｃ点のように閾値Ｒの円周上とは限らない。）への向きを検出するようにしてもよい。
【００９６】
（実施形態２）
上述した実施形態１では、マウス等のポインティングデバイスを用いた画面上のカーソル操作に本発明を適用する場合について説明した。これに対して、実施形態２ではタッチパネルにおいて指で画面に接触（タッチ）する操作に本発明を適用する場合について説明する。
【００９７】
実施形態２に係る情報処理装置１００の構成は、実施形態１において説明した構成と同様である。但し、入力部４は、表示部５の画面に重畳されたタッチパネル（タッチスクリーンともいう）として構成される。入力受付部１１０は、画面に重畳されたタッチパネルを介して、使用者によって接触された位置に表示された画像を移動させる指示入力を受け付ける。すなわち、操作対象は、カーソルではなく、画面において使用者によって接触された位置に表示された画像である。
【００９８】
そのため、以下では、実施形態１における説明から、マウスによる入力操作を、使用者の指による接触操作に置き換え、カーソル２００の移動制御を、画面において指で接触された画像の移動制御に置き換えて、説明を行う。なお、指の代わりにタッチペン等で画面に接触して操作する場合も同様である。
【００９９】
タッチパネル上での指による入力操作に対するタッチパネルの画面の動作について図１０を参照して説明する。使用者は、例えば図１０（ａ）に示すように、タッチパネル上で指の位置を「１」、「２」、「３」、「４」の順に往復移動させる。このとき、使用者の指による入力操作は、指をタッチパネルから離さずに、指をスライド操作（フリック操作ともいう）する。
【０１００】
図１０（ａ）に示すスライド操作によって、ガイドモードでは、表示部５の画面は、図１０（ｂ）に示すように「画面Ａ」、「画面Ｂ」、「画面Ｂ」、「画面Ｃ」の順に更新される。なお、図１０（ｂ）は、ガイドモードに遷移した際の画像の移動が、図１０（ａ）に示した位置「１」から位置「２」への向き（下向き）への移動であった場合の例である。すなわち、上向きへの画像の移動が禁止されている。
【０１０１】
より詳細に説明すると、ガイドモード移動制御部１２２は、タッチパネル上で指の位置を「１」から「２」に移動させる入力操作を受け付けると、指の移動と同様に、画面に表示された画像を下向き移動させる。その結果、画面Ａは画面Ｂに更新される。これに対して、ガイドモード移動制御部１２２は、指の位置を「２」から「３」に移動させる入力操作を受け付けても、画面上の画像を移動させない。そのため、画面Ｂはそのまま更新されない。「２」から「３」への向きは、ガイドモードに遷移した際に画像が移動した「１」から「２」への向きと逆向きであり、画像の移動を禁止する向きであるからである。更に、ガイドモード移動制御部１２２は、指の位置を「３」から「４」に移動させる入力操作を受け付けると、画面上の画像を移動させる。その結果、画面Ｂは画面Ｃに更新される。「３」から「４」に向かう向きは、「１」から「２」への向きと同じ向きであり、画像の移動を禁止する向きではないからである。
【０１０２】
このように、ガイドモードにおいて、使用者は、指をタッチパネルから持ち上げる動作をすることなく、限られた場所で指を往復させるだけで、画面を順次切り替えることができる。
【０１０３】
これに対して、アンロックモードでは、画像の移動を禁止する向きは設定されていない。そのため、図１０（ａ）に示すように指の位置を「１」、「２」、「３」、「４」の順に往復移動させた場合、表示部５の画面は、図１０（ｃ）に示すように、指の移動の通り、「画面Ａ」と「画面Ｂ」とを往復する。
【０１０４】
以上説明したように、実施形態２に係る情報処理装置１００は、タッチパネルを介して受け付けた指による指示入力によって画面に表示された画像が単位時間内に移動した量が閾値Ｒを超えた場合に、動作モードをガイドモードに遷移させ、その指示入力によって画像が移動した向きとは逆向きに画像を移動させる新たな指示入力が受け付けられても、画像を移動させない。そのため、使用者は、特定の向きに指を移動させた後、指を持ち上げて元の位置に戻し、更に同じ向きに指を移動させる、との動作を繰り返さなくても、限られた場所で指を往復させるだけで、画面に表示された画像を、特定の向きに比較的長い距離に亘って移動させることができる。その結果、使用者が例えば神経疾患又は筋疾患等によって運動機能に障害を有するためタッチパネルから指を離すことが難しい者であっても、少ない負担でタッチパネルのスライド操作（フリック操作）を実行することができ、運動機能に障害を有する者の社会参加機会を拡大することにつながる。
【０１０５】
（実施形態３）
実施形態３では、本発明をゲームにおけるキャラクタ画像の移動制御に適用する場合について説明する。
【０１０６】
実施形態３に係る情報処理装置１００の構成は、実施形態１において説明した構成と同様である。但し、入力部４は、表示部５の画面に重畳されたタッチパネル（タッチスクリーンともいう）として構成される。入力受付部１１０は、画面に重畳されたタッチパネルを介して、使用者によって接触された位置に表示された画像を移動させる指示入力を受け付ける。すなわち、操作対象は、カーソルではなく、画面において使用者によって接触された位置に表示された画像（特にゲームのキャラクタ画像）である。
【０１０７】
そのため、以下では、実施形態１における説明から、マウスによる入力操作を、使用者の指による接触操作に置き換え、カーソル２００の移動制御を、画面において指で接触されたキャラクタ画像の移動制御に置き換えて、説明を行う。なお、指の代わりにタッチペン等で画面に接触して操作する場合も同様である。
【０１０８】
タッチパネル上での指による入力操作に対するタッチパネルの画面のキャラクタ動作について図１１を参照して説明する。使用者は、例えば図１１（ａ）に示すように、タッチパネル上で指の位置を「１」、「２」、「３」、「４」の順に往復移動させる。このとき、使用者の指による入力操作は、指をタッチパネルから離さずに、指をスライド操作（フリック操作ともいう）する。
【０１０９】
図１１（ａ）に示すスライド操作によって、ガイドモードでは、キャラクタ画像２２０は、図１１（ｂ）に示すように「１」、「２」、「３」、「４」の順に移動する。なお、図１１（ｂ）は、ガイドモードに遷移した際のキャラクタ画像２２０の移動が、図６に示したように画面内において右上の向きへの移動であった場合の例である。すなわち、図６に示したように、上下左右の４つの範囲のうちのこの移動の向きを含まない３つの範囲が移動禁止範囲として設定されている。
【０１１０】
より詳細に説明すると、ガイドモード移動制御部１２２は、タッチパネル上で指の位置を「１」から「２」に移動させる入力操作を受け付けると、指の移動と同様に、画面上のキャラクタ画像２２０を「１」から「２」に移動させる。これに対して、ガイドモード移動制御部１２２は、指の位置を「２」から「３」に移動させる入力操作を受け付けても、画面上のキャラクタ画像２２０を「２」から移動させない。「２」から「３」への向きは、ガイドモードに遷移した際にキャラクタ画像２２０が移動した「１」から「２」への向きと逆向きであり、キャラクタ画像２２０の移動を禁止する向きであるからである。更に、ガイドモード移動制御部１２２は、指の位置を「３」から「４」に移動させる入力操作を受け付けると、画面上のキャラクタ画像２２０を「３」から「４」に移動させる。「３」から「４」に向かう向きは、「１」から「２」への向きと同じ向きであり、キャラクタ画像２２０の移動を禁止する向きではないからである。
【０１１１】
このように、ガイドモードにおいて、使用者は、指をタッチパネルから持ち上げる動作をすることなく、限られた場所で指を往復させるだけで、画面上のキャラクタ画像２２０を特定の向きに順次移動させることができる。そのため、指をタッチパネルから離さない往復操作でキャラクタ画像２２０を移動制御できるので、キャラクタ画像２２０をより早く移動操作することが可能になる。
【０１１２】
これに対して、アンロックモードでは、キャラクタ画像２２０の移動を禁止する向き（移動禁止範囲）は設定されていない。そのため、図１１（ａ）に示すように指の位置を「１」、「２」、「３」、「４」の順に往復移動させた場合、キャラクタ画像２２０は、図１１（ｃ）に示すように、指の移動の通り、「１」、「２」、「３」、「４」の順に移動する。そのため、アンロックモードでは、使用者は、自由にキャラクタ画像２２０を操作することができる。
【０１１３】
以上説明したように、実施形態３に係る情報処理装置１００は、タッチパネルを介して受け付けた指による指示入力によって画面に表示されたキャラクタ画像２２０が単位時間内に移動した量が閾値Ｒを超えた場合に、動作モードをガイドモードに遷移させ、その指示入力によってキャラクタ画像２２０が移動した向きとは逆向きにキャラクタ画像２２０を移動させる新たな指示入力が受け付けられても、キャラクタ画像２２０を移動させない。そのため、使用者は、特定の向きに指を移動させた後、指を持ち上げて元の位置に戻し、更に同じ向きに指を移動させる、との動作を繰り返さなくても、限られた場所で指を往復させるだけで、キャラクタ画像２２０を、特定の向きに素早く移動させることができる。すなわち、使用者が運動機能に障害を有さない健常者であっても、特にゲームの操作のように、キャラクタ画像２２０等の操作対象を素早く移動させたい状況がある。実施形態３に係る情報処理装置１００によれば、このようなゲームの操作において、少ない負担でキャラクタ画像２２０等の操作対象を素早く移動させることができる。
【０１１４】
（変形例２）
上述した実施形態１から３では、動作モードを遷移させる第１の条件、第２の条件、及び、第３の条件は、それぞれ予め定められた時間Ｔ１，Ｔ２，Ｔ３の間、指示入力を受け付けなかった場合に満たされた。しかしながら、本発明の範囲はこれに限定されることはない。例えば、時間を用いた条件に代えて、クリック入力を用いて動作モードを状態遷移させてもよい。
【０１１５】
例えば、マウスの左クリックのみを使用して、１回目のクリックでアンロックモードからサーチモードに遷移させ、２回目のクリックでサーチモードからガイドモードに遷移させ、３回目のクリックでガイドモードからアンロックモードへ遷移させるようにしてもよい。別の方法としては、マウスの右クリックと左クリックとを用いて、サーチモード、ガイドモード、アンロックモードを遷移させても良い。このように、状態遷移の方法は、様々な設定を行うことが出来る。
【０１１６】
また、上記実施形態では、情報処理装置１００は、ＣＰＵを備えていた。しかし、本発明において、情報処理装置１００は、ＣＰＵの代わりに、ＡＳＩＣ（Application Specific Integrated Circuit）等の専用の制御回路を備えていてもよい。例えば、上記実施形態では、ＣＰＵが、入力受付部１１０、移動制御部１２０、禁止範囲設定部１３０、タイマー設定部１４０、及び、表示制御部１５０のそれぞれとして機能したが、これら各部は、それぞれ個別のＡＳＩＣによって実現されてもよい。
【０１１７】
なお、本発明に係る機能を実現するための構成を予め備えた情報処理装置として提供できることはもとより、プログラムの適用により、既存のパーソナルコンピュータや情報端末機器等を、本発明に係る情報処理装置１００として機能させることもできる。すなわち、上記実施形態で例示した情報処理装置１００による各機能構成を実現させるためのプログラムを、既存のパーソナルコンピュータや情報端末機器等を制御するＣＰＵ等が実行できるように適用することで、本発明に係る情報処理装置１００として機能させることができる。また、本発明に係る移動制御方法は、情報処理装置１００を用いて実施できる。
【０１１８】
また、このようなプログラムの適用方法は任意である。プログラムを、例えば、コンピュータが読取可能な記録媒体（ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory）、ＤＶＤ（Digital Versatile Disc）、ＭＯ（Magneto Optical disc）等）に格納して適用できる他、インターネット等のネットワーク上のストレージにプログラムを格納しておき、これをダウンロードさせることにより適用することもできる。
【符号の説明】
【０１１９】
１…制御部、２…計時部、３…記憶部、４…入力部、５…表示部、６…バス、１００…情報処理装置、１１０…入力受付部、１２０…移動制御部、１２１…サーチモード移動制御部、１２２…ガイドモード移動制御部、１２３…アンロックモード移動制御部、１２４…モード切替部、１３０…禁止範囲設定部、１４０…タイマー設定部、１５０…表示制御部、２００…カーソル、２１１，２１２，２１３…モード画像、２２０…キャラクタ画像
【図１】
0006578468.tif 000002
【図２】
0006578468.tif 000003
【図３】
0006578468.tif 000004
【図４】
0006578468.tif 000005
【図５】
0006578468.tif 000006
【図６】
0006578468.tif 000007
【図７】
0006578468.tif 000008
【図８】
0006578468.tif 000009
【図９】
0006578468.tif 000010
【図１０】
0006578468.tif 000011
【図１１】
0006578468.tif 000012