以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
[実施の形態1]
<電子機器100の全体構成>
まず、本実施の形態に係る電子機器100の全体構成について説明する。電子機器100は、電子ノート、パーソナルコンピュータ、携帯型電話機、電子辞書、PDA(Personal Digital Assistant)などのような、タッチパネルを有する携帯型デバイスによって実現される。
図1は、本実施の形態に係る電子機器100を示す概略図である。より詳細には、図1(a)は、ユーザがスタイラスペン200を用いてタッチパネル120に文字を手書き入力した状態の電子機器100を示すイメージ図である。図1(b)は、ユーザがスタイラスペン200を用いて直線定規ボタン120Aにタッチした状態の電子機器100を示すイメージ図である。図1(c)は、ユーザが2本の指でタッチパネル120にタッチした状態の電子機器100を示すイメージ図である。図1(d)は、ユーザが表示された定規120Xの辺の近傍でスタイラスペン200をスライドさせた状態の電子機器100を示すイメージ図である。
図1を参照して、電子機器100は、複数のタッチ座標を取得可能なタッチパネル120を含む。本実施の形態においては、タッチパネル120は、ユーザによるタッチ座標を検出するタブレットと、液晶ディスプレイとを含む。タッチパネル120は、タッチパネル120に対するタッチ操作を受け付けて、タッチ座標に基づいてユーザから様々な命令を受け付ける。タッチパネル120は、ユーザからの様々な命令に基づいて、手描き画像(手描き文字を含む)、所定の文字、所定の画像などを表示する。なお、本実施の形態に係る電子機器100は、タッチパネル120を介してユーザからの命令を受け付けるものであるが、電子機器はタッチパネル120とは別にハードウェアキーボードやその他のスイッチを有していてもよい。
より詳細には、タッチパネル120は、タッチ座標を後述するCPU(Central Processing Unit)に入力する。CPUは、タッチ座標に基づいて手描き命令を受け付ける。CPUは、手描き命令に基づいて、タッチパネル120に手描き画像を表示させる。
<電子機器100の動作概要>
次に、図1を参照して、本実施の形態に係る電子機器100の動作概要について説明する。
図1(a)を参照して、電子機器100は、タッチパネル120を介して、ユーザから手書き命令を受け付ける。タッチパネル120は、スタイラスペン200とタッチパネル120との接触位置(タッチ座標)の軌跡に対応する直線や曲線を描画する。たとえば、ユーザは、スタイラスペン200を用いてタッチパネル120に手描き文字を書くことができる。
本実施の形態においては、タッチパネル120は、直線定規モードに移行するための直線定規ボタン120Aと、第1の三角定規モードに移行するための第1の三角定規ボタン120Bと、第2の三角定規モードに移行するための第2の三角定規ボタン120Cと、分度器モードに移行するための分度器ボタン120Dとを、選択可能に表示する。
図1(b)を参照して、電子機器100は、タッチパネル120を介して、ユーザから直線定規モードへの移行命令を受け付ける。より詳細には、電子機器100は、タッチパネル120を介してユーザが直線定規ボタン120Aを押下したことを検知することによって、直線定規モードへと移行する。
本実施の形態においては、直線定規モードにおいては、ユーザは、タッチパネル120に1点でタッチすることによって、手描き画像を電子機器100に入力できてもよいし、手書き画像を電子機器100に入力できなくてもよい。
図1(c)を参照して、電子機器100は、2つのタッチ座標(第1および第2のタッチ座標)を検出したか否かを判断する。電子機器100は、2つのタッチ座標を検出した場合、当該2つのタッチ座標に基づいて、タッチパネル120に定規120Xを表示させる。具体的には、電子機器100は、2つのタッチ座標の中心が定規の中心(重心)に一致するように、かつ、定規の長手方向の軸線と2つのタッチ座標を結ぶ線とが平行するあるいは一致するように、タッチパネル120に定規120Xを表示させる。
ただし、電子機器100は、2つのタッチ座標を検出したときに、直線定規モードへ移行してもよい。すなわち、ユーザは、直線定規ボタン120Aを押下せずとも、タッチパネル120に2点でタッチすることによって、当該2つのタッチ座標に基づいてタッチパネル120に定規120Xを表示させてもよい。
図1(d)を参照して、電子機器100は、第3のタッチ座標を検出したか否かを判断する。電子機器100は、第3のタッチ座標を検出した場合、当該第3のタッチ座標の軌跡に基づいて、表示されている定規120Xの辺に沿って直線120Yを表示する。
このように、本実施の形態に係る電子機器100に関しては、ユーザが1回のタッチ操作を入力するだけで、所望の位置に所望の角度で定規120Xを表示させることができる。換言すれば、1回のタッチ操作によって、定規120Xを表示するための命令と、位置を指定するための命令と、傾きを指定する命令とを電子機器100に入力することができる。以下、このような機能を実現するための構成について詳述する。
<電子機器100のハードウェア構成>
次に、電子機器100の具体的構成の一態様について説明する。図2は、電子機器100のハードウェア構成を表わすブロック図である。図2を参照して、電子機器100は、主たる構成要素として、CPU110と、タッチパネル120と、メモリ130と、メモリインターフェイス140と、通信インターフェイス150とを含む。
CPU110は、メモリ130あるいは外部の記憶媒体141に記憶されているプログラムを実行することによって、電子機器100の各部を制御する。CPU110は、メモリ130あるいは外部の記憶媒体141に記憶されているプログラムを実行することによって、図1,4,6,7,8,9,10,11,12に記載の動作や、図3,5に記載の処理を実現する。
タッチパネル120は、抵抗膜方式、表面弾性波方式、赤外線方式、電磁誘導方式、静電容量方式などのいずれのタイプであってもよい。タッチパネル120は、光センサ液晶を含んでもよい。タッチパネル120は、所定時間毎に外部の物体によるタッチパネル120へのタッチ操作を検知して、タッチ座標(座標)をCPU110に入力する。タッチパネル120は、複数のタッチ座標を検出することができる。
CPU110は、タッチパネル120から順次入力されてくるタッチ座標に基づいて、スライド操作(タッチ座標の軌跡)を受け付けることもできる。CPU110は、少なくとも第3のタッチ座標の軌跡を取得することが好ましい。タッチパネル120は、CPU110からのデータに基づいて手描き画像や所定の文字や所定の画像を表示する。
メモリ130は、各種のRAM(Random Access Memory)や、ROM(Read-Only Memory)や、ハードディスクなどによって実現される。あるいは、メモリ130は、読取用のインターフェイスを介して利用される、USB(Universal Serial Bus)メモリ、CD−ROM(Compact Disc - Read Only Memory)、DVD−ROM(Digital Versatile Disk - Read Only Memory)、USB(Universal Serial Bus)メモリ、メモリカード、FD(Flexible Disk)、ハードディスク、磁気テープ、カセットテープ、MO(Magnetic Optical Disc)、MD(Mini Disc)、IC(Integrated Circuit)カード(メモリカードを除く)、光カード、マスクROM、EPROM、EEPROM(Electronically Erasable Programmable Read-Only Memory)などの、不揮発的にプログラムを格納する媒体などによっても実現される。メモリ130は、CPU110によって実行されるプログラムや、CPU110によるプログラムの実行により生成されたデータ、タッチパネル120を介して入力されたデータなどを記憶する。
CPU110は、メモリインターフェイス140を介して外部の記憶媒体141に格納されているデータを読み出して、当該データをメモリ130に格納する。逆に、CPU110は、メモリ130からデータを読み出して、メモリインターフェイス140を介して当該データを外部の記憶媒体141に格納する。
なお、記憶媒体141としては、CD−ROM(Compact Disc - Read Only Memory)、DVD−ROM(Digital Versatile Disk - Read Only Memory)、USB(Universal Serial Bus)メモリ、メモリカード、FD(Flexible Disk)、ハードディスク、磁気テープ、カセットテープ、MO(Magnetic Optical Disc)、MD(Mini Disc)、IC(Integrated Circuit)カード(メモリカードを除く)、光カード、マスクROM、EPROM、EEPROM(Electronically Erasable Programmable Read-Only Memory)などの、不揮発的にプログラムを格納する媒体が挙げられる。
通信インターフェイス150は、アンテナやコネクタによって実現される。通信インターフェイス150は、有線通信あるいは無線通信によって他の装置との間でデータをやり取りする。CPU110は、通信インターフェイス150を介して、他の装置からプログラムや画像データやテキストデータなどを受信したり、他の装置に画像データやテキストデータを送信したりする。
<表示処理>
次に、本実施の形態に係る電子機器100における表示処理について説明する。なお、図3は、本実施の形態に係る電子機器100における表示処理の処理手順を示すイメージ図である。
図3を参照して、CPU110は、タッチパネル120を介して、直線定規モードが選択されたか否かを判断する(ステップS102)。CPU110は、直線定規モードが選択されていない場合(ステップS102においてNOである場合、図1(a))、ステップS102の処理を繰り返す。
CPU110は、直線定規モードが選択された場合(ステップS102においてYESである場合、図1(b))、タッチパネル120から2つのタッチ座標を取得したか否かを判断する(ステップS112)。CPU110は、タッチパネル120から2つのタッチ座標を取得しなかった場合(ステップS112においてNOである場合)、タッチパネル120に定規120Xを表示させない(ステップS114)。CPU110は、ステップS102からの処理を繰り返す。すなわち、直線定規モードが解除されていない限り、ステップS112からの処理が実行される。
CPU110は、タッチパネル120から2つのタッチ座標を取得した場合(ステップS112においてYESである場合)、2つのタッチ座標に基づいてタッチパネル120に定規を表示させる(ステップS116、図1(c))。より詳細には、CPU110は、2つのタッチ座標の中心が定規の中心(重心)に一致するように、かつ、定規の長手方向の軸線と2つのタッチ座標を結ぶ線とが平行するあるいは一致するように、タッチパネル120に定規120Xを表示させる。ただし、2つのタッチ座標の中心が定規の中心(重心)に一致する必要はない。
なお、CPU110は、直線定規モードへの移行命令を受け付けなくとも、2つのタッチ座標を取得した場合に、タッチパネル120に定規120Xを表示させてもよい。すなわち、ステップS102の役割を、ステップS112が兼ねてもよい。
CPU110は、タッチパネル120から第3のタッチ座標を取得したか否かを判断する(ステップS118)。CPU110は、タッチパネル120から第3のタッチ座標を取得しなかった場合(ステップS118においてNOである場合)、ステップS112からの処理を繰り返す。
CPU110は、タッチパネル120から第3のタッチ座標を取得した場合(ステップS118においてYESである場合)、第3のタッチ座標が定規120Xの上側に位置するか否かを判断する(ステップS120)。
CPU110は、第3のタッチ座標が定規120Xの上側に位置する場合(ステップS122においてYESである場合)、定規120Xの上辺に沿って、タッチパネル120に第3のタッチ座標に対応する位置に直線を表示させる(ステップS122、図1(d))。CPU110は、定規120Xの上辺から所定の範囲内の第3のタッチ座標の軌跡のみを定規120Xの上辺に射影させることが好ましい。つまり、CPU110は、定規120Xの上辺から所定の範囲外の第3のタッチ座標の軌跡に基づいて通常の手描き命令を受け付けてもよい。CPU110は、ステップS118からの処理を繰り返す。
CPU110は、第3のタッチ座標が定規120Xの下側に位置する場合(ステップS122においてNOである場合)、定規120Xの下辺に沿って、タッチパネル120に第3のタッチ座標に対応する位置に直線を表示させる(ステップS124)。CPU110は、定規の下辺から所定の範囲内の第3のタッチ座標の軌跡のみを定規120Xの下辺に射影させることが好ましい。つまり、CPU110は、定規120Xの下辺から所定の範囲外の第3のタッチ座標の軌跡に基づいて通常の手描き命令を受け付けてもよい。CPU110は、ステップS118からの処理を繰り返す。
[実施の形態2]
次に、本発明の実施の形態2について説明する。上述の実施の形態1に係る電子機器100は、2つのタッチ座標(第1および第2のタッチ座標)が入力された際に、定規120Xをユーザの所望する位置にユーザの所望する角度で表示するものであった。しかしながら、本実施の形態に係る電子機器100は、直線定規モードにおいて、第1のタッチ座標が入力された際に、定規120Xをユーザの所望する位置に水平に表示する。そして、第2のタッチ座標が入力されたときに、電子機器100は、2つのタッチ座標に基づいて、定規120Xをユーザの所望する位置にユーザの所望する角度で表示する。
なお、以下では、実施の形態1に係る電子機器100と同様の構成については、説明を繰り返さない。たとえば、本実施の形態に係る、電子機器100の全体構成(図1)、電子機器100のハードウェア構成(図2)は、実施の形態1のそれらと同様であるため、ここでは説明を繰り返さない。
<電子機器100の動作概要>
本実施の形態に係る電子機器100の動作概要について説明する。図4は、本実施の形態に係る電子機器100を示す概略図である。より詳細には、図4(a)は、ユーザがスタイラスペン200を用いてタッチパネル120に文字を手書き入力した状態の電子機器100を示すイメージ図である。図4(b)は、ユーザがスタイラスペン200を用いて直線定規ボタン120Aにタッチした状態の電子機器100を示すイメージ図である。図4(c)は、ユーザが1本の指でタッチパネル120にタッチした状態の電子機器100を示すイメージ図である。図4(d)は、ユーザが2本の指でタッチパネル120にタッチした状態の電子機器100を示すイメージ図である。図4(e)は、ユーザが表示された定規120Xの辺の近傍でスタイラスペン200をスライドさせた状態の電子機器100を示すイメージ図である。
図4(a)を参照して、電子機器100は、タッチパネル120を介して、ユーザから手書き命令を受け付ける。タッチパネル120は、スタイラスペン200とタッチパネル120との接触位置(タッチ座標)の軌跡に対応する直線や曲線を描画する。たとえば、ユーザは、スタイラスペン200を用いてタッチパネル120に手描き文字を書くことができる。
本実施の形態においては、タッチパネル120は、直線定規モードに移行するための直線定規ボタン120Aと、第1の三角定規モードに移行するための第1の三角定規ボタン120Bと、第2の三角定規モードに移行するための第2の三角定規ボタン120Cと、分度器モードに移行するための分度器ボタン120Dとを、選択可能に表示する。
図4(b)を参照して、電子機器100は、タッチパネル120を介して、ユーザから直線定規モードへの移行命令を受け付ける。より詳細には、電子機器100は、タッチパネル120を介してユーザが直線定規ボタン120Aを押下したことを検知することによって、直線定規モードへと移行する。
図4(c)を参照して、電子機器100は、第1のタッチ座標を検出したか否かを判断する。電子機器100は、第1のタッチ座標を検出した場合、第1のタッチ座標に基づいて、タッチパネル120に直線定規120Xを表示させる。具体的には、電子機器100は、第1のタッチ座標が定規の中心(重心)に一致するように、タッチパネル120に定規120Xを水平に表示させる。ただし、2つのタッチ座標の中心が定規の中心(重心)に一致する必要はない。
図4(d)を参照して、電子機器100は、第2のタッチ座標を検出したか否かを判断する。電子機器100は、第2のタッチ座標を検出した場合、2つのタッチ座標に基づいて、タッチパネル120に定規120Xを表示させる。具体的には、電子機器100は、2つのタッチ座標の中心が定規の中心(重心)に一致するように、かつ、定規の長手方向の軸線と2つのタッチ座標を結ぶ線とが平行するあるいは一致するように、タッチパネル120に定規120Xを表示させる。ただし、2つのタッチ座標の中心が定規の中心(重心)に一致する必要はない。
図4(e)を参照して、電子機器100は、第3のタッチ座標を検出したか否かを判断する。電子機器100は、第3のタッチ座標を検出した場合、当該第3のタッチ座標の軌跡に基づいて、表示されている定規120Xの辺に沿って直線120Yを表示する。
このように、本実施の形態に係る電子機器100に関しては、ユーザが簡単な操作によって所望の位置に所望の角度で定規を表示させることができる。以下、このような機能を実現するための構成について詳述する。
<表示処理>
次に、本実施の形態に係る電子機器100における表示処理について説明する。なお、図5は、本実施の形態に係る電子機器100における表示処理の処理手順を示すイメージ図である。
図5を参照して、CPU110は、タッチパネル120を介して、直線定規モードが選択されたか否かを判断する(ステップS202)。CPU110は、直線定規モードが選択されていない場合(ステップS202においてNOである場合、図4(a))、ステップS202の処理を繰り返す。
CPU110は、直線定規モードが選択された場合(ステップS202においてYESである場合、図4(b))、タッチパネル120から第1のタッチ座標を取得したか否かを判断する(ステップS204)。CPU110は、タッチパネル120から第1のタッチ座標を取得しなかった場合(ステップS204においてNOである場合)、タッチパネル120に定規120Xを表示させない(ステップS206)。CPU110は、ステップS202からの処理を繰り返す。すなわち、直線定規モードが解除されていない限り、ステップS204からの処理が実行される。
あるいは、CPU110は、ステップS206の後に、定規モードが解除されたか否かの判定ステップを実行しても良い。CPU110は、定規モードが解除されていない場合は、ステップS204からの処理を実行し、定規モードが解除されている場合は、ステップS202からの処理を繰り返してもよい。
CPU110は、タッチパネル120から第1のタッチ座標を取得した場合(ステップS204においてYESである場合)、1つのタッチ座標に基づいてタッチパネル120に定規を表示させる(ステップS208、図4(c))。より詳細には、CPU110は、1つのタッチ座標が定規の中心(重心)に一致するように、タッチパネル120に定規120Xを水平に表示させる。ただし、2つのタッチ座標の中心が定規の中心(重心)に一致する必要はない。
CPU110は、タッチパネル120から2つのタッチ座標を取得したか否かを判断する(ステップS212)。CPU110は、タッチパネル120から2つのタッチ座標を取得しなかった場合(ステップS212においてNOである場合)、ステップS204からの処理を繰り返す。
CPU110は、タッチパネル120から2つのタッチ座標を取得した場合(ステップS212においてYESである場合)、2つのタッチ座標に基づいてタッチパネル120に定規を表示させる(ステップS216、図4(d))。より詳細には、CPU110は、2つのタッチ座標の中心が定規の中心(重心)に一致するように、かつ、定規の長手方向の軸線と2つのタッチ座標を結ぶ線とが平行するあるいは一致するように、タッチパネル120に定規120Xを表示させる。ただし、2つのタッチ座標の中心が定規の中心(重心)に一致する必要はない。
CPU110は、タッチパネル120から第3のタッチ座標を取得したか否かを判断する(ステップS218)。CPU110は、タッチパネル120から第3のタッチ座標を取得しなかった場合(ステップS218においてNOである場合)、ステップS212からの処理を繰り返す。
CPU110は、タッチパネル120から第3のタッチ座標を取得した場合(ステップS218においてYESである場合)、第3のタッチ座標が定規120Xの上側に位置するか否かを判断する(ステップS220)。
CPU110は、第3のタッチ座標が定規120Xの上側に位置する場合(ステップS222においてYESである場合)、定規120Xの上辺に沿って、タッチパネル120に第3のタッチ座標に対応する位置に直線を表示させる(ステップS222、図4(e))。CPU110は、定規120Xの上辺から所定の範囲内の第3のタッチ座標の軌跡のみを定規120Xの上辺に射影させることが好ましい。つまり、CPU110は、定規120Xの上辺から所定の範囲外の第3のタッチ座標の軌跡に基づいて通常の手描き命令を受け付けてもよい。CPU110は、ステップS218からの処理を繰り返す。
CPU110は、第3のタッチ座標が定規120Xの下側に位置する場合(ステップS222においてNOである場合)、定規120Xの下辺に沿って、タッチパネル120に第3のタッチ座標に対応する位置に直線を表示させる(ステップS224)。CPU110は、定規の下辺から所定の範囲内の第3のタッチ座標の軌跡のみを定規120Xの下辺に射影させることが好ましい。つまり、CPU110は、定規120Xの下辺から所定の範囲外の第3のタッチ座標の軌跡に基づいて通常の手描き命令を受け付けてもよい。CPU110は、ステップS218からの処理を繰り返す。
<第1の応用例>
次に、実施の形態1および2に適用可能な電子機器100の第1の応用例に関して説明する。図6は、第1の応用例を示すイメージ図である。
図6を参照して、電子機器100は、定規120Xに沿って表示された直線の長さを表示してもよい。より詳細には、図3におけるS122およびS124、図5におけるS222,S224において、図1(d)および図4(e)に示すように、CPU110は、タッチパネル120に、3点目のタッチ座標の軌跡に基づいて定規120Xに沿って直線を表示させる。このときに、CPU110は、図6に示すように、タッチパネル120に、当該直線の長さを当該直線の終点位置に表示させる。
<第2の応用例>
次に、実施の形態1および2に適用可能な電子機器100の第2の応用例に関して説明する。図7は、第2の応用例を示すイメージ図である。
図7を参照して、電子機器100は、定規120Xの上辺または下辺が、表示されている直線の端点に接した際に、あるいは、表示されている直線に交差した際に、定規120Xの上辺または下辺と当該直線との間の角度を表示してもよい。より詳細には、図3におけるS116、図5におけるS216において、CPU110は、定規120Xの上辺または下辺が、表示されている直線の端点に接しているかを判断する。CPU110は、定規120Xの上辺または下辺が、表示されている直線の端点に接している場合に、タッチパネル120に、定規120Xの上辺または下辺と当該直線との間の角度を接点に表示させる。
<第3の応用例>
次に、実施の形態1および2に適用可能な電子機器100の第3の応用例に関して説明する。図8は、第3の応用例を示す第1のイメージ図である。より詳細には、図8(a)は、直線が表示された状態の電子機器100を示すイメージ図である。図8(b)は、ユーザが2本の指を用いて直線の端点の近傍に定規120Xを表示させた状態の電子機器100を示すイメージ図である。図8(c)は、直線の端点と定規の辺とが接した状態の電子機器100を示すイメージ図である。図8(d)は、ユーザによって定規が直線の端点に接した状態で回転した状態の電子機器100を示すイメージ図である。
図3におけるS122およびS124、図5におけるS222およびS224において、CPU110は、図8(a)に示すように、タッチパネル120に直線を表示させる。図3におけるS116、図5におけるS216において、CPU110は、図8(b)に示すように、タッチパネル120に定規120Xを表示させる。
このとき(図3におけるS116、図5におけるS216)、CPU110は、既に表示されている直線の端点と定規の辺との距離が所定値未満であるか否かを判断する。CPU110は、直線の端点と定規の辺との距離が所定値未満である場合、図8(c)に示すように、直線の端点と定規の辺とが接するように定規を移動させる。
図8(d)に示すように、CPU110は、2つのタッチ座標が変更されると、直線の端点と定規の辺とが接した状態で、定規を移動させることが好ましい。CPU110は、2つのタッチ座標の軌跡に基づいて、直線の端点と定規の辺との接点を中心にして定規を回転させてもよい。あるいは、CPU110は、2つのタッチ座標の軌跡を取得しなくても、図8(b)および図8(c)の動作を繰り返してもよい、すなわち、定規120Xを逐次表示し直してもよい。
以下に説明するように、第3の応用例は、2本の直線が表示されている場合にも応用することができる。図9は、第3の応用例を示す第2のイメージ図である。より詳細には、図9(a)は、2本の直線が表示された状態の電子機器100を示すイメージ図である。図9(b)は、ユーザが2本の指を用いて2本の直線の端点の近傍に定規120Xを表示させた状態の電子機器100を示すイメージ図である。図9(c)は、2本の直線の端点と定規の辺とが接した状態の電子機器100を示すイメージ図である。図9(d)は、ユーザによって定規が1本の直線の端点に接した状態で回転した状態の電子機器100を示すイメージ図である。
図3におけるS122およびS124、図5におけるS222およびS224において、CPU110は、図9(a)に示すように、タッチパネル120に2本の直線を表示させる。図3におけるS116、図5におけるS216において、CPU110は、図9(b)に示すように、タッチパネル120に定規120Xを表示させる。
このとき(図3におけるS116、図5におけるS216)、CPU110は、既に表示されている2本の直線の端点と定規の辺との距離が所定値未満であるか否かを判断する。CPU110は、2本の直線の端点と定規の辺との距離が所定値未満である場合、図9(c)に示すように、2本の直線の端点と定規の辺とが接するように定規を移動させる。
図9(d)に示すように、CPU110は、2つのタッチ座標が変更されると、1本の直線の端点と定規の辺とが接した状態で、定規を移動させることが好ましい。より詳細には、CPU110は、2つのタッチ座標の軌跡に基づいて、動きが小さいタッチ座標側の直線の端点と定規の辺との接点を中心にして定規を回転させてもよい。あるいは、CPU110は、2つのタッチ座標の軌跡を取得しなくても、図9(b)および図9(c)の動作を繰り返してもよい、すなわち、定規120Xを逐次表示し直してもよい。
このような構成によって、ユーザは、図8(c)、図8(d)、図9(c)、図9(d)の状態において、図1(d)および図4(e)と同様に、定規120Xに沿った直線を描くことができる。すなわち、ユーザは、既に表示されている直線の端点を通る直線120Yを描くことができる。図8(c)、図8(d)、図9(c)、図9(d)の状態において、第2の応用例を利用することも有益である。
<第4の応用例>
次に、実施の形態1および2に適用可能な電子機器100の第4の応用例に関して説明する。図10は、第4の応用例を示す第1のイメージ図である。より詳細には、図10(a)は、直線が表示された状態の電子機器100を示すイメージ図である。図10(b)は、ユーザが2本の指を用いて直線の端点の近傍に定規120Xを表示させた状態の電子機器100を示すイメージ図である。図10(c)は、直線の端点と定規の辺とが接した状態の電子機器100を示すイメージ図である。図10(d)は、ユーザによって定規が直線の端点に接した状態で回転した状態の電子機器100を示すイメージ図である。
図3におけるS122およびS124、図5におけるS222およびS224において、CPU110は、図10(a)に示すように、タッチパネル120に直線を表示させる。図3におけるS116、図5におけるS216において、CPU110は、図10(b)に示すように、タッチパネル120に定規120Xを表示させる。
このとき(図3におけるS116、図5におけるS216)、CPU110は、既に表示されている直線の端点と2つのタッチ座標のいずれかとの距離が所定値未満であるか否かを判断する。CPU110は、直線の端点と2つのタッチ座標のいずれかとの距離が所定値未満である場合、図10(c)に示すように、直線の端点と定規の辺とが接するように定規を移動させる。
図10(d)に示すように、CPU110は、2つのタッチ座標が変更されると、直線の端点と定規の辺とが接した状態で、定規を移動させることが好ましい。CPU110は、2つのタッチ座標の軌跡に基づいて、直線の端点と定規の辺との接点を中心にして定規を回転させてもよい。あるいは、CPU110は、2つのタッチ座標の軌跡を取得しなくても、図10(b)および図10(c)の動作を繰り返してもよい、すなわち、定規120Xを逐次表示し直してもよい。
以下に説明するように、第4の応用例は、2本の直線が表示されている場合にも応用することができる。図11は、第4の応用例を示す第2のイメージ図である。より詳細には、図11(a)は、2本の直線が表示された状態の電子機器100を示すイメージ図である。図11(b)は、ユーザが2本の指を用いて2本の直線の端点の近傍に定規120Xを表示させた状態の電子機器100を示すイメージ図である。図11(c)は、2本の直線の端点と定規の辺とが接した状態の電子機器100を示すイメージ図である。図11(d)は、ユーザによって定規が1本の直線の端点に接した状態で回転した状態の電子機器100を示すイメージ図である。
図3におけるS122およびS124、図5におけるS222およびS224において、CPU110は、図11(a)に示すように、タッチパネル120に2本の直線を表示させる。図3におけるS116、図5におけるS216において、CPU110は、図11(b)に示すように、タッチパネル120に定規120Xを表示させる。
このとき(図3におけるS116、図5におけるS216)、CPU110は、既に表示されている2本の直線の端点のそれぞれと2つのタッチ座標のそれぞれとの距離が所定値未満であるか否かを判断する。CPU110は、2本の直線の端点のそれぞれと2つのタッチ座標のそれぞれとの距離が所定値未満である場合、図11(c)に示すように、2本の直線の端点と定規の辺とが接するように定規を移動させる。
図11(d)に示すように、CPU110は、2つのタッチ座標が変更されると、1本の直線の端点と定規の辺とが接した状態で、定規を移動させることが好ましい。より詳細には、CPU110は、2つのタッチ座標の軌跡に基づいて、動きが小さいタッチ座標側の直線の端点と定規の辺との接点を中心にして定規を回転させてもよい。あるいは、CPU110は、2つのタッチ座標の軌跡を取得しなくても、図11(b)および図11(c)の動作を繰り返してもよい、すなわち、定規120Xを逐次表示し直してもよい。
このような構成によって、ユーザは、図10(c)、図10(d)、図11(c)、図11(d)の状態において、図1(d)および図4(e)と同様に、定規120Xに沿った直線を描くことができる。すなわち、ユーザは、既に表示されている直線の端点を通る直線120Yを描くことができる。図10(c)、図10(d)、図11(c)、図11(d)の状態において、第2の応用例を利用することも有益である。
<定規の応用例>
実施の形態1〜2および応用例1〜4においては、直線定規モードが選択されている場合について説明した。つまり、2つのタッチ座標に基づいて直線定規120Xが表示され、当該直線定規の辺に沿って直線120Yが表示される場合について説明した。しかしながら、表示される定規は、直線定規に限らない。たとえば、三角定規が表示されてもよいし、分度器が表示されてもよい。ただし、この場合には、2つのタッチ座標の相対位置(2つのタッチ座標を結ぶ線の傾き)と、それぞれの定規の傾き(定規の所定の辺と水平との間の角度)との関係が予め定められている必要がある。
以下、三角定規モードが選択された場合について説明する。図12は、定規の応用例に係る電子機器100を示すイメージ図である。より詳細には、図12(a)は、ユーザがスタイラスペン200を用いてタッチパネル120に文字を手書き入力した状態の電子機器100を示すイメージ図である。図12(b)は、ユーザがスタイラスペン200を用いて三角定規ボタン120Cにタッチした状態の電子機器100を示すイメージ図である。図12(c)は、ユーザが1本の指でタッチパネル120にタッチした状態の電子機器100を示すイメージ図である。図12(d)は、ユーザが2本の指でタッチパネル120にタッチした状態の電子機器100を示すイメージ図である。図12(e)は、ユーザが表示された三角定規120Zの辺の近傍でスタイラスペン200をスライドさせた状態の電子機器100を示すイメージ図である。
図12(a)を参照して、電子機器100は、タッチパネル120を介して、ユーザから手書き命令を受け付ける。タッチパネル120は、スタイラスペン200とタッチパネル120との接触位置(タッチ座標)の軌跡に対応する直線や曲線を描画する。たとえば、ユーザは、スタイラスペン200を用いてタッチパネル120に手描き文字を書くことができる。
本実施の形態においては、タッチパネル120は、直線定規モードに移行するための直線定規ボタン120Aと、第1の三角定規モードに移行するための第1の三角定規ボタン120Bと、第2の三角定規モードに移行するための第2の三角定規ボタン120Cと、分度器モードに移行するための分度器ボタン120Dとを、選択可能に表示する。
図12(b)を参照して、電子機器100は、タッチパネル120を介して、ユーザから三角定規モードへの移行命令を受け付ける。より詳細には、電子機器100は、タッチパネル120を介してユーザが三角定規ボタン120Cを押下したことを検知することによって、三角定規モードへと移行する。
図12(c)を参照して、電子機器100は、第1のタッチ座標を検出したか否かを判断する。電子機器100は、第1のタッチ座標を検出した場合、第1のタッチ座標に基づいて、タッチパネル120に三角定規120Zを表示させる。具体的には、電子機器100は、1つのタッチ座標の中心が定規の中心(重心)に一致するように、タッチパネル120に、三角定規の斜辺が水平になるように、三角定規120Zを表示させる。
なお、本実施の形態においては、最初にタッチした時に表示される三角定規について、三角定規の直角部分が下側に表示されているが、上側に直角部分が表示されても構わない。その表示向きについて、どちら向きに表示するかの設定はユーザが設定可能であることが好ましい。
図12(d)を参照して、電子機器100は、第2のタッチ座標を検出したか否かを判断する。電子機器100は、第2のタッチ座標を検出した場合、2つのタッチ座標に基づいて、タッチパネル120に定規120Xを表示させる。具体的には、電子機器100は、2つのタッチ座標の中心が定規の中心(重心)に一致するように、かつ、三角定規の斜辺と2つのタッチ座標を結ぶ線とが平行するあるいは一致するように、タッチパネル120に三角定規120Zを表示させる。
図12(e)を参照して、電子機器100は、第3のタッチ座標を検出したか否かを判断する。電子機器100は、第3のタッチ座標を検出した場合、当該第3のタッチ座標の軌跡に基づいて、表示されている三角定規120Zの斜辺に沿って直線120Yを表示する。
<定規モード切替の応用例>
実施の形態1〜2および応用例1〜4においては、タッチパネル120が、その上部に、直線定規モードに移行するための直線定規ボタン120Aと、第1の三角定規モードに移行するための第1の三角定規ボタン120Bと、第2の三角定規モードに移行するための第2の三角定規ボタン120Cと、分度器モードに移行するための分度器ボタン120Dとを、選択可能に表示するものであった。
しかしながら、たとえば、電子機器100は、定規モードへの移行命令を受け付けるために、以下のようなユーザインターフェイスを有していてもよい。図13は、定規モードへの移行命令を受け付けるためのユーザインターフェイスを示すイメージ図である。
より詳細には、図13(a)は、通常の手描き命令を受け付けるための画面を示すイメージ図である。図13(b)は、描画ツールの選択命令を受け付けるための画面を示すイメージ図である。図13(c)は、三角定規モードを示すイメージ図である。図13(d)は、ユーザが表示された三角定規120Zの斜辺の近傍でスタイラスペン200をスライドさせた状態の電子機器100を示すイメージ図である。
図13(a)を参照して、電子機器100のCPU110は、タッチパネル120に背景としてノートの画像を表示する。CPU110は、タッチパネル120を介して、ユーザから手書き命令を受け付ける。タッチパネル120は、ノートの画像の上に、スタイラスペン200とタッチパネル120との接触位置(タッチ座標)の軌跡に対応する直線や曲線を描画する。たとえば、ユーザは、スタイラスペン200を用いてタッチパネル120が表示するノート上に手描き文字を書くことができる。本応用例においては、CPU110は、タッチパネル120の上部にタブ121を表示する。
CPU110は、タッチパネル120を介して、ユーザから描画ツールの選択モードへの移行命令を受け付ける。本応用例においては、CPU110は、タッチパネル120を介して、ユーザの指あるいはスタイラスペン200がタッチパネル120に接触したままで下方へスライドしたことを検知すると、選択モードへ移行する。あるいは、CPU110は、タッチパネル120を介して、ユーザの指あるいはスタイラスペン200がタブ121の近傍にタッチしたことを検知すると、選択モードへ移行する。
図13(b)を参照して、選択モードにおいては、CPU110は、タッチパネル120に、三角定規122と新規ページ123とペン124とを選択可能に表示させる(三角定規122と新規ページ123とペン124とが上方からスライドインしてくる。)。電子機器100は、三角定規122と新規ページ123とペン124とが机上に載置されているように表示することが好ましい。あるいは、電子機器100は、三角定規122と新規ページ123とペン124とが引き出しの中に載置されているように表示することが好ましい。以下では、ユーザが、三角定規122にタッチしたものとする。
図13(c)を参照して、CPU110は、三角定規122と新規ページ123とペン124とを非表示にする(三角定規122と新規ページ123とペン124とが上方へスライドアウトする。)。CPU110は、タッチパネル120に三角定規120Zを表示させる。CPU110は、タッチパネル120を介して、タッチ座標を検出したか否かを判断する。CPU110は、1点のタッチ座標を検出し、そのタッチ座標が三角定規120Z内と判断した場合は、移動命令として受け付ける。電子機器100は、当該タッチ座標の軌跡に基づいて三角定規120Zの表示位置を移動させる。CPU110は、2点のタッチ座標を検出し、2点のタッチ座標が三角定規120Z内と判断した場合は、移動命令あるいは回転命令として受け付ける。電子機器100は、2点のタッチ座標の軌跡に基づいて、三角定規120Zの表示位置を移動または回転させる。
図13(d)を参照して、CPU110は、タッチパネル120を介して、別のタッチ座標を検出したか否かを判断する。CPU110は、別のタッチ座標を検出した場合、当該別の検出座標が三角定規120Z内に位置しないと判断した場合は、手書き命令として受け付ける。電子機器100は、当該別のタッチ座標の軌跡に基づいて、タッチパネル120に、表示されている三角定規120Zの斜辺に沿って直線を表示させる。
また、図13(c)、図13(d)は下記の方法であっても構わない。タッチパネルへの入力を静電容量方式と電磁誘導方式の両方で認識可能な表示装置で、指のタッチ位置は静電容量により認識し、電磁誘導方式のペンによりペンのタッチ位置を認識可能であれば、2本目のタッチが指であると認識された場合は、2本の指での操作が2本の指を両方同じ方向に動かした時、三角定規の移動命令として認識し、三角定規を移動させ、1本の指を中心としてもう1本の指を回す操作をした時、回転命令として認識し、三角定規を回転させても構わない。また、2本目のタッチがペンであると認識された場合は、ペンのタッチ座標の軌跡に基づいて、表示されている三角定規の斜辺に沿って直線を表示させても構わない。
上記の静電容量方式と電磁誘導方式とを兼ね備えていなくても、表示装置にタッチした画像をスキャン可能なように画像スキャンする機能を備えていれば、指とペンをタッチした面積や形状により判断し、指とペンを区別しても構わない。また、上記方式だけでなく、タッチした面積が分かれば、例えばデジタル抵抗膜方式のように、X軸とY軸の電極をマトリックス状に配置構成し、タッチ部分と面積が認識可能なものであればそれでも構わない。
<その他の応用例>
本発明は、システム或いは装置にプログラムを供給することによって達成される場合にも適用できることはいうまでもない。そして、本発明を達成するためのソフトウェアによって表されるプログラムを格納した外部の記憶媒体141(メモリ130)を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU)が外部の記憶媒体141(メモリ130)に格納されたプログラムコードを読出し実行することによっても、本発明の効果を享受することが可能となる。
この場合、外部の記憶媒体141(メモリ130)から読出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した外部の記憶媒体141(メモリ130)は本発明を構成することになる。
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
さらに、外部の記憶媒体141(メモリ130)から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わる他の記憶媒体に書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。