(57)【要約】【課題】比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力装置、入力方法、入力プログラムを提供する。【解決手段】入力情報を選択させ、該選択した情報を入力するための入力装置であって、指示位置を検出する指示位置検出手段（Ｓ１１０）と、前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更手段（Ｓ１１３）と、前記入力候補情報から前記入力情報を決定する入力情報決定手段（Ｓ１０３）とを有する。【選択図】図１１
2004038547.tif 000002
【特許請求の範囲】
【請求項１】
入力情報を選択させ、該選択した情報を入力するための入力装置であって、
指示位置を検出する指示位置検出手段と、
前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更手段と、
前記入力候補情報から前記入力情報を決定する入力情報決定手段とを有することを特徴とする入力装置。
【請求項２】
前記入力候補情報変更手段は、前記指示位置が、略円周上を変移することより前記入力候補情報を変更することを特徴とする請求項１に記載の入力装置。
【請求項３】
前記入力情報は文字情報であることを特徴とする請求項１または２に記載の入力装置。
【請求項４】
前記入力情報はアプリケーションを起動するためのアプリケーション情報であることを特徴とする請求項１から３のいずれか１項に記載の入力装置。
【請求項５】
入力情報を選択させ、該選択した情報を入力するための入力装置における入力方法であって、
指示位置を検出する指示位置検出段階と、
前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更段階と、
前記入力候補情報から前記入力情報を決定する入力情報決定段階とを有することを特徴とする入力方法。
【請求項６】
コンピュータに、
指示位置を検出する指示位置検出手順と、
前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更手順と、
前記入力候補情報から前記入力情報を決定する入力情報決定手順とを実行させるための入力プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報の入力に関し、特に文字あるいはアプリケーション情報を入力するための入力装置、入力方法、入力プログラムに関する。
【０００２】
【従来の技術】
コンピュータに文字などの情報を入力する場合、タッチパネルにペン等を用いて手書きで文字を入力することがある。また、他の方法として、キーボードを表示した画面上に触れるか、あるいはクリックするなどして文字を選択することにより文字を入力している。
【０００３】
【発明が解決しようとする課題】
しかしながら、タッチパネル上に文字を入力する場合、あるいはキーボードを表示する場合のいずれにおいても、文字を入力する領域、あるいはキーボードを表示する領域としてある程度の広さが必要となる。また、タッチパネル上に手書きで書き込まれた軌跡によっては、ユーザが意図した文字とは異なる文字として認識される可能性がある。
【０００４】
本発明は、このような問題点に鑑み、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力装置、入力方法、入力プログラムを提供することを目的とする。
【０００５】
【課題を解決するための手段】
請求項１に記載の発明は、入力情報を選択させ、該選択した情報を入力するための入力装置であって、指示位置を検出する指示位置検出手段と、前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更手段と、前記入力候補情報から前記入力情報を決定する入力情報決定手段とを有することを特徴とする。
【０００６】
請求項１によれば、指示位置の変移で情報を選択し、その情報を入力することができるため、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力装置を提供することができる。
【０００７】
請求項２に記載の発明は、前記入力候補情報変更手段は、前記指示位置が、略円周上を変移することより前記入力候補情報を変更することを特徴とする。
【０００８】
請求項２によれば、例えばユーザは、円のように単純に指示位置を変移させるだけで、情報が入力可能な入力装置を提供することができる。
【０００９】
請求項３に記載の発明は、前記入力情報は文字情報であることを特徴とする。
【００１０】
請求項３によれば、文字情報が入力可能な入力装置を提供することができる。
【００１１】
請求項４に記載の発明は、前記入力情報はアプリケーションを起動するためのアプリケーション情報であることを特徴とする。
【００１２】
請求項４によれば、アプリケーションを起動することが可能な入力装置を提供することができる。
【００１３】
請求項５に記載の発明は、入力情報を選択させ、該選択した情報を入力するための入力装置における入力方法であって、指示位置を検出する指示位置検出段階と、前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更段階と、前記入力候補情報から前記入力情報を決定する入力情報決定段階とを有することを特徴とする。
【００１４】
請求項５によれば、指示位置の変移で情報を選択し、その情報を入力することができるため、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力方法を提供することができる。
【００１５】
請求項６に記載の発明は、コンピュータに、指示位置を検出する指示位置検出手順と、前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更手順と、前記入力候補情報から前記入力情報を決定する入力情報決定手順とを実行させるための入力プログラム。
【００１６】
請求項６によれば、指示位置の変移で情報を選択し、その情報を入力することができるため、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力プログラムを提供することができる。
【００１７】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。
【００１８】
本発明の実施の形態におけるシステムの全体構成図を図１に示す。図１に示されるように、本実施の形態における入力装置は、コンピュータの表示装置２３に備えられた参照符号が９の入力装置と、外付けされている参照符号１０の入力装置の２種類ある。そして、入力装置９、１０は、コンピュータ５０とＵＳＢ（Ｕｎｉｖｅｒｓａｌ　Ｓｅｒｉａｌ　Ｂｕｓ）ケーブルなどで接続され、コンピュータ５０上に表示するために検出した接触位置などのデータをコンピュータ５０に送信する。なお、送信方法は、シリアルでもパラレルでも構わない。
【００１９】
コンピュータ５０は、図２に示されるように、表示装置２３と、ドライブ装置５２と、主記憶装置５４と、補助記憶装置５６と、ＣＰＵ（Ｃｅｎｔｒａｌ　ＰｒｏｃｅｓｓｉｎｇＵｎｉｔ）４６と、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ　Ｓｅｒｉａｌ　Ｂｕｓ）インタフェース４８とを有し、それらはバスで接続されている。このうち、表示装置２３は、コンピュータ５０を操作するために必要な各種情報などを表示する。ドライブ装置５２は、着脱自在な記録媒体の読み書きが可能であり、例えば記録媒体からプログラム読み込み、補助記憶装置５６にインストールするときに用いられる。ＣＰＵ４６は、補助記憶装置５６に格納されたプログラムを読み込み実行し、プログラムやデータなどを記憶するために主記憶装置５４を用いる。そしてＵＳＢインタフェース４８は、入力装置１０とのやり取りをＵＳＢ転送方式で行うためのインタフェースである。
【００２０】
次に、入力装置９、１０について説明する。まず、入力装置９は、スタイラスや指、あるいはペンなどでの接触を検出するセンサ部を有するタッチパネルであり、表示装置２３の画面上に固定されている。そして、表示装置２３の画面には、図３に示されるグラフィック７０が表示される。グラフィック７０は、濁点入力部分７２と句読点入力部分７３と文字「あ」が表示されている部分で構成されるタッチ部分７１を有する。このタッチ部分にユーザがペンや指を触れて操作することで文字を入力する。そして、濁点入力部分７２は、濁点がペンや指で入力された場合に表示している文字に濁点が加えられる。句読点入力部分７３は、丸や点が入力された場合に表示している文字の次に、入力された句読点が加えられる。
【００２１】
また、グラフィック７０は、タッチ部分７１の他に、入力された結果を表示する入力結果表示ボックス７４と、ＯＫボタン７５と、キャンセルボタン７６とを有する。
【００２２】
次に、もう一つの入力装置である入力装置１０の斜視図を図４に示す。図４に示されるように、入力装置１０は、スタイラスや指、あるいはペン１１などによる接触およびその位置の検出を行うセンサ部１２を有する。この入力装置１０の場合における情報の表示方法であるが、入力装置９と同様に、表示装置２３に表示しても良いし、入力装置１０に表示しても良い。
【００２３】
これら入力装置９、１０のハードウェアブロック図を図５に示す。図５に示されるように入力装置１０は、センサ部１２と、Ａ／Ｄコンバータ１４と、ＭＣＵ（Ｍｉｃｒｏ　Ｃｏｍｐｕｔｅｒ　Ｕｎｉｔ）１８と、メモリ１６と、ＵＳＢコントローラ２０とを有する。このうちセンサ部１２は、上述した接触の検出と位置の検出などを行う。そしてこの検出された信号はＡ／Ｄコンバータ１４に出力され、Ａ／Ｄコンバータ１４でＡ／Ｄ変換されてＭＣＵ１８に出力される。ＭＣＵ１８は、センサ部１２からのデータを処理し、その処理したデータをＵＳＢコントローラ２０を介してコンピュータ５０に出力する。またメモリ１６は、処理を行うプログラムやデータなどを一時的に保存するために用いられる。
【００２４】
次に、上記センサ部１２における「接触」について説明する。このセンサ部１２における接触とは、実際にタッチした時点から一定時間以上継続して接触した場合を接触とみなす。したがって、誤ってタッチした場合などは、接触とみなされない。
【００２５】
また、タッチした例えばペンがセンサ部１２からリリースされた場合のような、接触状態から非接触状態への判定は、非接触状態となってから一定時間以上その状態が継続したとき非接触状態となったと判定する。そして、この場合の検出する座標値は、接触状態中に検出した座標値のうち、最も新しい座標値を検出する座標値とする。
【００２６】
次に、クリックの判定であるが、タッチを検出してから一定時間以内にリリースを検出し、そのリリースの状態が一定時間以上継続した場合にクリック操作と判定する。そして、ダブルクリック操作の判定は、上記リリース状態の継続時間を満了するまでに、再びタッチがあった場合、その操作を１度目のクリックとして保持し、それからさらに、一定時間以内に上記クリック操作を検出した場合に２度目のクリックとし、ダブルクリックと判断する。
【００２７】
さらに、接触したままペンを移動する操作であるドラッグ操作の検出は、上記１度目のクリックとして保持した後、再び接触状態となり、一定時間以上その状態が継続したときにドラッグ操作と判定する。
【００２８】
このように、接触、非接触ともに一定時間以上その状態が継続しない限り、その状態と判定しない。逆に一定時間以内であれば、現在の状態の変更は行われない。もちろん、接触、非接触をそのまま検出することも可能であるが、上記のようにしたほうが使い勝手が良いことが多い。
【００２９】
次に、ユーザが入力装置９、１０を使用する際の、使用方法について説明する。なお、この説明は、説明を分かりやすくするために、入力装置１０とペンとを用いて説明するが、入力方法は、いずれの入力装置であっても変わらない。また、この説明は、平仮名を入力する場合の説明とし、その平仮名を表示するのは、表示装置２３とする。
【００３０】
最初に、図６に示される文字テーブル８０の説明をする。図６に示されるように文字テーブル８０は、５０音順に平仮名が並べられたテーブルであり、このうち、スコープ８１に囲まれている１文字のみ表示装置２３に表示される。この図の場合、表示装置２３に表示されるのは、スコープ８１に囲まれている「す」である。
【００３１】
このように、ユーザは、入力装置によりスコープを操作することで所望の文字を入力する操作方法となっている。なお、スコープを操作することと、テーブルを操作することは、この場合は同義であるので、スコープを固定し、テーブルを操作するようにしても良い。
【００３２】
次に、スコープの移動についてであるが、スコープの移動方向は、上下左右の４方向ある。その方向へ移動させるための操作方法を、以下図面を用いて説明する。
【００３３】
まず、基本的に操作方法は、ペン１１でセンサ部１２に弧あるいは直線を描く方法の２つである。このうち、弧を描く場合について、図７と図８とを用いて説明する。図７と図８は、ペンにより弧が描かれている様子を示した図であり、図７は、時計回りに、図８は、反時計回りに弧を描いている様子が示されている。そして、図９は、ペンにより直線が描かれている様子を示した図である。
【００３４】
このように、入力される弧、あるいは直線は、ペン１１とセンサ部１２の接触点の軌跡であり、処理としては、センサ部１２を図１０に示すＸＹ座標として処理を行う。
【００３５】
次に、このように処理される軌跡が、どの操作を行ったのか判定する処理を、図１１のフローチャートを用いて説明する。なお、この処理は、コンピュータ５０で行っても良いし、入力装置９、１０で行い、その結果をコンピュータ５０に送信しても良い。以下の説明では、コンピュータ５０で説明する。なお、入力装置あるいはコンピュータのいずれで行う場合も、センサ部における接触状態と検出座標値を検出し、検出した座標値をコンピュータ５０に搭載されたＯＳ（Ｏｐｅｒａｔｉｎｇ　Ｓｙｓｔｅｍ）にとって有効な論理座標値に変換することにより処理が行なわれる。
【００３６】
図１１のフローチャートの説明をする。ステップＳ１０１で、コンピュータ５０は、接触によりタッチＯＮを検出する。そして、ステップＳ１０２で、コンピュータ５０は、上記タッチＯＮが、ダブルクリックであるかどうかを判定する。コンピュータ５０は、ダブルクリックと判定すると、ステップＳ１０３で、スコープに囲まれることにより選択された文字を入力文字とする。そして、コンピュータ５０は、ステップＳ１０４で、保存していた座標データをクリアして、ステップＳ１０５で、処理を終了する。
【００３７】
ステップＳ１０２に戻り、コンピュータ５０は、ダブルクリックではないと判定した場合、ステップＳ１０８へ処理を進める。ステップＳ１０８で、コンピュータ５０は、前回にタッチＯＮがなかった場合、この接触が始めての接触であるので、ステップＳ１０６で、座標データを保存し、ステップＳ１０７で処理を終了する。
【００３８】
ステップＳ１０８に戻り、コンピュータ５０は、以前に接触されたことを示す「前回タッチＯＮ」であると、ステップＳ１０９の座標判定処理に進む。この座標判定処理は、「移動方向」と、後述する「文字種類の変更」と、ユーザの動作に関する情報である「動作完了」、「動作継続」、「エラー」とを得る処理である。このステップＳ１０９の処理は、後に詳しく説明する。
【００３９】
ステップＳ１０９で得られた「動作完了」、「動作継続」、「エラー」により、コンピュータ５０は、ステップＳ１１０で処理を分岐する。そのうち、ユーザの入力動作（図７、図８、図９参照）が完了したことを示す「動作完了」であった場合、コンピュータ５０は、ステップＳ１１１からステップＳ１１２へ処理を進める。そして、ステップＳ１１２で、コンピュータ５０は、保存しておいた座標データをクリアする。その後、ステップＳ１１３で、コンピュータ５０は、ステップＳ１０９で得られた「移動方向」、「文字種類の変更」に基づき表示文字の変更処理を行う。このうち「移動方向」の場合は、スコープを「移動方向」に移動させる。「文字種類の変更」の場合は、例えば図６の平仮名テーブルから図１２のカタカナテーブル８２に文字種類を変更させる。そして、ステップＳ１１８で、処理を終了する。なお、これらの文字を表示するテーブルは、平仮名やカタカナに限らず、アルファベットのような外国の文字であっても良い。さらに、アプリケーションのアイコンのような図でもよく、この場合は、アイコンを選択するとそのアイコンに対応したアプリケーションが立ち上がるようにする。
【００４０】
次に、先ほどのステップＳ１１０の分岐処理に戻り、ステップＳ１０９で「動作継続」が得られた場合、コンピュータ５０は、ステップＳ１１４からステップＳ１１５へ処理を進め、ユーザの動作が継続しているため、現在の座標データを保存し、ステップＳ１１８で処理を終了する。
【００４１】
ステップＳ１０９で「エラー」が得られた場合、コンピュータ５０は、ステップＳ１１６からステップＳ１１７へ処理を進め、エラーのため、現在の座標データをクリアし、ステップＳ１１８で処理を終了する。
【００４２】
次に、ステップＳ１０９の座標判定処理について、図１３のフローチャートを用いて説明する。
【００４３】
ステップＳ２０１で、コンピュータ５０は、現在の座標と、前回の座標との関係を求めるため、ステップＳ２０１に示されるように座標軸ごと引き算を行う。そして、この座標軸ごとの引き算した値をそれぞれＸＡ、ＹＡとする。このようにすることにより、例えばＸＡが正であれば、現在のＸ座標は、前回のＸ座標よりＸ軸方向に移動したことがわかる。逆に負であれば、現在のＸ座標は、前回のＸ座標より原点方向に移動したことがわかる。
【００４４】
このようなＸＡ、ＹＡの正負あるいは零により、ステップＳ２０２で、コンピュータ５０は、８つに処理を分岐する。以下、それらの処理について説明する。なお、以下の説明では、説明を分かりやすくするために、図１０における、Ｙ軸上の点から原点への方向を「下」と表現し、その逆の方向を「上」と表現する。また、Ｘ軸上の点から原点への方向を「左」と表現し、その逆の方向を「右」と表現する。
【００４５】
また、このようなスコープの移動について、図６の文字テーブルを例とした場合、「スコープを下に移動する」とは、表示される文字が「あいうえお」の順に遷移していくことである。逆に「スコープを上に移動する」とは、表示される文字が「おえういあ」の順に遷移していくことである。また、「スコープを右に移動する」とは、表示される文字が「あかさたな…」の順に遷移していくことである。逆に「スコープを左に移動する」とは、表示される文字が「…なたさかあ」の順に遷移していくことである。
【００４６】
まず、ステップＳ２０３の説明をする。ステップＳ２０３は、ＸＡが０以下で、ＹＡが負の場合、すなわち、現在の座標が前の座標と比べて下に移動し、少なくとも右には移動していない場合である。そのように座標が移動した場合の操作として、例えば、反時計回りで下に移動した操作がある。このときステップＳ２０４で、コンピュータ５０は、ユーザが意図する操作が、スコープの移動方向を下にすることであると判断する。そして、コンピュータ５０は、ステップＳ２０５から図１４のステップＳ３０２へ処理を進め、新たに更新されたＸＡとＹＡに対して再び判定を行う。ステップＳ３０２で、コンピュータ５０は、ステップＳ２０２での状態と変わらない状態である、ＸＡが０以下でＹＡが負である場合は、ステップＳ３０４で動作段階を動作継続にして処理を終了する。ステップＳ３０２での条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３０３へ処理を進め、ＸＡが正でＹＡが負であるかの判断を行う。この条件式は、現在の座標が右下方向に移動した場合に満たされる条件式である。ステップＳ３０３の条件式を満たした場合、コンピュータ５０は、ステップＳ３０５へ処理を進め、動作段階を動作完了とする。ステップＳ３０３の条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３０６で動作段階をエラーとし、処理を終了する。
【００４７】
次に、図１３に戻り、ステップＳ２０６の説明をする。ステップＳ２０６は、ＸＡが０以上で、ＹＡが負の場合、すなわち、現在の座標が前の座標と比べて下に移動し、少なくとも左には移動していない場合である。そのように座標が移動した場合の操作として、例えば、時計回りで下に移動した操作がある。このときステップＳ２０７で、コンピュータ５０は、ユーザが意図する操作が、表示している文字種類の変更であると判断する。そして、コンピュータ５０は、ステップＳ２０８から図１５のステップＳ３０７へ処理を進め、新たに更新されたＸＡとＹＡに対して再び判定を行う。ステップＳ３０７で、コンピュータ５０は、ステップＳ２０２での状態と変わらない状態である、ＸＡが０以上でＹＡが負である場合は、ステップＳ３０９で動作段階を動作継続にして処理を終了する。ステップＳ３０７での条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３０８へ処理を進め、ＸＡが負でＹＡも負であるかの判断を行う。この条件式は、現在の座標が左下方向に移動した場合に満たされる条件式である。ステップＳ３０８の条件式を満たした場合、コンピュータ５０は、ステップＳ３１０へ処理を進め、動作段階を動作完了とする。ステップＳ３０８の条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３１１で動作段階をエラーとし、処理を終了する。
【００４８】
次に、図１３に戻り、ステップＳ２０９の説明をする。ステップＳ２０９は、ＸＡが０以下で、ＹＡが正の場合、すなわち、現在の座標が前の座標と比べて上に移動し、少なくとも右には移動していない場合である。そのように座標が移動した場合の操作として、例えば、反時計回りで上に移動した操作がある。このときステップＳ２１０で、コンピュータ５０は、ユーザが意図する操作が、スコープの移動方向を上にすることであると判断する。そして、コンピュータ５０は、ステップＳ２１１から図１６のステップＳ３１２へ処理を進め、新たに更新されたＸＡとＹＡに対して再び判定を行う。ステップＳ３１２で、コンピュータ５０は、ステップＳ２０２での状態と変わらない状態である、ＸＡが０以下でＹＡが正である場合は、ステップＳ３１４で動作段階を動作継続にして処理を終了する。ステップＳ３１２での条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３１３へ処理を進め、ＸＡが正でＹＡも正であるかの判断を行う。この条件式は、現在の座標が右上方向に移動した場合に満たされる条件式である。ステップＳ３１３の条件式を満たした場合、コンピュータ５０は、ステップＳ３１５へ処理を進め、動作段階を動作完了とする。ステップＳ３１３の条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３１６で動作段階をエラーとし、処理を終了する。
【００４９】
次に、図１３に戻り、ステップＳ２１２の説明をする。ステップＳ２１２は、ＸＡが０以上で、ＹＡが正の場合、すなわち、現在の座標が前の座標と比べて上に移動し、少なくとも左には移動していない場合である。そのように座標が移動した場合の操作として、例えば、時計回りで上に移動した操作がある。このときステップＳ２１３で、コンピュータ５０は、ユーザが意図する操作が、表示している文字種類の変更であると判断する。そして、コンピュータ５０は、ステップＳ２１４から図１７のステップＳ３１７へ処理を進め、新たに更新されたＸＡとＹＡに対して再び判定を行う。ステップＳ３１７で、コンピュータ５０は、ステップＳ２０２での状態と変わらない状態である、ＸＡが０以上でＹＡが正である場合は、ステップＳ３１９で動作段階を動作継続にして処理を終了する。ステップＳ３１７での条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３１８へ処理を進め、ＸＡが負でＹＡが正であるかの判断を行う。この条件式は、現在の座標が左上方向に移動した場合に満たされる条件式である。ステップＳ３１８の条件式を満たした場合、コンピュータ５０は、ステップＳ３２０へ処理を進め、動作段階を動作完了とする。ステップＳ３１８の条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３２１で動作段階をエラーとし、処理を終了する。
【００５０】
次に、図１３に戻り、ステップＳ２１５の説明をする。ステップＳ２１５は、ＸＡが負で、ＹＡが０以下の場合、すなわち、現在の座標が前の座標と比べて左に移動し、少なくとも上には移動していない場合である。そのように座標が移動した場合の操作として、例えば、反時計回りで左に移動した操作がある。このときステップＳ２１６で、コンピュータ５０は、ユーザが意図する操作が、スコープの移動方向を左にすることであると判断する。そして、コンピュータ５０は、ステップＳ２１７から図１８のステップＳ３２２へ処理を進め、新たに更新されたＸＡとＹＡに対して再び判定を行う。ステップＳ３２２で、コンピュータ５０は、ステップＳ２０２での状態と変わらない状態である、ＸＡが負でＹＡが０以下である場合は、ステップＳ３２４で動作段階を動作継続にして処理を終了する。ステップＳ３２２での条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３２３へ処理を進め、ＸＡが負でＹＡが正であるかの判断を行う。この条件式は、現在の座標が右上方向に移動した場合に満たされる条件式である。ステップＳ３２３の条件式を満たした場合、コンピュータ５０は、ステップＳ３２５へ処理を進め、動作段階を動作完了とする。ステップＳ３２３の条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３２６で動作段階をエラーとし、処理を終了する。
【００５１】
次に、図１３に戻り、ステップＳ２１８の説明をする。ステップＳ２１８は、ＸＡが負で、ＹＡが０以上の場合、すなわち、現在の座標が前の座標と比べて左に移動し、少なくとも下には移動していない場合である。そのように座標が移動した場合の操作として、例えば、時計回りで左に移動した操作がある。このときステップＳ２１９で、コンピュータ５０は、ユーザが意図する操作が、スコープの移動方向を左にすることであると判断する。そして、コンピュータ５０は、ステップＳ２２０から図１９のステップＳ３２７へ処理を進め、新たに更新されたＸＡとＹＡに対して再び判定を行う。ステップＳ３２７で、コンピュータ５０は、ステップＳ２０２での状態と変わらない状態である、ＸＡが負でＹＡが０以上である場合は、ステップＳ３２９で動作段階を動作継続にして処理を終了する。ステップＳ３２７での条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３２８へ処理を進め、ＸＡが負でＹＡが正であるかの判断を行う。この条件式は、現在の座標が左下方向に移動した場合に満たされる条件式である。ステップＳ３２８の条件式を満たした場合、コンピュータ５０は、ステップＳ３３０へ処理を進め、動作段階を動作完了とする。ステップＳ３２８の条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３３１で動作段階をエラーとし、処理を終了する。
【００５２】
次に、図１３に戻り、ステップＳ２２１の説明をする。ステップＳ２２１は、ＸＡが正で、ＹＡが０以下の場合、すなわち、現在の座標が前の座標と比べて右に移動し、少なくとも上には移動していない場合である。そのように座標が移動した場合の操作として、例えば、反時計回りで右に移動した操作がある。このときステップＳ２２２で、コンピュータ５０は、ユーザが意図する操作が、スコープの移動方向を右にすることであると判断する。そして、コンピュータ５０は、ステップＳ２２３から図２０のステップＳ３３２へ処理を進め、新たに更新されたＸＡとＹＡに対して再び判定を行う。ステップＳ３３２で、コンピュータ５０は、ステップＳ２０２での状態と変わらない状態である、ＸＡが正でＹＡが０以下である場合は、ステップＳ３３４で動作段階を動作継続にして処理を終了する。ステップＳ３３２での条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３３３へ処理を進め、ＸＡが正でＹＡも正であるかの判断を行う。この条件式は、現在の座標が右上方向に移動した場合に満たされる条件式である。ステップＳ３３３の条件式を満たした場合、コンピュータ５０は、ステップＳ３３５へ処理を進め、動作段階を動作完了とする。ステップＳ３３３の条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３３６で動作段階をエラーとし、処理を終了する。
【００５３】
次に、図１３に戻り、ステップＳ２２４の説明をする。ステップＳ２２４は、ＸＡが正で、ＹＡが０以上の場合、すなわち、現在の座標が前の座標と比べて右に移動し、少なくとも下には移動していない場合である。そのように座標が移動した場合の操作として、例えば、時計回りで右に移動した操作がある。このときステップＳ２２５で、コンピュータ５０は、ユーザが意図する操作が、スコープの移動方向を右にすることであると判断する。そして、コンピュータ５０は、ステップＳ２２６から図２１のステップＳ３３７へ処理を進め、新たに更新されたＸＡとＹＡに対して再び判定を行う。ステップＳ３３７で、コンピュータ５０は、ステップＳ２０２での状態と変わらない状態である、ＸＡが正でＹＡが０以上である場合は、ステップＳ３３９で動作段階を動作継続にして処理を終了する。ステップＳ３３７での条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３３８へ処理を進め、ＸＡが正でＹＡも正であるかの判断を行う。この条件式は、現在の座標が右上方向に移動した場合に満たされる条件式である。ステップＳ３３８の条件式を満たした場合、コンピュータ５０は、ステップＳ３４０へ処理を進め、動作段階を動作完了とする。ステップＳ３３８の条件式を満たさなかった場合、コンピュータ５０は、ステップＳ３４１で動作段階をエラーとし、処理を終了する。
【００５４】
以上説明したフローチャートの処理例を図２２、図２３、図２４を用いて説明する。まず、第１段階として、図２２の状態では、ＸＡもＹＡも負となる（図１３のステップＳ２０３に相当）。第２段階として、図２３の状態になると、ＸＡは０で、ＹＡは負となる（図１４のステップＳ３０２の判断により、ステップＳ３０４に相当）。第３段階として、図２４の状態になると、ＸＡは正で、ＹＡは負となる（図１４のステップＳ３０３の判断により、ステップＳ３０５に相当）。
【００５５】
このように、座標判定処理は、接触を検出し、第１段階から第２段階を経て、第３段階を終了したら、動作完了として座標判定を終える。そしてこの判定に用いた座標データはクリアされ、表示文字変更処理へと処理が遷移する。
【００５６】
また、上記フローチャートにおいて、図１３のステップＳ２０７とステップＳ２１３は、文字種類の変更処理であるが、ステップＳ２０７の場合は、平仮名→カタカナ→アルファベット→平仮名の順に変更され、ステップＳ２１３の場合は、平仮名→アルファベット→カタカナ→平仮名のような、ステップＳ２０７の逆順に変更されるようにしても良い。
【００５７】
さらに、上述したユーザの操作を、ユーザが使いやすいように、例えば、上記操作で上へ移動する操作を下に移動する操作に変更するなど、カスタマイズ可能なようにしても良い。
【００５８】
【発明の効果】
以上説明したように、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力装置、入力方法、入力プログラムが得られる。
【図面の簡単な説明】
【図１】本発明の実施の形態におけるシステムの全体構成図である。
【図２】コンピュータのハードウェアブロック図である。
【図３】グラフィックを示す図である。
【図４】入力装置の斜視図である。
【図５】入力装置のハードウェアブロック図である。
【図６】文字テーブルを示す図である。
【図７】弧を描く様子を示す図である。
【図８】弧を描く様子を示す図である。
【図９】直線を描く様子を示す図である。
【図１０】ＸＹ座標を示す図である。
【図１１】軌跡の判定処理を示すフローチャートである。
【図１２】カタカナテーブルを示す図である。
【図１３】座標判定処理を示すフローチャートである。
【図１４】▲１▼の処理を示すフローチャートである。
【図１５】▲２▼の処理を示すフローチャートである。
【図１６】▲３▼の処理を示すフローチャートである。
【図１７】▲４▼の処理を示すフローチャートである。
【図１８】▲５▼の処理を示すフローチャートである。
【図１９】▲６▼の処理を示すフローチャートである。
【図２０】▲７▼の処理を示すフローチャートである。
【図２１】▲８▼の処理を示すフローチャートである。
【図２２】反時計回りに左下方向の弧を描く様子を示す図である
【図２３】下方向の直線を描く様子を示す図である。
【図２４】反時計回りに右下方向の弧を描く様子を示す図である
【符号の説明】
９、１０…入力装置
１１…ペン
１２…センサ部
１４…Ａ／Ｄコンバータ
１６…メモリ
１８…ＭＣＵ
２０…ＵＳＢコントローラ
２３…表示装置
４６…ＣＰＵ
４８…ＵＳＢインタフェース
５０…コンピュータ
５２…ドライブ装置
５４…主記憶装置
５６…補助記憶装置
７０…グラフィックス
７１…タッチ部分
７２…濁点入力部分
７３…句読点入力部分
７４…入力結果
７５…ＯＫボタン
７６…キャンセルボタン
８０…文字テーブル
８１…スコープ
８２…カタカナテーブル
【図１】
2004038547.tif 000003
【図２】
2004038547.tif 000004
【図３】
2004038547.tif 000005
【図４】
2004038547.tif 000006
【図５】
2004038547.tif 000007
【図６】
2004038547.tif 000008
【図７】
2004038547.tif 000009
【図８】
2004038547.tif 000010
【図９】
2004038547.tif 000011
【図１０】
2004038547.tif 000012
【図１１】
2004038547.tif 000013
【図１２】
2004038547.tif 000014
【図１３】
2004038547.tif 000015
【図１４】
2004038547.tif 000016
【図１５】
2004038547.tif 000017
【図１６】
2004038547.tif 000018
【図１７】
2004038547.tif 000019
【図１８】
2004038547.tif 000020
【図１９】
2004038547.tif 000021
【図２０】
2004038547.tif 000022
【図２１】
2004038547.tif 000023
【図２２】
2004038547.tif 000024
【図２３】
2004038547.tif 000025
【図２４】
2004038547.tif 000026