JP2004038547A - 入力装置、入力方法、入力プログラム - Google Patents
入力装置、入力方法、入力プログラム Download PDFInfo
- Publication number
- JP2004038547A JP2004038547A JP2002194504A JP2002194504A JP2004038547A JP 2004038547 A JP2004038547 A JP 2004038547A JP 2002194504 A JP2002194504 A JP 2002194504A JP 2002194504 A JP2002194504 A JP 2002194504A JP 2004038547 A JP2004038547 A JP 2004038547A
- Authority
- JP
- Japan
- Prior art keywords
- input
- information
- computer
- candidate
- conditional expression
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/018—Input/output arrangements for oriental characters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/023—Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
- G06F3/0233—Character input methods
- G06F3/0236—Character input methods using selection techniques to select from displayed items
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Position Input By Displaying (AREA)
Abstract
【課題】比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力装置、入力方法、入力プログラムを提供する。
【解決手段】入力情報を選択させ、該選択した情報を入力するための入力装置であって、指示位置を検出する指示位置検出手段(S110)と、前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更手段(S113)と、前記入力候補情報から前記入力情報を決定する入力情報決定手段(S103)とを有する。
【選択図】図11
【解決手段】入力情報を選択させ、該選択した情報を入力するための入力装置であって、指示位置を検出する指示位置検出手段(S110)と、前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更手段(S113)と、前記入力候補情報から前記入力情報を決定する入力情報決定手段(S103)とを有する。
【選択図】図11
Description
【0001】
【発明の属する技術分野】
本発明は、情報の入力に関し、特に文字あるいはアプリケーション情報を入力するための入力装置、入力方法、入力プログラムに関する。
【0002】
【従来の技術】
コンピュータに文字などの情報を入力する場合、タッチパネルにペン等を用いて手書きで文字を入力することがある。また、他の方法として、キーボードを表示した画面上に触れるか、あるいはクリックするなどして文字を選択することにより文字を入力している。
【0003】
【発明が解決しようとする課題】
しかしながら、タッチパネル上に文字を入力する場合、あるいはキーボードを表示する場合のいずれにおいても、文字を入力する領域、あるいはキーボードを表示する領域としてある程度の広さが必要となる。また、タッチパネル上に手書きで書き込まれた軌跡によっては、ユーザが意図した文字とは異なる文字として認識される可能性がある。
【0004】
本発明は、このような問題点に鑑み、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力装置、入力方法、入力プログラムを提供することを目的とする。
【0005】
【課題を解決するための手段】
請求項1に記載の発明は、入力情報を選択させ、該選択した情報を入力するための入力装置であって、指示位置を検出する指示位置検出手段と、前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更手段と、前記入力候補情報から前記入力情報を決定する入力情報決定手段とを有することを特徴とする。
【0006】
請求項1によれば、指示位置の変移で情報を選択し、その情報を入力することができるため、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力装置を提供することができる。
【0007】
請求項2に記載の発明は、前記入力候補情報変更手段は、前記指示位置が、略円周上を変移することより前記入力候補情報を変更することを特徴とする。
【0008】
請求項2によれば、例えばユーザは、円のように単純に指示位置を変移させるだけで、情報が入力可能な入力装置を提供することができる。
【0009】
請求項3に記載の発明は、前記入力情報は文字情報であることを特徴とする。
【0010】
請求項3によれば、文字情報が入力可能な入力装置を提供することができる。
【0011】
請求項4に記載の発明は、前記入力情報はアプリケーションを起動するためのアプリケーション情報であることを特徴とする。
【0012】
請求項4によれば、アプリケーションを起動することが可能な入力装置を提供することができる。
【0013】
請求項5に記載の発明は、入力情報を選択させ、該選択した情報を入力するための入力装置における入力方法であって、指示位置を検出する指示位置検出段階と、前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更段階と、前記入力候補情報から前記入力情報を決定する入力情報決定段階とを有することを特徴とする。
【0014】
請求項5によれば、指示位置の変移で情報を選択し、その情報を入力することができるため、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力方法を提供することができる。
【0015】
請求項6に記載の発明は、コンピュータに、指示位置を検出する指示位置検出手順と、前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更手順と、前記入力候補情報から前記入力情報を決定する入力情報決定手順とを実行させるための入力プログラム。
【0016】
請求項6によれば、指示位置の変移で情報を選択し、その情報を入力することができるため、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力プログラムを提供することができる。
【0017】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。
【0018】
本発明の実施の形態におけるシステムの全体構成図を図1に示す。図1に示されるように、本実施の形態における入力装置は、コンピュータの表示装置23に備えられた参照符号が9の入力装置と、外付けされている参照符号10の入力装置の2種類ある。そして、入力装置9、10は、コンピュータ50とUSB(Universal Serial Bus)ケーブルなどで接続され、コンピュータ50上に表示するために検出した接触位置などのデータをコンピュータ50に送信する。なお、送信方法は、シリアルでもパラレルでも構わない。
【0019】
コンピュータ50は、図2に示されるように、表示装置23と、ドライブ装置52と、主記憶装置54と、補助記憶装置56と、CPU(Central ProcessingUnit)46と、USB(Universal Serial Bus)インタフェース48とを有し、それらはバスで接続されている。このうち、表示装置23は、コンピュータ50を操作するために必要な各種情報などを表示する。ドライブ装置52は、着脱自在な記録媒体の読み書きが可能であり、例えば記録媒体からプログラム読み込み、補助記憶装置56にインストールするときに用いられる。CPU46は、補助記憶装置56に格納されたプログラムを読み込み実行し、プログラムやデータなどを記憶するために主記憶装置54を用いる。そしてUSBインタフェース48は、入力装置10とのやり取りをUSB転送方式で行うためのインタフェースである。
【0020】
次に、入力装置9、10について説明する。まず、入力装置9は、スタイラスや指、あるいはペンなどでの接触を検出するセンサ部を有するタッチパネルであり、表示装置23の画面上に固定されている。そして、表示装置23の画面には、図3に示されるグラフィック70が表示される。グラフィック70は、濁点入力部分72と句読点入力部分73と文字「あ」が表示されている部分で構成されるタッチ部分71を有する。このタッチ部分にユーザがペンや指を触れて操作することで文字を入力する。そして、濁点入力部分72は、濁点がペンや指で入力された場合に表示している文字に濁点が加えられる。句読点入力部分73は、丸や点が入力された場合に表示している文字の次に、入力された句読点が加えられる。
【0021】
また、グラフィック70は、タッチ部分71の他に、入力された結果を表示する入力結果表示ボックス74と、OKボタン75と、キャンセルボタン76とを有する。
【0022】
次に、もう一つの入力装置である入力装置10の斜視図を図4に示す。図4に示されるように、入力装置10は、スタイラスや指、あるいはペン11などによる接触およびその位置の検出を行うセンサ部12を有する。この入力装置10の場合における情報の表示方法であるが、入力装置9と同様に、表示装置23に表示しても良いし、入力装置10に表示しても良い。
【0023】
これら入力装置9、10のハードウェアブロック図を図5に示す。図5に示されるように入力装置10は、センサ部12と、A/Dコンバータ14と、MCU(Micro Computer Unit)18と、メモリ16と、USBコントローラ20とを有する。このうちセンサ部12は、上述した接触の検出と位置の検出などを行う。そしてこの検出された信号はA/Dコンバータ14に出力され、A/Dコンバータ14でA/D変換されてMCU18に出力される。MCU18は、センサ部12からのデータを処理し、その処理したデータをUSBコントローラ20を介してコンピュータ50に出力する。またメモリ16は、処理を行うプログラムやデータなどを一時的に保存するために用いられる。
【0024】
次に、上記センサ部12における「接触」について説明する。このセンサ部12における接触とは、実際にタッチした時点から一定時間以上継続して接触した場合を接触とみなす。したがって、誤ってタッチした場合などは、接触とみなされない。
【0025】
また、タッチした例えばペンがセンサ部12からリリースされた場合のような、接触状態から非接触状態への判定は、非接触状態となってから一定時間以上その状態が継続したとき非接触状態となったと判定する。そして、この場合の検出する座標値は、接触状態中に検出した座標値のうち、最も新しい座標値を検出する座標値とする。
【0026】
次に、クリックの判定であるが、タッチを検出してから一定時間以内にリリースを検出し、そのリリースの状態が一定時間以上継続した場合にクリック操作と判定する。そして、ダブルクリック操作の判定は、上記リリース状態の継続時間を満了するまでに、再びタッチがあった場合、その操作を1度目のクリックとして保持し、それからさらに、一定時間以内に上記クリック操作を検出した場合に2度目のクリックとし、ダブルクリックと判断する。
【0027】
さらに、接触したままペンを移動する操作であるドラッグ操作の検出は、上記1度目のクリックとして保持した後、再び接触状態となり、一定時間以上その状態が継続したときにドラッグ操作と判定する。
【0028】
このように、接触、非接触ともに一定時間以上その状態が継続しない限り、その状態と判定しない。逆に一定時間以内であれば、現在の状態の変更は行われない。もちろん、接触、非接触をそのまま検出することも可能であるが、上記のようにしたほうが使い勝手が良いことが多い。
【0029】
次に、ユーザが入力装置9、10を使用する際の、使用方法について説明する。なお、この説明は、説明を分かりやすくするために、入力装置10とペンとを用いて説明するが、入力方法は、いずれの入力装置であっても変わらない。また、この説明は、平仮名を入力する場合の説明とし、その平仮名を表示するのは、表示装置23とする。
【0030】
最初に、図6に示される文字テーブル80の説明をする。図6に示されるように文字テーブル80は、50音順に平仮名が並べられたテーブルであり、このうち、スコープ81に囲まれている1文字のみ表示装置23に表示される。この図の場合、表示装置23に表示されるのは、スコープ81に囲まれている「す」である。
【0031】
このように、ユーザは、入力装置によりスコープを操作することで所望の文字を入力する操作方法となっている。なお、スコープを操作することと、テーブルを操作することは、この場合は同義であるので、スコープを固定し、テーブルを操作するようにしても良い。
【0032】
次に、スコープの移動についてであるが、スコープの移動方向は、上下左右の4方向ある。その方向へ移動させるための操作方法を、以下図面を用いて説明する。
【0033】
まず、基本的に操作方法は、ペン11でセンサ部12に弧あるいは直線を描く方法の2つである。このうち、弧を描く場合について、図7と図8とを用いて説明する。図7と図8は、ペンにより弧が描かれている様子を示した図であり、図7は、時計回りに、図8は、反時計回りに弧を描いている様子が示されている。そして、図9は、ペンにより直線が描かれている様子を示した図である。
【0034】
このように、入力される弧、あるいは直線は、ペン11とセンサ部12の接触点の軌跡であり、処理としては、センサ部12を図10に示すXY座標として処理を行う。
【0035】
次に、このように処理される軌跡が、どの操作を行ったのか判定する処理を、図11のフローチャートを用いて説明する。なお、この処理は、コンピュータ50で行っても良いし、入力装置9、10で行い、その結果をコンピュータ50に送信しても良い。以下の説明では、コンピュータ50で説明する。なお、入力装置あるいはコンピュータのいずれで行う場合も、センサ部における接触状態と検出座標値を検出し、検出した座標値をコンピュータ50に搭載されたOS(Operating System)にとって有効な論理座標値に変換することにより処理が行なわれる。
【0036】
図11のフローチャートの説明をする。ステップS101で、コンピュータ50は、接触によりタッチONを検出する。そして、ステップS102で、コンピュータ50は、上記タッチONが、ダブルクリックであるかどうかを判定する。コンピュータ50は、ダブルクリックと判定すると、ステップS103で、スコープに囲まれることにより選択された文字を入力文字とする。そして、コンピュータ50は、ステップS104で、保存していた座標データをクリアして、ステップS105で、処理を終了する。
【0037】
ステップS102に戻り、コンピュータ50は、ダブルクリックではないと判定した場合、ステップS108へ処理を進める。ステップS108で、コンピュータ50は、前回にタッチONがなかった場合、この接触が始めての接触であるので、ステップS106で、座標データを保存し、ステップS107で処理を終了する。
【0038】
ステップS108に戻り、コンピュータ50は、以前に接触されたことを示す「前回タッチON」であると、ステップS109の座標判定処理に進む。この座標判定処理は、「移動方向」と、後述する「文字種類の変更」と、ユーザの動作に関する情報である「動作完了」、「動作継続」、「エラー」とを得る処理である。このステップS109の処理は、後に詳しく説明する。
【0039】
ステップS109で得られた「動作完了」、「動作継続」、「エラー」により、コンピュータ50は、ステップS110で処理を分岐する。そのうち、ユーザの入力動作(図7、図8、図9参照)が完了したことを示す「動作完了」であった場合、コンピュータ50は、ステップS111からステップS112へ処理を進める。そして、ステップS112で、コンピュータ50は、保存しておいた座標データをクリアする。その後、ステップS113で、コンピュータ50は、ステップS109で得られた「移動方向」、「文字種類の変更」に基づき表示文字の変更処理を行う。このうち「移動方向」の場合は、スコープを「移動方向」に移動させる。「文字種類の変更」の場合は、例えば図6の平仮名テーブルから図12のカタカナテーブル82に文字種類を変更させる。そして、ステップS118で、処理を終了する。なお、これらの文字を表示するテーブルは、平仮名やカタカナに限らず、アルファベットのような外国の文字であっても良い。さらに、アプリケーションのアイコンのような図でもよく、この場合は、アイコンを選択するとそのアイコンに対応したアプリケーションが立ち上がるようにする。
【0040】
次に、先ほどのステップS110の分岐処理に戻り、ステップS109で「動作継続」が得られた場合、コンピュータ50は、ステップS114からステップS115へ処理を進め、ユーザの動作が継続しているため、現在の座標データを保存し、ステップS118で処理を終了する。
【0041】
ステップS109で「エラー」が得られた場合、コンピュータ50は、ステップS116からステップS117へ処理を進め、エラーのため、現在の座標データをクリアし、ステップS118で処理を終了する。
【0042】
次に、ステップS109の座標判定処理について、図13のフローチャートを用いて説明する。
【0043】
ステップS201で、コンピュータ50は、現在の座標と、前回の座標との関係を求めるため、ステップS201に示されるように座標軸ごと引き算を行う。そして、この座標軸ごとの引き算した値をそれぞれXA、YAとする。このようにすることにより、例えばXAが正であれば、現在のX座標は、前回のX座標よりX軸方向に移動したことがわかる。逆に負であれば、現在のX座標は、前回のX座標より原点方向に移動したことがわかる。
【0044】
このようなXA、YAの正負あるいは零により、ステップS202で、コンピュータ50は、8つに処理を分岐する。以下、それらの処理について説明する。なお、以下の説明では、説明を分かりやすくするために、図10における、Y軸上の点から原点への方向を「下」と表現し、その逆の方向を「上」と表現する。また、X軸上の点から原点への方向を「左」と表現し、その逆の方向を「右」と表現する。
【0045】
また、このようなスコープの移動について、図6の文字テーブルを例とした場合、「スコープを下に移動する」とは、表示される文字が「あいうえお」の順に遷移していくことである。逆に「スコープを上に移動する」とは、表示される文字が「おえういあ」の順に遷移していくことである。また、「スコープを右に移動する」とは、表示される文字が「あかさたな…」の順に遷移していくことである。逆に「スコープを左に移動する」とは、表示される文字が「…なたさかあ」の順に遷移していくことである。
【0046】
まず、ステップS203の説明をする。ステップS203は、XAが0以下で、YAが負の場合、すなわち、現在の座標が前の座標と比べて下に移動し、少なくとも右には移動していない場合である。そのように座標が移動した場合の操作として、例えば、反時計回りで下に移動した操作がある。このときステップS204で、コンピュータ50は、ユーザが意図する操作が、スコープの移動方向を下にすることであると判断する。そして、コンピュータ50は、ステップS205から図14のステップS302へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS302で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが0以下でYAが負である場合は、ステップS304で動作段階を動作継続にして処理を終了する。ステップS302での条件式を満たさなかった場合、コンピュータ50は、ステップS303へ処理を進め、XAが正でYAが負であるかの判断を行う。この条件式は、現在の座標が右下方向に移動した場合に満たされる条件式である。ステップS303の条件式を満たした場合、コンピュータ50は、ステップS305へ処理を進め、動作段階を動作完了とする。ステップS303の条件式を満たさなかった場合、コンピュータ50は、ステップS306で動作段階をエラーとし、処理を終了する。
【0047】
次に、図13に戻り、ステップS206の説明をする。ステップS206は、XAが0以上で、YAが負の場合、すなわち、現在の座標が前の座標と比べて下に移動し、少なくとも左には移動していない場合である。そのように座標が移動した場合の操作として、例えば、時計回りで下に移動した操作がある。このときステップS207で、コンピュータ50は、ユーザが意図する操作が、表示している文字種類の変更であると判断する。そして、コンピュータ50は、ステップS208から図15のステップS307へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS307で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが0以上でYAが負である場合は、ステップS309で動作段階を動作継続にして処理を終了する。ステップS307での条件式を満たさなかった場合、コンピュータ50は、ステップS308へ処理を進め、XAが負でYAも負であるかの判断を行う。この条件式は、現在の座標が左下方向に移動した場合に満たされる条件式である。ステップS308の条件式を満たした場合、コンピュータ50は、ステップS310へ処理を進め、動作段階を動作完了とする。ステップS308の条件式を満たさなかった場合、コンピュータ50は、ステップS311で動作段階をエラーとし、処理を終了する。
【0048】
次に、図13に戻り、ステップS209の説明をする。ステップS209は、XAが0以下で、YAが正の場合、すなわち、現在の座標が前の座標と比べて上に移動し、少なくとも右には移動していない場合である。そのように座標が移動した場合の操作として、例えば、反時計回りで上に移動した操作がある。このときステップS210で、コンピュータ50は、ユーザが意図する操作が、スコープの移動方向を上にすることであると判断する。そして、コンピュータ50は、ステップS211から図16のステップS312へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS312で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが0以下でYAが正である場合は、ステップS314で動作段階を動作継続にして処理を終了する。ステップS312での条件式を満たさなかった場合、コンピュータ50は、ステップS313へ処理を進め、XAが正でYAも正であるかの判断を行う。この条件式は、現在の座標が右上方向に移動した場合に満たされる条件式である。ステップS313の条件式を満たした場合、コンピュータ50は、ステップS315へ処理を進め、動作段階を動作完了とする。ステップS313の条件式を満たさなかった場合、コンピュータ50は、ステップS316で動作段階をエラーとし、処理を終了する。
【0049】
次に、図13に戻り、ステップS212の説明をする。ステップS212は、XAが0以上で、YAが正の場合、すなわち、現在の座標が前の座標と比べて上に移動し、少なくとも左には移動していない場合である。そのように座標が移動した場合の操作として、例えば、時計回りで上に移動した操作がある。このときステップS213で、コンピュータ50は、ユーザが意図する操作が、表示している文字種類の変更であると判断する。そして、コンピュータ50は、ステップS214から図17のステップS317へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS317で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが0以上でYAが正である場合は、ステップS319で動作段階を動作継続にして処理を終了する。ステップS317での条件式を満たさなかった場合、コンピュータ50は、ステップS318へ処理を進め、XAが負でYAが正であるかの判断を行う。この条件式は、現在の座標が左上方向に移動した場合に満たされる条件式である。ステップS318の条件式を満たした場合、コンピュータ50は、ステップS320へ処理を進め、動作段階を動作完了とする。ステップS318の条件式を満たさなかった場合、コンピュータ50は、ステップS321で動作段階をエラーとし、処理を終了する。
【0050】
次に、図13に戻り、ステップS215の説明をする。ステップS215は、XAが負で、YAが0以下の場合、すなわち、現在の座標が前の座標と比べて左に移動し、少なくとも上には移動していない場合である。そのように座標が移動した場合の操作として、例えば、反時計回りで左に移動した操作がある。このときステップS216で、コンピュータ50は、ユーザが意図する操作が、スコープの移動方向を左にすることであると判断する。そして、コンピュータ50は、ステップS217から図18のステップS322へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS322で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが負でYAが0以下である場合は、ステップS324で動作段階を動作継続にして処理を終了する。ステップS322での条件式を満たさなかった場合、コンピュータ50は、ステップS323へ処理を進め、XAが負でYAが正であるかの判断を行う。この条件式は、現在の座標が右上方向に移動した場合に満たされる条件式である。ステップS323の条件式を満たした場合、コンピュータ50は、ステップS325へ処理を進め、動作段階を動作完了とする。ステップS323の条件式を満たさなかった場合、コンピュータ50は、ステップS326で動作段階をエラーとし、処理を終了する。
【0051】
次に、図13に戻り、ステップS218の説明をする。ステップS218は、XAが負で、YAが0以上の場合、すなわち、現在の座標が前の座標と比べて左に移動し、少なくとも下には移動していない場合である。そのように座標が移動した場合の操作として、例えば、時計回りで左に移動した操作がある。このときステップS219で、コンピュータ50は、ユーザが意図する操作が、スコープの移動方向を左にすることであると判断する。そして、コンピュータ50は、ステップS220から図19のステップS327へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS327で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが負でYAが0以上である場合は、ステップS329で動作段階を動作継続にして処理を終了する。ステップS327での条件式を満たさなかった場合、コンピュータ50は、ステップS328へ処理を進め、XAが負でYAが正であるかの判断を行う。この条件式は、現在の座標が左下方向に移動した場合に満たされる条件式である。ステップS328の条件式を満たした場合、コンピュータ50は、ステップS330へ処理を進め、動作段階を動作完了とする。ステップS328の条件式を満たさなかった場合、コンピュータ50は、ステップS331で動作段階をエラーとし、処理を終了する。
【0052】
次に、図13に戻り、ステップS221の説明をする。ステップS221は、XAが正で、YAが0以下の場合、すなわち、現在の座標が前の座標と比べて右に移動し、少なくとも上には移動していない場合である。そのように座標が移動した場合の操作として、例えば、反時計回りで右に移動した操作がある。このときステップS222で、コンピュータ50は、ユーザが意図する操作が、スコープの移動方向を右にすることであると判断する。そして、コンピュータ50は、ステップS223から図20のステップS332へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS332で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが正でYAが0以下である場合は、ステップS334で動作段階を動作継続にして処理を終了する。ステップS332での条件式を満たさなかった場合、コンピュータ50は、ステップS333へ処理を進め、XAが正でYAも正であるかの判断を行う。この条件式は、現在の座標が右上方向に移動した場合に満たされる条件式である。ステップS333の条件式を満たした場合、コンピュータ50は、ステップS335へ処理を進め、動作段階を動作完了とする。ステップS333の条件式を満たさなかった場合、コンピュータ50は、ステップS336で動作段階をエラーとし、処理を終了する。
【0053】
次に、図13に戻り、ステップS224の説明をする。ステップS224は、XAが正で、YAが0以上の場合、すなわち、現在の座標が前の座標と比べて右に移動し、少なくとも下には移動していない場合である。そのように座標が移動した場合の操作として、例えば、時計回りで右に移動した操作がある。このときステップS225で、コンピュータ50は、ユーザが意図する操作が、スコープの移動方向を右にすることであると判断する。そして、コンピュータ50は、ステップS226から図21のステップS337へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS337で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが正でYAが0以上である場合は、ステップS339で動作段階を動作継続にして処理を終了する。ステップS337での条件式を満たさなかった場合、コンピュータ50は、ステップS338へ処理を進め、XAが正でYAも正であるかの判断を行う。この条件式は、現在の座標が右上方向に移動した場合に満たされる条件式である。ステップS338の条件式を満たした場合、コンピュータ50は、ステップS340へ処理を進め、動作段階を動作完了とする。ステップS338の条件式を満たさなかった場合、コンピュータ50は、ステップS341で動作段階をエラーとし、処理を終了する。
【0054】
以上説明したフローチャートの処理例を図22、図23、図24を用いて説明する。まず、第1段階として、図22の状態では、XAもYAも負となる(図13のステップS203に相当)。第2段階として、図23の状態になると、XAは0で、YAは負となる(図14のステップS302の判断により、ステップS304に相当)。第3段階として、図24の状態になると、XAは正で、YAは負となる(図14のステップS303の判断により、ステップS305に相当)。
【0055】
このように、座標判定処理は、接触を検出し、第1段階から第2段階を経て、第3段階を終了したら、動作完了として座標判定を終える。そしてこの判定に用いた座標データはクリアされ、表示文字変更処理へと処理が遷移する。
【0056】
また、上記フローチャートにおいて、図13のステップS207とステップS213は、文字種類の変更処理であるが、ステップS207の場合は、平仮名→カタカナ→アルファベット→平仮名の順に変更され、ステップS213の場合は、平仮名→アルファベット→カタカナ→平仮名のような、ステップS207の逆順に変更されるようにしても良い。
【0057】
さらに、上述したユーザの操作を、ユーザが使いやすいように、例えば、上記操作で上へ移動する操作を下に移動する操作に変更するなど、カスタマイズ可能なようにしても良い。
【0058】
【発明の効果】
以上説明したように、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力装置、入力方法、入力プログラムが得られる。
【図面の簡単な説明】
【図1】本発明の実施の形態におけるシステムの全体構成図である。
【図2】コンピュータのハードウェアブロック図である。
【図3】グラフィックを示す図である。
【図4】入力装置の斜視図である。
【図5】入力装置のハードウェアブロック図である。
【図6】文字テーブルを示す図である。
【図7】弧を描く様子を示す図である。
【図8】弧を描く様子を示す図である。
【図9】直線を描く様子を示す図である。
【図10】XY座標を示す図である。
【図11】軌跡の判定処理を示すフローチャートである。
【図12】カタカナテーブルを示す図である。
【図13】座標判定処理を示すフローチャートである。
【図14】▲1▼の処理を示すフローチャートである。
【図15】▲2▼の処理を示すフローチャートである。
【図16】▲3▼の処理を示すフローチャートである。
【図17】▲4▼の処理を示すフローチャートである。
【図18】▲5▼の処理を示すフローチャートである。
【図19】▲6▼の処理を示すフローチャートである。
【図20】▲7▼の処理を示すフローチャートである。
【図21】▲8▼の処理を示すフローチャートである。
【図22】反時計回りに左下方向の弧を描く様子を示す図である
【図23】下方向の直線を描く様子を示す図である。
【図24】反時計回りに右下方向の弧を描く様子を示す図である
【符号の説明】
9、10…入力装置
11…ペン
12…センサ部
14…A/Dコンバータ
16…メモリ
18…MCU
20…USBコントローラ
23…表示装置
46…CPU
48…USBインタフェース
50…コンピュータ
52…ドライブ装置
54…主記憶装置
56…補助記憶装置
70…グラフィックス
71…タッチ部分
72…濁点入力部分
73…句読点入力部分
74…入力結果
75…OKボタン
76…キャンセルボタン
80…文字テーブル
81…スコープ
82…カタカナテーブル
【発明の属する技術分野】
本発明は、情報の入力に関し、特に文字あるいはアプリケーション情報を入力するための入力装置、入力方法、入力プログラムに関する。
【0002】
【従来の技術】
コンピュータに文字などの情報を入力する場合、タッチパネルにペン等を用いて手書きで文字を入力することがある。また、他の方法として、キーボードを表示した画面上に触れるか、あるいはクリックするなどして文字を選択することにより文字を入力している。
【0003】
【発明が解決しようとする課題】
しかしながら、タッチパネル上に文字を入力する場合、あるいはキーボードを表示する場合のいずれにおいても、文字を入力する領域、あるいはキーボードを表示する領域としてある程度の広さが必要となる。また、タッチパネル上に手書きで書き込まれた軌跡によっては、ユーザが意図した文字とは異なる文字として認識される可能性がある。
【0004】
本発明は、このような問題点に鑑み、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力装置、入力方法、入力プログラムを提供することを目的とする。
【0005】
【課題を解決するための手段】
請求項1に記載の発明は、入力情報を選択させ、該選択した情報を入力するための入力装置であって、指示位置を検出する指示位置検出手段と、前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更手段と、前記入力候補情報から前記入力情報を決定する入力情報決定手段とを有することを特徴とする。
【0006】
請求項1によれば、指示位置の変移で情報を選択し、その情報を入力することができるため、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力装置を提供することができる。
【0007】
請求項2に記載の発明は、前記入力候補情報変更手段は、前記指示位置が、略円周上を変移することより前記入力候補情報を変更することを特徴とする。
【0008】
請求項2によれば、例えばユーザは、円のように単純に指示位置を変移させるだけで、情報が入力可能な入力装置を提供することができる。
【0009】
請求項3に記載の発明は、前記入力情報は文字情報であることを特徴とする。
【0010】
請求項3によれば、文字情報が入力可能な入力装置を提供することができる。
【0011】
請求項4に記載の発明は、前記入力情報はアプリケーションを起動するためのアプリケーション情報であることを特徴とする。
【0012】
請求項4によれば、アプリケーションを起動することが可能な入力装置を提供することができる。
【0013】
請求項5に記載の発明は、入力情報を選択させ、該選択した情報を入力するための入力装置における入力方法であって、指示位置を検出する指示位置検出段階と、前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更段階と、前記入力候補情報から前記入力情報を決定する入力情報決定段階とを有することを特徴とする。
【0014】
請求項5によれば、指示位置の変移で情報を選択し、その情報を入力することができるため、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力方法を提供することができる。
【0015】
請求項6に記載の発明は、コンピュータに、指示位置を検出する指示位置検出手順と、前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更手順と、前記入力候補情報から前記入力情報を決定する入力情報決定手順とを実行させるための入力プログラム。
【0016】
請求項6によれば、指示位置の変移で情報を選択し、その情報を入力することができるため、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力プログラムを提供することができる。
【0017】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。
【0018】
本発明の実施の形態におけるシステムの全体構成図を図1に示す。図1に示されるように、本実施の形態における入力装置は、コンピュータの表示装置23に備えられた参照符号が9の入力装置と、外付けされている参照符号10の入力装置の2種類ある。そして、入力装置9、10は、コンピュータ50とUSB(Universal Serial Bus)ケーブルなどで接続され、コンピュータ50上に表示するために検出した接触位置などのデータをコンピュータ50に送信する。なお、送信方法は、シリアルでもパラレルでも構わない。
【0019】
コンピュータ50は、図2に示されるように、表示装置23と、ドライブ装置52と、主記憶装置54と、補助記憶装置56と、CPU(Central ProcessingUnit)46と、USB(Universal Serial Bus)インタフェース48とを有し、それらはバスで接続されている。このうち、表示装置23は、コンピュータ50を操作するために必要な各種情報などを表示する。ドライブ装置52は、着脱自在な記録媒体の読み書きが可能であり、例えば記録媒体からプログラム読み込み、補助記憶装置56にインストールするときに用いられる。CPU46は、補助記憶装置56に格納されたプログラムを読み込み実行し、プログラムやデータなどを記憶するために主記憶装置54を用いる。そしてUSBインタフェース48は、入力装置10とのやり取りをUSB転送方式で行うためのインタフェースである。
【0020】
次に、入力装置9、10について説明する。まず、入力装置9は、スタイラスや指、あるいはペンなどでの接触を検出するセンサ部を有するタッチパネルであり、表示装置23の画面上に固定されている。そして、表示装置23の画面には、図3に示されるグラフィック70が表示される。グラフィック70は、濁点入力部分72と句読点入力部分73と文字「あ」が表示されている部分で構成されるタッチ部分71を有する。このタッチ部分にユーザがペンや指を触れて操作することで文字を入力する。そして、濁点入力部分72は、濁点がペンや指で入力された場合に表示している文字に濁点が加えられる。句読点入力部分73は、丸や点が入力された場合に表示している文字の次に、入力された句読点が加えられる。
【0021】
また、グラフィック70は、タッチ部分71の他に、入力された結果を表示する入力結果表示ボックス74と、OKボタン75と、キャンセルボタン76とを有する。
【0022】
次に、もう一つの入力装置である入力装置10の斜視図を図4に示す。図4に示されるように、入力装置10は、スタイラスや指、あるいはペン11などによる接触およびその位置の検出を行うセンサ部12を有する。この入力装置10の場合における情報の表示方法であるが、入力装置9と同様に、表示装置23に表示しても良いし、入力装置10に表示しても良い。
【0023】
これら入力装置9、10のハードウェアブロック図を図5に示す。図5に示されるように入力装置10は、センサ部12と、A/Dコンバータ14と、MCU(Micro Computer Unit)18と、メモリ16と、USBコントローラ20とを有する。このうちセンサ部12は、上述した接触の検出と位置の検出などを行う。そしてこの検出された信号はA/Dコンバータ14に出力され、A/Dコンバータ14でA/D変換されてMCU18に出力される。MCU18は、センサ部12からのデータを処理し、その処理したデータをUSBコントローラ20を介してコンピュータ50に出力する。またメモリ16は、処理を行うプログラムやデータなどを一時的に保存するために用いられる。
【0024】
次に、上記センサ部12における「接触」について説明する。このセンサ部12における接触とは、実際にタッチした時点から一定時間以上継続して接触した場合を接触とみなす。したがって、誤ってタッチした場合などは、接触とみなされない。
【0025】
また、タッチした例えばペンがセンサ部12からリリースされた場合のような、接触状態から非接触状態への判定は、非接触状態となってから一定時間以上その状態が継続したとき非接触状態となったと判定する。そして、この場合の検出する座標値は、接触状態中に検出した座標値のうち、最も新しい座標値を検出する座標値とする。
【0026】
次に、クリックの判定であるが、タッチを検出してから一定時間以内にリリースを検出し、そのリリースの状態が一定時間以上継続した場合にクリック操作と判定する。そして、ダブルクリック操作の判定は、上記リリース状態の継続時間を満了するまでに、再びタッチがあった場合、その操作を1度目のクリックとして保持し、それからさらに、一定時間以内に上記クリック操作を検出した場合に2度目のクリックとし、ダブルクリックと判断する。
【0027】
さらに、接触したままペンを移動する操作であるドラッグ操作の検出は、上記1度目のクリックとして保持した後、再び接触状態となり、一定時間以上その状態が継続したときにドラッグ操作と判定する。
【0028】
このように、接触、非接触ともに一定時間以上その状態が継続しない限り、その状態と判定しない。逆に一定時間以内であれば、現在の状態の変更は行われない。もちろん、接触、非接触をそのまま検出することも可能であるが、上記のようにしたほうが使い勝手が良いことが多い。
【0029】
次に、ユーザが入力装置9、10を使用する際の、使用方法について説明する。なお、この説明は、説明を分かりやすくするために、入力装置10とペンとを用いて説明するが、入力方法は、いずれの入力装置であっても変わらない。また、この説明は、平仮名を入力する場合の説明とし、その平仮名を表示するのは、表示装置23とする。
【0030】
最初に、図6に示される文字テーブル80の説明をする。図6に示されるように文字テーブル80は、50音順に平仮名が並べられたテーブルであり、このうち、スコープ81に囲まれている1文字のみ表示装置23に表示される。この図の場合、表示装置23に表示されるのは、スコープ81に囲まれている「す」である。
【0031】
このように、ユーザは、入力装置によりスコープを操作することで所望の文字を入力する操作方法となっている。なお、スコープを操作することと、テーブルを操作することは、この場合は同義であるので、スコープを固定し、テーブルを操作するようにしても良い。
【0032】
次に、スコープの移動についてであるが、スコープの移動方向は、上下左右の4方向ある。その方向へ移動させるための操作方法を、以下図面を用いて説明する。
【0033】
まず、基本的に操作方法は、ペン11でセンサ部12に弧あるいは直線を描く方法の2つである。このうち、弧を描く場合について、図7と図8とを用いて説明する。図7と図8は、ペンにより弧が描かれている様子を示した図であり、図7は、時計回りに、図8は、反時計回りに弧を描いている様子が示されている。そして、図9は、ペンにより直線が描かれている様子を示した図である。
【0034】
このように、入力される弧、あるいは直線は、ペン11とセンサ部12の接触点の軌跡であり、処理としては、センサ部12を図10に示すXY座標として処理を行う。
【0035】
次に、このように処理される軌跡が、どの操作を行ったのか判定する処理を、図11のフローチャートを用いて説明する。なお、この処理は、コンピュータ50で行っても良いし、入力装置9、10で行い、その結果をコンピュータ50に送信しても良い。以下の説明では、コンピュータ50で説明する。なお、入力装置あるいはコンピュータのいずれで行う場合も、センサ部における接触状態と検出座標値を検出し、検出した座標値をコンピュータ50に搭載されたOS(Operating System)にとって有効な論理座標値に変換することにより処理が行なわれる。
【0036】
図11のフローチャートの説明をする。ステップS101で、コンピュータ50は、接触によりタッチONを検出する。そして、ステップS102で、コンピュータ50は、上記タッチONが、ダブルクリックであるかどうかを判定する。コンピュータ50は、ダブルクリックと判定すると、ステップS103で、スコープに囲まれることにより選択された文字を入力文字とする。そして、コンピュータ50は、ステップS104で、保存していた座標データをクリアして、ステップS105で、処理を終了する。
【0037】
ステップS102に戻り、コンピュータ50は、ダブルクリックではないと判定した場合、ステップS108へ処理を進める。ステップS108で、コンピュータ50は、前回にタッチONがなかった場合、この接触が始めての接触であるので、ステップS106で、座標データを保存し、ステップS107で処理を終了する。
【0038】
ステップS108に戻り、コンピュータ50は、以前に接触されたことを示す「前回タッチON」であると、ステップS109の座標判定処理に進む。この座標判定処理は、「移動方向」と、後述する「文字種類の変更」と、ユーザの動作に関する情報である「動作完了」、「動作継続」、「エラー」とを得る処理である。このステップS109の処理は、後に詳しく説明する。
【0039】
ステップS109で得られた「動作完了」、「動作継続」、「エラー」により、コンピュータ50は、ステップS110で処理を分岐する。そのうち、ユーザの入力動作(図7、図8、図9参照)が完了したことを示す「動作完了」であった場合、コンピュータ50は、ステップS111からステップS112へ処理を進める。そして、ステップS112で、コンピュータ50は、保存しておいた座標データをクリアする。その後、ステップS113で、コンピュータ50は、ステップS109で得られた「移動方向」、「文字種類の変更」に基づき表示文字の変更処理を行う。このうち「移動方向」の場合は、スコープを「移動方向」に移動させる。「文字種類の変更」の場合は、例えば図6の平仮名テーブルから図12のカタカナテーブル82に文字種類を変更させる。そして、ステップS118で、処理を終了する。なお、これらの文字を表示するテーブルは、平仮名やカタカナに限らず、アルファベットのような外国の文字であっても良い。さらに、アプリケーションのアイコンのような図でもよく、この場合は、アイコンを選択するとそのアイコンに対応したアプリケーションが立ち上がるようにする。
【0040】
次に、先ほどのステップS110の分岐処理に戻り、ステップS109で「動作継続」が得られた場合、コンピュータ50は、ステップS114からステップS115へ処理を進め、ユーザの動作が継続しているため、現在の座標データを保存し、ステップS118で処理を終了する。
【0041】
ステップS109で「エラー」が得られた場合、コンピュータ50は、ステップS116からステップS117へ処理を進め、エラーのため、現在の座標データをクリアし、ステップS118で処理を終了する。
【0042】
次に、ステップS109の座標判定処理について、図13のフローチャートを用いて説明する。
【0043】
ステップS201で、コンピュータ50は、現在の座標と、前回の座標との関係を求めるため、ステップS201に示されるように座標軸ごと引き算を行う。そして、この座標軸ごとの引き算した値をそれぞれXA、YAとする。このようにすることにより、例えばXAが正であれば、現在のX座標は、前回のX座標よりX軸方向に移動したことがわかる。逆に負であれば、現在のX座標は、前回のX座標より原点方向に移動したことがわかる。
【0044】
このようなXA、YAの正負あるいは零により、ステップS202で、コンピュータ50は、8つに処理を分岐する。以下、それらの処理について説明する。なお、以下の説明では、説明を分かりやすくするために、図10における、Y軸上の点から原点への方向を「下」と表現し、その逆の方向を「上」と表現する。また、X軸上の点から原点への方向を「左」と表現し、その逆の方向を「右」と表現する。
【0045】
また、このようなスコープの移動について、図6の文字テーブルを例とした場合、「スコープを下に移動する」とは、表示される文字が「あいうえお」の順に遷移していくことである。逆に「スコープを上に移動する」とは、表示される文字が「おえういあ」の順に遷移していくことである。また、「スコープを右に移動する」とは、表示される文字が「あかさたな…」の順に遷移していくことである。逆に「スコープを左に移動する」とは、表示される文字が「…なたさかあ」の順に遷移していくことである。
【0046】
まず、ステップS203の説明をする。ステップS203は、XAが0以下で、YAが負の場合、すなわち、現在の座標が前の座標と比べて下に移動し、少なくとも右には移動していない場合である。そのように座標が移動した場合の操作として、例えば、反時計回りで下に移動した操作がある。このときステップS204で、コンピュータ50は、ユーザが意図する操作が、スコープの移動方向を下にすることであると判断する。そして、コンピュータ50は、ステップS205から図14のステップS302へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS302で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが0以下でYAが負である場合は、ステップS304で動作段階を動作継続にして処理を終了する。ステップS302での条件式を満たさなかった場合、コンピュータ50は、ステップS303へ処理を進め、XAが正でYAが負であるかの判断を行う。この条件式は、現在の座標が右下方向に移動した場合に満たされる条件式である。ステップS303の条件式を満たした場合、コンピュータ50は、ステップS305へ処理を進め、動作段階を動作完了とする。ステップS303の条件式を満たさなかった場合、コンピュータ50は、ステップS306で動作段階をエラーとし、処理を終了する。
【0047】
次に、図13に戻り、ステップS206の説明をする。ステップS206は、XAが0以上で、YAが負の場合、すなわち、現在の座標が前の座標と比べて下に移動し、少なくとも左には移動していない場合である。そのように座標が移動した場合の操作として、例えば、時計回りで下に移動した操作がある。このときステップS207で、コンピュータ50は、ユーザが意図する操作が、表示している文字種類の変更であると判断する。そして、コンピュータ50は、ステップS208から図15のステップS307へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS307で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが0以上でYAが負である場合は、ステップS309で動作段階を動作継続にして処理を終了する。ステップS307での条件式を満たさなかった場合、コンピュータ50は、ステップS308へ処理を進め、XAが負でYAも負であるかの判断を行う。この条件式は、現在の座標が左下方向に移動した場合に満たされる条件式である。ステップS308の条件式を満たした場合、コンピュータ50は、ステップS310へ処理を進め、動作段階を動作完了とする。ステップS308の条件式を満たさなかった場合、コンピュータ50は、ステップS311で動作段階をエラーとし、処理を終了する。
【0048】
次に、図13に戻り、ステップS209の説明をする。ステップS209は、XAが0以下で、YAが正の場合、すなわち、現在の座標が前の座標と比べて上に移動し、少なくとも右には移動していない場合である。そのように座標が移動した場合の操作として、例えば、反時計回りで上に移動した操作がある。このときステップS210で、コンピュータ50は、ユーザが意図する操作が、スコープの移動方向を上にすることであると判断する。そして、コンピュータ50は、ステップS211から図16のステップS312へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS312で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが0以下でYAが正である場合は、ステップS314で動作段階を動作継続にして処理を終了する。ステップS312での条件式を満たさなかった場合、コンピュータ50は、ステップS313へ処理を進め、XAが正でYAも正であるかの判断を行う。この条件式は、現在の座標が右上方向に移動した場合に満たされる条件式である。ステップS313の条件式を満たした場合、コンピュータ50は、ステップS315へ処理を進め、動作段階を動作完了とする。ステップS313の条件式を満たさなかった場合、コンピュータ50は、ステップS316で動作段階をエラーとし、処理を終了する。
【0049】
次に、図13に戻り、ステップS212の説明をする。ステップS212は、XAが0以上で、YAが正の場合、すなわち、現在の座標が前の座標と比べて上に移動し、少なくとも左には移動していない場合である。そのように座標が移動した場合の操作として、例えば、時計回りで上に移動した操作がある。このときステップS213で、コンピュータ50は、ユーザが意図する操作が、表示している文字種類の変更であると判断する。そして、コンピュータ50は、ステップS214から図17のステップS317へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS317で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが0以上でYAが正である場合は、ステップS319で動作段階を動作継続にして処理を終了する。ステップS317での条件式を満たさなかった場合、コンピュータ50は、ステップS318へ処理を進め、XAが負でYAが正であるかの判断を行う。この条件式は、現在の座標が左上方向に移動した場合に満たされる条件式である。ステップS318の条件式を満たした場合、コンピュータ50は、ステップS320へ処理を進め、動作段階を動作完了とする。ステップS318の条件式を満たさなかった場合、コンピュータ50は、ステップS321で動作段階をエラーとし、処理を終了する。
【0050】
次に、図13に戻り、ステップS215の説明をする。ステップS215は、XAが負で、YAが0以下の場合、すなわち、現在の座標が前の座標と比べて左に移動し、少なくとも上には移動していない場合である。そのように座標が移動した場合の操作として、例えば、反時計回りで左に移動した操作がある。このときステップS216で、コンピュータ50は、ユーザが意図する操作が、スコープの移動方向を左にすることであると判断する。そして、コンピュータ50は、ステップS217から図18のステップS322へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS322で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが負でYAが0以下である場合は、ステップS324で動作段階を動作継続にして処理を終了する。ステップS322での条件式を満たさなかった場合、コンピュータ50は、ステップS323へ処理を進め、XAが負でYAが正であるかの判断を行う。この条件式は、現在の座標が右上方向に移動した場合に満たされる条件式である。ステップS323の条件式を満たした場合、コンピュータ50は、ステップS325へ処理を進め、動作段階を動作完了とする。ステップS323の条件式を満たさなかった場合、コンピュータ50は、ステップS326で動作段階をエラーとし、処理を終了する。
【0051】
次に、図13に戻り、ステップS218の説明をする。ステップS218は、XAが負で、YAが0以上の場合、すなわち、現在の座標が前の座標と比べて左に移動し、少なくとも下には移動していない場合である。そのように座標が移動した場合の操作として、例えば、時計回りで左に移動した操作がある。このときステップS219で、コンピュータ50は、ユーザが意図する操作が、スコープの移動方向を左にすることであると判断する。そして、コンピュータ50は、ステップS220から図19のステップS327へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS327で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが負でYAが0以上である場合は、ステップS329で動作段階を動作継続にして処理を終了する。ステップS327での条件式を満たさなかった場合、コンピュータ50は、ステップS328へ処理を進め、XAが負でYAが正であるかの判断を行う。この条件式は、現在の座標が左下方向に移動した場合に満たされる条件式である。ステップS328の条件式を満たした場合、コンピュータ50は、ステップS330へ処理を進め、動作段階を動作完了とする。ステップS328の条件式を満たさなかった場合、コンピュータ50は、ステップS331で動作段階をエラーとし、処理を終了する。
【0052】
次に、図13に戻り、ステップS221の説明をする。ステップS221は、XAが正で、YAが0以下の場合、すなわち、現在の座標が前の座標と比べて右に移動し、少なくとも上には移動していない場合である。そのように座標が移動した場合の操作として、例えば、反時計回りで右に移動した操作がある。このときステップS222で、コンピュータ50は、ユーザが意図する操作が、スコープの移動方向を右にすることであると判断する。そして、コンピュータ50は、ステップS223から図20のステップS332へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS332で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが正でYAが0以下である場合は、ステップS334で動作段階を動作継続にして処理を終了する。ステップS332での条件式を満たさなかった場合、コンピュータ50は、ステップS333へ処理を進め、XAが正でYAも正であるかの判断を行う。この条件式は、現在の座標が右上方向に移動した場合に満たされる条件式である。ステップS333の条件式を満たした場合、コンピュータ50は、ステップS335へ処理を進め、動作段階を動作完了とする。ステップS333の条件式を満たさなかった場合、コンピュータ50は、ステップS336で動作段階をエラーとし、処理を終了する。
【0053】
次に、図13に戻り、ステップS224の説明をする。ステップS224は、XAが正で、YAが0以上の場合、すなわち、現在の座標が前の座標と比べて右に移動し、少なくとも下には移動していない場合である。そのように座標が移動した場合の操作として、例えば、時計回りで右に移動した操作がある。このときステップS225で、コンピュータ50は、ユーザが意図する操作が、スコープの移動方向を右にすることであると判断する。そして、コンピュータ50は、ステップS226から図21のステップS337へ処理を進め、新たに更新されたXAとYAに対して再び判定を行う。ステップS337で、コンピュータ50は、ステップS202での状態と変わらない状態である、XAが正でYAが0以上である場合は、ステップS339で動作段階を動作継続にして処理を終了する。ステップS337での条件式を満たさなかった場合、コンピュータ50は、ステップS338へ処理を進め、XAが正でYAも正であるかの判断を行う。この条件式は、現在の座標が右上方向に移動した場合に満たされる条件式である。ステップS338の条件式を満たした場合、コンピュータ50は、ステップS340へ処理を進め、動作段階を動作完了とする。ステップS338の条件式を満たさなかった場合、コンピュータ50は、ステップS341で動作段階をエラーとし、処理を終了する。
【0054】
以上説明したフローチャートの処理例を図22、図23、図24を用いて説明する。まず、第1段階として、図22の状態では、XAもYAも負となる(図13のステップS203に相当)。第2段階として、図23の状態になると、XAは0で、YAは負となる(図14のステップS302の判断により、ステップS304に相当)。第3段階として、図24の状態になると、XAは正で、YAは負となる(図14のステップS303の判断により、ステップS305に相当)。
【0055】
このように、座標判定処理は、接触を検出し、第1段階から第2段階を経て、第3段階を終了したら、動作完了として座標判定を終える。そしてこの判定に用いた座標データはクリアされ、表示文字変更処理へと処理が遷移する。
【0056】
また、上記フローチャートにおいて、図13のステップS207とステップS213は、文字種類の変更処理であるが、ステップS207の場合は、平仮名→カタカナ→アルファベット→平仮名の順に変更され、ステップS213の場合は、平仮名→アルファベット→カタカナ→平仮名のような、ステップS207の逆順に変更されるようにしても良い。
【0057】
さらに、上述したユーザの操作を、ユーザが使いやすいように、例えば、上記操作で上へ移動する操作を下に移動する操作に変更するなど、カスタマイズ可能なようにしても良い。
【0058】
【発明の効果】
以上説明したように、比較的狭い領域で情報を入力するとともに、ユーザが意図した情報を入力することを可能とする入力装置、入力方法、入力プログラムが得られる。
【図面の簡単な説明】
【図1】本発明の実施の形態におけるシステムの全体構成図である。
【図2】コンピュータのハードウェアブロック図である。
【図3】グラフィックを示す図である。
【図4】入力装置の斜視図である。
【図5】入力装置のハードウェアブロック図である。
【図6】文字テーブルを示す図である。
【図7】弧を描く様子を示す図である。
【図8】弧を描く様子を示す図である。
【図9】直線を描く様子を示す図である。
【図10】XY座標を示す図である。
【図11】軌跡の判定処理を示すフローチャートである。
【図12】カタカナテーブルを示す図である。
【図13】座標判定処理を示すフローチャートである。
【図14】▲1▼の処理を示すフローチャートである。
【図15】▲2▼の処理を示すフローチャートである。
【図16】▲3▼の処理を示すフローチャートである。
【図17】▲4▼の処理を示すフローチャートである。
【図18】▲5▼の処理を示すフローチャートである。
【図19】▲6▼の処理を示すフローチャートである。
【図20】▲7▼の処理を示すフローチャートである。
【図21】▲8▼の処理を示すフローチャートである。
【図22】反時計回りに左下方向の弧を描く様子を示す図である
【図23】下方向の直線を描く様子を示す図である。
【図24】反時計回りに右下方向の弧を描く様子を示す図である
【符号の説明】
9、10…入力装置
11…ペン
12…センサ部
14…A/Dコンバータ
16…メモリ
18…MCU
20…USBコントローラ
23…表示装置
46…CPU
48…USBインタフェース
50…コンピュータ
52…ドライブ装置
54…主記憶装置
56…補助記憶装置
70…グラフィックス
71…タッチ部分
72…濁点入力部分
73…句読点入力部分
74…入力結果
75…OKボタン
76…キャンセルボタン
80…文字テーブル
81…スコープ
82…カタカナテーブル
Claims (6)
- 入力情報を選択させ、該選択した情報を入力するための入力装置であって、
指示位置を検出する指示位置検出手段と、
前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更手段と、
前記入力候補情報から前記入力情報を決定する入力情報決定手段とを有することを特徴とする入力装置。 - 前記入力候補情報変更手段は、前記指示位置が、略円周上を変移することより前記入力候補情報を変更することを特徴とする請求項1に記載の入力装置。
- 前記入力情報は文字情報であることを特徴とする請求項1または2に記載の入力装置。
- 前記入力情報はアプリケーションを起動するためのアプリケーション情報であることを特徴とする請求項1から3のいずれか1項に記載の入力装置。
- 入力情報を選択させ、該選択した情報を入力するための入力装置における入力方法であって、
指示位置を検出する指示位置検出段階と、
前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更段階と、
前記入力候補情報から前記入力情報を決定する入力情報決定段階とを有することを特徴とする入力方法。 - コンピュータに、
指示位置を検出する指示位置検出手順と、
前記指示位置の変移に基づき、前記入力情報の候補となる情報を変更する入力候補情報変更手順と、
前記入力候補情報から前記入力情報を決定する入力情報決定手順とを実行させるための入力プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002194504A JP2004038547A (ja) | 2002-07-03 | 2002-07-03 | 入力装置、入力方法、入力プログラム |
US10/369,581 US7665042B2 (en) | 2002-07-03 | 2003-02-21 | Input apparatus and method for inputting information with a small display area |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002194504A JP2004038547A (ja) | 2002-07-03 | 2002-07-03 | 入力装置、入力方法、入力プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004038547A true JP2004038547A (ja) | 2004-02-05 |
Family
ID=30437074
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002194504A Pending JP2004038547A (ja) | 2002-07-03 | 2002-07-03 | 入力装置、入力方法、入力プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US7665042B2 (ja) |
JP (1) | JP2004038547A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007080110A (ja) * | 2005-09-16 | 2007-03-29 | Ricoh Co Ltd | 情報入出力装置、情報処理装置、プログラムおよびドラッグ操作制御方法 |
JP2007258425A (ja) * | 2006-03-23 | 2007-10-04 | Sumitomo Bakelite Co Ltd | 半導体用接着剤、これを用いた半導体装置および半導体装置の製造方法 |
WO2009075061A1 (ja) * | 2007-12-12 | 2009-06-18 | Kenji Yoshida | 情報入力装置、情報処理装置、情報入力システム、情報処理システム、2次元書式情報サーバ、情報入力方法、制御プログラム、および記録媒体 |
CN104268182A (zh) * | 2014-09-16 | 2015-01-07 | 百度在线网络技术(北京)有限公司 | 候选字排序方法、装置和文字输入方法、设备 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8169421B2 (en) * | 2006-06-19 | 2012-05-01 | Cypress Semiconductor Corporation | Apparatus and method for detecting a touch-sensor pad gesture |
TWI433004B (zh) * | 2010-05-14 | 2014-04-01 | Alcor Micro Corp | 觸控面板上之觸控點判斷方法及其系統 |
GB2511044A (en) * | 2013-02-20 | 2014-08-27 | Ibm | Capturing diacritics on multi-touch devices |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05108244A (ja) | 1991-10-21 | 1993-04-30 | Hitachi Ltd | 文字入力方式 |
US5523775A (en) * | 1992-05-26 | 1996-06-04 | Apple Computer, Inc. | Method for selecting objects on a computer display |
JP3546337B2 (ja) * | 1993-12-21 | 2004-07-28 | ゼロックス コーポレイション | 計算システム用ユーザ・インタフェース装置及びグラフィック・キーボード使用方法 |
JPH07200150A (ja) * | 1993-12-28 | 1995-08-04 | Casio Comput Co Ltd | ペン入力装置 |
US5471578A (en) * | 1993-12-30 | 1995-11-28 | Xerox Corporation | Apparatus and method for altering enclosure selections in a gesture based input system |
JPH08235317A (ja) | 1995-01-03 | 1996-09-13 | Xerox Corp | ペン・コンピュータ用の拡張型自己区切りデータ入力方法 |
JPH08272787A (ja) | 1995-03-29 | 1996-10-18 | Sharp Corp | 文字処理装置 |
US5677708A (en) * | 1995-05-05 | 1997-10-14 | Microsoft Corporation | System for displaying a list on a display screen |
US6271835B1 (en) * | 1998-09-03 | 2001-08-07 | Nortel Networks Limited | Touch-screen input device |
US6388686B1 (en) * | 1998-12-15 | 2002-05-14 | International Business Machines Corporation | Method, system and computer program product for rotating through a sequence of display states in a multi-field text string class in a graphical user interface |
US6683600B1 (en) * | 2000-04-19 | 2004-01-27 | Microsoft Corporation | Adaptive input pen mode selection |
US6956562B1 (en) * | 2000-05-16 | 2005-10-18 | Palmsource, Inc. | Method for controlling a handheld computer by entering commands onto a displayed feature of the handheld computer |
US6535204B2 (en) * | 2001-04-27 | 2003-03-18 | Palmwalker Ltd. | Manuscript input data processing device |
US7107532B1 (en) * | 2001-08-29 | 2006-09-12 | Digeo, Inc. | System and method for focused navigation within a user interface |
-
2002
- 2002-07-03 JP JP2002194504A patent/JP2004038547A/ja active Pending
-
2003
- 2003-02-21 US US10/369,581 patent/US7665042B2/en not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007080110A (ja) * | 2005-09-16 | 2007-03-29 | Ricoh Co Ltd | 情報入出力装置、情報処理装置、プログラムおよびドラッグ操作制御方法 |
JP4690157B2 (ja) * | 2005-09-16 | 2011-06-01 | 株式会社リコー | 情報入出力装置、情報処理装置、プログラムおよびドラッグ操作制御方法 |
JP2007258425A (ja) * | 2006-03-23 | 2007-10-04 | Sumitomo Bakelite Co Ltd | 半導体用接着剤、これを用いた半導体装置および半導体装置の製造方法 |
WO2009075061A1 (ja) * | 2007-12-12 | 2009-06-18 | Kenji Yoshida | 情報入力装置、情報処理装置、情報入力システム、情報処理システム、2次元書式情報サーバ、情報入力方法、制御プログラム、および記録媒体 |
JP5582563B2 (ja) * | 2007-12-12 | 2014-09-03 | 健治 吉田 | 情報入力装置、情報処理装置、情報入力システム、情報処理システム、2次元書式情報サーバ、情報入力方法、制御プログラム、および記録媒体 |
JP2016186789A (ja) * | 2007-12-12 | 2016-10-27 | グリッドマーク株式会社 | 情報入力装置、情報処理装置、情報入力システム、情報処理システム、2次元書式情報サーバ、情報入力方法、制御プログラム、および記録媒体 |
CN104268182A (zh) * | 2014-09-16 | 2015-01-07 | 百度在线网络技术(北京)有限公司 | 候选字排序方法、装置和文字输入方法、设备 |
Also Published As
Publication number | Publication date |
---|---|
US20040012571A1 (en) | 2004-01-22 |
US7665042B2 (en) | 2010-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4213414B2 (ja) | 機能の実現方法及び装置 | |
JP5158014B2 (ja) | 表示制御装置、表示制御方法およびコンピュータプログラム | |
KR100678945B1 (ko) | 터치패드 입력 정보 처리 장치 및 방법 | |
US20100302155A1 (en) | Virtual input devices created by touch input | |
JP4886582B2 (ja) | 文字入力装置、文字入力用プログラムおよび文字入力方法 | |
CN101438225A (zh) | 多重触摸使用、姿势及实现 | |
JP2009110286A (ja) | 情報処理装置、ランチャー起動制御プログラムおよびランチャー起動制御方法 | |
JP2011028524A (ja) | 情報処理装置、プログラムおよびポインティング方法 | |
KR20080051459A (ko) | 스크롤 처리 방법 및 장치 | |
WO2012137861A1 (ja) | 電子機器、表示方法、および表示プログラム | |
KR20100028465A (ko) | 포인터의 드래그 방향에 따른 문자 또는 메뉴입력 방법 | |
JP2019514096A (ja) | 文字列に文字を挿入するための方法およびシステム | |
JP2009009252A (ja) | タッチ式入力装置 | |
JP5275429B2 (ja) | 情報処理装置、プログラムおよびポインティング方法 | |
JP2004038547A (ja) | 入力装置、入力方法、入力プログラム | |
JP6293209B2 (ja) | 情報処理装置、誤操作抑制方法、及びプログラム | |
JP2002091676A (ja) | 入力装置 | |
JP4793133B2 (ja) | 入力装置 | |
JP2012141650A (ja) | 携帯端末 | |
JP2008226097A (ja) | タッチパネルシステム | |
KR101392739B1 (ko) | 터치 스크린 디스플레이를 통해 전자문서상에서 테이블을 생성하는 방법 및 장치 | |
JP2000330704A5 (ja) | ||
JP2866575B2 (ja) | 感圧式タブレットおよび情報処理装置 | |
JP5165624B2 (ja) | 情報入力装置、オブジェクト表示方法、およびコンピュータが実行可能なプログラム | |
CN102650926B (zh) | 具触控式屏幕的电子装置及其显示控制方法 |