JP2004185512A - 入出力装置 - Google Patents
入出力装置 Download PDFInfo
- Publication number
- JP2004185512A JP2004185512A JP2002354308A JP2002354308A JP2004185512A JP 2004185512 A JP2004185512 A JP 2004185512A JP 2002354308 A JP2002354308 A JP 2002354308A JP 2002354308 A JP2002354308 A JP 2002354308A JP 2004185512 A JP2004185512 A JP 2004185512A
- Authority
- JP
- Japan
- Prior art keywords
- pen
- input
- coordinate
- coordinate conversion
- update mode
- 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
Landscapes
- Position Input By Displaying (AREA)
Abstract
【課題】座標入力装置の入力座標系と表示装置の表示座標系との間のずれを、専用画面を開くことなく、簡単な操作でキャリブレーションできる入出力装置を提供する。
【解決手段】少なくとも入力監視部41によるペン3のアップの検知を条件として座標変換係数更新モードに突入するとともに、座標変換係数更新モード中の入力座標入力装置1に定義される座標系に対するペンダウン操作、ペン移動操作、ペンアップ操作(ペンドラッグ操作)による入力座標の変化量に基づいて新しい座標変換係数を算出して更新する座標変換係数補正部4を備えるようにしている。
【選択図】 図2
【解決手段】少なくとも入力監視部41によるペン3のアップの検知を条件として座標変換係数更新モードに突入するとともに、座標変換係数更新モード中の入力座標入力装置1に定義される座標系に対するペンダウン操作、ペン移動操作、ペンアップ操作(ペンドラッグ操作)による入力座標の変化量に基づいて新しい座標変換係数を算出して更新する座標変換係数補正部4を備えるようにしている。
【選択図】 図2
Description
【0001】
【発明の属する技術分野】
本発明は、表示装置の表示画面に透明タブレットなどの座標入力装置が重ねて取り付けられた入出力装置に関し、さらに詳細には入出力装置に入力される入力位置座標と、入力位置座標に対応してカーソルが表示される表示位置座標との位置関係を補正することが可能な入出力装置に関する。
この入出力装置は、たとえばペンコンピュータ、ハンドヘルドPC、PDA(個人用携帯端末)、携帯電話などに利用される。
【0002】
【従来の技術】
表示装置と座標入力装置とが重ねられ、この座標入力装置に対しペンや指で押下して位置を指定することで座標入力することができるタッチパネルなどの入出力装置がある(以下、ペンは座標入力装置に対して位置を指定するための手段を総称してペンと呼ぶ)。この入出力装置では表示装置上に表示されたオブジェクトに対して直接的に操作を行うことができる。
【0003】
しかし、表示装置の表示画面と、この表示画面に重ねられた座標入力装置とは、それぞれ独立した座標系を有している。2つの座標系を一致させるために(目視したときに一致するように見えるようにするために)座標入力装置への入力座標を、適切な座標変換式を用いて表示装置の座標系に座標変換する必要がある。
また、座標入力装置から入力される座標は、座標入力装置の経年変化、特性のばらつき、電源電圧の変化により変動し、座標入力装置上の実際に入力された座標から多少のずれを生じた場合に、座標変換時にずれを生じるので座標変換式の座標変換係数を補正する必要がある。
【0004】
この座標変換式に使用する座標変換係数を適切な値に補正することをキャリブレーションと呼ぶ。
従来からの一般的なキャリブレーション方法のひとつに、基準点を表示するための専用画面を表示するキャリブレーション用ソフトを用意し、キャリブレーション実行の際にキャリブレーション用ソフトを起動するものがある(特許文献1参照)。
【特許文献1】
特公平5―31766号公報
【0005】
このキャリブレーション方法では、使用者がキャリブレーション用ソフトにより表示装置の表示画面上に表示された複数個の基準点を目掛けて、タッチパネルを順次タップする操作を行い、これらのタッチパネルから入力された座標より座標変換係数を計算する。
【0006】
【発明が解決しようとする課題】
キャリブレーションは、従来、通常使用時とは独立して行われるものと考えられており、利用者がキャリブレーションを行おうとするとキャリブレーションソフトを起動するなどして明示的にキャリブレーション状態へ遷移する必要がある。すなわち、キャリブレーションソフトを起動するための入力操作をする必要がある。
ところが、タッチパネルなどのように、入力座標系に直接ペンによる座標入力が行われるタイプの座標入力装置(タブレットなど)だけが搭載されていて、これ以外の座標入力が可能な他の入力装置(たとえばキーボード)を備えていない機器では、キャリブレーション用のソフトウェアを起動するための入力操作自体を、キャリブレーションすべき座標入力装置を用いてしなければならない。
【0007】
しかしながら、キャリブレーションが必要な状態になっている座標入力装置は、入力座標系と座標変換した表示座標系とがずれているため、正しい入力操作を行うことが困難である。また、入力座標系と表示座標系とのずれが大きい場合には、キャリブレーションソフトを起動することすらできず、キャリブレーションを実行するためのキャリブレーションモードへの切り替えがうまく実行できないという問題がある。
【0008】
さらに、上述した従来のキャリブレーション方法では、予め座標が定められた複数個の基準点をタップするために、基準点にタップ目標となるマークを表示したキャリブレーション専用画面を別途に用意しておかねばならず、キャリブレーションをしようとする際には、いちいち専用画面に切り替えてキャリブレーションを実行することが必要であり、手間がかかる。
【0009】
そのため、キャリブレーション専用画面を必要とせず通常使用状態から簡単な操作でキャリブレーションを行うことができるのが望ましいが、そのようにするには、常時ペン入力を監視してキャリブレーションを行うか否かの判定を的確に行って通常操作かキャリブレーション操作かを区別する必要がある。
【0010】
そこで本発明は、キャリブレーション操作を簡単かつ的確に行うことができ、また、専用画面に切り替えることなく通常使用状態から簡単にキャリブレーション操作が実行でき、通常操作とキャリブレーション操作とが的確に区別されるようにした入出力装置を提供することを目的とする。
【0011】
【課題を解決するための手段】
上記課題を解決するためになされた本発明の入出力装置は、入力座標系が定義され、ペン操作による位置指定により入力座標系への座標入力が可能な座標入力装置と、ペンによる入力座標系への入力操作を監視する入力監視部と、表示座標系により表示位置が定義される表示画面を有し、座標入力装置が表示画面上に重なるように取り付けられる表示装置と、入力座標系と表示座標系とを対応付ける座標変換係数を記憶する座標変換係数記憶部と、入力座標系に入力された座標から座標変換係数を用いて表示座標を算出する座標変換部と、座標変換部により算出された表示画面上の表示座標位置にカーソルを表示するカーソル表示部とを有する入出力装置であって、少なくとも入力監視部によるペンアップ操作の検知を条件として座標変換係数更新モードに突入するとともに、座標変換係数更新モード中の入力座標系に対するペンダウン操作、ペン移動操作、ペンアップ操作による入力座標の変化量に基づいて新しい座標変換係数を算出して更新する座標変換係数補正部を備えるようにしている。
【0012】
この発明によれば、入出力装置は表示装置の表示画面上に座標入力装置が重ねて取り付けられており、座標入力装置には入力座標系が定義され、表示画面には表示座標系が定義され、入力座標系と表示座標系とは座標変換係数記憶部に記憶されている座標変換係数を用いた座標変換式により対応付けられている。
【0013】
入力座標系と表示座標系との対応関係が適切である場合は、座標入力装置に入力する際に、ペン操作による入力位置と表示画面に表示されたカーソルの位置とが重なるように見えるが、何らかの理由で入力座標系と表示座標系との対応関係が適切でなくなった場合に、入力位置とカーソルの表示位置とがずれて見えるようになる。このとき、入力座標系上の入力座標と表示座標系上の表示座標とを対応付ける座標変換係数を補正する。
【0014】
その際に、座標入力装置に対するペン操作で少なくとも(直前の任意の点でのペンダウン状態から)ペンアップ操作がなされたことが入力監視部により検知されることを条件に、座標変換係数更新モードに突入する。このとき画面上の表示自体は変わる必要はない。座標変換係数補正部は、座標変換係数更新モード中に連続するペンダウン操作、ペン移動操作、すなわちペンドラッグ操作が行われ、続いてペンアップ操作が行われた場合には、このときのペンドラッグ操作による入力座標の変化量に基づいて新しい座標変換係数を算出する。
【0015】
たとえば図1(b)に示すように、実際にペンダウンした入力座標P2(詳細については後述するが、この入力座標P2は直前のペンアップ時のカーソル位置C1の位置と物理的に一致するものとして扱われる)と、そのとき表示されるカーソル表示座標C2位置とのずれ量(C2〜C1間)に相当する距離をペンドラッグ操作で入力座標の変化量として入力する。
あるいは、実際にペンダウンした入力座標P2と直前ペンアップ座標P1とのずれ量(P2〜P1間)に相当する距離をペンドラッグ操作で入力座標の変化量として入力する。そして、このときの変化量に基づいて座標変換係数を算出し、算出した座標変換係数を座標変換係数記憶部に記憶するようにして更新する。
これにより、たとえ入力座標と表示座標との位置がずれていても簡単に最適な座標変換係数への補正(キャリブレーション)をすることができる。さらに補正の際に、いちいち専用画面に切り替える必要なく補正を進めることができる。
【0016】
なお、座標変換係数更新モードの突入に際し、ペンアップ操作の検知は必要条件であるが、たとえば意図的に座標変換係数更新モードに切り替わることを禁止したい場合は、あらかじめ入出力装置にキャリブレーション禁止設定をすることにより、たとえペンアップの検知がなされても無視することになる。
【0017】
ここで、座標入力装置には透明タブレットなどの座標入力のための入力面を有する機器を用いることができるが、入力座標系が定義されている入力面上の位置をペンで指定することにより座標入力できるものであればよい。
ペンは、座標入力装置の種類により異なるが、入力面に対してポイントを指して座標入力を行うことができるものであればよい。座標入力装置に対するペン操作には、ペンを座標入力装置の入力面に触れたタップ状態にするペンダウン操作(ペンダウン中はペンのある位置の座標が入力される)、ペンを入力面に触れた後に入力面から離した状態にするペンアップ操作(直前の入力座標が維持される)、ペンダウン状態でペンを移動して入力座標を変化させるペンドラッグ操作が含まれる。
【0018】
表示装置には、液晶パネル、プラズマディスプレイ、CRTをはじめとする各種の表示装置を用いることができる。また、座標入力装置と表示装置が一体に形成されたタッチパネルを用いることもできる。
入出力装置にはROM、RAMなどのメモリ、I/Oポート、CPUからなるコンピュータが含まれており、これらは入力監視部、座標変換部、カーソル表示部、座標変換係数補正部、計時部、モード切替許可禁止制御部、座標変換係数記憶部として制御機能や記憶機能を実行する。
【0019】
座標変換係数補正部は、座標変換係数更新モード突入後の最初のペンダウン操作時に突入直前カーソル表示座標(C1)位置にマークを表示するようにしてもよい。
これによれば座標変換係数更新モードに突入する際に、図1(b)に示すように、このペンダウン操作直前のペンアップ状態のときにカーソル(カーソルはたとえば矢印形状として表示)が残存表示されていた表示座標C1に対してペンダウン操作がなされることにより、マーク(たとえば+字マーク)が表示されるので、このマークを指標にして以下の手順で簡単にキャリブレーションを実行することができる(なお、ペンダウン操作とともに別の位置に新しくカーソルが表示されている)。
すなわち、カーソル表示座標C1とペンダウン入力座標P2とが物理的に一致するようにペンダウン操作がなされることにより、ペンダウンの瞬間にC1の位置からカーソル表示が消え、代わりにC1の位置にマークが表示されることになる。
【0020】
そして、ペンダウン操作により新たに別の位置(表示座標C2)にカーソルが表示されるので、この新しく表示されたカーソルがマークに重なるまでペン移動を行い、重なったときにペンアップ操作を行うことでペン移動量を確定することにより、このときのペン移動量(C2〜C1間)が入力位置とカーソル位置との見かけのずれ量に相当することになるので、このペン移動量に基づいて座標変換係数を算出することができる。
【0021】
上述したマーク表示ではマークはC1から動かさず固定表示するようにしてあるが、別の方法としてマーク表示をペンの移動と連動させ、ペン移動中のペン位置がマークとして表示されるようにしてもよい。このときは次にようにする。
【0022】
すなわち、入力監視部により座標変換係数更新モード中に連続するペンダウン操作、ペン移動操作が検知された場合に、座標変換係数補正部はペンダウン操作された入力座標(P2)からのペン移動量に応じた表示座標換算移動量を算出し、座標変換係数更新モード突入直前のカーソル表示座標(C1)に換算移動量を加算した表示座標位置に、マークを表示するようにしてもよい。
これによれば、座標変換係数更新モード突入条件となるペンアップ操作がなされたときにカーソルが表示されているカーソル表示位置C1にペンダウン操作(ペンダウン入力座標P2がカーソル表示位置C1と物理的に一致する)し、ペン移動すると、実際にペンが指している位置を示すようにマークが移動するように表示される。したがって、マークを元々実際に指し示したかった入力座標P1までペン移動するようにして、マークを指標として簡単にキャリブレーションを実行することができる。
【0023】
入力監視部は座標変換係数更新モード突入前のペンダウン操作時から突入条件となるペンアップ操作時までの経過時間、又は、座標変換係数更新モードへの突入条件となるペンアップ操作時から次のペンダウン操作時までの経過時間を監視するとともに、座標変換係数補正部はこの監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替えるようにしてもよい。
これにより、座標変換係数更新モード突入前のペンダウン操作時から次のペンアップ操作時までの経過時間、あるいは座標変換係数更新モードへの突入条件となるペンアップ操作時から次のペンダウン操作時までの経過時間が長すぎるときは、キャリブレーション目的ではないと判断することができ、キャリブレーションの必要がないときは簡単に座標変換更新モードを終了することができ、また、誤ってキャリブレーションが行われるのを防ぐことができる。
【0024】
入力監視部は座標変換係数更新モード突入前のペンダウン操作のときの入力座標(P0)から座標変換係数更新モードへの突入条件となるペンアップ操作のときの直前入力座標(P1)までの距離、又は、座標変換係数更新モードへの突入条件となるペンアップ操作のときの直前入力座標(P1)からその次のペンダウン操作のときの入力座標(P2)までの距離を監視するとともに、座標変換係数補正部はこの入力監視部の監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替えるようにしてもよい。
これによっても、座標変換係数更新モード突入前のペンダウン操作のときの入力座標(P0)から次のペンアップ座標変換係数更新モードへの突入条件となるペンアップ操作のときの直前入力座標(P1)までの距離、又は、座標変換係数更新モードへの突入条件となるペンアップ操作のときの直前入力座標(P1)からその次のペンダウン操作のときの入力座標(P2)までの距離が長すぎるときは、キャリブレーション目的ではないと判断することができ、キャリブレーションの必要がないときに簡単に座標変換更新モードを終了することができ、また、誤ってキャリブレーションが行われるのを防ぐことができる。
【0025】
入力監視部は座標変換係数更新モードへの突入条件となるペンアップ操作がなされたときの直前入力座標(P1)と、その後にペンダウン操作、ペン移動操作がなされ、さらにその後にペンアップ操作がなされたときの直前入力座標(P3)との距離または位置関係を監視するとともに、座標変換係数補正部はこの監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替えるようにしてもよい。
これによっても、座標変換係数更新モードへの突入条件となるペンアップ操作がなされたときの直前入力座標(P1)からその後にペンダウン操作、ペン移動操作がなされ、さらにその後にペンアップ操作がなされたときの直前入力座標(P3)との距離または位置関係が、予め定めた領域(たとえば入力座標P1を中心とする方形領域)を超えているときはキャリブレーション目的ではないと判断することができ、キャリブレーションの必要がないときに簡単に座標変換更新モードを終了することができ、また、誤ってキャリブレーションが行われるのを防ぐことができる。
【0026】
入力監視部は座標変換係数更新モード中の連続するペンダウン操作、ペン移動操作がなされた後の静止時間を監視するとともに、座標変換係数補正部はこの監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替えるようにしてもよい。
これによっても、座標変換係数更新モード中の連続するペンダウン操作、ペン移動操作がなされた後の静止時間が短すぎるまたは長すぎるときはキャリブレーション目的ではないと判断することができ、キャリブレーションの必要がないときに簡単に座標変換係数更新モードを終了することができ、また、誤ってキャリブレーションが行われるのを防ぐことができる。
【0027】
入力監視部は座標変換係数更新モード中のペンアップ操作を検知するとともに、座標変換係数補正部は、この監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替え、さらに、座標変換更新モードを維持するか終了するかに応じて表示するマークを変化させるようにしてもよい。
これによれば、座標変換更新モードにおいて座標変換係数を算出するための処理を行い、最終的にペンアップした時点(ペン移動量が確定している)で維持するか終了するか(その位置までのペン移動量などに基づいて)を確定させるようにしたので、必要な場合にのみ更新することができ、不要なキャリブレーションが行われることを防ぐことができる。
また、マークが変化するので現在座標変換更新モードなのかそうでないのかを簡単に把握することができる。なお、マークの変化は、マーク形状、マーク色など変化したことが目視確認できるものであればよい。
【0028】
入力監視部は座標変換係数更新モード中の連続するペンダウン操作、ペン移動操作、ペンアップ操作を監視するとともに、ペンダウン操作のときの入力座標(P2)に対応する表示座標(C2)位置にオブジェクトが存在するかを監視し、座標変換係数補正部はオブジェクトが存在する場合にこのオブジェクトに対してのペンダウン操作に伴う制御を取り消す取消信号をペンアップ操作がなされた時点で出力するようにしてもよい。
たとえば、アイコンなどのオブジェクトがある画面ではそのアイコン上にペンダウン操作されると本来はそのアイコンに関連付けされた制御コマンドが実行されることになる。したがって、アイコンなどを選択した制御コマンド実行のためのペンダウン操作なのか、座標変換係数更新のためのペンダウン操作なのかを判別する必要があるが、これを座標変換係数更新モード中の連続するペンダウン操作、ペン移動操作、ペンアップ操作がなされるときの最後のペンアップ操作を検知したときに確定することで、座標変換係数更新のための操作であるか、アイコンなどに対する制御を行う通常の操作かの判断を誤らないようにすることができる。
【0029】
入力監視部は座標変換係数更新モード中のペンダウン操作を監視するとともにペンダウン操作のときの入力座標(P2)に対応する表示座標(C2)位置にオブジェクトが存在するかを監視し、座標変換係数補正部はオブジェクトが存在する場合にそのオブジェクトに応じて座標変換更新モードを維持するか終了するかを切り替えるようにしてもよい。
これによれば、オブジェクトがある場合に、オブジェクトの種類や内容に応じてオブジェクトに関連付けられた制御コマンド実行を優先するか、座標変換更新を優先するかを切り替えることができる。これにより、不要なキャリブレーションを防ぐことができるとともに、使い勝手のよい入力操作が可能となる。
【0030】
【発明の実施の形態】
以下、本発明の実施形態について図面を用いて説明する。まず、本発明の入出力装置により実行される動作の概略を説明する。
図1は本発明の入出力装置の動作を説明する概念図であり、図1(a)はキャリブレーションが必要な状態となった入出力装置10に対し、タップ(ペンダウン操作)したときの画面表示状態、図1(b)は座標変換係数更新モード中にペンダウン操作、ペン移動操作をしたときの画面表示状態を示している。
【0031】
図において、1は座標入力装置、2は表示装置であり、座標入力装置1は表示装置2の表示画面上に重ねるように取り付けられる。
21、22はそれぞれ表示装置上に表示されたカーソル(本例では矢印形状)とマーク(本例では十字型)であり、3は座標入力装置に入力を行うペンである。
また、以下の説明で、ペン操作での位置を示す入力座標を表すときは「P」(P1、P2など)、カーソルやマークの表示位置を示す表示座標を表すときは「C」(C1、C2など)を付すことにより区別する。
なお、マーク22は座標変換係数更新モードに突入していない状態では表示されない。
【0032】
座標入力装置1上の入力座標P1にペン3をタップした(ペンダウン操作された)場合、キャリブレーションする必要がある入出力装置では、図1(a)に示すように入力座標P1とは物理的に離れた表示座標C1にカーソル21が表示される。すなわち、ペンを実際にタップした座標P1とカーソル表示座標C1とが位置ずれしている(物理的な位置がずれている)。
このとき、入力座標P1にペン3がタップされた状態からペンアップ操作がなされた場合、本装置では座標変換係数更新モードへの切り替わりを禁止する設定がなされていない限り、その入力座標P1をメモリに記憶して座標変換係数更新モードに突入する。
このモード切り替わりの禁止または許可の選択設定は、入出力装置10に設定選択画面を用いて予め設定するようにしてあり(あるいはデフォルトで設定)、設定された内容に基づいて以後のモード切替制御が行われるようになっている。設定操作自体は公知の方法を応用したものであるため説明を省略する。
【0033】
ペンアップ操作が検知されて座標変換係数更新モードに突入するとき、ペンアップ状態ではペンアップ直前の表示座標C1にカーソルが残存している。ここで表示座標C1の位置に向けてペンダウン操作がなされると、ペンダウンと同時に表示座標C1の位置にマーク22が表示される。つまりカーソル表示座標C1と物理的に一致する入力座標P2の位置にペンダウン操作されることになる。
ペンダウン操作と同時に、新たにカーソル21が別の表示座標C2に表示される。このときカーソル表示座標C2と前カーソル表示座標C1(この時点でマーク22が表示されている座標)との間の実際の距離と、前入力座標P1と前カーソル表示座標C1との間の実際の距離とは、ほぼ同じである。
【0034】
このとき、ペン3を座標入力装置1に触れたままの状態でペン移動するドラッグ操作を行う。
マーク22の表示は、前カーソル表示座標C1に固定的に表示される場合と、ペンの移動に連動して移動する場合とのいずれかを取ることができるようになっている。
【0035】
マーク22が前カーソル表示座標C1に固定表示されるようにしてあるときは、カーソル21がマーク22の位置(すなわち前カーソル表示座標C1)に重なるようにペンをドラッグする。
マーク22がペン移動と連動して移動するようにしてあるときは、マーク22が前入力座標P1に重なるようにペンをドラッグする。
【0036】
この2つのドラッグ操作によるペンの移動量は、いずれもキャリブレーションが必要な入力座標系または表示座標系での位置のずれ量に相当することからこのときのペンドラッグによる座標変化量(P1とP2、あるいはC1とC2の間の変化量)に基づいて座標変換係数を算出し、算出した座標変換係数を更新記憶した上で座標変換係数更新モードを終了し、マーク22を消去する。この結果、図1(b)の入力座標P2(カーソル表示座標C1)あたりまで移動して表示されていたカーソル21は新しい座標変換係数による演算の結果、入力座標P1に移動する。
【0037】
図2は本発明の一実施形態である入出力装置の構成を示すブロック図である。図において、1は座標入力装置、2は表示装置、3はペンであり、先に図1で同符号を付して説明したものである。4は制御部(CPU)、6は記憶部(ROM/RAM)である。
制御部4は、便宜上、機能的に入力監視部41、座標変換部42、カーソル表示部43、計時部44、モード切替許可禁止制御部45、座標変換係数補正部50に分けることができる。このうち座標変換係数補正部50をさらに機能的に細かく分けると、モード切替部51、係数算出部52、マーク表示部53、マーク移動量算出部54、オブジェクト制御取消部55とに分けることができる。
【0038】
入力監視部41は、ペン状態(ペンダウン、ペン移動、ペンアップ状態)と、ペンアップ時刻(T1)、ペンダウン時刻(T2)、ペン移動後停止位置での静止時刻(T3)と、ペンアップ座標(P1)、ペンダウン座標(P2)、ペン移動後停止位置での静止座標(P3)を監視し、さらには、後述するマーク表示状態、マーク表示座標、フラグ状態、指定時間(TT)、指定距離(LL)、特定領域(R1)、ペンダウンされた位置にアイコンなどのオブジェクトが存在するか、を監視する。
【0039】
座標変換部42は、座標入力装置1に入力された入力座標Pi(X,Y)を座標変換式である数式(1)を用いて表示座標Ci(x,y)に変換する。
x=aX+b
y=cX+d 数式(1)
数式(1)においてa、b、c、dは座標変換係数であり、後述する座標変換係数記憶部61に記憶されている値を読み出して演算に用いる。また、座標変換係数は後述する座標変換係数補正部50により更新される。
【0040】
カーソル表示部43は、座標変換部42により変換された表示座標位置にカーソルを表示する。
計時部44は、操作がなされたときの時刻およびある操作から他の操作までの経過時間を入力監視部41と連係して計測する。
【0041】
モード切替許可禁止制御部45は、予め設定された許可または禁止の設定に基づいて、モード切り替えの条件となる操作がなされたときにモードを切り替える動作を実行するか、あるいはモードが切り替わらないよう無視するかの制御を入力監視部41と連係することによって行う。たとえば、ログオン前はモード切り替えを許可し、ログオン後はモード切り替えを禁止するような設定をしておけば、モード切替許可禁止制御部45はログオン前のときだけ座標変換係数更新モードへの切り替わりが行われることになる。
【0042】
座標変換係数補正部50は、座標変換係数を補正するのための以下に示す各制御を行う。
すなわち、モード切替部51は入力監視部41による監視結果に基づいて座標変換係数更新モードへ突入したり、座標変換係数更新モードから脱出したりする。
係数算出部52は、座標変換係数更新モード中のペン移動量に基づいて新しい座標変換係数の算出を行う。
【0043】
マーク表示部53は、座標変換係数更新モード中に指標となるマークを表示する。
マーク移動量算出部54は、座標変換係数更新モード中にペンダウン操作されたときの入力座標(P2)からのペン移動量に応じた表示座標換算移動量を算出し、座標変換係数更新モード突入直前のカーソル表示座標(C1)に表示座標換算移動量を加算した表示座標位置を求める。
このときは、マーク表示部53はマーク移動量算出部54により算出された表示座標位置に指標となるマークを表示する。
【0044】
なお、マーク表示部53は、入力監視部41の監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替える際に、座標変換更新モードを維持するか終了するかに応じて表示するマークの形状又は色の少なくとも一方を変化させる。
【0045】
オブジェクト制御取消部55は、入力監視部41が座標変換係数更新モード中のペンダウン操作のときの入力座標(P2)に対応する表示座標(C2)位置にオブジェクトが存在するかを監視し、オブジェクトが存在することを検知する場合に、このオブジェクトに対してのペンダウン操作に伴う制御を取り消す取消信号をペンアップ操作がなされた時点で出力する。
【0046】
記憶部6は、座標変換係数記憶部61、状態変数記憶部62を有する。
座標変換係数記憶部61は上述した数式(1)の座標変換係数を記憶するとともに、座標変換係数補正部50が新しい座標変換係数を算出することにより更新されるようになっている。
【0047】
状態変数記憶部62には、入力監視部41による監視に必要なデータが記憶される。具体的には、ペン状態(ペンダウン、ペン移動、ペンアップ状態)と、ペンアップ時刻(T1)、ペンダウン時刻(T2)、ペン移動後停止状態になったときの静止時刻(T3)、ペンアップ座標(P1)、ペンダウン座標(P2)、ペン移動後停止状態になったときの静止座標(P3)が記憶される。
また、マークが表示されるときはマーク表示状態(形状、色情報)、マーク表示座標が記憶される。
また、座標変換係数更新モード中に座標変換係数更新の待機状態にあることを示すための係数更新モード待機フラグ、座標変換係数更新モードへの切り替わりが禁止された状態であることを示す係数更新モード禁止フラグが記憶される。
また、座標変換係数更新モード中に座標変換係数更新モードを維持するか終了するかの判断基準のひとつである指定時間TTや指定距離LL(指定半径)、特定領域(R1)が記憶される。また、オブジェクト(アイコンなど)に関係付けられている制御コマンド入力を座標変換係数更新モードとしてのコマンド入力よりも優先して実行する特定のオブジェクトが記憶される。
【0048】
次に、本発明の入出力装置による動作手順(図2に示す制御部4の主要部分の制御内容)について図3〜図5に示すフローチャートを用いて説明する。
なお、以下のフローチャートでは、マークが表示されたときにマークがペン移動と連動して移動する場合の動作を説明している。マークが座標変換係数更新モード突入直前のカーソル表示座標位置に固定表示されるときは、マークの表示座標自体に関して変化しないが、実際のペン移動操作はいずれも同様であるので、同様のフローが実行される。
【0049】
図3は、主に座標変換係数更新モード状態(以下、係数更新モードと略す)への突入前から突入するときの動作フローを説明するフローチャートである。
S100では係数更新モードであるかを判断し、係数更新モードの場合は「A」に飛び、係数更新モードでない場合はS101に進む。
S101では、係数更新モード禁止フラグがセットされた状態か否かを判断し、禁止状態でないとき(リセットされているとき)は「C」に飛び、そうでない場合はS102に進む。「C」に進むと、ただちにS109に進む。
【0050】
S109では、記憶部6に記憶されている座標変換係数を用いて座標変換式により入力座標に対する表示座標が算出され、その表示座標を用いて表示画面にカーソルを表示するカーソル処理が行われる。
そして、カーソル表示がなされると1つの処理が終了し、ふたたびスタートに戻る。
なお、本ステップでのカーソル表示とは、正確には、カーソルの表示更新、すなわち、現在表示されているカーソルを消去し、新たに座標入力装置1より出力された入力座標に対する表示座標にカーソルを表示することである。
【0051】
また、スタートに戻って座標入力装置1からの新たな出力で処理を繰り返すことは、後述するS102やS130の「ペンダウン」、「ペンアップ」、「変化なし」の判断処理についても座標入力装置1からの出力信号(データ)に基づき処理されるものであることを意味し、さらに、この座標入力装置1から出力されるデータ(パラメータ)の1つに、入力座標データが存在していることをも意味している。ただし、座標入力装置1から出力されるデータ(パラメータ)の1つに、入力座標データが存在していると前述したが、これは、座標入力装置1とその座標入力装置1より出力される信号を処理する制御部4とのインタフェースの1つの規定例についての説明であり、たとえば、ペンアップ時、ペンアップ位置の入力座標を信号を出力しない座標入力装置1とすることも可能で、この場合、S109は、入力座標データが出力されないため、何もしない(スキップされる)ものと、また、後述する入力状態が「ペンアップ」時の制御であるS120のペンアップ座標P1の記憶処理も行えないことから、入力状態が「変化なし」の時の入力座標(S102の「変化なし」には「ペン移動」も含むため、入力座標が出力され得る)を記憶し、「ペンアップ」時に、直前の入力座標をペンアップ座標P1として確定するものとなる。
【0052】
また、本ステップは、ブロック構成図2のカーソル表示部43に相当するステップ、すなわち、便宜上、制御部4内にカーソル表示部43が存在するものとしているが、座標入力装置1を制御部4とカーソル表示部43の両ブロックに接続(座標入力装置1の出力を制御部4、カーソル表示部43の両ブロックに出力)するブロック構成とすることにより、制御部4とカーソル表示部43とを独立させることは可能(本ステップは他のステップに影響を与えないステップ)である。
なお、これは、本発明のキャリブレーション機能を現行システムに組み込みやすいという理由から、本発明のメリットの1つでもある。
【0053】
S102では、ペンの入力状態を判断し、ペンダウン操作のときはS110、ペンアップ操作のときはS120、ペンの状態が変化しない(ただし、本ステップのペンの入力状態の判断においては、ペン移動はペンの状態が変化しないものと判断されるものとしている)ときはそのままS109に進む。
【0054】
S110では、ペンダウン時刻(T0)、ペンダウン座標(P0)を記憶する。なお、この処理は次回のペン操作でペンアップ操作がなされたとき(S120からS122に進むとき)にS121,S122の判断基準として必要となる。そしてS109に進んで通常のカーソル処理が行われる。
【0055】
S120では、ペンアップ操作(すなわち係数更新モードへ突入する操作)がなされることで係数更新モードに突入し、そのときのペンアップ時刻T1、ペンアップ座標P1を記憶する。続いてS121に進む。
【0056】
S121では、S120で記憶したペンアップ時刻の直前の入力がペンダウン(S110)であるときその直前のペンダウン時刻(T0)からの経過時間が指定時間TT内であるかを判断し、指定時間TT内であればそのまま係数更新モードを維持しつつS122に進み、そうでなければ係数更新モードを終了するため「B」に進む。
【0057】
S122では、S120で記憶したペンアップ座標(P1)と直前の入力座標(P0)との距離が指定距離LL内(指定半径内)であるかを判断し、指定距離LL内であればそのまま係数更新モードを維持しつつS109に進み、そうでなければ係数更新モードを終了するために「B」に進む。
【0058】
図4は、係数更新モードに突入したときのフローチャートである。
S130では、係数更新モード中において、次の入力操作内容を判断する。実行された入力がペンダウン操作のときはS140、ペン移動操作のときはS150、変化なし(ペン操作がない)のときはS170、ペンアップ操作のときはS160に進む。
【0059】
S140〜S144の処理は、係数更新モード中のペンダウン操作の処理である。
S140では、ペンダウン操作がなされることにより、そのペンダウン操作された座標にオブジェクトがあるかを判断し、オブジェクトがある場合で係数更新モードより制御コマンドを優先させるオブジェクトの場合は係数更新モードを終了するため「B」に進む。それ以外の場合はS141に進む。
【0060】
S141では、直前のペンアップ操作(S120)の時刻(T1)からの経過時間が指定時間TT内であるかを判断し、指定時間TT内であればそのまま係数更新モードを維持しつつS142に進み、そうでなければ係数更新モードを終了するため「B」に進む。
【0061】
S142では、直前のペンアップ操作(S120)の入力座標(P1)からの相対距離が指定距離LL内(指定半径内)であるかを判断し、指定距離LL内であればそのまま係数更新モードを維持しつつS143に進み、そうでなければ係数更新モードを終了するために「B」に進む。
【0062】
S143では、ペンダウン操作した入力座標P2を記憶し、さらに、S120で記憶した直前入力座標P1に対応する(算出される)表示座標(直前カーソル表示座標C1と同値)をマーク表示座標の初期値として記憶して、S144に進む。
S144では、入力座標P2に対応する表示座標C2にカーソルを表示し、上述のS143で記憶したマーク表示座標の位置にマークを表示して、「C」に進む。その後、図3の「Start」に戻りS100からの同様のフローを繰り返す。
【0063】
S150〜S153の処理は、係数更新モード中のペン移動操作のときの処理である。
S150では、係数更新モード突入時のペンアップ操作が行われた直前入力座標P1近傍の一定領域R1(たとえばP1を指定する目的でP1近傍をペンで座標入力したときP1を指定したとみなされる有効指定可能領域)からさらに遠ざかる移動か否かを判断し、遠ざかるときは係数更新モードを終了するため「B」に進む。一定領域R1から遠ざからないときは、そのまま係数更新モードを維持しつつS151に進む。
【0064】
S151では、係数更新モード待機フラグがセットされているかを判断する。すなわち、ペン移動が後述する静止状態後(S170〜S172)になされた場合はフラグがセットされている場合があるのでこれを判断する。
係数更新モード待機フラグがセットされている場合は、後述するS172で係数更新モード待機フラグをセット(次のペンアップ検知で、座標変換係数の更新が仮確定)した状態におけるペン移動を検知したことを示すことから、係数更新モード終了のため「B」に進み、そうでない場合は係数更新モードを維持しつつS152に進む。
【0065】
S152では、ペン移動に応じてマークの表示位置を随時更新し、続いてS153に進む。
なお、本ステップでのマークの表示更新とは、現在表示されているマークを消去し、新たに座標入力装置1より出力された入力座標に対する表示座標にマークを表示するもので、正確には、現在のマーク表示座標の位置に表示されているマークを消去し、S143で記憶したペンダウン座標P2と入力座標の差分(ペンダウンからの移動量)を表示座標系での移動量に換算し、表示座標系での移動量を、新たなマーク表示座標として加算更新し、加算更新したマーク表示座標の位置にマークを表示する処理を行うものである。
【0066】
S153では、ペン3が最後にペン移動した時刻をペン静止時刻T3として記憶し、そのときの入力座標を静止座標P3として記憶する。
なお、この処理は次回のペン操作でペンが一定期間静止する(変化しない)とき(S170からS172に進むとき)に判断基準として必要となる。続いて「C」に進む。その後、図3の「Start」に戻りS100からの同様のフローを繰り返す。
【0067】
以下のS170〜S172の処理は、後述のS160〜S163の座標変換係数を更新する状態か否か等の判断の際に参照される係数更新モード待機フラグをセットする条件を満たしているかどうか、ならびに、セットする条件を満たしている場合には、フラグのセットとマーク形状の変更処理を行うステップである。
【0068】
すなわち、ペン移動後にペンが静止した状態のときであり、静止座標P3が一定領域R1内(すなわちペンアップ座標P1近傍であるか)が判断され、一定領域R1内であるときは係数更新モードを維持しつつS171に進み、一定領域R1以外のときは「C」に進んで、その後、図3の「Start」に戻りS100からの同様のフローを繰り返す。
【0069】
S171では、静止時刻T3から指定時間TTが経過したかが判断され、指定時間TT以内であれば係数更新モードを維持しつつS172に進み、指定時間TTを越えれば「C」に進んで、その後、図3の「Start」に戻りS100からの同様のフローを繰り返す。
【0070】
S172では、係数更新モード待機フラグをセット、ならびに、マーク形状を(次のペンアップ検知で、座標変換係数を更新することが仮確定したことを利用者に示すマーク形状に)変更し、続いて「C」に進む。その後、図3の「Start」に戻りS100からの同様のフローを繰り返す。
【0071】
S160〜S163の処理は、係数更新モード中のペンアップ操作のときの処理である。
S160では、ペンアップ操作がなされることにより、係数更新モード待機フラグがセットされているかが判断され、待機フラグがセットされているときは、係数更新を実行するため、係数更新モードを維持しつつS161に進み、リセットされているときは係数更新モードを終了するために「B」に進む。
【0072】
S161では、係数更新モードでの係数更新処理と通常のカーソル処理(たとえばアイコンなどのドラッグ処理)とを明確に分離するために、通常のカーソル処理の制御について取消制御信号を出力し、S162に進む。
【0073】
S162では、静止座標P3と係数更新モード突入時のペンアップ座標P1とを用いて後述する数式(2)による計算により座標変換係数を算出し、算出した係数を更新する。そしてS163に進む。
【0074】
S163では、今回の座標変換係数更新モードに突入したペンアップ座標P1(=静止したときの入力座標P3)をキャリブレーション座標(P0)として記憶して、係数更新モードを終了するため「B」に進む。このキャリブレーション座標P0は、必ずしも必要なものではないが、次回、同様のキャリブレーションを実行するときにこれを利用して座標変換係数を精度よく算出するときに利用するものである。
【0075】
次に、座標変換係数更新モードから脱出するときに進む「B」のフローについて説明する。
図5は、「B」に進んだときに実行される係数更新モードを終了するためのフローチャートである。ここでは消去する必要があるデータを消去あるいはクリアした上で次の処理を進めるようにしている。
S190では、静止時刻(T3)が記憶されている場合にはこれを消去し、S191に進む。
S191では、係数更新モード待機フラグがセットされている場合にはこれをクリアし、また、マーク表示状態であれば、マークを消去して、S192に進む。
S192では、座標変換係数更新モードを終了する。そして「C」に進み、その後、図3の「Start」に戻りS100からの同様のフローを繰り返す。
【0076】
次に、図4のS162で実行される座標変換式の座標変換係数の算出について説明する。
下記の数式(2)は、2点の物理座標における2組の入力座標(X,Y)、表示座標(x、y)から座標変換式のそれぞれの変換係数を求める計算式である。
a=(xa−xb)/(Xa−Xb)
b=xa−aXa
c=(ya−yb)/(Ya−Yb)
d=ya−aYa 数式(2)
【0077】
座標変換係数更新モード開始時のペンアップ座標P1(X1,Y1)を(Xa,Ya)、最終マーク表示座標C1(x,y)を(xa,ya)とした場合(C1はP1近傍に移動している)、またペンダウン座標P2(X2,Y2)を(Xb,Yb)、ペンダウン時の表示座標C2(x,y)を(xb,yb)として、座標変換係数を更新することができる。この方法を用いることにより1座標でのキャリブレーション入力でキャリブレーションが可能である。
【0078】
また、もしも過去のキャリブレーションのデータが利用できる場合は、座標変換係数更新モード開始時のペンアップ座標P1(X1,Y1)を(Xa,Ya)、最終マーク表示座標C1(x,y)を(xa,ya)とした場合(C1はP1近傍に移動している)、同じく直前のキャリブレーションでのペンアップ座標P0とマーク表示座標C0をそれぞれ(Xb,Yb)、(xb,yb)として、座標変換係数を更新することもできる。この2点が離れているほど数式(2)の座標変換係数aおよびcの丸め誤差が小さくなり、キャリブレーション精度を向上することができる。なお、この場合は、直前のキャリブレーションデータを保存しておく必要があるので、前回のキャリブレーション座標P0(X0,Y0)が記憶されていない場合は上述した1座標での入力でキャリブレーションを行うようにする。
【0079】
反対にこれら2点でのキャリブレーション座標(X0,Y0)と(X1,Y1)のX軸方向、またはY軸方向の相対距離が小さい場合は、数式(2)の座標変換係数aおよびcはその分母が小さくなるため丸め誤差が大きくなり、座標変換係数としては不適切である。したがって、X軸方向またはY軸方向の相対距離が予め定めた指定値より小さい場合は、座標変換係数aまたはcを更新しないようにすることで、不適当なキャリブレーションを防止することができる。この場合、座標変換係数bおよびdは、更新しなかった変換係数aまたはcより算出する。
【0080】
以上のように、本発明は常時入力を監視し、OSなどのシステムよる表示装置の表示内容に依存しない簡単なペン操作で通常使用状況からキャリブレーションを実行することができる。また表示装置に表示されたオブジェクトをペン入力で操作中に、偶然による意図しないキャリブレーションが行われないようにすることができる。
【0081】
【発明の効果】
本発明によれば、座標変換した入力座標系と表示装置の座標系にずれがある場合、使用者は簡単な操作を行うことにより、表示装置上に表示されたアイコンなどのオブジェクトを操作することなく、座標変換係数を更新し、座標変換した入力座標系と表示装置の座標系を一致することができる。これにより、座標変換した入力座標系と表示装置の座標系のずれが大きく、ペン入力ではキャリブレーションソフトの起動、ひいてはキャリブレーションを実行できないといった問題点を解決することができる。
【0082】
また、表示装置上の任意の座標でキャリブレーションを実行できるため、予め定められた座標に基準点マークなどを表示したキャリブレーション専用画面の表示する必要が無くなる。さらには、本発明は常時入力を監視し、OSなどのシステムよる表示装置の表示内容に依存しない簡単なペン操作で通常使用状況からキャリブレーションを実行することができる。
【0083】
さらに、座標変換した入力座標系と表示装置の座標系を自由にずらすことができるため、視差補正などユーザの自由なキャリブレーションを可能にする。
また、表示装置に表示されたオブジェクトをペン入力で操作中に、偶然による意図しないキャリブレーションが行われないようにすることができる。
【図面の簡単な説明】
【図1】本発明の一実施形態である入出力装置の操作を説明する図。
【図2】本発明の一実施形態である装置の構成を示すブロック図。
【図3】本発明の一実施例である入出力装置の動作を説明するフローチャート。
【図4】本発明の一実施例である入出力装置の動作を説明するフローチャート。
【図5】本発明の一実施例である入出力装置の動作を説明するフローチャート。
【符号の説明】
1:座標入力装置
2:表示装置
3:ペン
4:制御部
6:記憶部
21:カーソル
22:マーク
41:入力監視部
42:座標変換部
43:カーソル表示部
44:計時部
45:モード切替許可禁止制御部
50:座標変換係数補正部
51:モード切替部
52:係数算出部
53:マーク表示部
54:マーク移動量算出部
55:オブジェクト制御取消部
61:座標変換係数記憶部
62:状態変数記憶部
Pi:入力座標
Ci:表示座標
【発明の属する技術分野】
本発明は、表示装置の表示画面に透明タブレットなどの座標入力装置が重ねて取り付けられた入出力装置に関し、さらに詳細には入出力装置に入力される入力位置座標と、入力位置座標に対応してカーソルが表示される表示位置座標との位置関係を補正することが可能な入出力装置に関する。
この入出力装置は、たとえばペンコンピュータ、ハンドヘルドPC、PDA(個人用携帯端末)、携帯電話などに利用される。
【0002】
【従来の技術】
表示装置と座標入力装置とが重ねられ、この座標入力装置に対しペンや指で押下して位置を指定することで座標入力することができるタッチパネルなどの入出力装置がある(以下、ペンは座標入力装置に対して位置を指定するための手段を総称してペンと呼ぶ)。この入出力装置では表示装置上に表示されたオブジェクトに対して直接的に操作を行うことができる。
【0003】
しかし、表示装置の表示画面と、この表示画面に重ねられた座標入力装置とは、それぞれ独立した座標系を有している。2つの座標系を一致させるために(目視したときに一致するように見えるようにするために)座標入力装置への入力座標を、適切な座標変換式を用いて表示装置の座標系に座標変換する必要がある。
また、座標入力装置から入力される座標は、座標入力装置の経年変化、特性のばらつき、電源電圧の変化により変動し、座標入力装置上の実際に入力された座標から多少のずれを生じた場合に、座標変換時にずれを生じるので座標変換式の座標変換係数を補正する必要がある。
【0004】
この座標変換式に使用する座標変換係数を適切な値に補正することをキャリブレーションと呼ぶ。
従来からの一般的なキャリブレーション方法のひとつに、基準点を表示するための専用画面を表示するキャリブレーション用ソフトを用意し、キャリブレーション実行の際にキャリブレーション用ソフトを起動するものがある(特許文献1参照)。
【特許文献1】
特公平5―31766号公報
【0005】
このキャリブレーション方法では、使用者がキャリブレーション用ソフトにより表示装置の表示画面上に表示された複数個の基準点を目掛けて、タッチパネルを順次タップする操作を行い、これらのタッチパネルから入力された座標より座標変換係数を計算する。
【0006】
【発明が解決しようとする課題】
キャリブレーションは、従来、通常使用時とは独立して行われるものと考えられており、利用者がキャリブレーションを行おうとするとキャリブレーションソフトを起動するなどして明示的にキャリブレーション状態へ遷移する必要がある。すなわち、キャリブレーションソフトを起動するための入力操作をする必要がある。
ところが、タッチパネルなどのように、入力座標系に直接ペンによる座標入力が行われるタイプの座標入力装置(タブレットなど)だけが搭載されていて、これ以外の座標入力が可能な他の入力装置(たとえばキーボード)を備えていない機器では、キャリブレーション用のソフトウェアを起動するための入力操作自体を、キャリブレーションすべき座標入力装置を用いてしなければならない。
【0007】
しかしながら、キャリブレーションが必要な状態になっている座標入力装置は、入力座標系と座標変換した表示座標系とがずれているため、正しい入力操作を行うことが困難である。また、入力座標系と表示座標系とのずれが大きい場合には、キャリブレーションソフトを起動することすらできず、キャリブレーションを実行するためのキャリブレーションモードへの切り替えがうまく実行できないという問題がある。
【0008】
さらに、上述した従来のキャリブレーション方法では、予め座標が定められた複数個の基準点をタップするために、基準点にタップ目標となるマークを表示したキャリブレーション専用画面を別途に用意しておかねばならず、キャリブレーションをしようとする際には、いちいち専用画面に切り替えてキャリブレーションを実行することが必要であり、手間がかかる。
【0009】
そのため、キャリブレーション専用画面を必要とせず通常使用状態から簡単な操作でキャリブレーションを行うことができるのが望ましいが、そのようにするには、常時ペン入力を監視してキャリブレーションを行うか否かの判定を的確に行って通常操作かキャリブレーション操作かを区別する必要がある。
【0010】
そこで本発明は、キャリブレーション操作を簡単かつ的確に行うことができ、また、専用画面に切り替えることなく通常使用状態から簡単にキャリブレーション操作が実行でき、通常操作とキャリブレーション操作とが的確に区別されるようにした入出力装置を提供することを目的とする。
【0011】
【課題を解決するための手段】
上記課題を解決するためになされた本発明の入出力装置は、入力座標系が定義され、ペン操作による位置指定により入力座標系への座標入力が可能な座標入力装置と、ペンによる入力座標系への入力操作を監視する入力監視部と、表示座標系により表示位置が定義される表示画面を有し、座標入力装置が表示画面上に重なるように取り付けられる表示装置と、入力座標系と表示座標系とを対応付ける座標変換係数を記憶する座標変換係数記憶部と、入力座標系に入力された座標から座標変換係数を用いて表示座標を算出する座標変換部と、座標変換部により算出された表示画面上の表示座標位置にカーソルを表示するカーソル表示部とを有する入出力装置であって、少なくとも入力監視部によるペンアップ操作の検知を条件として座標変換係数更新モードに突入するとともに、座標変換係数更新モード中の入力座標系に対するペンダウン操作、ペン移動操作、ペンアップ操作による入力座標の変化量に基づいて新しい座標変換係数を算出して更新する座標変換係数補正部を備えるようにしている。
【0012】
この発明によれば、入出力装置は表示装置の表示画面上に座標入力装置が重ねて取り付けられており、座標入力装置には入力座標系が定義され、表示画面には表示座標系が定義され、入力座標系と表示座標系とは座標変換係数記憶部に記憶されている座標変換係数を用いた座標変換式により対応付けられている。
【0013】
入力座標系と表示座標系との対応関係が適切である場合は、座標入力装置に入力する際に、ペン操作による入力位置と表示画面に表示されたカーソルの位置とが重なるように見えるが、何らかの理由で入力座標系と表示座標系との対応関係が適切でなくなった場合に、入力位置とカーソルの表示位置とがずれて見えるようになる。このとき、入力座標系上の入力座標と表示座標系上の表示座標とを対応付ける座標変換係数を補正する。
【0014】
その際に、座標入力装置に対するペン操作で少なくとも(直前の任意の点でのペンダウン状態から)ペンアップ操作がなされたことが入力監視部により検知されることを条件に、座標変換係数更新モードに突入する。このとき画面上の表示自体は変わる必要はない。座標変換係数補正部は、座標変換係数更新モード中に連続するペンダウン操作、ペン移動操作、すなわちペンドラッグ操作が行われ、続いてペンアップ操作が行われた場合には、このときのペンドラッグ操作による入力座標の変化量に基づいて新しい座標変換係数を算出する。
【0015】
たとえば図1(b)に示すように、実際にペンダウンした入力座標P2(詳細については後述するが、この入力座標P2は直前のペンアップ時のカーソル位置C1の位置と物理的に一致するものとして扱われる)と、そのとき表示されるカーソル表示座標C2位置とのずれ量(C2〜C1間)に相当する距離をペンドラッグ操作で入力座標の変化量として入力する。
あるいは、実際にペンダウンした入力座標P2と直前ペンアップ座標P1とのずれ量(P2〜P1間)に相当する距離をペンドラッグ操作で入力座標の変化量として入力する。そして、このときの変化量に基づいて座標変換係数を算出し、算出した座標変換係数を座標変換係数記憶部に記憶するようにして更新する。
これにより、たとえ入力座標と表示座標との位置がずれていても簡単に最適な座標変換係数への補正(キャリブレーション)をすることができる。さらに補正の際に、いちいち専用画面に切り替える必要なく補正を進めることができる。
【0016】
なお、座標変換係数更新モードの突入に際し、ペンアップ操作の検知は必要条件であるが、たとえば意図的に座標変換係数更新モードに切り替わることを禁止したい場合は、あらかじめ入出力装置にキャリブレーション禁止設定をすることにより、たとえペンアップの検知がなされても無視することになる。
【0017】
ここで、座標入力装置には透明タブレットなどの座標入力のための入力面を有する機器を用いることができるが、入力座標系が定義されている入力面上の位置をペンで指定することにより座標入力できるものであればよい。
ペンは、座標入力装置の種類により異なるが、入力面に対してポイントを指して座標入力を行うことができるものであればよい。座標入力装置に対するペン操作には、ペンを座標入力装置の入力面に触れたタップ状態にするペンダウン操作(ペンダウン中はペンのある位置の座標が入力される)、ペンを入力面に触れた後に入力面から離した状態にするペンアップ操作(直前の入力座標が維持される)、ペンダウン状態でペンを移動して入力座標を変化させるペンドラッグ操作が含まれる。
【0018】
表示装置には、液晶パネル、プラズマディスプレイ、CRTをはじめとする各種の表示装置を用いることができる。また、座標入力装置と表示装置が一体に形成されたタッチパネルを用いることもできる。
入出力装置にはROM、RAMなどのメモリ、I/Oポート、CPUからなるコンピュータが含まれており、これらは入力監視部、座標変換部、カーソル表示部、座標変換係数補正部、計時部、モード切替許可禁止制御部、座標変換係数記憶部として制御機能や記憶機能を実行する。
【0019】
座標変換係数補正部は、座標変換係数更新モード突入後の最初のペンダウン操作時に突入直前カーソル表示座標(C1)位置にマークを表示するようにしてもよい。
これによれば座標変換係数更新モードに突入する際に、図1(b)に示すように、このペンダウン操作直前のペンアップ状態のときにカーソル(カーソルはたとえば矢印形状として表示)が残存表示されていた表示座標C1に対してペンダウン操作がなされることにより、マーク(たとえば+字マーク)が表示されるので、このマークを指標にして以下の手順で簡単にキャリブレーションを実行することができる(なお、ペンダウン操作とともに別の位置に新しくカーソルが表示されている)。
すなわち、カーソル表示座標C1とペンダウン入力座標P2とが物理的に一致するようにペンダウン操作がなされることにより、ペンダウンの瞬間にC1の位置からカーソル表示が消え、代わりにC1の位置にマークが表示されることになる。
【0020】
そして、ペンダウン操作により新たに別の位置(表示座標C2)にカーソルが表示されるので、この新しく表示されたカーソルがマークに重なるまでペン移動を行い、重なったときにペンアップ操作を行うことでペン移動量を確定することにより、このときのペン移動量(C2〜C1間)が入力位置とカーソル位置との見かけのずれ量に相当することになるので、このペン移動量に基づいて座標変換係数を算出することができる。
【0021】
上述したマーク表示ではマークはC1から動かさず固定表示するようにしてあるが、別の方法としてマーク表示をペンの移動と連動させ、ペン移動中のペン位置がマークとして表示されるようにしてもよい。このときは次にようにする。
【0022】
すなわち、入力監視部により座標変換係数更新モード中に連続するペンダウン操作、ペン移動操作が検知された場合に、座標変換係数補正部はペンダウン操作された入力座標(P2)からのペン移動量に応じた表示座標換算移動量を算出し、座標変換係数更新モード突入直前のカーソル表示座標(C1)に換算移動量を加算した表示座標位置に、マークを表示するようにしてもよい。
これによれば、座標変換係数更新モード突入条件となるペンアップ操作がなされたときにカーソルが表示されているカーソル表示位置C1にペンダウン操作(ペンダウン入力座標P2がカーソル表示位置C1と物理的に一致する)し、ペン移動すると、実際にペンが指している位置を示すようにマークが移動するように表示される。したがって、マークを元々実際に指し示したかった入力座標P1までペン移動するようにして、マークを指標として簡単にキャリブレーションを実行することができる。
【0023】
入力監視部は座標変換係数更新モード突入前のペンダウン操作時から突入条件となるペンアップ操作時までの経過時間、又は、座標変換係数更新モードへの突入条件となるペンアップ操作時から次のペンダウン操作時までの経過時間を監視するとともに、座標変換係数補正部はこの監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替えるようにしてもよい。
これにより、座標変換係数更新モード突入前のペンダウン操作時から次のペンアップ操作時までの経過時間、あるいは座標変換係数更新モードへの突入条件となるペンアップ操作時から次のペンダウン操作時までの経過時間が長すぎるときは、キャリブレーション目的ではないと判断することができ、キャリブレーションの必要がないときは簡単に座標変換更新モードを終了することができ、また、誤ってキャリブレーションが行われるのを防ぐことができる。
【0024】
入力監視部は座標変換係数更新モード突入前のペンダウン操作のときの入力座標(P0)から座標変換係数更新モードへの突入条件となるペンアップ操作のときの直前入力座標(P1)までの距離、又は、座標変換係数更新モードへの突入条件となるペンアップ操作のときの直前入力座標(P1)からその次のペンダウン操作のときの入力座標(P2)までの距離を監視するとともに、座標変換係数補正部はこの入力監視部の監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替えるようにしてもよい。
これによっても、座標変換係数更新モード突入前のペンダウン操作のときの入力座標(P0)から次のペンアップ座標変換係数更新モードへの突入条件となるペンアップ操作のときの直前入力座標(P1)までの距離、又は、座標変換係数更新モードへの突入条件となるペンアップ操作のときの直前入力座標(P1)からその次のペンダウン操作のときの入力座標(P2)までの距離が長すぎるときは、キャリブレーション目的ではないと判断することができ、キャリブレーションの必要がないときに簡単に座標変換更新モードを終了することができ、また、誤ってキャリブレーションが行われるのを防ぐことができる。
【0025】
入力監視部は座標変換係数更新モードへの突入条件となるペンアップ操作がなされたときの直前入力座標(P1)と、その後にペンダウン操作、ペン移動操作がなされ、さらにその後にペンアップ操作がなされたときの直前入力座標(P3)との距離または位置関係を監視するとともに、座標変換係数補正部はこの監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替えるようにしてもよい。
これによっても、座標変換係数更新モードへの突入条件となるペンアップ操作がなされたときの直前入力座標(P1)からその後にペンダウン操作、ペン移動操作がなされ、さらにその後にペンアップ操作がなされたときの直前入力座標(P3)との距離または位置関係が、予め定めた領域(たとえば入力座標P1を中心とする方形領域)を超えているときはキャリブレーション目的ではないと判断することができ、キャリブレーションの必要がないときに簡単に座標変換更新モードを終了することができ、また、誤ってキャリブレーションが行われるのを防ぐことができる。
【0026】
入力監視部は座標変換係数更新モード中の連続するペンダウン操作、ペン移動操作がなされた後の静止時間を監視するとともに、座標変換係数補正部はこの監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替えるようにしてもよい。
これによっても、座標変換係数更新モード中の連続するペンダウン操作、ペン移動操作がなされた後の静止時間が短すぎるまたは長すぎるときはキャリブレーション目的ではないと判断することができ、キャリブレーションの必要がないときに簡単に座標変換係数更新モードを終了することができ、また、誤ってキャリブレーションが行われるのを防ぐことができる。
【0027】
入力監視部は座標変換係数更新モード中のペンアップ操作を検知するとともに、座標変換係数補正部は、この監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替え、さらに、座標変換更新モードを維持するか終了するかに応じて表示するマークを変化させるようにしてもよい。
これによれば、座標変換更新モードにおいて座標変換係数を算出するための処理を行い、最終的にペンアップした時点(ペン移動量が確定している)で維持するか終了するか(その位置までのペン移動量などに基づいて)を確定させるようにしたので、必要な場合にのみ更新することができ、不要なキャリブレーションが行われることを防ぐことができる。
また、マークが変化するので現在座標変換更新モードなのかそうでないのかを簡単に把握することができる。なお、マークの変化は、マーク形状、マーク色など変化したことが目視確認できるものであればよい。
【0028】
入力監視部は座標変換係数更新モード中の連続するペンダウン操作、ペン移動操作、ペンアップ操作を監視するとともに、ペンダウン操作のときの入力座標(P2)に対応する表示座標(C2)位置にオブジェクトが存在するかを監視し、座標変換係数補正部はオブジェクトが存在する場合にこのオブジェクトに対してのペンダウン操作に伴う制御を取り消す取消信号をペンアップ操作がなされた時点で出力するようにしてもよい。
たとえば、アイコンなどのオブジェクトがある画面ではそのアイコン上にペンダウン操作されると本来はそのアイコンに関連付けされた制御コマンドが実行されることになる。したがって、アイコンなどを選択した制御コマンド実行のためのペンダウン操作なのか、座標変換係数更新のためのペンダウン操作なのかを判別する必要があるが、これを座標変換係数更新モード中の連続するペンダウン操作、ペン移動操作、ペンアップ操作がなされるときの最後のペンアップ操作を検知したときに確定することで、座標変換係数更新のための操作であるか、アイコンなどに対する制御を行う通常の操作かの判断を誤らないようにすることができる。
【0029】
入力監視部は座標変換係数更新モード中のペンダウン操作を監視するとともにペンダウン操作のときの入力座標(P2)に対応する表示座標(C2)位置にオブジェクトが存在するかを監視し、座標変換係数補正部はオブジェクトが存在する場合にそのオブジェクトに応じて座標変換更新モードを維持するか終了するかを切り替えるようにしてもよい。
これによれば、オブジェクトがある場合に、オブジェクトの種類や内容に応じてオブジェクトに関連付けられた制御コマンド実行を優先するか、座標変換更新を優先するかを切り替えることができる。これにより、不要なキャリブレーションを防ぐことができるとともに、使い勝手のよい入力操作が可能となる。
【0030】
【発明の実施の形態】
以下、本発明の実施形態について図面を用いて説明する。まず、本発明の入出力装置により実行される動作の概略を説明する。
図1は本発明の入出力装置の動作を説明する概念図であり、図1(a)はキャリブレーションが必要な状態となった入出力装置10に対し、タップ(ペンダウン操作)したときの画面表示状態、図1(b)は座標変換係数更新モード中にペンダウン操作、ペン移動操作をしたときの画面表示状態を示している。
【0031】
図において、1は座標入力装置、2は表示装置であり、座標入力装置1は表示装置2の表示画面上に重ねるように取り付けられる。
21、22はそれぞれ表示装置上に表示されたカーソル(本例では矢印形状)とマーク(本例では十字型)であり、3は座標入力装置に入力を行うペンである。
また、以下の説明で、ペン操作での位置を示す入力座標を表すときは「P」(P1、P2など)、カーソルやマークの表示位置を示す表示座標を表すときは「C」(C1、C2など)を付すことにより区別する。
なお、マーク22は座標変換係数更新モードに突入していない状態では表示されない。
【0032】
座標入力装置1上の入力座標P1にペン3をタップした(ペンダウン操作された)場合、キャリブレーションする必要がある入出力装置では、図1(a)に示すように入力座標P1とは物理的に離れた表示座標C1にカーソル21が表示される。すなわち、ペンを実際にタップした座標P1とカーソル表示座標C1とが位置ずれしている(物理的な位置がずれている)。
このとき、入力座標P1にペン3がタップされた状態からペンアップ操作がなされた場合、本装置では座標変換係数更新モードへの切り替わりを禁止する設定がなされていない限り、その入力座標P1をメモリに記憶して座標変換係数更新モードに突入する。
このモード切り替わりの禁止または許可の選択設定は、入出力装置10に設定選択画面を用いて予め設定するようにしてあり(あるいはデフォルトで設定)、設定された内容に基づいて以後のモード切替制御が行われるようになっている。設定操作自体は公知の方法を応用したものであるため説明を省略する。
【0033】
ペンアップ操作が検知されて座標変換係数更新モードに突入するとき、ペンアップ状態ではペンアップ直前の表示座標C1にカーソルが残存している。ここで表示座標C1の位置に向けてペンダウン操作がなされると、ペンダウンと同時に表示座標C1の位置にマーク22が表示される。つまりカーソル表示座標C1と物理的に一致する入力座標P2の位置にペンダウン操作されることになる。
ペンダウン操作と同時に、新たにカーソル21が別の表示座標C2に表示される。このときカーソル表示座標C2と前カーソル表示座標C1(この時点でマーク22が表示されている座標)との間の実際の距離と、前入力座標P1と前カーソル表示座標C1との間の実際の距離とは、ほぼ同じである。
【0034】
このとき、ペン3を座標入力装置1に触れたままの状態でペン移動するドラッグ操作を行う。
マーク22の表示は、前カーソル表示座標C1に固定的に表示される場合と、ペンの移動に連動して移動する場合とのいずれかを取ることができるようになっている。
【0035】
マーク22が前カーソル表示座標C1に固定表示されるようにしてあるときは、カーソル21がマーク22の位置(すなわち前カーソル表示座標C1)に重なるようにペンをドラッグする。
マーク22がペン移動と連動して移動するようにしてあるときは、マーク22が前入力座標P1に重なるようにペンをドラッグする。
【0036】
この2つのドラッグ操作によるペンの移動量は、いずれもキャリブレーションが必要な入力座標系または表示座標系での位置のずれ量に相当することからこのときのペンドラッグによる座標変化量(P1とP2、あるいはC1とC2の間の変化量)に基づいて座標変換係数を算出し、算出した座標変換係数を更新記憶した上で座標変換係数更新モードを終了し、マーク22を消去する。この結果、図1(b)の入力座標P2(カーソル表示座標C1)あたりまで移動して表示されていたカーソル21は新しい座標変換係数による演算の結果、入力座標P1に移動する。
【0037】
図2は本発明の一実施形態である入出力装置の構成を示すブロック図である。図において、1は座標入力装置、2は表示装置、3はペンであり、先に図1で同符号を付して説明したものである。4は制御部(CPU)、6は記憶部(ROM/RAM)である。
制御部4は、便宜上、機能的に入力監視部41、座標変換部42、カーソル表示部43、計時部44、モード切替許可禁止制御部45、座標変換係数補正部50に分けることができる。このうち座標変換係数補正部50をさらに機能的に細かく分けると、モード切替部51、係数算出部52、マーク表示部53、マーク移動量算出部54、オブジェクト制御取消部55とに分けることができる。
【0038】
入力監視部41は、ペン状態(ペンダウン、ペン移動、ペンアップ状態)と、ペンアップ時刻(T1)、ペンダウン時刻(T2)、ペン移動後停止位置での静止時刻(T3)と、ペンアップ座標(P1)、ペンダウン座標(P2)、ペン移動後停止位置での静止座標(P3)を監視し、さらには、後述するマーク表示状態、マーク表示座標、フラグ状態、指定時間(TT)、指定距離(LL)、特定領域(R1)、ペンダウンされた位置にアイコンなどのオブジェクトが存在するか、を監視する。
【0039】
座標変換部42は、座標入力装置1に入力された入力座標Pi(X,Y)を座標変換式である数式(1)を用いて表示座標Ci(x,y)に変換する。
x=aX+b
y=cX+d 数式(1)
数式(1)においてa、b、c、dは座標変換係数であり、後述する座標変換係数記憶部61に記憶されている値を読み出して演算に用いる。また、座標変換係数は後述する座標変換係数補正部50により更新される。
【0040】
カーソル表示部43は、座標変換部42により変換された表示座標位置にカーソルを表示する。
計時部44は、操作がなされたときの時刻およびある操作から他の操作までの経過時間を入力監視部41と連係して計測する。
【0041】
モード切替許可禁止制御部45は、予め設定された許可または禁止の設定に基づいて、モード切り替えの条件となる操作がなされたときにモードを切り替える動作を実行するか、あるいはモードが切り替わらないよう無視するかの制御を入力監視部41と連係することによって行う。たとえば、ログオン前はモード切り替えを許可し、ログオン後はモード切り替えを禁止するような設定をしておけば、モード切替許可禁止制御部45はログオン前のときだけ座標変換係数更新モードへの切り替わりが行われることになる。
【0042】
座標変換係数補正部50は、座標変換係数を補正するのための以下に示す各制御を行う。
すなわち、モード切替部51は入力監視部41による監視結果に基づいて座標変換係数更新モードへ突入したり、座標変換係数更新モードから脱出したりする。
係数算出部52は、座標変換係数更新モード中のペン移動量に基づいて新しい座標変換係数の算出を行う。
【0043】
マーク表示部53は、座標変換係数更新モード中に指標となるマークを表示する。
マーク移動量算出部54は、座標変換係数更新モード中にペンダウン操作されたときの入力座標(P2)からのペン移動量に応じた表示座標換算移動量を算出し、座標変換係数更新モード突入直前のカーソル表示座標(C1)に表示座標換算移動量を加算した表示座標位置を求める。
このときは、マーク表示部53はマーク移動量算出部54により算出された表示座標位置に指標となるマークを表示する。
【0044】
なお、マーク表示部53は、入力監視部41の監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替える際に、座標変換更新モードを維持するか終了するかに応じて表示するマークの形状又は色の少なくとも一方を変化させる。
【0045】
オブジェクト制御取消部55は、入力監視部41が座標変換係数更新モード中のペンダウン操作のときの入力座標(P2)に対応する表示座標(C2)位置にオブジェクトが存在するかを監視し、オブジェクトが存在することを検知する場合に、このオブジェクトに対してのペンダウン操作に伴う制御を取り消す取消信号をペンアップ操作がなされた時点で出力する。
【0046】
記憶部6は、座標変換係数記憶部61、状態変数記憶部62を有する。
座標変換係数記憶部61は上述した数式(1)の座標変換係数を記憶するとともに、座標変換係数補正部50が新しい座標変換係数を算出することにより更新されるようになっている。
【0047】
状態変数記憶部62には、入力監視部41による監視に必要なデータが記憶される。具体的には、ペン状態(ペンダウン、ペン移動、ペンアップ状態)と、ペンアップ時刻(T1)、ペンダウン時刻(T2)、ペン移動後停止状態になったときの静止時刻(T3)、ペンアップ座標(P1)、ペンダウン座標(P2)、ペン移動後停止状態になったときの静止座標(P3)が記憶される。
また、マークが表示されるときはマーク表示状態(形状、色情報)、マーク表示座標が記憶される。
また、座標変換係数更新モード中に座標変換係数更新の待機状態にあることを示すための係数更新モード待機フラグ、座標変換係数更新モードへの切り替わりが禁止された状態であることを示す係数更新モード禁止フラグが記憶される。
また、座標変換係数更新モード中に座標変換係数更新モードを維持するか終了するかの判断基準のひとつである指定時間TTや指定距離LL(指定半径)、特定領域(R1)が記憶される。また、オブジェクト(アイコンなど)に関係付けられている制御コマンド入力を座標変換係数更新モードとしてのコマンド入力よりも優先して実行する特定のオブジェクトが記憶される。
【0048】
次に、本発明の入出力装置による動作手順(図2に示す制御部4の主要部分の制御内容)について図3〜図5に示すフローチャートを用いて説明する。
なお、以下のフローチャートでは、マークが表示されたときにマークがペン移動と連動して移動する場合の動作を説明している。マークが座標変換係数更新モード突入直前のカーソル表示座標位置に固定表示されるときは、マークの表示座標自体に関して変化しないが、実際のペン移動操作はいずれも同様であるので、同様のフローが実行される。
【0049】
図3は、主に座標変換係数更新モード状態(以下、係数更新モードと略す)への突入前から突入するときの動作フローを説明するフローチャートである。
S100では係数更新モードであるかを判断し、係数更新モードの場合は「A」に飛び、係数更新モードでない場合はS101に進む。
S101では、係数更新モード禁止フラグがセットされた状態か否かを判断し、禁止状態でないとき(リセットされているとき)は「C」に飛び、そうでない場合はS102に進む。「C」に進むと、ただちにS109に進む。
【0050】
S109では、記憶部6に記憶されている座標変換係数を用いて座標変換式により入力座標に対する表示座標が算出され、その表示座標を用いて表示画面にカーソルを表示するカーソル処理が行われる。
そして、カーソル表示がなされると1つの処理が終了し、ふたたびスタートに戻る。
なお、本ステップでのカーソル表示とは、正確には、カーソルの表示更新、すなわち、現在表示されているカーソルを消去し、新たに座標入力装置1より出力された入力座標に対する表示座標にカーソルを表示することである。
【0051】
また、スタートに戻って座標入力装置1からの新たな出力で処理を繰り返すことは、後述するS102やS130の「ペンダウン」、「ペンアップ」、「変化なし」の判断処理についても座標入力装置1からの出力信号(データ)に基づき処理されるものであることを意味し、さらに、この座標入力装置1から出力されるデータ(パラメータ)の1つに、入力座標データが存在していることをも意味している。ただし、座標入力装置1から出力されるデータ(パラメータ)の1つに、入力座標データが存在していると前述したが、これは、座標入力装置1とその座標入力装置1より出力される信号を処理する制御部4とのインタフェースの1つの規定例についての説明であり、たとえば、ペンアップ時、ペンアップ位置の入力座標を信号を出力しない座標入力装置1とすることも可能で、この場合、S109は、入力座標データが出力されないため、何もしない(スキップされる)ものと、また、後述する入力状態が「ペンアップ」時の制御であるS120のペンアップ座標P1の記憶処理も行えないことから、入力状態が「変化なし」の時の入力座標(S102の「変化なし」には「ペン移動」も含むため、入力座標が出力され得る)を記憶し、「ペンアップ」時に、直前の入力座標をペンアップ座標P1として確定するものとなる。
【0052】
また、本ステップは、ブロック構成図2のカーソル表示部43に相当するステップ、すなわち、便宜上、制御部4内にカーソル表示部43が存在するものとしているが、座標入力装置1を制御部4とカーソル表示部43の両ブロックに接続(座標入力装置1の出力を制御部4、カーソル表示部43の両ブロックに出力)するブロック構成とすることにより、制御部4とカーソル表示部43とを独立させることは可能(本ステップは他のステップに影響を与えないステップ)である。
なお、これは、本発明のキャリブレーション機能を現行システムに組み込みやすいという理由から、本発明のメリットの1つでもある。
【0053】
S102では、ペンの入力状態を判断し、ペンダウン操作のときはS110、ペンアップ操作のときはS120、ペンの状態が変化しない(ただし、本ステップのペンの入力状態の判断においては、ペン移動はペンの状態が変化しないものと判断されるものとしている)ときはそのままS109に進む。
【0054】
S110では、ペンダウン時刻(T0)、ペンダウン座標(P0)を記憶する。なお、この処理は次回のペン操作でペンアップ操作がなされたとき(S120からS122に進むとき)にS121,S122の判断基準として必要となる。そしてS109に進んで通常のカーソル処理が行われる。
【0055】
S120では、ペンアップ操作(すなわち係数更新モードへ突入する操作)がなされることで係数更新モードに突入し、そのときのペンアップ時刻T1、ペンアップ座標P1を記憶する。続いてS121に進む。
【0056】
S121では、S120で記憶したペンアップ時刻の直前の入力がペンダウン(S110)であるときその直前のペンダウン時刻(T0)からの経過時間が指定時間TT内であるかを判断し、指定時間TT内であればそのまま係数更新モードを維持しつつS122に進み、そうでなければ係数更新モードを終了するため「B」に進む。
【0057】
S122では、S120で記憶したペンアップ座標(P1)と直前の入力座標(P0)との距離が指定距離LL内(指定半径内)であるかを判断し、指定距離LL内であればそのまま係数更新モードを維持しつつS109に進み、そうでなければ係数更新モードを終了するために「B」に進む。
【0058】
図4は、係数更新モードに突入したときのフローチャートである。
S130では、係数更新モード中において、次の入力操作内容を判断する。実行された入力がペンダウン操作のときはS140、ペン移動操作のときはS150、変化なし(ペン操作がない)のときはS170、ペンアップ操作のときはS160に進む。
【0059】
S140〜S144の処理は、係数更新モード中のペンダウン操作の処理である。
S140では、ペンダウン操作がなされることにより、そのペンダウン操作された座標にオブジェクトがあるかを判断し、オブジェクトがある場合で係数更新モードより制御コマンドを優先させるオブジェクトの場合は係数更新モードを終了するため「B」に進む。それ以外の場合はS141に進む。
【0060】
S141では、直前のペンアップ操作(S120)の時刻(T1)からの経過時間が指定時間TT内であるかを判断し、指定時間TT内であればそのまま係数更新モードを維持しつつS142に進み、そうでなければ係数更新モードを終了するため「B」に進む。
【0061】
S142では、直前のペンアップ操作(S120)の入力座標(P1)からの相対距離が指定距離LL内(指定半径内)であるかを判断し、指定距離LL内であればそのまま係数更新モードを維持しつつS143に進み、そうでなければ係数更新モードを終了するために「B」に進む。
【0062】
S143では、ペンダウン操作した入力座標P2を記憶し、さらに、S120で記憶した直前入力座標P1に対応する(算出される)表示座標(直前カーソル表示座標C1と同値)をマーク表示座標の初期値として記憶して、S144に進む。
S144では、入力座標P2に対応する表示座標C2にカーソルを表示し、上述のS143で記憶したマーク表示座標の位置にマークを表示して、「C」に進む。その後、図3の「Start」に戻りS100からの同様のフローを繰り返す。
【0063】
S150〜S153の処理は、係数更新モード中のペン移動操作のときの処理である。
S150では、係数更新モード突入時のペンアップ操作が行われた直前入力座標P1近傍の一定領域R1(たとえばP1を指定する目的でP1近傍をペンで座標入力したときP1を指定したとみなされる有効指定可能領域)からさらに遠ざかる移動か否かを判断し、遠ざかるときは係数更新モードを終了するため「B」に進む。一定領域R1から遠ざからないときは、そのまま係数更新モードを維持しつつS151に進む。
【0064】
S151では、係数更新モード待機フラグがセットされているかを判断する。すなわち、ペン移動が後述する静止状態後(S170〜S172)になされた場合はフラグがセットされている場合があるのでこれを判断する。
係数更新モード待機フラグがセットされている場合は、後述するS172で係数更新モード待機フラグをセット(次のペンアップ検知で、座標変換係数の更新が仮確定)した状態におけるペン移動を検知したことを示すことから、係数更新モード終了のため「B」に進み、そうでない場合は係数更新モードを維持しつつS152に進む。
【0065】
S152では、ペン移動に応じてマークの表示位置を随時更新し、続いてS153に進む。
なお、本ステップでのマークの表示更新とは、現在表示されているマークを消去し、新たに座標入力装置1より出力された入力座標に対する表示座標にマークを表示するもので、正確には、現在のマーク表示座標の位置に表示されているマークを消去し、S143で記憶したペンダウン座標P2と入力座標の差分(ペンダウンからの移動量)を表示座標系での移動量に換算し、表示座標系での移動量を、新たなマーク表示座標として加算更新し、加算更新したマーク表示座標の位置にマークを表示する処理を行うものである。
【0066】
S153では、ペン3が最後にペン移動した時刻をペン静止時刻T3として記憶し、そのときの入力座標を静止座標P3として記憶する。
なお、この処理は次回のペン操作でペンが一定期間静止する(変化しない)とき(S170からS172に進むとき)に判断基準として必要となる。続いて「C」に進む。その後、図3の「Start」に戻りS100からの同様のフローを繰り返す。
【0067】
以下のS170〜S172の処理は、後述のS160〜S163の座標変換係数を更新する状態か否か等の判断の際に参照される係数更新モード待機フラグをセットする条件を満たしているかどうか、ならびに、セットする条件を満たしている場合には、フラグのセットとマーク形状の変更処理を行うステップである。
【0068】
すなわち、ペン移動後にペンが静止した状態のときであり、静止座標P3が一定領域R1内(すなわちペンアップ座標P1近傍であるか)が判断され、一定領域R1内であるときは係数更新モードを維持しつつS171に進み、一定領域R1以外のときは「C」に進んで、その後、図3の「Start」に戻りS100からの同様のフローを繰り返す。
【0069】
S171では、静止時刻T3から指定時間TTが経過したかが判断され、指定時間TT以内であれば係数更新モードを維持しつつS172に進み、指定時間TTを越えれば「C」に進んで、その後、図3の「Start」に戻りS100からの同様のフローを繰り返す。
【0070】
S172では、係数更新モード待機フラグをセット、ならびに、マーク形状を(次のペンアップ検知で、座標変換係数を更新することが仮確定したことを利用者に示すマーク形状に)変更し、続いて「C」に進む。その後、図3の「Start」に戻りS100からの同様のフローを繰り返す。
【0071】
S160〜S163の処理は、係数更新モード中のペンアップ操作のときの処理である。
S160では、ペンアップ操作がなされることにより、係数更新モード待機フラグがセットされているかが判断され、待機フラグがセットされているときは、係数更新を実行するため、係数更新モードを維持しつつS161に進み、リセットされているときは係数更新モードを終了するために「B」に進む。
【0072】
S161では、係数更新モードでの係数更新処理と通常のカーソル処理(たとえばアイコンなどのドラッグ処理)とを明確に分離するために、通常のカーソル処理の制御について取消制御信号を出力し、S162に進む。
【0073】
S162では、静止座標P3と係数更新モード突入時のペンアップ座標P1とを用いて後述する数式(2)による計算により座標変換係数を算出し、算出した係数を更新する。そしてS163に進む。
【0074】
S163では、今回の座標変換係数更新モードに突入したペンアップ座標P1(=静止したときの入力座標P3)をキャリブレーション座標(P0)として記憶して、係数更新モードを終了するため「B」に進む。このキャリブレーション座標P0は、必ずしも必要なものではないが、次回、同様のキャリブレーションを実行するときにこれを利用して座標変換係数を精度よく算出するときに利用するものである。
【0075】
次に、座標変換係数更新モードから脱出するときに進む「B」のフローについて説明する。
図5は、「B」に進んだときに実行される係数更新モードを終了するためのフローチャートである。ここでは消去する必要があるデータを消去あるいはクリアした上で次の処理を進めるようにしている。
S190では、静止時刻(T3)が記憶されている場合にはこれを消去し、S191に進む。
S191では、係数更新モード待機フラグがセットされている場合にはこれをクリアし、また、マーク表示状態であれば、マークを消去して、S192に進む。
S192では、座標変換係数更新モードを終了する。そして「C」に進み、その後、図3の「Start」に戻りS100からの同様のフローを繰り返す。
【0076】
次に、図4のS162で実行される座標変換式の座標変換係数の算出について説明する。
下記の数式(2)は、2点の物理座標における2組の入力座標(X,Y)、表示座標(x、y)から座標変換式のそれぞれの変換係数を求める計算式である。
a=(xa−xb)/(Xa−Xb)
b=xa−aXa
c=(ya−yb)/(Ya−Yb)
d=ya−aYa 数式(2)
【0077】
座標変換係数更新モード開始時のペンアップ座標P1(X1,Y1)を(Xa,Ya)、最終マーク表示座標C1(x,y)を(xa,ya)とした場合(C1はP1近傍に移動している)、またペンダウン座標P2(X2,Y2)を(Xb,Yb)、ペンダウン時の表示座標C2(x,y)を(xb,yb)として、座標変換係数を更新することができる。この方法を用いることにより1座標でのキャリブレーション入力でキャリブレーションが可能である。
【0078】
また、もしも過去のキャリブレーションのデータが利用できる場合は、座標変換係数更新モード開始時のペンアップ座標P1(X1,Y1)を(Xa,Ya)、最終マーク表示座標C1(x,y)を(xa,ya)とした場合(C1はP1近傍に移動している)、同じく直前のキャリブレーションでのペンアップ座標P0とマーク表示座標C0をそれぞれ(Xb,Yb)、(xb,yb)として、座標変換係数を更新することもできる。この2点が離れているほど数式(2)の座標変換係数aおよびcの丸め誤差が小さくなり、キャリブレーション精度を向上することができる。なお、この場合は、直前のキャリブレーションデータを保存しておく必要があるので、前回のキャリブレーション座標P0(X0,Y0)が記憶されていない場合は上述した1座標での入力でキャリブレーションを行うようにする。
【0079】
反対にこれら2点でのキャリブレーション座標(X0,Y0)と(X1,Y1)のX軸方向、またはY軸方向の相対距離が小さい場合は、数式(2)の座標変換係数aおよびcはその分母が小さくなるため丸め誤差が大きくなり、座標変換係数としては不適切である。したがって、X軸方向またはY軸方向の相対距離が予め定めた指定値より小さい場合は、座標変換係数aまたはcを更新しないようにすることで、不適当なキャリブレーションを防止することができる。この場合、座標変換係数bおよびdは、更新しなかった変換係数aまたはcより算出する。
【0080】
以上のように、本発明は常時入力を監視し、OSなどのシステムよる表示装置の表示内容に依存しない簡単なペン操作で通常使用状況からキャリブレーションを実行することができる。また表示装置に表示されたオブジェクトをペン入力で操作中に、偶然による意図しないキャリブレーションが行われないようにすることができる。
【0081】
【発明の効果】
本発明によれば、座標変換した入力座標系と表示装置の座標系にずれがある場合、使用者は簡単な操作を行うことにより、表示装置上に表示されたアイコンなどのオブジェクトを操作することなく、座標変換係数を更新し、座標変換した入力座標系と表示装置の座標系を一致することができる。これにより、座標変換した入力座標系と表示装置の座標系のずれが大きく、ペン入力ではキャリブレーションソフトの起動、ひいてはキャリブレーションを実行できないといった問題点を解決することができる。
【0082】
また、表示装置上の任意の座標でキャリブレーションを実行できるため、予め定められた座標に基準点マークなどを表示したキャリブレーション専用画面の表示する必要が無くなる。さらには、本発明は常時入力を監視し、OSなどのシステムよる表示装置の表示内容に依存しない簡単なペン操作で通常使用状況からキャリブレーションを実行することができる。
【0083】
さらに、座標変換した入力座標系と表示装置の座標系を自由にずらすことができるため、視差補正などユーザの自由なキャリブレーションを可能にする。
また、表示装置に表示されたオブジェクトをペン入力で操作中に、偶然による意図しないキャリブレーションが行われないようにすることができる。
【図面の簡単な説明】
【図1】本発明の一実施形態である入出力装置の操作を説明する図。
【図2】本発明の一実施形態である装置の構成を示すブロック図。
【図3】本発明の一実施例である入出力装置の動作を説明するフローチャート。
【図4】本発明の一実施例である入出力装置の動作を説明するフローチャート。
【図5】本発明の一実施例である入出力装置の動作を説明するフローチャート。
【符号の説明】
1:座標入力装置
2:表示装置
3:ペン
4:制御部
6:記憶部
21:カーソル
22:マーク
41:入力監視部
42:座標変換部
43:カーソル表示部
44:計時部
45:モード切替許可禁止制御部
50:座標変換係数補正部
51:モード切替部
52:係数算出部
53:マーク表示部
54:マーク移動量算出部
55:オブジェクト制御取消部
61:座標変換係数記憶部
62:状態変数記憶部
Pi:入力座標
Ci:表示座標
Claims (10)
- 入力座標系が定義され、ペン操作による位置指定により入力座標系への座標入力が可能な座標入力装置と、
ペンによる入力座標系への入力操作を監視する入力監視部と、
表示座標系により表示位置が定義される表示画面を有し、座標入力装置が表示画面上に重なるように取り付けられる表示装置と、
入力座標系と表示座標系とを対応付ける座標変換係数を記憶する座標変換係数記憶部と、
入力座標系に入力された座標から座標変換係数を用いて表示座標を算出する座標変換部と、
座標変換部により算出された表示画面上の表示座標位置にカーソルを表示するカーソル表示部とを有する入出力装置であって、
少なくとも入力監視部によるペンアップ操作の検知を条件として座標変換係数更新モードに突入するとともに、座標変換係数更新モード中の入力座標系に対するペンダウン操作、ペン移動操作、ペンアップ操作による入力座標の変化量に基づいて新しい座標変換係数を算出して更新する座標変換係数補正部を備えたことを特徴とする入出力装置。 - 座標変換係数補正部は、座標変換係数更新モード突入後の最初のペンダウン操作時に突入直前カーソル表示座標(C1)位置にマークを表示することを特徴とする請求項1に記載の入出力装置。
- 入力監視部により座標変換係数更新モード中に連続するペンダウン操作、ペン移動操作が検知された場合に、座標変換係数補正部はペンダウン操作された入力座標(P2)からのペン移動量に応じた表示座標換算移動量を算出し、座標変換係数更新モード突入直前のカーソル表示座標(C1)に換算移動量を加算した表示座標位置に、マークを表示することを特徴とする請求項1に記載の入出力装置。
- 入力監視部は座標変換係数更新モード突入前のペンダウン操作時から突入条件となるペンアップ操作時までの経過時間、又は、座標変換係数更新モードへの突入条件となるペンアップ操作時から次のペンダウン操作時までの経過時間を監視するとともに、座標変換係数補正部はこの監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替えることを特徴とする請求項1に記載の入出力装置。
- 入力監視部は座標変換係数更新モード突入前のペンダウン操作のときの入力座標(P0)から座標変換係数更新モードへの突入条件となるペンアップ操作のときの直前入力座標(P1)までの距離、又は、座標変換係数更新モードへの突入条件となるペンアップ操作のときの直前入力座標(P1)からその次のペンダウン操作のときの入力座標(P2)までの距離を監視するとともに、座標変換係数補正部はこの入力監視部の監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替えることを特徴とする請求項1に記載の入出力装置。
- 入力監視部は座標変換係数更新モードへの突入条件となるペンアップ操作がなされたときの直前入力座標(P1)と、その後にペンダウン操作、ペン移動操作がなされ、さらにその後にペンアップ操作がなされたときの直前入力座標(P3)との距離または位置関係を監視するとともに、座標変換係数補正部はこの監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替えることを特徴とする請求項1に記載の入出力装置。
- 入力監視部は座標変換係数更新モード中の連続するペンダウン操作、ペン移動操作がなされた後の静止時間を監視するとともに、座標変換係数補正部はこの監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替えることを特徴とする請求項1に記載の入出力装置。
- 入力監視部は座標変換係数更新モード中のペンアップ操作を検知するとともに、座標変換係数補正部は、この監視結果に基づいて座標変換更新モードを維持するか終了するかを切り替え、さらに、座標変換更新モードを維持するか終了するかに応じて表示するマークを変化させることを特徴とする請求項2又は3に記載の入出力装置。
- 入力監視部は座標変換係数更新モード中の連続するペンダウン操作、ペン移動操作、ペンアップ操作を監視するとともに、ペンダウン操作のときの入力座標(P2)に対応する表示座標(C2)位置にオブジェクトが存在するかを監視し、座標変換係数補正部はオブジェクトが存在する場合にこのオブジェクトに対してのペンダウン操作に伴う制御を取り消す取消信号をペンアップ操作がなされた時点で出力することを特徴とする請求項1に記載の入出力装置。
- 入力監視部は座標変換係数更新モード中のペンダウン操作を監視するとともにペンダウン操作のときの入力座標(P2)に対応する表示座標(C2)位置にオブジェクトが存在するかを監視し、座標変換係数補正部はオブジェクトが存在する場合にそのオブジェクトに応じて座標変換更新モードを維持するか終了するかを切り替えることを特徴とする請求項1に記載の入出力装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002354308A JP2004185512A (ja) | 2002-12-05 | 2002-12-05 | 入出力装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002354308A JP2004185512A (ja) | 2002-12-05 | 2002-12-05 | 入出力装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004185512A true JP2004185512A (ja) | 2004-07-02 |
Family
ID=32755359
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002354308A Pending JP2004185512A (ja) | 2002-12-05 | 2002-12-05 | 入出力装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004185512A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008108275A1 (ja) * | 2007-03-07 | 2008-09-12 | Nec Corporation | タッチパネル機能つき表示端末装置及びキャリブレーション方法 |
JP2010137009A (ja) * | 2008-12-15 | 2010-06-24 | Nintendo Co Ltd | キャリブレーションプログラム及び座標検出装置 |
JP2011053928A (ja) * | 2009-09-02 | 2011-03-17 | Fuji Xerox Co Ltd | 表示制御装置、選択支援装置、及びプログラム |
-
2002
- 2002-12-05 JP JP2002354308A patent/JP2004185512A/ja active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008108275A1 (ja) * | 2007-03-07 | 2008-09-12 | Nec Corporation | タッチパネル機能つき表示端末装置及びキャリブレーション方法 |
EP2120134A1 (en) * | 2007-03-07 | 2009-11-18 | NEC Corporation | Display terminal with touch panel function and calibration method |
CN101627352A (zh) * | 2007-03-07 | 2010-01-13 | 日本电气株式会社 | 具有触摸面板功能的显示终端和校准方法 |
EP2120134A4 (en) * | 2007-03-07 | 2012-02-29 | Nec Corp | DISPLAY TERMINAL WITH TOUCH PANEL FUNCTION AND CALIBRATION METHOD |
CN101627352B (zh) * | 2007-03-07 | 2012-12-12 | 日本电气株式会社 | 具有触摸面板功能的显示终端装置和校准方法 |
JP5163639B2 (ja) * | 2007-03-07 | 2013-03-13 | 日本電気株式会社 | タッチパネル機能つき表示端末装置及びキャリブレーション方法 |
JP2010137009A (ja) * | 2008-12-15 | 2010-06-24 | Nintendo Co Ltd | キャリブレーションプログラム及び座標検出装置 |
US8698757B2 (en) | 2008-12-15 | 2014-04-15 | Nintendo Co. Ltd. | Computer-readable storage medium having calibration program, coordinate detection apparatus and calibration method |
JP2011053928A (ja) * | 2009-09-02 | 2011-03-17 | Fuji Xerox Co Ltd | 表示制御装置、選択支援装置、及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5370144B2 (ja) | 操作方向判定装置、遠隔操作システム、操作方向判定方法およびプログラム | |
JP5792424B2 (ja) | 地図情報表示装置、地図情報表示方法およびプログラム | |
US9060068B2 (en) | Apparatus and method for controlling mobile terminal user interface execution | |
RU2464624C2 (ru) | Рабочие интерфейсы сенсорного экрана | |
JP5790203B2 (ja) | 情報処理装置、情報処理方法、プログラム、および遠隔操作システム | |
JP5347589B2 (ja) | 操作装置 | |
US8587527B2 (en) | Coordinate input device | |
US20050248542A1 (en) | Input device and method for controlling input device | |
US20110163988A1 (en) | Image object control system, image object control method and image object control program | |
US20180173483A1 (en) | Display Method for Screen of Wearable Device and Wearable Device | |
EP2840469B1 (en) | Operation input device, operation input method, and program | |
US9544524B2 (en) | Remote controller, remote control system and program | |
US20130009910A1 (en) | Mobile terminal | |
US20170329489A1 (en) | Operation input apparatus, mobile terminal, and operation input method | |
JP5780438B2 (ja) | 電子機器、位置指定方法及びプログラム | |
US20160216776A1 (en) | Methods, Devices, and Computer Readable Storage Device for Touchscreen Navigation | |
US20160196002A1 (en) | Display device | |
JP2014203351A (ja) | 描画装置、描画方法、及び描画プログラム | |
US9507515B2 (en) | System and method for data selection by means of a touch-sensitive surface | |
JP2004185512A (ja) | 入出力装置 | |
US20160253042A1 (en) | Display process apparatus, display process method, and non-transitory computer-readable recording medium | |
US10222906B2 (en) | Input device for vehicle and method of controlling input device for vehicle | |
EP2977862B1 (en) | Information processing device and information processing method | |
US8384692B2 (en) | Menu selection method and apparatus using pointing device | |
US11630564B2 (en) | Information processing device and program |