本発明を実施するための形態について図面を参照して詳細に説明する。尚、各図面及び明細書記載の各実施形態において、同様の構成要素には同一の符号を付与し、説明を適宜省略する。
<<<第1の実施形態>>>
図1は、本発明の第1の実施形態に係る時刻入力システム(情報処理システムとも呼ばれる)100の構成を示すブロック図である。図1に示すように、本実施形態に係る時刻入力システム100は、時刻認識部110を含む。
図1に示す構成要素は、ハードウエア単位の回路でも、マイクロチップに含まれるモジュールでも、コンピュータ装置の機能単位に分割された構成要素でもよい。ここでは、図1に示す構成要素が、コンピュータ装置の機能単位に分割された構成要素であるものとして説明する。
時刻入力システム100は、例えば、携帯電話や、スマートフォン、その他の携帯端末、任意の情報処理装置、及び任意の情報処理システム、などに含まれるシステムであってよい。
===時刻認識部110===
時刻認識部110は、タッチパネルに対する接触の起点をアナログ表示時計の中心として認識する。即ち、時刻認識部110は、ユーザがそのタッチパネルへ接触した場合に、その接触を最初に検出した位置(接触の起点)を中心とするアナログ時計が、そのタッチパネル上に存在する(表示されている)ものと認識する。
時刻認識部110は、その起点からいずれかの方向へのその接触の移動方向を、そのアナログ表示時計における時針の方向(以後、時針方向と呼ぶ)として認識する。更に、時刻認識部110は、その起点からいずれかの方向へのその接触の移動方向を、そのアナログ表示時計における分針の方向として認識してもよい。以後、その起点からいずれかの方向へのその接触の移動、即ち、その起点からアナログ表示時計の円周方向へ向かう接触の移動、を外向移動と呼ぶ。またその外向移動の方向を外向移動方向と呼ぶ。
即ち、時刻認識部110は、ユーザがそのタッチパネルへの接触位置を、その起点からいずれかの方向へ移動させた場合に、その移動の方向(具体的には、外向移動方向)に基づいて、時針方向または分針方向を認識する。例えば、時刻認識部110は、後述の時針方向表830及び分針方向表840のそれぞれに基づいて、時針方向及び分針方向のそれぞれを認識する。
時刻認識部110は、その時針方向に基づいて、少なくとも「時」の値を含む時刻を認識する。時刻認識部110は、認識したその時刻を出力してよい。例えば、時刻認識部110は、その時刻を時刻情報820として出力する。尚、時刻認識部110は、規定値(例えば、0分、0秒)の分や秒を、更に含む時刻を認識してよい。また、時刻認識部110は、その時針方向及びその分針方向に基づいて、時刻の「時」の値及び時刻の「分」の値を含む時刻を認識してもよい。
===時針方向表830===
図2は、外向移動方向(単位は、度)と時針方向(単位は、時)との対応を示す、時針方向表830の一例を示す図である。
図2に示す時針方向表830の外向移動方向は、アナログ表示時計の中心から0時(12時)の方向が0度であるとし、時計回りに角度が増加し、一周すると0度に戻るとした場合の、移動方向の角度を示す。
一般的な12時間制のアナログ表示時計の文字盤においては、0時は「12」と表示されている。しかし、本実施形態の説明においては、24時間制の12時と0時(12時間制のアナログ表示時計の文字盤に「12」と表示されている時刻)とを区別する必要がある。そのために、本実施形態では、12時間制のアナログ表示時計の文字盤における「12」に対応する「時」を0時と呼ぶ。
図2に示す時針方向表830の時針方向は、時刻認識部110がユーザにより入力された時針方向として認識する、外向移動方向に対応する、「時」を示す。例えば、図2の時針方向表830の2行目は、「外向移動方向が345度台から14度台(345度以上、14度未満)」の場合、「ユーザにより入力された時針方向が0時」に対応することを示す。尚、ユーザによる時針方向の入力の操作方法は、入力しようとする時刻が例えば「2時55分」であっても、ユーザは「正2時」の方向を時針方向として入力する、操作方法である。
===分針方向表840===
図3は、外向移動方向と分針方向(単位は、分)との対応を示す、分針方向表840の一例を示す図である。
図3に示す分針方向表840の外向移動方向は、アナログ表示時計の中心から0分の方向が0度であるとし、時計回りに角度が増加時計回りに角度が増加し、一周すると0度に戻るとした場合の、移動方向の角度を示す。
図3に示す分針方向表840の分針方向は、時刻認識部110がユーザにより入力された分針方向として認識する、外向移動方向に対応する、「分」を示す。例えば、図3の分針方向表840の2行目は、「外向移動方向が357度台から2度台(375度以上、2度未満)」の場合、「ユーザにより入力された時針方向が0分」に対応することを示す。
===時刻認識部110の内部構成===
図4は、時刻認識部110の内部構成を示すブロック図である。
図4に示すように、時刻認識部110は、タッチパネル111、接触認識部112、時針方向認識部113、分針方向認識部114及び時刻決定部115を含む。
タッチパネル111は、タッチパネル111への接触に基づいて、接触情報810を接触認識部112へ送信する。接触情報810は、例えば、その接触の有無と、その接触のタッチパネル111上の位置とを含む。
接触認識部112は、接触情報810に基づいて、操作情報811を時針方向認識部113及び分針方向認識部114へ送信する。操作情報811は、例えば、外向移動方向を含む。
時針方向認識部113は、操作情報811及び時針方向表830に基づいて、時針方向を認識し、時針方向情報812を時刻決定部115へ送信する。
分針方向認識部114は、操作情報811及び分針方向表840に基づいて、分針方向を認識し、分針方向情報813を時刻決定部115へ送信する。
時刻決定部115は、時針方向情報812及び分針方向情報813に基づいて、時刻を認識し、時刻情報820として出力する。
次に、本実施形態をコンピュータで実現する場合のハードウエア単位の構成要素について、説明する。
図5は、本実施形態における時刻入力システム100を実現するコンピュータ700のハードウエア構成を示す図である。
図5に示すように、コンピュータ700は、プロセッサ701、記憶部702、記憶装置703、入力部704、出力部705及び通信部706を含む。更に、コンピュータ700は、外部から供給される記録媒体(または記憶媒体)707を装着してよい。例えば、記録媒体707は、情報を非一時的に記憶する不揮発性記録媒体(非一時的記録媒体)である。また、記録媒体707は、情報を信号として保持する、一時的記録媒体であってもよい。
プロセッサ701は、オペレーティングシステム(不図示)を動作させて、コンピュータ700の全体の動作を制御する。例えば、プロセッサ701は、コンピュータ700に装着された記録媒体707から、そのプログラムやデータを読み込み、読み込んだそのプログラムやそのデータを記憶部702に書き込む。ここで、そのプログラムは、例えば、後述の図6、図11及び図12に示すフローチャートの動作をコンピュータ700に実行させるためのプログラムである。
そして、プロセッサ701は、その読み込んだプログラムに従って、またその読み込んだデータに基づいて、図1に示す時刻認識部110として各種の処理を実行する。
尚、プロセッサ701は、通信網(不図示)に接続される外部コンピュータ(不図示)から、記憶部702にそのプログラムやそのデータをダウンロードしてもよい。
記憶部702は、例えばRAM(Random Access Memory)などの半導体メモリである。記憶部702は、そのプログラムやそのデータを記憶する。記憶部702は、時針方向、分針方向、時刻情報820、時針方向表830及び分針方向表840を記憶してよい。記憶部702は、更に、後述する仮の時針方向、仮の分針方向、時針方向候補、分針方向候補を記憶してよい。記憶部702は、時刻認識部110の一部として含まれてよい。
記憶装置703は、例えば、フラッシュROM(Read Only Memory)や、メモリカードなどである。記憶部702は、そのプログラムやそのデータを記憶する。記憶装置703は、時針方向、分針方向、時刻情報820、時針方向表830及び分針方向表840を記憶してよい。記憶装置703は、更に、後述する仮の時針方向、仮の分針方向、時針方向候補、分針方向候補を記憶してよい。記憶装置703は、時刻認識部110の一部として含まれてよい。
入力部704は、オペレータによる操作の入力や外部からの情報の入力を受け付ける。入力操作に用いられるデバイスは、例えば、タッチパネルである。更に、マウスや、キーボード、内蔵のキーボタン、加速度計、ジャイロセンサ及びカメラなどが、そのデバイスとして含まれてもよい。入力部704は、時刻認識部110のタッチパネル111であってよい。
出力部705は、例えば、タッチパネルである。出力部705は、例えばGUI(GRAPHICAL User Interface)によるオペレータへの入力要求や、オペレータに対する出力提示などのために用いられる。出力部705は、更に、スピーカや振動発生手段を含んでよい。出力部705は時刻認識部110のタッチパネル111であってよい。
通信部706は、外部とのインタフェースを実現する。通信部706は、時刻認識部110の一部として含まれてよい。
以上説明したように、図1に示す時刻入力システム100の機能単位の各構成要素は、図5に示すハードウエア構成のコンピュータ700によって実現される。但し、コンピュータ700が備える各部の実現手段は、上記に限定されない。すなわち、コンピュータ700は、物理的に結合した1つの装置により実現されてもよいし、物理的に分離した2つ以上の装置を有線または無線で接続し、これら複数の装置により実現されてもよい。
尚、上述のプログラムのコードを記録した記録媒体707が、コンピュータ700に供給される場合、プロセッサ701は、記録媒体707に格納されたそのプログラムのコードを読み出して実行してもよい。或いは、プロセッサ701は、記録媒体707に格納されたそのプログラムのコードを、記憶部702、記憶装置703またはその両方に格納してもよい。すなわち、本実施形態は、コンピュータ700(プロセッサ701)が実行するそのプログラム(ソフトウエア)を、一時的にまたは非一時的に、記憶する記録媒体707の実施形態を含む。尚、情報を非一時的に記憶する記憶媒体は、不揮発性記憶媒体とも呼ばれる。
以上が、本実施形態における時刻入力システム100を実現するコンピュータ700の、ハードウエア単位の各構成要素についての説明である。
次に本実施形態の動作について、図面を参照して詳細に説明する。
図6は、本実施形態の時刻入力システム100の動作を示すフローチャートである。図7は、時刻入力システム100の出力部705に表示された文字入力切替画面の一例を示す図である。
時刻入力システム100は、例えば図7に示す文字入力切替画面において、午前時刻入力及び午後時刻入力のいずれかが選択された場合に、図6に示す動作を開始する。
尚、ユーザや時刻入力システム100の外部のシステム(不図示)などからの指示に伴う動作は、本発明の特徴と直接的な関連はないので、説明を省略する。
タッチパネル111は、常時、タッチパネル111への接触に基づいて、接触情報810を接触認識部112へ送信するものとする。接触認識部112は、図6に示す動作とは非同期に、その接触情報810を受信するものとする。
時刻認識部110の接触認識部112は、接触情報810に基づいて、タッチパネル111への接触の発生を監視する(ステップS601)。
接触認識部112は、接触の発生を検出しない場合(ステップS601でNO)、ステップS601において、タッチパネル111への接触の監視を継続する。
接触認識部112は、接触の発生を検出した場合(ステップS601でYES)、その接触の発生位置(タッチパネル111上の位置、以下「位置」は、タッチパネル111の位置を示す)を起点として記憶する(ステップS602)。
次に、接触認識部112は、往復移動またはその接触の消失のいずれかの発生を監視する(ステップS603)。ここで、往復移動は、その接触の位置(以下、接触位置)が起点からいずれかの方向へ移動しかつ起点へ戻る(移動する)ことを示す。
接触認識部112は、その往復移動及びその消失のいずれも検出しない場合(ステップS603でNO)、ステップS603において、それらの監視を継続する。
接触認識部112は、その接触の消失を検出した場合(ステップS603で「消失」)、ステップS601へ戻る。
接触認識部112は、その往復移動を検出した場合(ステップS603で「往復移動」)、その往復移動の方向(具体的には、外向移動方向)を操作情報811として時針方向認識部113へ送信する(ステップS604)。
次に、時針方向認識部113は、操作情報811と時針方向表830とに基づいて時針方向を認識し、認識した時針方向を時針方向情報812として時刻決定部115へ送信する(ステップS605)。
次に、接触認識部112は、往復移動またはその接触の消失のいずれかの発生を監視する(ステップS606)。
接触認識部112は、その往復移動及びその消失のいずれも検出しない場合(ステップS606でNO)、ステップS606において、それらの監視を継続する。
接触認識部112は、その接触の消失を検出した場合(ステップS606で「消失」)、「0」(即ち、外向移動方向が0度の方向という情報)を操作情報811として分針方向認識部114へ送信する(ステップS607)。
接触認識部112は、その往復移動を検出した場合(ステップS606で「往復移動」)、その往復移動の方向(具体的には、外向移動方向)を操作情報811として分針方向認識部114へ送信する(ステップS608)。
次に、分針方向認識部114は、操作情報811と分針方向表840とに基づいて分針方向を認識し、認識した分針方向を分針方向情報813として時刻決定部115へ送信する(ステップS609)。
次に、時刻決定部115は、時針方向情報812に含まれる時針方向に基づいて「時」を、分針方向情報813に含まれる分針方向に基づいて「分」を、認識し、その「時」及び「分」で示される時刻を含む時刻情報820を出力する(ステップS610)。時刻決定部115は、例えば図7に示す文字入力切替画面において午前時刻入力が選択された場合、その「時」を午前時刻の「時」として含む時刻情報820を出力する。また、時刻決定部115は、例えば図7に示す文字入力切替画面において午後時刻入力が選択された場合、その「時」を午後時刻の「時」として含む時刻情報820を出力する。
以上が本実施形態の動作の説明である。
尚、本実施形態は、以上の説明に係わらず、以下のように動作してもよい。
例えば、時刻認識部110は、その起点付近でのダブルタップ操作やトリプルタップ操作の検出に基づいて、午前時刻または午後時刻を認識してもよい。この場合、文字入力切替画面は、「午前時刻入力」と「午後時刻入力」とを区別して選択できる必要はなく、「時刻入力」の選択が可能であればよい。
図2に示す時針方向表830は、一般的な12時間表示のアナログ表時計における外向移動方向と時針方向との対応を示す。時針方向表830は、図2の例に係わらず、例えば、24時間表示のアナログ表時計における外向移動方向と時針方向との対応を示してもよい。この場合、午前/午後を決定するための別の入力操作は不要である。
図3に示す分針方向表840は、1分単位の分針方向と外向移動方向との対応を示す。分針方向表840は、図3の例に係わらず、例えば、任意の分(例えば、5分)を単位として、外向移動方向との対応を示してもよい。この場合、ユーザは、5分単位の時刻入力が可能である。
図8は、タッチパネル111上に表示されるアナログ表示時計の一例を示す図である。例えば、時刻認識部110は、図8に示すように、タッチパネル111に対する接触の起点を中心とするアナログ表示時計をタッチパネル111に表示してもよい。この場合、ユーザは、この表示されたアナログ表示時計を操作の目安にすることができる。
上述した本実施形態における第1の効果は、タッチパネル111の画面サイズに係わらず、直感的かつ容易な、時刻の入力操作を可能にする点である。
その理由は、時刻認識部110が、タッチパネル111に対する外向移動方向を時針方向とすることで、少なくとも時刻の「時」の値を含む時刻を認識するからである。更に、時刻認識部110が、タッチパネル111に対する外向移動方向を分針方向とすることで、時刻の「分」の値を含む時刻を認識するからである。
上述した本実施形態における第2の効果は、タッチパネル111への接触を保ったままの一連の操作により、時刻の入力操作を可能にする点である。
その理由は、時刻認識部110の接触認識部112が、1回目の往復移動で時針方向に対応する「外向移動方向」を認識するからである。更に、接触認識部112が、2回目の往復移動で分針方向に対応する「外向移動方向」を認識するからである。
<<<第1の実施形態の第1の変形例>>>
第1の実施形態の第1の変形例は、タッチパネル111への接触を保ったままで、午前/午後を入力することを可能にする変形例である。
本変形例において、時刻認識部110は、前述の起点を中心とする同心円の円周に沿った、接触の移動に基づいて、時刻の午前/午後を、更に認識する。以後、「前述の起点を中心とする同心円の、円周に沿った接触の移動」を円周移動と呼ぶ。
具体的には、本変形例は、図6に示すフローチャートにおいて、ステップS604、ステップS605及びステップS610のそれぞれに替えて、以下に示すステップS614(不図示)、ステップS615(不図示)及びステップS620(不図示)のそれぞれの動作を行う。
===ステップS614===
接触認識部112は、その往復移動を検出した場合(ステップS603で「往復移動」)、その往復移動の方向(具体的には、外向移動方向)と報知部とを操作情報811として時針方向認識部113へ送信する(ステップS614)。接触認識部112は、例えば以下のように、午前/午後操作情報を生成する。
接触認識部112は、外向移動と、アナログ表示時計の円周側から起点へ戻る接触の移動(以後、内向移動と呼ぶ)と、の間の円周移動に基づいて、午前/午後操作情報を生成する。午前/午後操作情報は、「操作なし」、「午前指定操作」及び「午後指定操作」のいずれかであってよい。
接触認識部112は、その円周移動がない場合に「操作なし」を生成する。例えば、接触認識部112は、その円周移動が、時計回りの場合に「午前指定操作」、反時計回りの場合に「午後指定操作」を生成する。尚、接触認識部112は、その円周移動が、時計回りの場合に「午後指定操作」、反時計回りの場合に「午前指定操作」を生成してもよい。
===ステップS615===
次に、時針方向認識部113は、操作情報811と時針方向表830とに基づいて時針方向を認識し、認識した時針方向と午前/午後操作情報とを時針方向情報812として時刻決定部115へ送信する(ステップS615)。
===ステップS620===
次に、時刻決定部115は、午前/午後が示された「時」を、分針方向情報813に含まれる分針方向に基づいて「分」を、認識し、その「時」及び「分」で示される時刻を含む時刻情報820を出力する(ステップS620)。ここで、時刻決定部115は、時針方向情報812に含まれる時針方向と午前/午後操作情報とに基づいて、午前/午後が確定された「時」を認識する。
例えば、午前/午後操作情報が「操作なし」の場合、時刻決定部115は、デフォルト値を用いて、時針方向情報812に含まれる時針方向に基づいて「時」の午前/午後を更に認識する。例えば、デフォルト値は、その往復操作が行われた時刻の午前/午後である。また、デフォルト値は、その往復操作が行われた時刻以降の、最も近いその「時」に対応する時刻の午前/午後であってよい。また、デフォルト値は、その往復操作が行われた時刻以前の、最も近いその「時」に対応する時刻の午前/午後であってよい。例えば、午前/午後操作情報が「午前指定操作」の場合、時刻決定部115は、時針方向情報812に含まれる時針方向に基づいて「時」の午前/午後を、午前と認識する。例えば、午前/午後操作情報が「午後指定操作」の場合、時刻決定部115は、時針方向情報812に含まれる時針方向に基づいて「時」の午前/午後を、午後と認識する。
尚、接触認識部112が円周移動を検出する移動角度の下限閾値は、任意の値(例えば、10度程度の小さい値や、180度、360度など)であってよい。また、円周移動における円周は、ユーザが操作する誤差を考慮した幅のある円周であってよい。
上述した本変形例における効果は、タッチパネル111への接触を保ったままの一連の操作により、午前/午後が区別された時刻の入力操作を可能にする点である。
その理由は、時刻認識部110が、円周移動に基づいて、時刻の午前/午後を、更に認識するからである。
<<<第1の実施形態の第2の変形例>>>
第1の実施形態の第2の変形例は、タッチパネル111への接触を保ったままで、入力する時刻の微調整を可能にする変形例である。
本変形例において、時刻認識部110は、更に、前述の円周移動に基づいて、外向移動方向に対応する時刻を調整する。換言すると、時刻認識部110は、前述の円周移動に基づいて、「外向移動方向に対応する時針方向」及び「外向移動方向に対応する分針方向」を調整する。更に換言すると、時刻認識部110は、前述の往復移動と、その円周移動と、後述の時針方向表831及び分針方向表841のそれぞれとに基づいて、時針方向及び分針方向のそれぞれを認識する。
===時針方向表831===
図9は、外向移動方向と時針方向との対応を示す、時針方向表831の一例を示す図である。
図9に示す時針方向表831の外向移動方向は、アナログ表示時計の中心から0時の方向が0度であるとし、時計回りに角度が増加し、一周すると0度に戻るとした場合の、移動方向の角度を示す。
図9に示す時針方向表831の時針方向は、時刻認識部110が、ユーザにより入力された時針方向として認識する、外向移動方向に対応する、「時」の候補を示す。例えば、図9の時針方向表831の2行目は、「外向移動方向が0度台から29度台(0度以上、30度未満)」の場合、「ユーザにより入力された時針方向の候補が0時または1時」に対応することを示す。尚、ユーザによる時針方向の入力の操作方法は、入力しようとする時刻が例えば「2時55分」であっても、ユーザは「正2時」の方向を、時針方向として入力する、操作方法である。
図9に示す例に係わらず、時針方向に含まれる時刻の数は、任意の数であってよい。例えば、その時刻の数は、3であってもよい。この場合、時針方向表831は、例えば、「外向移動方向が0度台から29度台(0度以上、30度未満)」の場合、「ユーザにより入力された時針方向の候補が、11時、0時または1時」に対応することを示す情報を含む。
===分針方向表841===
図10は、本変形例における外向移動方向と分針方向との対応を示す、分針方向表841の一例を示す図である。
図10に示す分針方向表841の外向移動方向は、アナログ表示時計の中心から0分の方向が0度であるとし、時計回りに角度が増加し、一周すると0度に戻るとした場合の、移動方向の角度を示す。
図10に示す分針方向表841の分針方向は、時刻認識部110がユーザにより入力された分針方向として認識する、外向移動方向に対応する、「分」の候補を示す。例えば、図10の分針方向表841の2行目は、「外向移動方向が357度台から2度台(357度以上、2度未満)」の場合、「ユーザにより入力された時針方向の候補が58分、59分、0分、1分または2分」に対応することを示す。
図10に示す例に係わらず、分針方向に含まれる時刻の数は、任意の数であってよい。
次に、本変形例の動作について説明する。
図11及び図12は、本変形例の動作を示すフローチャートである。
時刻認識部110の接触認識部112は、接触情報810に基づいて、タッチパネル111への接触の発生を監視する(ステップS631)。
接触認識部112は、接触の発生を検出しない場合(ステップS631でNO)、ステップS631において、タッチパネル111への接触の監視を継続する。
接触認識部112は、接触の発生を検出した場合(ステップS631でYES)、その接触の発生位置(タッチパネル111上の位置、以下「位置」は、タッチパネル111の位置を示す)を起点として記憶する(ステップS632)。
次に、接触認識部112は、外向移動またはその接触の消失のいずれかの発生を監視する(ステップS633)。ここで、外向移動は、その接触の位置が起点からいずれかの方向へ向かって移動することを示す。
接触認識部112は、その外向移動及びその消失のいずれも検出しない場合(ステップS633でNO)、ステップS633において、それらの監視を継続する。
接触認識部112は、その接触の消失を検出した場合(ステップS633で「消失」)、ステップS631へ戻る。
接触認識部112は、その外向移動を検出した場合(ステップS633で「外向移動」)、その外向移動方向を操作情報811として時針方向認識部113へ送信する(ステップS634)。
次に、時針方向認識部113は、操作情報811と時針方向表831とに基づいて時針方向候補を取得する(ステップS635)。
次に、接触認識部112は、円周移動、内向移動またはその接触の消失のいずれかの発生を監視する(ステップS636)。
接触認識部112は、その円周移動、その内向移動及びその消失のいずれも検出しない場合(ステップS636でNO)、ステップS636において、それらの監視を継続する。
接触認識部112は、その接触の消失を検出した場合(ステップS636で「消失」)、ステップS631へ戻る。
接触認識部112は、その円周移動を検出した場合(ステップS636で「円周移動」)、その円周移動の方向に基づいて、操作情報811を時針方向認識部113へ送信する(ステップS637)。そして、処理は、ステップS636へ戻る。例えば、接触認識部112は、その円周移動が、時計回りの場合に「前進調整」を、反時計回りの場合に「後進調整」を、操作情報811として送信する。
接触認識部112は、その内向移動を検出した場合(ステップS636で「内向移動」)、「調整完」を操作情報811として送信する(ステップS638)。
次に、時針方向認識部113は、受信した操作情報811の「前進調整」、「後進調整」または「調整完」のいずれかに基づいて、ステップS635で取得した時針方向候補の内のいずれかを時針方向として認識する。続けて、時針方向認識部113は、認識した時針方向を時針方向情報812として時刻決定部115へ送信する(ステップS639)。
具体的には、時針方向認識部113は、ステップS634において送信された操作情報811として、例えば「外向移動の方向70度」を受信する。この場合、時針方向認識部113は、ステップS635において、時針方向候補「2、3」を取得する。ここで、時針方向認識部113は、例えば「2」を仮の時針方向として認識する。次に、時針方向認識部113は、ステップS637において送信された操作情報811を受信する。その操作情報811が「前進調整」であった場合、時針方向認識部113は、「3」を時針方向として認識する。その操作情報811が例えば「後進調整」であった場合、時針方向認識部113は、「2」を時針方向として認識する。これは、時針方向表831では、後進の時針方向候補を定義していないためである。その操作情報811が例えば「調整完」であった場合、時針方向認識部113は、「2」を時針方向として認識する。
尚、上述の時針方向認識部113の動作は、時針方向表831の定義に対応して、適切に変更されてよい。例えば、上述の例では、時針方向認識部113は、時針方向候補の内、若番の時刻を仮の時針方向として認識するようにしたが、老番の時刻を仮の時針方向として認識してもよい。この場合、時針方向認識部113は、その操作情報811が「後進調整」であった場合に「2」を、「前進調整」及び「調整完」であった場合に「3」を時針方向として認識する。
次に、接触認識部112は、外向移動またはその接触の消失のいずれかの発生を監視する(ステップS641)。
接触認識部112は、その外向移動及びその消失のいずれも検出しない場合(ステップS641でNO)、ステップS641において、それらの監視を継続する。
接触認識部112は、その接触の消失を検出した場合(ステップS641で「消失」)、「0」(即ち、起点からの接触の外向移動方向が0度の方向という情報)及び「調整完」を操作情報811として分針方向認識部114へ送信する(ステップS642)。
次に、分針方向認識部114は、受信した操作情報811の「0」及び「調整完」に基づいて、「0」を分針方向として認識し、認識した分針方向を分針方向情報813として時刻決定部115へ送信する(ステップS643)。
接触認識部112は、その外向移動を検出した場合(ステップS641で「外向移動」)、その外向移動の方向を操作情報811として分針方向認識部114へ送信する(ステップS644)。
次に、分針方向認識部114は、操作情報811と分針方向表841とに基づいて分針方向候補を取得する(ステップS645)。
次に、接触認識部112は、円周移動、内向移動またはその接触の消失のいずれかの発生を監視する(ステップS646)。
接触認識部112は、その円周移動、その内向移動及びその消失のいずれも検出しない場合(ステップS646でNO)、ステップS646において、それらの監視を継続する。
接触認識部112は、その接触の消失を検出した場合(ステップS646で「消失」)、ステップS631へ戻る。
接触認識部112は、その円周移動を検出した場合(ステップS646で「円周移動」)、その円周移動の方向に基づいて、操作情報811を分針方向認識部114へ送信する(ステップS647)。そして、処理は、ステップS646へ戻る。例えば、接触認識部112は、その円周移動が、時計回りの場合に「前進調整」を、反時計回りの場合に「後進調整」を、操作情報811として送信する。
接触認識部112は、その内向移動を検出した場合(ステップS646で「内向移動」)、「調整完」を操作情報811として送信する(ステップS648)。
次に、分針方向認識部114は、受信した操作情報811の「前進調整」、「後進調整」または「調整完」のいずれかに基づいて、ステップS645で取得した分針方向候補の内のいずれかを分針方向として認識する。続けて、分針方向認識部114は、認識した分針方向を分針方向情報813として時刻決定部115へ送信する(ステップS649)。
具体的には、分針方向認識部114は、ステップS644において送信された操作情報811として、例えば「外向移動の方向25度」を受信する。この場合、分針方向認識部114は、ステップS645において、分針方向候補「2、3、4、5、6」を取得する。ここで、分針方向認識部114は、例えば「4」を仮の時針方向として認識する。次に、分針方向認識部114は、ステップS647において送信された操作情報811を受信する。その操作情報811が「前進調整」であった場合、分針方向認識部114は、「5」を時針方向として認識する。その操作情報811が例えば「後進調整」であった場合、分針方向認識部114は、「3」を分針方向として認識する。その操作情報811が例えば「調整完」であった場合、分針方向認識部114は、「2」を時針方向として認識する。
尚、上述の分針方向認識部114の動作は、時針方向表831の定義に対応して、適切に変更されてよい。
次に、時刻決定部115は、時針方向情報812に含まれる時針方向に基づいて「時」を、分針方向情報813に含まれる分針方向に基づいて「分」を、認識し、その「時」及び「分」で示される時刻を含む時刻情報820を出力する(ステップS650)。
上述した本変形例における効果は、タッチパネル111への接触を保ったままの一連の操作により、時刻の微調整の入力操作を可能にする点である。
その理由は、時刻認識部110が、円周移動に基づいて、時針方向及び分針方向を調整するからである。
<<<第1の実施形態の第3の変形例>>>
第1の実施形態の第3の変形例は、前述の第1の変形例と第2の変形例との両方を適用する変形例である。
時刻認識部110は、前述の円周移動に基づいて、午前の「時」の値2つと、午後の「時」の値2つと、の値の内のいずれかを1つを、時刻の「時」の値として認識する。
===時針方向表832===
図13は、外向移動方向と時針方向との対応を示す、時針方向表832の一例を示す図である。
図13に示す時針方向表832の外向移動方向は、アナログ表示時計の中心から0時の方向が0度であるとし、時計回りに角度が増加し、一周すると0度に戻るとした場合の、移動方向の角度を示す。
図13に示す時針方向表832の時針方向は、時刻認識部110がユーザにより入力された時針方向として認識する、外向移動方向に対応する「時」の候補を示す。例えば、図13の時針方向表832の2行目は、「外向移動方向が0度台から29度台(0度以上、30度未満)」の場合、「ユーザにより入力された時針方向の候補が13時、12時、0時または1時」に対応することを示す。尚、ユーザによる時針方向の入力の操作方法は、入力しようとする時刻が例えば「2時55分」であっても、ユーザは「正2時」の方向を、時針方向として入力する、操作方法である。
本変形例の動作の具体例を説明する。
(第1のステップ)例えば、接触認識部112が、外向移動として「251度」を検出し、「外向移動:251度」を含む操作情報811を時針方向認識部113に送信する。この場合、時針方向認識部113は、その操作情報811及び時針方向表832に基づいて、時針方向候補として「21、20、8、9」を取得し、例えば「8」を仮の時針方向として認識する。
(第2のステップ)次に、接触認識部112が、反時計回りの円周移動を検出し、「午後指定操作」を含む操作情報811を時針方向認識部113に送信する。この場合、時針方向認識部113は、その操作情報811及び時針方向候補「21、20、8、9」と仮の時針方向である「8」とに基づいて、「20」を仮の時針方向として認識する。
(第3のステップ)次に、接触認識部112が、内向移動を検出し、「調整完」を含む操作情報811を時針方向認識部113に送信する。この場合、時針方向認識部113は、「20」を時針方向として認識する。
また、接触認識部112が、反時計回りの円周移動を検出し、「後進調整」を含む操作情報811を時針方向認識部113に送信する。この場合、時針方向認識部113は、その操作情報811及び時針方向候補「21、20、8、9」と仮の時針方向である「20」とに基づいて、「21」を仮の時針方向として認識する。
(第4のステップ)次に、接触認識部112が、内向移動を検出し、「調整完」を含む操作情報811を時針方向認識部113に送信する。この場合、時針方向認識部113は、「21」を時針方向として認識する。
また、接触認識部112が更に円周移動を検出した場合は、その円周移動の方向に対応して、時針方向候補「21、20、8、9」内のいずれかが、仮の時針方向として認識され、「時」を認識するための動作が継続される。
上述した本変形例における効果は、タッチパネル111への接触を保ったままの一連の操作により、午前/午後の区別を含む、時刻の微調整の、入力操作を可能にする点である。
その理由は、時刻認識部110が、円周移動に基づいて、午前/午後及び時針方向を調整するからである。
<<<第1の実施形態の第4の変形例>>>
本変形例は、「時」や「分」に替えて、「月」や「日」を含む時刻を認識し、認識したその時刻を出力する変形例である。
本変形例において、時刻認識部110は、前述の認識した時刻が「月」または「月日」を指すものとして認識する。
例えば、時刻認識部110は、前述の時針方向が「月」を指すものと見なし、その時針方向に基づいて、少なくとも「月」を含む時刻を認識して出力してよい。更に、時刻認識部110は、前述の分針方向が「日」を指すものと見なし、その分針方向に基づいて、「月」及び「日」を含む時刻を認識して出力してもよい。
例えば、時刻決定部115は、時針方向「1」を「1月」、時針方向「2」を「2月」のように順次対応するものと見なし、時針方向「0」を「12月」と見なして、「月」を認識する。また、時刻決定部115は、分針方向「0」及び「1」を「1日」、分針方向「2」及び「3」を「2日」のように順次対応するものと見なし、「月」に続く「日」の入力操作がなされなかった場合に「31日」と見なして、「日」を認識する。また、時刻決定部115は、「月」が「2」と認識した場合は、分針方向「54」から「57」までを「28日」に対応するものと見なし、分針方向「58」及び「59」を「29日」に対応するものと見なしてよい。この場合、うるう年の判断は、ユーザが行うものとする。
尚、本変形例において、時刻認識部110は、「月」だけを決定するようにしてよい。また、時刻認識部110は、前述の時針方向に基づいて「日」を決定するようにしてもよい。この場合、例えば、文字入力切替画面において、「月入力」及び「日入力」の切り替えが可能であってよい。
上述した本変形例における効果は、「時」及び「分」の時刻入力の場合と同様の操作で、「月」及び「日」の時刻入力の操作を可能にする点である。
その理由は、時刻認識部110が、認識した時刻が「月」または「月日」を指すものとして認識するからである。
時刻認識部110は、上述の様々な変形例に示す動作を、ユーザが任意に切り替えるための手段(不図示)を更に含んでもよい。
<<<第2の実施形態>>>
次に、本発明の第2の実施形態について図面を参照して詳細に説明する。以下、本実施形態の説明が不明確にならない範囲で、前述の説明と重複する内容については説明を省略する。
図14は、本発明の第2の実施形態に係る時刻入力システム200の構成を示すブロック図である。
図14に示すように、本実施形態における時刻入力システム200は、時刻認識部210及び報知部220を含む。
===時刻認識部210===
時刻認識部210は、前述の操作情報811、時針方向情報812、分針方向情報813、仮の時針方向、仮の分針方向、時針方向候補、分針方向候補、及び時刻情報820などを、任意に、報知部220へ送信する。
===報知部220===
報知部220は、時刻認識部210から受信した操作情報811、時針方向情報812、分針方向情報813、仮の時針方向、仮の分針方向、時針方向候補、分針方向候補、及び時刻情報820などをユーザに報知する。
例えば、報知部220は、操作を誘導するための情報をタッチパネル111に表示する。図15は、本実施形態における、時針方向候補及び仮の時針方向の表示例である。図15は、時針方向候補が「22」、「21」、「9」、「10」であり、仮の時針方向が反転表示されている「9」であることを示す。
図16は、本実施形態における、分針方向候補及び仮の分針方向の表示例である。図16は、分針方向候補が「2」、「3」、「4」、「5」、「6」であり、仮の分針方向が反転表示されている「4」であることを示す。
また、報知部220は、上述の各情報をタッチパネル111に表示する。例えば、報知部220は、図8に示すアナログ表示時計に重ねて、操作情報811、時針方向情報812、分針方向情報813に関する情報を表示してよい。
図17は、アナログ表示時計に重ねて表示される操作情報811、時針方向情報812、分針方向情報813に関する情報の一例を示す図である。図17は、左側に示すタッチパネル111の画面において、時針方向情報812が「9」と認識され、4分方向への外向移動が検出され、分針方向候補が「2」、「3」、「4」、「5」、「6」とされ、仮の分針方向が「4」とされて、表示されていることを示す。図17は、右側に示すタッチパネル111の画面において、更に時計周りの円周移動が検出され、仮の分針方向が「5」とされて、表示されていることを示す。
報知部220は、上述の各情報を音声出力してもよい。例えば、報知部220は、「認識された時針方向は9時です」や「6時方向への外向移動を検出しました」などを音声で出力する。
また、報知部220は、上述の各情報に対応する振動やビープ音を発生してもよい。例えば、報知部220は、時針方向が所定の形式(例えば、モールス符号)に変換し、その変換された結果に対応する振動やビープ音を発生する。
また、報知部220は、通信部706を介して、上述の各情報を送信してもよい。この場合、送信先のデバイス(不図示)により、その送信された情報がユーザに報知される。
時刻入力システム200は、時刻入力システム100と同様に、図5に示すコンピュータ700によって実現されてよい。
この場合、プロセッサ701は、その読み込んだプログラムに従って、またその読み込んだデータに基づいて、更に、図14に示す報知部220としても、各種の処理を実行する。
出力部705は、更に報知部220の一部としても含まれてよい。
通信部706は、更に報知部220の一部としても含まれてよい。
上述した本実施形態における第1の効果は、時刻入力の操作を、より容易にすることを可能にする点である。
その理由は、報知部220が、時刻認識部210において生成される各情報を、ユーザに報知するからである。
上述した本実施形態における第2の効果は、時刻入力の操作性を、より向上することを可能にする点である。具体的には、ユーザは、画面を目視することなく時刻入力操作の状態を確認できる。
その理由は、報知部220が前述の各情報を、音声や振動などで出力するからである。
尚、時刻認識部210は、第1の実施形態に示す様々な変形例を適用されてよい。
<<<第3の実施形態>>>
次に、本発明の第3の実施形態について図面を参照して詳細に説明する。以下、本実施形態の説明が不明確にならない範囲で、前述の説明と重複する内容については説明を省略する。
図18は、本発明の第3の実施形態に係る時刻入力システム300の構成を示すブロック図である。
図18に示すように、本実施形態における時刻入力システム300は、時刻認識部310を含む。
===時刻認識部310===
時刻認識部310は、前述の認識した時刻を調整した履歴に基づいて、接触の移動方向と、認識する時刻との対応を校正する。換言すると、時刻認識部310は、前述の時針方向及び前述の分針方向を調整した履歴に基づいて、接触の外向移動方向と時針方向との対応、または接触の外向移動方向と分針方向との対応、を校正する。具体的には、時刻認識部310は、その履歴に基づいて、時針方向表831、分針方向表841及び時針方向表832を更新する。
図19は、時刻認識部310の内部構成の一例を示すブロック図である。図19に示すように、時刻認識部310は、図4に示す時刻認識部110に比べて、時針方向認識部113に替えて時針方向認識部313を、分針方向認識部114に替えて分針方向認識部314を含む。
===時針方向認識部313===
時針方向認識部313は、接触認識部112から受信した、「前進調整」及び「後進調整」のそれぞれを含む操作情報811に基づいて、時針方向表831及び時針方向表832を更新する。
例えば、時針方向認識部313は、操作情報811に含まれる「前進調整」及び「後進調整」を、その操作情報811を受信した時点における仮の時針方向と関連付けて、時針調整履歴として保持する。
次に、時針方向認識部313は、所定のタイミングで、その時針調整履歴に基づいて、時針方向表831及び時針方向表832を更新する。例えば、その時針調整履歴が、特定の仮の時針方向に関連付けられた、所定の数以上の、「前進調整」を含む場合、時針方向認識部313は、その仮の時針方向に対応する「外向移動方向」を所定の度数だけ時計回りの方向へ広げる。時針方向認識部313は、上述の例に係わらず、「前進調整」及び「後進調整」を用いる任意の適切な演算結果に基づいて、仮の時針方向に対応する「外向移動方向」を変更してよい。時針方向認識部313は、後述の分針調整履歴に更に基づいて、時針方向表831及び時針方向表832を更新してもよい。
ここで、その所定のタイミングは、任意の定期的なタイミングであってよい。また、その所定のタイミングは、操作情報811(例えば、「前進調整」、「後進調整」及び「外向移動」のいずれかを含む)を受信したタイミングであってもよい。その所定のタイミングは、任意の適切なタイミングであってよい。その所定の数は、任意の数であってよい。また、時針方向認識部313は、その時針調整履歴のそれぞれに現在時刻を関連付けて記憶し、所定の時間が経過したその時針調整履歴を削除してよい。
===分針方向認識部314===
分針方向認識部314は、接触認識部112から受信した、「前進調整」及び「後進調整」のそれぞれを含む操作情報811に基づいて、分針方向表841を更新する。
例えば、分針方向認識部314は、操作情報811に含まれる「前進調整」及び「後進調整」を、その操作情報811を受信した時点における仮の分針方向と関連付けて、分針調整履歴として保持する。
次に、分針方向認識部314は、所定のタイミングで、その分針調整履歴に基づいて、分針方向表841を更新する。分針方向認識部314は、前述の時針調整履歴に更に基づいて、分針方向表841を更新してもよい。
図20は、図10に示す分針方向表841が、分針方向認識部314によって更新された例を示す図である。
具体的には、その時針調整履歴が、特定の仮の分針方向(ここでは「3」とする)に関連付けられた、所定の数(例えば、2)以上の、「後進調整」を含むとする。この場合、分針方向認識部314は、その仮の分針方向に対応する「外向移動方向」を所定の度数だけ反時計回りの方向へ広げる。例えば、分針方向認識部314は、図10の3行目の「3−8」、4行目の「9−14」、5行目の「15−20」、6行目の「21−26」、7行目の「27−32」のそれぞれを、図20の3行目の「3−7」、4行目「8−13」、5行目の「13−19」、6行目の「20−25」、7行目の「26−32」に変更する。
上述した本実施形態における効果は、時刻入力の操作性を、より向上することを可能にする点である。具体的には、その効果は、時針方向や分針方向を調整するための操作の削減を可能にする点である。
その理由は、時刻認識部310が、時針方向及び分針方向を調整した履歴に基づいて、接触の外向移動方向と時針方向及び分針方向との対応を校正するからである。
尚、時刻認識部310は、第1の実施形態に示す様々な変形例を適用されてよい。また、時刻認識部310は、第2の実施形態に示す報知部220を接続されてもよい。
以上の各実施形態で説明した各構成要素は、必ずしも個々に独立した存在である必要はない。例えば、複数個の任意のその構成要素が1個のモジュールとして実現されてよい。また、その構成要素の内の任意のひとつが複数のモジュールで実現されてもよい。また、その構成要素の内の任意のひとつがその構成要素の内の任意の他のひとつであってよい。また、その構成要素の内の任意のひとつの一部と、その構成要素の内の任意の他のひとつの一部とが重複してもよい。
以上説明した各実施形態における各構成要素及び各構成要素を実現するモジュールは、必要に応じ、可能であれば、ハードウエア的に実現されてよい。また、各構成要素及び各構成要素を実現するモジュールは、コンピュータ及びプログラムで実現されてよい。また、各構成要素及び各構成要素を実現するモジュールは、ハードウエア的なモジュールとコンピュータ及びプログラムとの混在により実現されてもよい。
そのプログラムは、例えば、磁気ディスクや半導体メモリなど、コンピュータが読み取り可能な非一時的記録媒体に記録され、コンピュータに提供される。そして、そのプログラムは、コンピュータの立ち上げ時などに、非一時的記録媒体からコンピュータに読み取られる。この読み取られたプログラムは、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施形態における構成要素として機能させる。
また、以上説明した各実施形態では、複数の動作をフローチャートの形式で順番に記載してあるが、その記載の順番は複数の動作を実行する順番を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の順番は内容的に支障のない範囲で変更することができる。
更に、以上説明した各実施形態では、複数の動作は個々に相違するタイミングで実行されることに限定されない。例えば、ある動作の実行中に他の動作が発生してよい。また、ある動作と他の動作との実行タイミングが部分的に乃至全部において重複してもよい。
更に、以上説明した各実施形態では、ある動作が他の動作の契機になるように記載しているが、その記載はある動作と他の動作との関係を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の関係は内容的に支障のない範囲で変更することができる。また各構成要素の各動作の具体的な記載は、各構成要素の各動作を限定するものではない。このため、各構成要素の具体的な各動作は、各実施形態を実施する上で機能的、性能的、その他の特性に対して支障を来さない範囲内で変更されてよい。
以上、各実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。