以下、本発明の実施の形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成のすべてが本発明の課題を解決するために必須の構成要件であるとは限らない。
図1に、本発明の一実施形態に係る情報処理装置の構成例のブロック図を示す。
図2に、図1の情報処理装置をユーザーが利用するイメージの一例を模式的に示す。なお、図2では、本実施形態における情報処理装置に適用される表示装置が、ヘッドマウントディスプレイ装置(Head Mounted Display:以下、HMD)である例を示すが、本実施形態に係る表示装置がHMDに限定されるものではない。
図1に示すように、本実施形態における情報処理装置10は、情報入力装置20と、表示装置30とを備え、有線又は無線の信号伝送路22を介して情報入力装置20及び表示装置30が接続されている。情報入力装置20には、ユーザーによる操作に対応した操作情報が入力される。表示装置30は、情報入力装置20に入力された操作情報に対応した画像を表示することで、該操作情報を反映した結果を表示する。
情報入力装置20は、入力装置100と、処理装置200とを備える。入力装置100は、操作面を有する。この操作面における操作領域内の座標位置は、表示装置30による表示領域の座標位置に1対1で対応付けられる。また、入力装置100は、操作面における操作体の接触位置及び操作面に対して所定以上の圧力が加えられたプレス状態か非プレス状態(操作面に対して所定以上の圧力が加えられていない状態)かを検出する。以下、操作体が、操作するユーザー自身の指として説明する。この場合、入力装置100は、静電容量式のタッチパッドや抵抗膜式のタッチパネルを備えることができる。処理装置200は、入力装置100が備える操作面に対する指の操作に対応した処理を実行する。
このような構成において、処理装置200は、操作面における指の接触位置及び該操作面に対して所定以上の圧力が加えられたか否かに基づいて、いわゆるポインティング操作、クリック操作、長クリック操作、ドラッグ操作、フリック操作を判別する。処理装置200は、これらの操作を判別し、判別した操作に対応した処理を実行する。この処理装置200の処理結果に対応した画像が、表示装置30に表示される。
ユーザー24は、図2に示すように、HMDにより実現される表示装置30を頭部に装着する。HMDは、公知の構成を有するため、HMDについての詳細な説明は省略する。表示装置30と情報入力装置20とは、例えば有線の信号伝送路22により接続される。情報入力装置20においてユーザー24によって情報が入力されたとき、その入力情報に対応した画像が、HMDの表示画面に表示される。即ち、操作面と表示画面とが分離して設けられる。ユーザー24は、HMDの表示画面を見ることになるため、情報入力装置20の操作面を見ながら操作することができない。
しかしながら、本実施形態では、ユーザー24の指が入力装置100の操作面に接触状態のとき、HMDの表示領域内における該接触位置に対応した表示位置にポインターを表示することで、ユーザー24に指の位置を教えることができる。また、ユーザー24は、指により入力装置100の操作面に圧力を加えることにより、表示領域内の接触位置に対応した表示位置における確定指示を行うことができる。これにより、情報入力装置20では、操作面への指の接触と確定指示とを区別して情報の入力が受け付けられる。これにより、ユーザー24は、自身の操作元を見ることなく、多彩な情報の入力ができるようになる。
〔情報入力装置〕
以下、本実施形態における情報処理装置10の情報入力装置20を構成する入力装置100及び処理装置200について、詳細に説明する。
〔入力装置〕
図3(A)、図3(B)に、図1の入力装置100の構成例の機能ブロック図を示す。図3(A)は、本実施形態において説明する入力装置の構成例を表す。図3(B)は、図3(A)の一部の機能を外部に設けた場合の入力装置の構成例を表す。図3(A)及び図3(B)において、図1と同様の部分には同一符号を付し、適宜説明を省略する。
情報入力装置20を構成する入力装置100は、図3(A)に示すように、位置検出部110と、プレス検出部120とを備える。また、入力装置100は、図3(B)に示すように位置検出部110を備え、図3(A)のプレス検出部120の機能が入力装置100の外部に設けられていてもよい。以下では、入力装置100が、図3(A)の構成を有するものとして説明する。
位置検出部110は、操作面における指の接触位置を検出し、該接触位置に対応した位置情報を処理装置200に出力する。このような位置検出部110の機能は、例えば上記した静電容量式のタッチパッドにより実現される。静電容量式のタッチパッドでは、操作面に指が接触することによる静電容量の変化により接触位置が検出される。なお、位置検出部110の機能は、例えば上記した抵抗膜式のタッチパネルにより実現されてもよい。抵抗膜式のタッチパネルでは、圧力が加えられたフレキシブルな操作面が凹むことにより上部の電極と下部の電極が接触することにより位置が検出される。そのため、抵抗膜式のタッチパネルにおいて指の圧力により上部の電極と下部の電極が接触する状態が、静電容量式のタッチパッドにおいて操作面に指が接触した状態に対応する。
プレス検出部120は、指により入力装置100の操作面に圧力を加えられたプレス状態か非プレス状態かを検出し、プレス状態か非プレス状態かを示すプレス情報を処理装置200に出力する。このようなプレス検出部120の機能は、例えば次のような構成により実現される。
図4(A)に、図1の入力装置100の操作面を上から見た模式図を示す。図4(B)に、図1の入力装置100の背面から見た模式図を示す。
図5に、図1の入力装置100の操作面の説明図を示す。図5は、入力装置100の操作面と図1の表示装置30の表示画面との対応関係を表す。
図4(A)に示すように、入力装置100は、操作領域ORが矩形形状である操作面ARを有するタッチパッド102を備え、ユーザーは、操作面AR内の任意の位置に指26を接触させて、表示装置30の表示画面(表示領域)32内の対応する位置を指定することができる。そのため、図5に示すように、タッチパッド102の操作面ARの操作領域OR内の座標位置が、表示装置30による表示画面32内の座標位置に1対1で対応付けられる。なお、操作領域ORが、操作面ARの全面に設けられる構成であってもよい。例えば、ユーザーが指26により指定したタッチパッド102の操作領域OR(原点は左上隅)内の座標位置P1(x1,y1)は、表示画面32(原点は左上隅)内の座標位置P2(X1,Y1)に1対1で対応する。タッチパッド102の操作面ARの操作領域ORの横幅をwx、縦幅をwy、表示画面32の横幅をWX、縦幅をWYとすると、次のような関係が成り立つ。
x1/wx=X1/WX ・・・(1)
y1/wy=Y1/WY ・・・(2)
このような入力装置100は、操作面ARにおける接触位置に対応した絶対位置座標を位置情報として出力する。処理装置200は、この位置情報を用いて、操作面ARにおいてユーザーが指26で指定した座標位置P1に対応した表示装置30の表示画面32内の座標位置P2に、位置特定マークとしてのポインターを表示する処理を行う。
ところで、図5において、表示画面32内に、アイコンであるオブジェクトOBJ1〜OBJ4が表示されている。オブジェクトOBJ1は、カメラ撮影機能を実現するアプリケーションを起動するためのアイコンである。オブジェクトOBJ2は、ブラウザーを起動するためのアイコンである。オブジェクトOBJ3は、録音された音声メッセージを再生するアプリケーション、又は記録されたテキストメッセージを表示するアプリケーションを起動するためのアイコンである。オブジェクトOBJ4は、電話機能を実現するアプリケーションを起動するためのアイコンである。オブジェクトOBJ1〜OBJ4は、それぞれポインターで位置を合わせ、例えばクリック操作することで、対応するアプリケーションが起動される。或いは、オブジェクトOBJ1〜OBJ4は、それぞれポインターで位置を合わせ、例えばドラッグ操作することで、対応するアイコンの表示位置が移動される。
入力装置100は、タッチパッド102と底面との間に空間が設けられており、図4(B)に示すようにタッチパッド102の四隅付近にクッション材104が配置され、タッチパッド102はクッション材104により支持される構造を有している。また、この空間内には、押下スイッチ(広義には、スイッチ)106が配置され、タッチパッド102の操作面ARに圧力が加えられることにより、タッチパッド102の操作面ARの背面側に配置された押下スイッチ106の頭部が押圧される構造を有している。押下スイッチ106のオン状態又はオフ状態に対応した情報が、上記したプレス情報として処理装置200に出力される。
図6(A)、図6(B)に、図4(B)のA−A´線に沿った断面構造を模式的に示す。図6(A)は、ユーザーが指26を操作面ARに接触させない状態を模式的に表す。図6(B)は、ユーザーが指26を操作面ARに接触させ、操作面ARに圧力を加えた状態を模式的に表す。なお、図6(A)、図6(B)において、図4(A)、図4(B)と同様の部分には同一符号を付し、適宜説明を省略する。
図6(A)に示すように、入力装置100は、操作面ARを有するタッチパッド102と、表面にタッチパッド102が配置される可動体108と、可動体108の背面側に配置された押下スイッチ106とを備える。そして、タッチパッド102の操作面ARに圧力が加えられることにより押下スイッチ106の押下が可能に構成され、押下スイッチ106の押下状態に応じてプレス情報が出力される。更に、入力装置100は、プレス状態のとき可動体108の位置を押下スイッチ106の所定の押下位置に移動させ、非プレス状態のとき可動体108の位置を初期位置(所定の位置)に戻す1又は複数のクッション材104を備える。
なお、本実施形態では、押下スイッチ106は、非押下状態によりオフ状態となる初期位置と、押下状態によりオン状態となる押下位置との差が微小なスイッチである。また、本実施形態では、押下スイッチ106の頭部が、入力装置100に設けられた空間を構成する底面に押下されるように押下スイッチ106が配置される。
こうすることで、指26がタッチパッド102の操作面ARに非接触状態のとき、可動体108及びタッチパッド102は、図6(A)に示す初期位置となる。そして、指26がタッチパッド102の操作面ARに接触状態となって、更に圧力を加えると、例えばクッション材104が収縮して、可動体108及びタッチパッド102が沈み込み、可動体108の背面に設けられた押下スイッチ106が押圧される。
本実施形態における入力装置100の構成は、図6(A)及び図6(B)で説明した構成に限定されるものではない。タッチパッド102の端面側にスイッチを設けるようにしてもよく、タッチパッド120の可動がスイッチの切り換えに反映される構成であればよい。即ち、入力装置100は、操作面ARを有するタッチパッド102と、タッチパッド102の可動を検出するように配置されたスイッチとを含んで構成され、操作面ARに圧力が加えられることにより該スイッチが切り換えられ、該スイッチの切り換え状態に応じてプレス状態又は非プレス状態を検出する。このとき、入力装置100は、プレス状態のときタッチパット102の可動の位置をスイッチの切り換え位置に移動させ、非プレス状態のときタッチパット102の可動の位置を所定の位置に戻す1又は複数のクッション材104を備えることができる。
以上のように、本実施形態における入力装置100は、操作面ARにおける指の接触位置を検出する位置検出部110と、操作面ARに所定上の圧力を加えられたプレス状態か非プレス状態かを検出するプレス検出部120とを備える。そして、この入力装置100は、位置検出部110及びプレス検出部120のそれぞれが互いに独立して検出対象を検出する構成を有することができる。
ユーザーによるタッチパッド102へのプレス状態か非プレス状態かは、プレス情報を受け付けた処理装置200が、表示装置30に対する表示を変更することでユーザーに認識させることができる。
図7(A)、図7(B)に、ポインターの表示例を示す。図7(A)は、非プレス状態におけるポインターの表示例を表す。図7(B)は、プレス状態におけるポインターの表示例を表す。
処理装置200は、入力装置100からのプレス情報に基づいて、非プレス状態で指26が操作面ARに接触状態のときに表示画面32に表示するポインターPT1と、プレス状態で該接触状態のときに表示画面32に表示するポインターPT2とを異ならせる。処理装置200は、例えば、ポインターPT1はポインターPT2より小さく表示画面32に表示する処理を行う。以下、ポインターPT1の表示をタッチ表示と表記し、ポインターPT2の表示をプレス表示と表記する。なお、ポインターPT1とポインターPT2とのサイズを変更するのではなく、まったく異なるマークを表示させるようにしてもよい。
また、処理装置200は、図5の操作面ARの操作領域ORの面積(wx×wy)に対する操作面ARにおけるユーザーの指26の接触面積(指の面積φ9mm程度)R1の比が、表示画面32の面積(WX×WY)に対するポインターの表示面積R2より大きくなるように、ポインターを表示させることが望ましい。こうすることで、操作面ARにおいて指26で接触させる面積よりも、表示画面32では小さく表示させることができるので、ユーザーは、所望のオブジェクト等に容易にポインターの位置を重ねることができるようになる。
R1/(wx×wy)>R2/(WX×WY) ・・・(3)
〔処理装置〕
処理装置200は、上記した入力装置100が有するタッチパッド102の操作面ARに対するポインティング操作、クリック操作、長クリック操作、ドラッグ操作、フリック操作を判別する。処理装置200は、非プレス状態において指26が操作面ARに接触した位置であるタッチ座標によりポインティング操作の判別を行う。また、処理装置200は、非プレス状態からプレス状態に移行後にタッチ座標が移動せず、且つ、所定時間以下で非プレス状態に移行したときにクリック操作であると判別する。また、処理装置200は、非プレス状態からプレス状態に移行後にタッチ座標が移動せず、且つ、所定時間以上経過したときに長クリック操作であると判別する。また、処理装置200は、非プレス状態からプレス状態に移行後にタッチ座標が移動してから非プレス状態に移行したときにドラッグ操作であると判別する。なお、処理装置200は、長クリック操作の後、プレス状態のままタッチ座標が変化した場合にも、ドラッグ操作であると判別する。更に、処理装置200は、非プレス状態からプレス状態に移行後にタッチ座標が素早く移動してから非プレス状態に移行したときにフリック操作であると判別する。以上のように操作を判別した処理装置200は、判別した操作に対応した処理を行い、表示装置30の表示画面32に処理結果を反映させる。
<ポインティング操作>
本実施形態におけるポインティング操作は、操作領域ORにおけるユーザーの指26の接触位置に対応したポインターを表示装置30の表示画面32に表示し、表示画面32に配置されるオブジェクトにターゲットを合わせる操作である。
図8(A)、図8(B)、図8(C)、図8(D)に、本実施形態におけるポインティング操作の説明図を示す。図8(A)〜図8(D)のそれぞれは、入力装置100に対するユーザーの操作状態と、この操作状態に対応した表示装置30の表示画面32とを対応付けて表す。なお、図8(A)〜図8(D)において、タッチパッド102を簡略化して図示しており、図6(A)、図6(B)、図7(A)、図7(B)と同様の部分には同一符号を付し、適宜説明を省略する。
図8(A)に示すように、入力装置100において、タッチパッド102の操作面にユーザーの指26が接触していない状態では、入力装置100は、この状態に対応した位置情報を処理装置200に対して出力する。また、入力装置100は、操作面が非プレス状態であることを示すプレス情報を処理装置200に対して出力する。処理装置200は、表示装置30の表示画面32にポインターを非表示とする処理を行う。
図8(B)に示すように、入力装置100において、タッチパッド102の操作面にユーザーの指26が軽く接触した状態では、入力装置100は、指26の接触位置に対応した位置情報を処理装置200に対して出力する。また、入力装置100は、操作面が非プレス状態であることを示すプレス情報を処理装置200に対して出力する。処理装置200は、表示装置30の表示画面32における、操作面の接触位置に対応した表示位置に、ポインターPTをタッチ表示で表示する処理を行う。このとき、処理装置200は、表示画面32内においてポインターPTと重なるオブジェクト又は背景画像を透過させてポインターPTを表示する処理を行う。本実施形態では、ユーザーは操作元に目を向けることなく、表示領域内でポインターPTを表示させる。これにより、ユーザーがポインターPTを表示させた位置に元から存在したオブジェクトや背景画像を認識できるようになる。そのため、ユーザーは、いきなり表示されたポインターPTに重なるオブジェクト等を確認する操作等が不要となり、ユーザーの操作性をより一層向上させることができるようになる。
続いて、図8(C)に示すように、入力装置100においてタッチパッド102の操作面に指26が軽く接触した状態で水平移動させると、入力装置100は、指26の移動経路上の複数の接触位置のそれぞれに対応した位置情報を処理装置200に対して出力する。また、入力装置100は、指26を水平移動させる間、操作面が非プレス状態であることを示すプレス情報を処理装置200に対して出力する。処理装置200は、表示装置30の表示画面32に、操作面のそれぞれの接触位置に対応した表示位置にポインターPTをタッチ表示で表示する処理を行う。これにより、表示画面32内をポインターPTが移動するように表示される。
その後、図8(D)に示すように、入力装置100においてタッチパッド102の操作面から指26を離すと、入力装置100は、指26が操作面に非接触である状態に対応した位置情報を処理装置200に対して出力する。また、入力装置100は、操作面が非プレス状態であることを示すプレス情報を処理装置200に対して出力する。処理装置200は、表示装置30の表示画面32にポインターを非表示とする処理を行う。
このように処理装置200は、ポインティング操作に対応するポインティング処理として、操作領域における指26の接触位置に対応した表示装置30の表示画面32内の表示位置にポインターを表示する処理を行う。
以上のように、処理装置200は、指26が操作面に接触状態のとき、接触位置に対応した表示画面32内における表示位置にポインターを表示すると共に、指26が操作面に非接触状態のとき、表示画面32内におけるポインターを非表示にする処理を行う。これにより、タッチパッド102に指26が接触している間のみ、タッチパッド102の操作領域の接触位置に対応した表示装置30の表示画面32にポインターが表示される。
<クリック操作>
本実施形態におけるクリック操作は、ユーザーの指26により操作面に圧力を加えることにより押下スイッチ106を押下してオン状態とし、操作領域における指26の接触位置を維持したまま短時間で押下スイッチ106のオン状態を解除する操作である。
図9(A)、図9(B)、図9(C)、図10(A)、図10(B)に、本実施形態におけるクリック操作の説明図を示す。図9(A)〜図9(C)、図10(A)、図10(B)のそれぞれは、入力装置100に対するユーザーの操作状態と、この操作状態に対応した表示装置30の表示画面32とを対応付けて表す。なお、図9(A)〜図9(C)、図10(A)、図10(B)において、図8(A)〜図8(D)と同様の部分には同一符号を付し、適宜説明を省略する。
図9(A)に示すように、入力装置100において、タッチパッド102の操作面にユーザーの指26が接触していない状態では、入力装置100は、この状態に対応した位置情報を処理装置200に対して出力する。また、入力装置100は、操作面が非プレス状態であることを示すプレス情報を処理装置200に対して出力する。処理装置200は、表示装置30の表示画面32にポインターを非表示とする処理を行う。
図9(B)に示すように、入力装置100において、タッチパッド102の操作面にユーザーの指26が軽く接触した状態では、入力装置100は、指26の接触位置に対応した位置情報を処理装置200に対して出力する。また、入力装置100は、操作面が非プレス状態であることを示すプレス情報を処理装置200に対して出力する。処理装置200は、表示装置30の表示画面32における、操作領域の接触位置に対応した表示位置に、ポインターPTをタッチ表示で表示する処理を行う。このとき、処理装置200は、表示画面32内においてポインターPTと重なるオブジェクト又は背景画像を透過させてポインターPTを表示する処理を行う。
続いて、図9(C)に示すように、入力装置100において指26によりタッチパッド102の操作面に圧力を加えると、タッチパッド102が押下位置に下がり、タッチパッド102の背面側に配置された押下スイッチ106が押圧される。入力装置100は、操作領域内の指26の接触位置に対応した位置情報を処理装置200に対して出力する。また、入力装置100は、操作面がプレス状態であることを示すプレス情報を処理装置200に対して出力する。処理装置200は、表示装置30の表示画面32に、操作領域の接触位置に対応した表示位置にポインターPTをプレス表示で表示する処理を行う。これにより、ポインターPTが、タッチ表示からプレス表示に変化する。
その後、図10(A)に示すように、入力装置100において操作領域における指26の接触位置を変化させないまま接触させた状態で、操作面に加える圧力を弱めると、押下スイッチ106の位置が初期位置に戻る。このとき、入力装置100は、操作領域における指26の接触位置に対応した位置情報を処理装置200に対して出力する。また、入力装置100は、操作面が非プレス状態であることを示すプレス情報を処理装置200に対して出力する。処理装置200は、表示装置30の表示画面32に、操作領域の接触位置に対応した表示位置にポインターPTをタッチ表示で表示する処理を行う。これにより、ポインターPTが、プレス表示からタッチ表示に変化する。
そして、図10(B)に示すように、入力装置100においてタッチパッド102の操作面から指26を離すと、入力装置100は、指26が操作面に非接触である状態に対応した位置情報を処理装置200に対して出力する。また、入力装置100は、操作面が非プレス状態であることを示すプレス情報を処理装置200に対して出力する。処理装置200は、表示装置30の表示画面32にポインターを非表示とする処理を行う。
ここで、処理装置200は、クリック操作に対応するクリック処理として、プレス表示されたときのポインターPTの表示位置にあるオブジェクトに対応したアプリケーションを起動する処理や、該表示位置にあるスピンボタンによる数値表示を更新する処理を行う。
以上のように、押下スイッチ106の押下が従来のタッチパッドの操作面への指の接触に相当し、押下スイッチ106の押下の解除が従来のタッチパッドの操作面から指を離す操作に相当する。
即ち、処理装置200は、非プレス状態において指26が操作面に接触状態のとき、表示画面32内における接触位置に対応した表示位置にポインターを表示する。更に処理装置200は、プレス状態のとき、表示画面32内における接触位置に対応した表示位置においてクリック操作に対応したクリック処理を実行することができる。
<長クリック操作>
本実施形態における長クリック操作は、押下スイッチ106を押下し、操作領域内の指26の接触位置を所定の長クリック判定時間以上維持したまま、その接触位置で押下スイッチ106の押下を解除する操作である。このような長クリック操作は、上記のクリック操作と同様であるため、詳細な説明を省略する。
この場合、押下スイッチ106の押下が従来のタッチパッドの操作面への指の接触に相当し、押下スイッチ106の押下の解除が従来のタッチパッドの操作面から指を離す操作に相当する。
即ち、処理装置200は、プレス状態において、所定の範囲内で接触位置が長クリック判定期間以上維持された後、非プレス状態に移行したとき、接触位置に対応した表示領域内における表示位置において長クリック操作に対応した長クリック処理を実行する。
<ドラッグ操作>
本実施形態におけるドラッグ操作は、押下スイッチ106を押下し、操作面における指26の接触位置を第1の期間以上維持(固定)した後、指26の接触位置を移動させて、押下スイッチ106を押下したときと別の位置でタッチパッド102から指26を離す操作である。
図11(A)、図11(B)、図11(C)、図12(A)、図12(B)に、本実施形態におけるドラッグ操作の説明図を示す。図11(A)〜図11(C)、図12(A)、図12(B)のそれぞれは、入力装置100に対するユーザーの操作状態と、この操作状態に対応した表示装置30の表示画面32とを対応付けて表す。なお、図11(A)〜図11(C)、図12(A)、図12(B)において、図8(A)〜図8(D)と同様の部分には同一符号を付し、適宜説明を省略する。
図11(A)に示すように、入力装置100において、タッチパッド102の操作面にユーザーの指26が接触していない状態では、入力装置100は、この状態に対応した位置情報を処理装置200に対して出力する。また、入力装置100は、操作面が非プレス状態であることを示すプレス情報を処理装置200に対して出力する。処理装置200は、表示装置30の表示画面32にポインターを非表示とする処理を行う。
図11(B)に示すように、入力装置100において、タッチパッド102の操作面にユーザーの指26が軽く接触した状態では、入力装置100は、指26の接触位置に対応した位置情報を処理装置200に対して出力する。また、入力装置100は、操作面が非プレス状態であることを示すプレス情報を処理装置200に対して出力する。処理装置200は、表示装置30の表示画面32における、操作領域の接触位置に対応した表示位置に、ポインターPTをタッチ表示で表示する処理を行う。このとき、処理装置200は、表示画面32内においてポインターPTと重なるオブジェクト又は背景画像を透過させてポインターPTを表示する処理を行う。ここで、ポインターPTの表示位置が、ドラッグ操作可能なオブジェクトの位置にあるものとする。
続いて、図11(C)に示すように、入力装置100において指26によりタッチパッド102の操作面に圧力を加えると、タッチパッド102が押下位置に下がり、タッチパッド102の背面側に配置された押下スイッチ106が押圧される。入力装置100は、操作領域内の指26の接触位置に対応した位置情報を処理装置200に対して出力する。また、入力装置100は、操作面がプレス状態であることを示すプレス情報を処理装置200に対して出力する。処理装置200は、表示装置30の表示画面32における、操作領域の接触位置に対応した表示位置に、ポインターPTをプレス表示で表示する処理を行う。これにより、ポインターPTが、タッチ表示からプレス表示に変化する。図11(B)及び図11(C)では、ポインターPTが透過してタッチ表示されるため、ポインターPTがオブジェクトOBJ3(図5参照)と重なることを認識しながらユーザーは操作することができる。
ここで、操作面に圧力を加えながら、指26の接触位置を第1の期間以上維持したまま待つ。これにより、ポインターPTの位置にあるオブジェクトがドラッグされた状態に表示され、ドラッグ操作に対応したドラッグ処理が開始される。
その後、図12(A)に示すように、入力装置100において操作面に圧力を加えながら、操作領域における指26の接触位置を水平移動させる。このとき、入力装置100は、指26の移動経路上の複数の接触位置のそれぞれに対応した位置情報を処理装置200に対して出力する。また、入力装置100は、指26を水平移動させる間、操作面がプレス状態であることを示すプレス情報を処理装置200に対して出力する。処理装置200は、表示装置30の表示画面32における、操作領域のそれぞれの接触位置に対応した表示位置に、ポインターPTをプレス表示で表示し、ドラッグしたオブジェクトをドラッグした状態でポインターPTに追従させて表示する処理を行う。これにより、表示画面32内をポインターPTがプレス表示のまま移動し、対応するオブジェクトのドラッグ処理が行われる。
そして、図12(B)に示すように、入力装置100においてタッチパッド102の操作面から指26を離すと、入力装置100は、指26が操作面に非接触である状態に対応した位置情報を処理装置200に対して出力する。また、入力装置100は、操作面が非プレス状態であることを示すプレス情報を処理装置200に対して出力する。処理装置200は、表示装置30の表示画面32にポインターを非表示とする処理を行う。この操作面に対して非接触となった接触位置に対応した表示画面32内における表示位置において、ドラッグして移動させたオブジェクトを通常表示に戻し、ドラッグ処理を終了する。
ここで、処理装置200は、ドラッグ操作に対応するドラッグ処理として、ポインターPTの位置にあるオブジェクト(アイコン等)を移動させる処理や、画面全体をスクロースさせる処理を行う。
以上のように、押下スイッチ106の押下が従来のタッチパッドの操作面への指の接触に相当し、押下スイッチ106の押下の解除が従来のタッチパッドの操作面から指を離す操作に相当する。
即ち、指26が操作面においてプレス状態に移行した第1の接触位置からプレス状態のまま第2の接触位置に移動され、該第2の接触位置において非プレス状態に移行したものとする。このとき、処理装置200は、第1の接触位置及び第2の接触位置により決まるドラッグ操作に対応したドラッグ処理を行う。このドラッグ処理は、プレス状態において接触位置が第1の接触位置に対応した表示画面32内における表示位置のオブジェクトに対して行われる。そして、処理装置200は、プレス状態から非プレス状態に移行するときの接触位置である第2の接触位置に対応した表示画面32内における表示位置においてドラッグ処理を終了する。
<フリック操作>
本実施形態におけるフリック操作は、押下スイッチ106を押下し、短時間で操作面における指26の接触位置を移動させて、押下スイッチ106を押下した位置とは別の接触位置でタッチパッド102から指26を離す操作である。このようなフリック操作の手順は、上記のドラッグ操作の手順とほぼ同様である。具体的には、指26が操作面においてプレス状態に移行した第1の接触位置に所定期間以上維持された後、プレス状態のまま第2の接触位置に移動され、該第2の接触位置において非プレス状態に移行したものとする。このとき、処理装置200は、第1の接触位置及び第2の接触位置により決まるフリック操作に対応したフリック処理を行う。より具体的には、ドラッグ処理とフリック処理は、第1の接触位置から第2の接触位置への単位時間当たりの移動量に基づいて区別されて実行される。そのため、フリック操作については詳細な説明を省略する。
ここで、処理装置200は、フリック操作に対応するフリック処理として、指の移動方向に画面をスクロールする処理や、画面を切り替える処理を行う。
この場合、押下スイッチ106の押下が従来のタッチパッドの操作面への指の接触に相当し、押下スイッチ106の押下の解除が従来のタッチパッドの操作面から指を離す操作に相当する。
即ち、第1の接触位置から第2の接触位置への単位時間当たりの移動量が所与の閾値以上のとき、処理装置200は、フリック処理を行う。一方、この単位時間当たりの移動量が上記の閾値未満のとき、処理装置200は、ドラッグ処理を行う。
次に、上記した処理装置200の機能を実現する構成例について説明する。
図13に、図1の処理装置200の構成例の機能ブロック図を示す。図13において、図1と同様の部分には同一符号を付し、適宜説明を省略する。
処理装置200は、接触判定部210と、位置検出処理部220と、プレス判定部230と、操作判定部240と、処理実行部260と、表示処理部280とを備える。操作判定部240は、クリック操作判定部242と、長クリック操作判定部244と、ドラッグ操作判定部246と、フリック操作判定部248とを備える。処理実行部260は、クリック処理部262と、長クリック処理部264と、ドラッグ処理部266と、フリック処理部268とを備える。
接触判定部210は、入力装置100からの位置情報に基づいて、入力装置100の操作面に指26が接触状態か、非接触状態かを判定する。例えば、非接触状態のときに入力装置100が出力する位置情報を予め決めておくことで、接触判定部210は、入力装置100からの位置情報に基づいて、接触状態か非接触状態かを判定することができる。位置検出処理部220は、入力装置100からの位置情報に基づいて、操作領域内の指26の接触位置の座標を検出する処理を行う。
プレス判定部230は、入力装置100からのプレス情報に基づいて、操作面に所定以上の圧力が加えられてタッチパッド102が押下位置に下がり、押下スイッチ106を押下したか否かを判定する。押下スイッチ106は、押下されたときオン状態となり、押下スイッチ106の押下が解除されたときオフ状態となる。プレス判定部230は、押下スイッチ106がオン状態であるオフ状態であるか否かによってプレス状態か否かを判定し、押下スイッチ106がオン状態のときプレス状態と判定し、押下スイッチ106がオフ状態のとき非プレス状態と判定する。
操作判定部240は、入力装置100からの位置情報及びプレス情報に基づいて、操作面に対する指26の操作が、上記したポインティング操作、クリック操作、長クリック操作、ドラッグ操作、及びフリック操作のうち、どの操作であるかを判定する。
具体的には、クリック操作判定部242は、図9(A)〜図9(C)、図10(A)及び図10(B)で説明したクリック操作であるか否かを、入力装置100からの位置情報及びプレス情報に基づいて判定する。長クリック操作判定部244は、上記した長クリック操作であるか否かを、入力装置100からの位置情報及びプレス情報に基づいて判定する。ドラッグ操作判定部246は、図11(A)〜図11(C)、図12(A)及び図12(B)で説明したドラッグ操作であるか否かを、入力装置100からの位置情報及びプレス情報に基づいて判定する。フリック操作判定部248は、上記したフリック操作であるか否かを、入力装置100からの位置情報及びプレス情報に基づいて判定する。
処理実行部260は、操作判定部240によって判定された操作に対応した処理を実行する。具体的には、クリック処理部262は、ユーザーの指26による操作がクリック操作判定部242によってクリック操作であると判定されたとき、クリック操作に対応した上記のクリック処理を実行する。長クリック処理部264は、ユーザーの指26による操作が長クリック操作判定部244によって長クリック操作であると判定されたとき、長クリック操作に対応した上記の長クリック処理を実行する。ドラッグ処理部266は、ユーザーの指26による操作がドラッグ操作判定部246によってドラッグ操作であると判定されたとき、ドラッグ操作に対応した上記のドラッグ処理を実行する。フリック処理部268は、ユーザーの指26による操作がフリック操作判定部248によってフリック操作であると判定されたとき、フリック操作に対応した上記のフリック処理を実行する。
表示処理部280は、処理実行部260を構成する各部の処理結果に対応した画像を生成し、該画像を表示装置30に表示する処理を行う。また、ポインティング操作について、処理装置200は、例えば位置検出処理部220によって検出された操作領域内の接触位置の座標に対応した表示画面32の表示位置の座標を求め、表示処理部280において該表示位置にポインターを表示する処理を行う。
図13の各部の機能を有する処理装置200は、例えば、以下のような構成により実現される。
図14に、図13の処理装置200のハードウェア構成例を示す。なお、図14において、図1、図6(A)又は図6(B)と同様の部分には同一符号を付し、適宜説明を省略する。
情報入力装置20は、入力装置100及び処理装置200の他に、バッテリー320と、USB(Universal Serial Bus)ソケット322と、表示LED(Light Emitting Diode)324とを備えることができる。バッテリー320は、入力装置100と処理装置200の各部に電源を供給する。なお、バッテリー320は、情報入力装置20の外部に設けられていてもよい。USBソケット322には、USBケーブルが接続され、処理装置200の制御により外部との間でデータの送受信が行われるようになっている。表示LED324は、入力装置100又は処理装置200の動作状態に対応した表示を行う。
処理装置200は、中央演算処理装置(Central Processing Unit:以下、CPU)302と、読み出し専用メモリー(Read Only Memory:以下、ROM)304と、ランダムアクセスメモリー(Random Access Memory:以下、RAM)とを備える。更に、処理装置200は、インターフェース(InterFace:以下、I/F)回路306と、バス308とを備える。CPU302、ROM304、RAM306、及びI/F回路306は、バス308を介して接続される。
CPU300は、ROM302又はRAM304に記憶されたプログラム又はデータを読み出し、読み出したプログラム又はデータに対応した処理を実行する。ROM302は、CPU300が実行するプログラムを記憶する。RAM304には、CPU300が実行するプログラムが記憶されたり、CPU300の作業領域が確保されたりする。I/F回路306は、入力装置100からの位置情報及びプレス情報を受信するためのインターフェース処理を行う。また、I/F回路306は、表示装置30に表示する表示画像に対応した画像データや表示制御信号を、表示装置30に送信するためのインターフェース処理を行う。
このような構成において、CPU300は、ROM302又はRAM304から読み出したプログラム等に対応した処理を実行することで、図13の各部の機能をソフトウェア処理により実現することができる。例えば、CPU300は、I/F回路306を介して受信した入力装置100からの位置情報に基づく操作領域内の指の接触位置の座標の検出をソフトウェア処理で実現することができる。或いは、CPU300は、I/F回路306を介して受信した入力装置100からのプレス情報に基づいて、操作面がプレス状態か非プレス状態かの検出をソフトウェア処理で実現することができる。また、CPU300は、各部の処理結果に対応した画像データ及び表示制御信号をI/F回路306を介して表示装置30に対して出力する。こうすることで、表示装置30の表示画面の所望の位置にポインターを表示したり、操作面に対する上記の操作に対応した処理結果を表示画面に表示したりすることができる。
図15及び図16に、処理装置200の処理例のフロー図を示す。例えば図14のROM302又はRAM304には、図15及び図16の各ステップを実行するためのプログラムが予め記憶されており、CPU300が該プログラムを読み出して、プログラムに対応した処理を実行する。
まず、処理装置200は、接触判定部210において、入力装置100の操作面に、操作するユーザーの指が操作面に接触したか否かを繰り返し判定する(ステップS100:N)。ステップS100において、指が操作面に接触したと判定されたとき(ステップS100:Y)、処理装置200は、位置検出処理部220において、操作領域内の指の接触位置の座標を検出する処理を行う(ステップS102)。
続いて、処理装置200は、位置検出処理部220において、ステップS102で検出された操作領域内の指の接触位置の座標を(x1,y1)を、表示装置30の表示画面の座標(X1,Y1)に変換する(ステップS104)。ステップS104では、操作領域の縦横比と表示画面の縦横比とが異なるため、例えば次式により表示画面の座標が変換される。
X1=x1×(WX/wx) ・・・(4)
Y1=y1×(WY/wy) ・・・(5)
式(4)及び式(5)において、操作領域の横幅をwx、縦幅をwy、表示画面の横幅をWX、縦幅をWYとしている。
その後、処理装置200は、表示処理部280において、ステップS104で変換された座標にポインターをタッチ表示で表示する(ステップS106)。
次に、処理装置200は、プレス判定部において、入力装置100における操作面の背面側に配置された押下スイッチ106が押下されたか否かを判定する(ステップS108)。ステップS108において押下スイッチ106が押下されていないと判定されたとき(ステップS108:N)、処理装置200は、ステップS102に戻る。一方、ステップS108において押下スイッチ106が押下されたと判定されたとき(ステップS108:Y)、処理装置200は、表示処理部280において、表示画面上のポインターをプレス表示に変更する(ステップS110)。
引き続き、処理装置200は、位置検出処理部220において、操作領域内の指の接触位置の座標を検出する処理を行う(ステップS112)。そして、処理装置200は、ステップS112で検出された操作領域内の指の接触位置の座標を(x1,y1)を、表示装置30の表示画面の座標(X1,Y1)に変換する(ステップS114)。ステップS114は、ステップS104と同様である。
その後、処理装置200は、表示処理部280において、ステップS114で変換された座標にポインターをプレス表示で表示を継続する(ステップS116)。
次に、処理装置200は、操作判定部240において、操作領域内の指の接触位置に対応した座標が前回の検出時の座標と比較して変化したか否かを判定する(ステップS118)。ステップS118において、座標が変化したと判定されたとき(ステップS118:Y)、処理装置200は、操作判定部240において、単位時間当たりの座標の変化量(接触位置の移動量)が所与の閾値以上であるか否かを判定する(ステップS120)。ステップS120は、例えばドラッグ操作判定部246又はフリック操作判定部248において行われる。
ステップS120において、単位時間当たりの座標の変化量が閾値以上であると判定されたとき(ステップS120:Y)、処理装置200は、フリック処理部268において、フリック操作に対応する上記のフリック処理を行う(ステップS122)。ステップS122では、操作領域における移動前後の接触位置(座標)(例えば接触位置の移動距離、移動方向等)に応じたフリック処理が行われる。
ステップS120において、単位時間当たりの座標の変化量が閾値未満であると判定されたとき(ステップS120:N)、処理装置200は、ドラッグ処理部266において、ドラッグ操作に対応する上記のドラッグ処理を行う(ステップS124)。ステップS124では、操作領域における移動前後の接触位置(座標)(例えば接触位置の移動距離、移動方向等)に応じたドラッグ処理が行われる。
ステップS118において、座標が変化していないと判定されたとき(ステップS118:N)、処理装置200は、操作判定部240において、押下スイッチ106の押下から所定時間以上経過したか否かを判定する(ステップS126)。ステップS126は、例えばクリック操作判定部242又は長クリック操作判定部244において行われる。
ステップS126において、押下スイッチ106の押下から所定時間以上経過したと判定されたとき(ステップS126:Y)、処理装置200は、長クリック操作判定部244において、長クリック操作中か否かを判定する(ステップS128)。ステップS128において長クリック操作中ではないと判定されたとき(ステップS128:N)、処理装置200は、長クリック処理部264において、長クリック操作に対応する上記の長クリック処理を開始し(ステップS140)、ステップS112に戻る。これにより、長クリック処理を継続する。
ステップS126において、所定の時間以上経過していないと判定されたとき(ステップS126:N)、処理装置200は、クリック操作判定部242において、押下スイッチ106の押下が解除されたか否かを判定する(ステップS130)。また、ステップS128において長クリック操作中であると判定されたとき(ステップS128:Y)、処理装置200は、クリック操作判定部242において、押下スイッチ106の押下が解除されたか否かを判定する(ステップS130)。
ステップS130において、押下スイッチ106の押下が解除されたと判定されたとき(ステップS130:Y)、処理装置200は、クリック操作判定部242において、長クリック操作中か否かを判定する(ステップS132)。
ステップS132において長クリック操作中であると判定されたとき(ステップS132:Y)、処理装置200は、長クリック処理部264において行われる長クリック処理を終了させる(ステップS134)。ステップS132において長クリック操作中ではないと判定されたとき(ステップS132:N)、処理装置200は、クリック処理部262において、クリック操作に対応する上記のクリック処理を行う(ステップS136)。
ステップS130において、押下スイッチ106の押下が解除されていないと判定されたとき(ステップS130:N)、処理装置200は、ステップS112に戻って処理を継続する。
ステップS134又はステップS136に続いて、処理装置200は、表示処理部280において、表示画面上のポインターをタッチ表示に変更する(ステップS138)。
ステップS122、ステップS124、又はステップS138に続いて、処理装置200は、接触判定部210において、入力装置100の操作面において指が非接触となったか否かを判定する(ステップS142)。
ステップS142において、操作面において指が非接触になっていないと判定されたとき(ステップS142:N)、処理装置200は、ステップS102に戻って処理を継続する。
一方、ステップS142において、操作面において指が非接触になったと判定されたとき(ステップS142:Y)、処理装置200は、表示処理部280において、表示画面上のポインターを非表示とする処理を行う(ステップS144)。これにより、処理装置200は、一連の処理を終了する(エンド)。
図17に、図16のステップS124におけるドラッグ処理の処理例のフロー図を示す。例えば図14のROM302又はRAM304には、図17の各ステップを実行するためのプログラムが予め記憶されており、CPU300が該プログラムを読み出して、プログラムに対応した処理を実行する。
処理装置200は、位置検出処理部220において、操作領域内の指の接触位置の座標を検出する処理を行う(ステップS150)。次に、処理装置200は、位置検出処理部220において、ステップS150で検出された操作領域内の指の接触位置の座標を(x1,y1)を、表示装置30の表示画面の座標(X1,Y1)に変換する(ステップS152)。ステップS152は、ステップS104と同様である。
その後、処理装置200は、表示処理部280において、ステップS152で変換された座標にポインターをプレス表示で表示を継続する(ステップS154)。
続いて、処理装置200は、ドラッグ処理部266において、ステップS152で変換された座標に応じて、ドラッグ処理を行う(ステップS156)。例えば、該座標にオブジェクトが存在するとき、該オブジェクトをドラッグしながら表示する処理を行う。
そして、処理装置200は、ドラッグ操作判定部246において、押下スイッチ106の押下が解除されたか否かを判定する(ステップS158)。
押下スイッチ106の押下が解除されていないと判定されたとき(ステップS158:N)、処理装置200は、ステップS150に戻り処理を継続する。一方、ステップS158において、押下スイッチ106の押下が解除されたと判定されたとき(ステップS158:Y)、処理装置200は、ドラッグ処理を終了する(エンド)。
図18に、図16のステップS122におけるフリック処理の処理例のフロー図を示す。例えば図14のROM302又はRAM304には、図18の各ステップを実行するためのプログラムが予め記憶されており、CPU300が該プログラムを読み出して、プログラムに対応した処理を実行する。
処理装置200は、位置検出処理部220において、操作領域内の指の接触位置の座標を検出する処理を行う(ステップS160)。次に、処理装置200は、位置検出処理部220において、ステップS160で検出された操作領域内の指の接触位置の座標を(x1,y1)を、表示装置30の表示画面の座標(X1,Y1)に変換する(ステップS162)。ステップS162は、ステップS104と同様である。
その後、処理装置200は、表示処理部280において、ステップS162で変換された座標にポインターをプレス表示で表示を継続する(ステップS164)。
続いて、処理装置200は、フリック処理部268において、ステップS162で変換された座標に応じて、フリック処理を行う(ステップS166)。例えば、指の移動方向に画面をスクロールする処理や、画面を切り替える処理を行う。
そして、処理装置200は、フリック操作判定部248において、押下スイッチ106の押下が解除されたか否かを判定する(ステップS168)。
押下スイッチ106の押下が解除されていないと判定されたとき(ステップS168:N)、処理装置200は、ステップS160に戻り処理を継続する。一方、ステップS168において、押下スイッチ106の押下が解除されたと判定されたとき(ステップS168:Y)、処理装置200は、フリック処理を終了する(エンド)。
なお、処理装置200は、ASIC(Application SpecificIntegrated Circuit)や専用のハードウェアによって構成されてもよい。この場合、処理装置200は、ハードウェアによって構成された各部において、図15〜図18の各ステップに対応した処理が実行される。
以上説明したように、本実施形態によれば、入力装置100の操作面に操作体が接触状態のとき、表示装置30の表示画面32内における接触位置に対応した表示位置にポインターを表示することができる。これにより、従来のように操作面への接触がクリック操作として扱われなくなり、操作するユーザーに、クリック操作の前に操作体の位置を教えることができるようになる。また、操作体により入力装置100の操作面に圧力を加えることにより、表示画面内の接触位置に対応した表示位置における確定指示を行うようにしている。これにより、操作面への操作体の接触と確定指示とを区別して情報の入力を受け付けることができ、操作面と表示画面とが分離された場合でも、ユーザーは、自身の操作元を見ることなく、多彩な情報の入力ができるようになる。
〔その他〕
本実施形態では、表示装置30がHMDであり、その用途上、操作元に目を向けることが困難な表示装置を例に説明したが、本実施形態に係る表示装置がHMDに限定されるものではない。
図19に、図1の情報処理装置をユーザーが利用するイメージの他の例を模式的に示す。図19では、本実施形態における情報処理装置に適用される表示装置が、平面型ディスプレイ装置である例を表す。なお、図19において、図2と同様の部分には同一符号を付し、適宜説明を省略する。
図19に示す情報処理装置が図2に示す情報処理装置と異なる点は、表示装置30が表示装置30aとして平面型ディスプレイ装置に置き換えられた点と、表示装置30aと情報入力装置20aとの間が無線の信号伝送路を介して接続される点である。平面型ディスプレイ装置として、液晶ディスプレイ装置、プラズマディスプレイ装置、有機エレクトロルミネッセンス(Electro-Luminescence:EL)ディスプレイ装置等がある。情報入力装置20aは、無線の信号伝送路を介して表示装置30aに対して表示制御が可能な点を除いて、情報入力装置20と同様の処理を行うことができる。
この場合、情報入力装置20aには、ユーザー24による操作に対応した操作情報が入力される。表示装置30aは、情報入力装置20aに入力された操作情報に対応した画像を表示することで、該操作情報を反映した結果を表示する。
以上のように、図19のような構成においても、ユーザー24は、操作元に目を向けることなく、操作面に対するポインティング操作等による多彩な情報入力が可能となる。
なお、本発明は上記の実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
(1)上記の実施形態では、本発明に係る入力装置として、図4(A)、図4(B)、図6(A)、図6(B)に示す構成を備えるものを例に説明したが、本発明は入力装置の構成に限定されるものではない。
(2)上記の実施形態では、本発明に係る表示装置として、図2又は図19に示すものを例に説明したが、本発明は表示装置の態様に限定されるものではない。本発明に係る表示装置として、プロジェクター等の他の態様の表示装置を採用してもよい。
(3)上記の実施形態では、ポインティング操作、クリック操作、長クリック操作、ドラッグ操作、及びフリック操作の各操作に対応した処理例を説明したが、本発明は、上記の各操作に対応した処理の内容に限定されるものではない。
(4)上記の実施形態では、入力装置の操作面(操作領域)に対する操作として、ポインティング操作、クリック操作、長クリック操作、ドラッグ操作、及びフリック操作を例に説明したが、本発明は、これらの操作に限定されるものではない。
(5)上記の実施形態では、操作面(操作領域)に対する操作体として、ユーザーの指を例に説明したが、本発明は操作体の種類に限定されるものではない。
(6)なお、本発明は、種々の態様で実現することが可能である。例えば、本発明に係る操作面を有する入力装置を用いた情報入力方法や情報処理方法、これらの方法を実現するコンピュータープログラム、そのコンピュータープログラムを記録した記録媒体等の形態で実現することができる。