説明

表示機器

【課題】利用者に対して利便性の高い操作方法を提供すること。
【解決手段】携帯電話端末(表示機器)1は、表示物を立体的に表示する表示部32aと、表示物が表示される立体視空間において第1の物体および第2の物体を検出する検出部40と、上記の立体視空間において第1の物体と第2の物体の間に表示物が位置することが検出されたときに、表示物を変化させる制御部22とを備える。表示物の変化には、例えば、移動、回転、変形、消失等が含まれる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表示機器に関する。
【背景技術】
【0002】
携帯電話端末等の表示部を備える表示機器には、画像等を立体表示することができるものがある(例えば、特許文献1参照)。立体表示は、両眼の視差を利用して実現される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2011−95547号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
立体表示は利用者にとって親しみやすい表示形式であるにも関わらず、従来の表示機器では、立体表示は視聴目的でしか利用されず、操作の利便性を向上させるためには利用されてこなかった。本発明は、利用者に対して利便性の高い操作方法を提供することができる表示機器を提供することを目的とする。
【課題を解決するための手段】
【0005】
本発明に係る表示機器は、表示物を立体的に表示する表示部と、前記表示物が表示される立体視空間において第1の物体および第2の物体を検出する検出部と、前記立体視空間において前記第1の物体と前記第2の物体の間に前記表示物が位置することが検出されたときに、前記表示物を変化させる制御部とを備える。
【0006】
また、本発明に係る表示機器は、他の態様において、表示物を立体的に表示する表示部と、前記表示物が表示される立体視空間において第1の物体および第2の物体を検出する検出部と、前記立体視空間において前記第1の物体または前記第2の物体の少なくとも一方が前記表示物と接触する位置にあることが検出されたときに、前記表示物を変化させる制御部とを備える。
【0007】
また、本発明に係る表示機器は、他の態様において、表示物を立体的に表示する表示部と、前記表示物が表示される立体視空間において第1の物体と第2の物体とが前記表示物を挟む位置にあるときに、前記表示物を変化させる制御部とを備える。
【0008】
また、本発明に係る表示機器は、他の態様において、表示物を表示面に表示する表示部と、前記表示面において第1の物体および第2の物体を検出する検出部と、前記表示面において前記第1の物体と前記第2の物体の間に前記表示物が位置することが検出されたときに、前記表示物を変化させる制御部とを備える。
【0009】
また、本発明に係る表示機器は、他の態様において、表示物を表示面に表示する表示部と、前記表示面において第1の物体および第2の物体を検出する検出部と、前記表示面において前記第1の物体または前記第2の物体の少なくとも一方が前記表示物と接触する位置にあることが検出されたときに、前記表示物を変化させる制御部とを備える。
【発明の効果】
【0010】
本発明は、利用者に対して利便性の高い操作方法を提供することができるという効果を奏する。
【図面の簡単な説明】
【0011】
【図1】図1は、第1の実施例に係る携帯電話端末の外観を示す正面図である。
【図2】図2は、第1の実施例に係る携帯電話端末の機能的な構成を示すブロック図である。
【図3】図3は、第1の実施例における3次元オブジェクトに対する操作の検出について説明するための図である。
【図4】図4は、選択検出処理の処理手順を示すフローチャートである。
【図5】図5は、操作検出処理の処理手順を示すフローチャートである。
【図6】図6は、3次元オブジェクトに対する操作の検出の他の例について説明するための図である。
【図7】図7は、3次元オブジェクトへの接触を選択の条件とする場合の選択検出処理の処理手順を示すフローチャートである。
【図8】図8は、第2の実施例における3次元オブジェクトに対する操作の検出について説明するための図である。
【図9】図9は、選択検出処理の処理手順を示すフローチャートである。
【図10】図10は、3次元オブジェクトに対する操作の検出の他の例について説明するための図である。
【図11】図11は、3次元オブジェクトへの接触を選択の条件とする場合の選択検出処理の処理手順を示すフローチャートである。
【図12】図12は、第3の実施例における3次元オブジェクトに対する操作の検出について説明するための図である。
【図13】図13は、第3の実施例における3次元オブジェクトに対する操作の検出について説明するための図である。
【図14】図14は、選択検出処理の処理手順を示すフローチャートである。
【図15】図15は、操作検出処理の処理手順を示すフローチャートである。
【図16】図16は、3次元オブジェクトに対する操作の検出の他の例について説明するための図である。
【図17】図17は、3次元オブジェクトへの接触を選択の条件とする場合の選択検出処理の処理手順を示すフローチャートである。
【図18】図18は、第4の実施例に係る携帯電話端末の外観を示す正面図である。
【図19】図19は、第4の実施例に係る携帯電話端末の機能的な構成を示すブロック図である。
【図20】図20は、第4の実施例における3次元オブジェクトに対する操作の検出について説明するための図である。
【図21】図21は、第4の実施例に係る携帯電話端末の変形例を示す図である。
【発明を実施するための形態】
【0012】
以下、本発明につき図面を参照しつつ詳細に説明する。なお、以下の説明により本発明が限定されるものではない。また、以下の説明における構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。以下においては、表示機器の一例として携帯電話端末について説明するが、本発明の適用対象は携帯電話端末に限定されるものではなく、例えば、PHS(Personal Handyphone System)、PDA、ポータブルナビゲーション装置、ノートパソコン、ゲーム機等に対しても本発明は適用できる。
【実施例1】
【0013】
まず、図1および図2を参照しながら、第1の実施例に係る携帯電話端末(表示機器)1の構成について説明する。図1は、携帯電話端末1の外観を示す正面図である。図2は、携帯電話端末1の機能的な構成を示すブロック図である。
【0014】
図1および図2に示すように、携帯電話端末1は、操作部13と、マイク15と、レシーバ16と、制御部22と、記憶部24と、通信部26と、音声処理部30と、タッチパネル32と、撮影部40と、撮影部42とを有する。操作部13、マイク15、レシーバ16、タッチパネル32および撮影部40は、携帯電話端末1の正面に一部が露出する。
【0015】
操作部13は、物理的なボタンを有し、押下されたボタンに対応する信号を制御部22へ出力する。なお、図1に示す例では、操作部13はボタンを1つしか有していないが、操作部13は複数のボタンを有していてもよい。
【0016】
マイク15は、外部の音声を取得する。レシーバ16は、通話時に通話相手の音声を出力する。音声処理部30は、マイク15から入力される音声をデジタル信号化して制御部22へ出力する。また、音声処理部30は、制御部22から入力されるデジタル信号を復号してレシーバ16へ出力する。
【0017】
通信部26は、アンテナ26aを有し、基地局によって割り当てられるチャネルを介して、基地局との間にCDMA(Code Division Multiple Access)方式などによる無線信号回線を確立する。通信部26は、基地局との間に確立された無線信号回線を通じて、他の装置との間で電話通信および情報通信を行う。
【0018】
タッチパネル32は、文字、図形、画像等の各種の情報を表示するとともに、表示されたアイコン、ボタン、文字入力領域等の所定領域に対する入力操作を検出する。タッチパネル32は、表示部32aと、タッチセンサ32bとを重畳して構成される。
【0019】
表示部32aは、液晶ディスプレイ(Liquid Crystal Display)や有機EL(Organic Electro−Luminescence)パネル等の表示装置を備え、制御部22から入力される制御信号に従って各種の情報を表示する。タッチセンサ32bは、タッチパネル32の表面に対して行われる入力操作を検出し、検出した入力操作に応じた信号を制御部22へ出力する。タッチセンサ32bが各種操作を検出する方式は、静電容量式、抵抗膜式、感圧式等の任意の方式でよい。
【0020】
また、タッチパネル32は、3次元オブジェクトを表示できる。3次元オブジェクトは、視差を利用して立体的に見えるように作成された画像や形状等の表示物である。なお、3次元オブジェクトを表示する方式は、眼鏡等の器具を用いて立体視を実現する方式であってもよいし、裸眼で立体視を実現する方式であってもよい。
【0021】
撮影部40および42は、CCD(Charge Coupled Device Image Sensor)やCMOS(Complementary Metal Oxide Semiconductor)等のイメージセンサを用いて電子的に画像を撮影する。そして、撮影部40および42は、撮影した画像を信号に変換して制御部22へ出力する。撮影部40および42は、3次元オブジェクトが立体的に表示される空間(以下、「立体視空間」という)において3次元オブジェクトを選択して操作する物体を検出する検出部としても機能する。
【0022】
なお、撮影部40および42は、立体視空間内のどこに指等の物体が位置していてもその物体を撮影することができるように画角や配置が設定されていることが好ましい。また、撮影部40および42は、可視光の画像を取得する装置であってもよいし、赤外線等の不可視光の画像を取得する装置であってもよい。
【0023】
制御部22は、演算手段であるCPU(Central Processing Unit)と、記憶手段であるメモリとを備え、これらのハードウェア資源を用いてプログラムを実行することによって各種の機能を実現する。具体的には、制御部22は、記憶部24に記憶されているプログラムやデータを読み出してメモリに展開し、メモリに展開されたプログラムに含まれる命令をCPUに実行させる。そして、制御部22は、CPUによる命令の実行結果に応じて、メモリおよび記憶部24に対してデータの読み書きを行ったり、通信部26や表示部32a等の動作を制御したりする。CPUが命令を実行するに際しては、メモリに展開されているデータやタッチセンサ32b等から入力される信号がパラメータや判定条件の一部として利用される。
【0024】
記憶部24は、フラッシュメモリ等の不揮発性を有する記憶装置からなり、各種のプログラムやデータを記憶する。記憶部24に記憶されるプログラムには、制御プログラム24aが含まれる。なお、記憶部24は、メモリカード等の可搬の記憶媒体と、記憶媒体に対して読み書きを行う読み書き装置との組み合わせによって構成されてもよい。この場合、制御プログラム24aは、記憶媒体に記憶されていてもよい。また、制御プログラム24aは、通信部26による無線通信によってサーバ装置等の他の装置から取得することとしてもよい。
【0025】
制御プログラム24aは、携帯電話端末1を稼働させるための各種制御に関する機能を提供する。制御プログラム24aが提供する機能には、タッチパネル32での3次元オブジェクトの表示を制御する機能や、タッチパネル32によって表示される3次元オブジェクトに対する利用者の操作を検出する機能が含まれる。
【0026】
次に、図3を参照しながら、3次元オブジェクトに対する操作の検出について説明する。図3は、3次元オブジェクトに対する操作の検出について説明するための図である。図3に示すステップS11では、タッチパネル32によって、立体視空間50中に、3次元オブジェクトOB1が立体的に表示されている。3次元オブジェクトOB1は、例えば、ボールを模したオブジェクトである。
【0027】
ここで、利用者が3次元オブジェクトOB1に対して何らかの操作を行いたいものとする。3次元オブジェクトOB1に対して何らかの操作を行うには、まず、操作の対象として3次元オブジェクトOB1を選択する必要がある。3次元オブジェクトOB1を選択するために、利用者は、ステップS12に示すように、指F1と指F2の間に3次元オブジェクトOB1が位置するように指F1および指F2を移動させ、その状態を所定時間以上維持する。
【0028】
携帯電話端末1は、立体視空間内で2つの物体が検出され、かつ、それらの2つの物体の間に3次元オブジェクトOB1が位置する状態が所定時間以上継続した場合、3次元オブジェクトOB1が選択されたと判定し、3次元オブジェクトOB1を選択状態にする。そして、携帯電話端末1は、3次元オブジェクトOB1の表示態様を変更する等して、3次元オブジェクトOB1が選択状態になったことを利用者に通知する。
【0029】
2つの物体の間に3次元オブジェクトOB1が位置しているかの判定は、立体視空間における2つの物体の現実の位置と、立体視空間における3次元オブジェクトOB1の計算上の位置とに基づいて行われる。
【0030】
2つの物体の位置は、撮影部40および42が撮影する画像に基づいて算出される。2つの物体の位置の算出は、予め登録されているそれぞれの物体の大きさと画像中の物体の大きさおよび位置とに基づいて行ってもよい。また、2つの物体の位置の算出は、撮影部40が撮影した画像における物体の大きさおよび位置と撮影部42が撮影した画像における物体の大きさおよび位置とを照合して行ってもよい。なお、指等の物体の検出は、周知の技術を用いて実現してよい。また、指が物体の場合、指のつま先の位置を物体の位置として処理することが好ましい。
【0031】
立体視空間における3次元オブジェクトOB1の計算上の位置は、タッチパネル32の表示面上での3次元オブジェクトOB1の位置と、立体視空間内での3次元オブジェクトOB1の浮き上がり量とに基づいて算出される。立体視空間内での3次元オブジェクトOB1の浮き上がり量は、例えば、3次元オブジェクトOB1を立体的に表示するために用いられる右目用の画像と左目用の画像における3次元オブジェクトOB1の位置の差から算出される。
【0032】
また、選択状態になったことの通知は、例えば、3次元オブジェクトOB1の全体の色を変更することや、3次元オブジェクトOB1の表面のうち、2つの物体を結ぶ直線と交わる位置の近傍の色を変更することによって実現される。このような視覚的な通知に代えて、あるいは、このような視覚的な通知に加えて、音や振動による通知を行ってもよい。
【0033】
このように、携帯電話端末1は、指等の現実の物体の間に3次元オブジェクトOB1が位置する状態が所定時間以上継続して検出された場合に、3次元オブジェクトOB1が選択されたと判定する。指の間に3次元オブジェクトOB1を挟むように指を配置するという操作は、人間が現実のオブジェクトを選択するためにオブジェクトを摘む操作と類似している。そのため、かかる操作は、3次元オブジェクトを選択するための操作として、直感的で分かりやすい。また、状態が所定時間以上継続して検出されることを条件として付加することにより、他の3次元オブジェクトを選択するために指を移動させる過程で、意図しない3次元オブジェクトが選択されることを抑止できる。
【0034】
なお、3次元オブジェクトを操作するために用いられる物体は、指に限定されず、手、足、棒、虫ピン等であってもよい。また、携帯電話端末1は、2つの物体がタッチパネル32の表示面と平行でない場合、すなわち、2つの物体を結ぶ直線がタッチパネル32の表示面または表示面と水平な平面と交わる場合にも上記の条件に基づいて3次元オブジェクトを選択状態にする。このように、3次元オブジェクトが選択されたか否かを立体的に判定することにより、3次元オブジェクトの形状に合わせて選択操作を行い易くなる。
【0035】
3次元オブジェクトが選択されたか否かを立体的に判定するためには、障害物が死角を作らないように、複数の撮影部を用意して異なる方向から指F1および指F2等を撮影することが望ましい。
【0036】
携帯電話端末1は、3次元オブジェクトOB1が選択状態になったと判定した後、指F1および指F2の動きに応じて、3次元オブジェクトOB1に移動、変形、消失等の変化を加える。
【0037】
次に、図4および図5を参照しながら、3次元オブジェクトの操作に関して携帯電話端末1が実行する処理手順について説明する。図4は、3次元オブジェクトの選択検出処理の処理手順を示すフローチャートである。図4に示す処理手順は、所定の操作が検出されたこと等を契機として、制御部22が制御プログラム24aを実行することによって実現される。
【0038】
図4に示すように、制御部22は、まず、ステップS101として、3次元オブジェクトを立体的に表示する。3次元オブジェクトを表示するためのデータは、予め記憶部24に記憶されていてもよいし、通信部26による無線通信によってサーバ装置等の他の装置から取得してもよい。
【0039】
続いて、制御部22は、ステップS102として、検出部、すなわち、撮影部40および42によって第1の物体および第2の物体が検出されたかを判定する。第1の物体および第2の物体は、例えば、利用者の指である。第1の物体および第2の物体が検出されない場合(ステップS102,No)、制御部22は、ステップS110として、操作終了が検出されたかを判定する。
【0040】
操作終了は、例えば、操作部13に対する所定の操作が行われた場合に検出されてもよいし、タッチパネル32に対する所定の操作が行われた場合に検出されてもよい。また、操作終了は、撮影部40または42の少なくとも一方で利用者の手による所定のジェスチャーが撮影された場合に検出されてもよい。操作終了が検出された場合(ステップS110,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS110,No)、制御部22は、ステップS102以降を再実行する。
【0041】
第1の物体および第2の物体が検出された場合(ステップS102,Yes)、制御部22は、ステップS103として、表示されている3次元オブジェクトの中から第1の物体と第2の物体との間に表示されている3次元オブジェクトを探す。該当する3次元オブジェクトがない場合(ステップS104,No)、制御部22は、ステップS110として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS110,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS110,No)、制御部22は、ステップS102以降を再実行する。
【0042】
第1の物体と第2の物体との間に表示されている3次元オブジェクトがみつかった場合(ステップS104,Yes)、制御部22は、ステップS105として、第1の物体と第2の物体との間に3次元オブジェクトが位置している時間を取得する。取得した時間が所定時間未満の場合(ステップS106,No)、制御部22は、ステップS110として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS110,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS110,No)、制御部22は、ステップS102以降を再実行する。
【0043】
取得した時間が所定時間以上の場合(ステップS106,Yes)、制御部22は、ステップS107として、第1の物体と第2の物体の距離を算出する。また、制御部22は、ステップS108として、第1の物体と第2の物体との間に表示されている3次元オブジェクトを選択状態にする。そして、制御部22は、ステップS109として、後述する操作検出処理を実行し、その中で、選択状態にある3次元オブジェクトを検出された操作に応じて変化させる。操作検出処理が終了した後、制御部22は、ステップS110として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS110,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS110,No)、制御部22は、ステップS102以降を再実行する。
【0044】
図5は、操作検出処理の処理手順を示すフローチャートである。図5に示す処理手順は、制御部22が制御プログラム24aを実行することによって実現される。
【0045】
図5に示すように、制御部22は、まず、ステップS201として、第1の物体と第2の物体の距離を算出する。そして、制御部22は、ステップS202として、操作検出処理の開始時点以降の第1の物体と第2の物体の距離がほぼ一定であるかを判定する。距離がほぼ一定とは、例えば、現時点での第1の物体と第2の物体の距離の変化量が、操作検出処理の開始時点の距離と比較して、所定の範囲(第1の物体および第2の物体が通常の速度で移動した場合の距離の最大変化量の±10%等)以内に収まっていることを意味する。また、第1の物体と第2の物体の距離が操作検出処理の開始時点以降縮まり続けている場合(第1の物体および第2の物体が3次元オブジェクトを押しつぶす方向に移動している場合)に、距離がほぼ一定であると判定してもよい。また、手振れ等の範囲内でしか両者の距離が変化していない場合に、距離がほぼ一定であると判定してもよい。
【0046】
第1の物体と第2の物体の距離がほぼ一定の場合(ステップS202,Yes)、制御部22は、ステップS203として、第1の物体および第2の物体の移動速度を算出する。続いて、制御部22は、ステップS204として、算出した移動速度が閾値以下であるかを判定する。ここで用いられる閾値は、例えば、人がものを放り投げるときの指先の移動速度である。また、閾値と比較される移動速度は、第1の物体の移動速度と第2の物体の移動速度の平均であってもよし、いずれか速い方であってもよいし、いずれか遅い方であってもよい。
【0047】
移動速度が閾値以下の場合(ステップS204,Yes)、制御部22は、ステップS205として、検出された第1の物体および第2の物体の動きに応じて3次元オブジェクトを移動させたり回転させたりする。例えば、第1の物体および第2の物体の右方向への移動が検出された場合、制御部22は、第1の物体および第2の物体の移動に合わせて3次元オブジェクトを右方向へ移動させる。また、第1の物体および第2の物体の左回りでの回転が検出された場合、制御部22は、第1の物体および第2の物体の回転に合わせて3次元オブジェクトを左回りで回転させる。また、移動と回転が同時に検出された場合、移動と回転が同時に実行される。なお、3次元オブジェクトの移動や回転に対する障害物がある場合、3次元オブジェクトが障害物に接触した時点で3次元オブジェクトの移動や回転を停止させてもよい。そして、制御部22は、ステップS201以降を再実行する。
【0048】
移動速度が閾値より速い場合(ステップS204,No)、制御部22は、ステップS206として、3次元オブジェクトを消去する。3次元オブジェクトを消去するに際して、3次元オブジェクトが第1の物体および第2の物体の移動方向へ向けて飛んでいくようにアニメーション表示してもよい。そして、制御部22は、操作検出処理を終了させる。このように、3次元オブジェクトを放り投げるように第1の物体および第2の物体が高速で移動した場合に3次元オブジェクトを消去することにより、直感的な操作によって3次元オブジェクトの消去を実現することができる。なお、第1の物体および第2の物体を高速で移動させる操作ではなく、例えば、3次元オブジェクトを握りつぶす操作に3次元オブジェクトの消去を割り当ててもよい。また、3次元オブジェクトを消去する代わりに、3次元オブジェクトを当初の配置場所に戻すこととしてもよい。
【0049】
第1の物体と第2の物体の距離がほぼ一定でない場合(ステップS202,No)、制御部22は、ステップS207として、距離が、3次元オブジェクトの選択時、すなわち、操作検出処理の開始時点よりも拡大しているかを判定する。距離が拡大している場合(ステップS207,Yes)、制御部22は、ステップS208として、3次元オブジェクトの選択状態を解除する。第1の物体と第2の物体の距離を拡大するという操作は、摘んでいる現実のオブジェクトを放す操作と類似している。そのため、かかる操作は、3次元オブジェクトの選択を解除するための操作として、直感的で分かりやすい。
【0050】
続いて、制御部22は、ステップS209として、選択状態を解除した3次元オブジェクトを重力等に従って移動させる。そして、制御部22は、操作検出処理を終了させる。ここでの移動は、例えば、3次元オブジェクトが重力に従って落下し、床やテーブルの上で停止するように表示される。3次元オブジェクトの動きを停止させる前に、3次元オブジェクトの弾性や床やテーブルの硬度に応じて3次元オブジェクトをバウンドさせてもよい。3次元オブジェクトが床やテーブルに衝突するときの衝撃の大きさを算出し、衝撃が所定の値よりも大きい場合には3次元オブジェクトを破損したように表示してもよい。また、実際の重力が働く場合よりも3次元オブジェクトをゆっくりと移動させてもよい。
【0051】
第1の物体と第2の物体の距離が3次元オブジェクトの選択時よりも縮まっている場合(ステップS207,No)、制御部22は、ステップS210として、距離に応じて3次元オブジェクトを変形させる。そして、制御部22は、ステップS201以降を再実行する。3次元オブジェクトを変形させる程度は、例えば、3次元オブジェクトに属性として設定されている弾性に応じて変更してもよい。制御部22は、ゴムボールを模した3次元オブジェクトのように属性として低い硬度を設定されているオブジェクトについては、第1の物体と第2の物体の距離が縮まるに応じて変形の度合いを高めてよい。また、制御部22は、積み木を模した3次元オブジェクトのように属性として高い硬度を設定されているオブジェクトについては、第1の物体と第2の物体の距離が縮まっても変形の度合いを小さく保ってよい。
【0052】
なお、第1の物体と第2の物体の距離が3次元オブジェクトの選択時よりも縮まっている場合に、3次元オブジェクトを変形させるのではなく縮小させてもよい。また、第1の物体と第2の物体の距離が所定の値以下になった場合に、3次元オブジェクトを破損したように表示してもよい。
【0053】
上述してきたように、第1の実施例では、指等の物体の間に3次元オブジェクトが位置する状態が所定時間以上継続した場合に3次元オブジェクトが選択されることとしたので、3次元オブジェクトの選択を直感的で分かりやすい操作により実現することができる。
【0054】
なお、図6に示すように、第1の物体と第2の物体のうち少なくとも一方が3次元オブジェクトに接触している状態が所定時間以上継続することを、3次元オブジェクトを選択する条件としてもよい。3次元オブジェクトへの接触を選択の条件とすることにより、複数の3次元オブジェクトが近接して表示されている場合に、利用者が所望の3次元オブジェクトを選択し易くなる。
【0055】
図7は、3次元オブジェクトへの接触を選択の条件とする場合の選択検出処理の処理手順を示すフローチャートである。図7に示すように、制御部22は、まず、ステップS301として、3次元オブジェクトを立体的に表示する。続いて、制御部22は、検出部によって第1の物体および第2の物体が検出されたかを判定する。第1の物体および第2の物体が検出されない場合(ステップS302,No)、制御部22は、ステップS310として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS310,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS310,No)、制御部22は、ステップS302以降を再実行する。
【0056】
第1の物体および第2の物体が検出された場合(ステップS302,Yes)、制御部22は、ステップS303として、表示されている3次元オブジェクトの中から第1の物体または第2の物体の少なくとも一方に接触している3次元オブジェクトを探す。該当する3次元オブジェクトがない場合(ステップS304,No)、制御部22は、ステップS310として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS310,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS310,No)、制御部22は、ステップS302以降を再実行する。
【0057】
第1の物体または第2の物体の少なくとも一方に接触している3次元オブジェクトがみつかった場合(ステップS304,Yes)、制御部22は、ステップS305として、第1の物体と第2の物体との間に3次元オブジェクトが位置している時間を取得する。取得した時間が所定時間未満の場合(ステップS306,No)、制御部22は、ステップS310として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS310,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS310,No)、制御部22は、ステップS302以降を再実行する。
【0058】
取得した時間が所定時間以上の場合(ステップS306,Yes)、制御部22は、ステップS307として、第1の物体と第2の物体の距離を算出する。また、制御部22は、ステップS308として、第1の物体と第2の物体との間に表示されている3次元オブジェクトを選択状態にする。そして、制御部22は、ステップS309として、上述した操作検出処理を実行し、その中で、選択状態にある3次元オブジェクトを検出された操作に応じて変化させる。操作検出処理が終了した後、制御部22は、ステップS310として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS310,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS310,No)、制御部22は、ステップS302以降を再実行する。
【実施例2】
【0059】
以下に、第2の実施例について説明する。第2の実施例に係る携帯電話端末1は、制御プログラム24aが提供する機能に基づいて実行する選択検出処理の処理手順が第1の実施例と異なるものの、ハードウェアとして見ると、第1の実施例に係る携帯電話端末1と同一の構成を有する。そこで、第2の実施例では、第1の実施例と重複する説明は省略し、主として、選択検出処理について説明する。
【0060】
まず、図8を参照しながら、3次元オブジェクトに対する操作の検出について説明する。図8は、3次元オブジェクトに対する操作の検出について説明するための図である。図8に示すステップS21では、タッチパネル32によって、立体視空間中に、3次元オブジェクトOB1が立体的に表示されている。また、3次元オブジェクトOB1を選択するために、利用者は、指F1と指F2の間に3次元オブジェクトOB1が位置するように指F1および指F2を移動させている。
【0061】
携帯電話端末1は、立体視空間内で2つの物体が検出され、かつ、それらの2つの物体の間に3次元オブジェクトOB1が位置する場合、2つの物体の距離の変化を監視する。そして、距離が所定時間以上ほぼ一定であれば、3次元オブジェクトOB1が選択されたと判定し、3次元オブジェクトOB1を選択状態にする。そして、携帯電話端末1は、3次元オブジェクトOB1の表示態様を変更する等して、3次元オブジェクトOB1が選択状態になったことを利用者に通知する。
【0062】
携帯電話端末1が2つの物体の距離の変化を監視している間、2つの物体は、3次元オブジェクトOB1を挟む位置に留まる必要はない。すなわち、利用者は、ステップS21に示したように指F1と指F2の間に3次元オブジェクトOB1が位置するように指F1および指F2を移動させた後、その状態を保つことなく、指F1および指F2を他の位置へ移動させて構わない。
【0063】
ステップS21の状態から、ステップS22に示すように、利用者が、指F1と指F2の距離D1をほぼ一定に保ったまま移動させたものとする。この場合、携帯電話端末1は、ステップS23に示すように、指F1と指F2の距離D1がほぼ一定に保たれた状態が所定時間以上継続した段階で、3次元オブジェクトOB1を選択状態にする。そして、携帯電話端末1は、3次元オブジェクトOB1を、あたかもステップS21の段階で既に選択されていたかのように、指F1および指F2の間に移動させる。ステップS21からステップS23までの指F1と指F2の動きを記憶しておき、記憶しておいて動きに合わせて3次元オブジェクトOB1を回転等させてもよい。その後、携帯電話端末1は、指F1および指F2の動きに応じて、3次元オブジェクトOB1に移動、変形、消失等の変化を加える。
【0064】
このように、2つの物体が3次元オブジェクトを挟む位置に一旦移動した後は、物体がその場に留まらなくても3次元オブジェクトを選択可能にすることにより、利用者は、3次元オブジェクトを選択した後の操作を迅速に開始することができる。
【0065】
次に、図9を参照しながら、3次元オブジェクトの操作に関して携帯電話端末1が実行する処理手順について説明する。図9は、3次元オブジェクトの選択検出処理の処理手順を示すフローチャートである。図9に示す処理手順は、所定の操作が検出されたこと等を契機として、制御部22が制御プログラム24aを実行することによって実現される。
【0066】
図9に示すように、制御部22は、まず、ステップS401として、3次元オブジェクトを立体的に表示する。続いて、制御部22は、ステップS402として、検出部、すなわち、撮影部40および42によって第1の物体および第2の物体が検出されたかを判定する。第1の物体および第2の物体が検出されない場合(ステップS402,No)、制御部22は、ステップS414として、仮選択状態の3次元オブジェクトがあれば、その3次元オブジェクトの仮選択状態を解除する。仮選択状態とは、2つの物体の間に3次元オブジェクトが表示されている状態が検出された後、2つの物体の距離がほぼ一定に保たれているかが監視されている状態である。
【0067】
そして、制御部22は、ステップS415として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS415,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS415,No)、制御部22は、ステップS402以降を再実行する。
【0068】
第1の物体および第2の物体が検出された場合(ステップS402,Yes)、制御部22は、ステップS403として、仮選択状態の3次元オブジェクトがあるか否かを判定する。仮選択状態の3次元オブジェクトがない場合(ステップS403,No)、制御部22は、ステップS404として、表示されている3次元オブジェクトの中から第1の物体と第2の物体との間に表示されている3次元オブジェクトを探す。
【0069】
該当する3次元オブジェクトがない場合(ステップS405,No)、制御部22は、ステップS415として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS415,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS415,No)、制御部22は、ステップS402以降を再実行する。
【0070】
第1の物体と第2の物体との間に表示されている3次元オブジェクトがみつかった場合(ステップS405,Yes)、制御部22は、ステップS406として、第1の物体と第2の物体との間に表示されている3次元オブジェクトを仮選択状態にする。また、制御部22は、ステップS407として、第1の物体と第2の物体の距離を算出する。
【0071】
そして、制御部22は、ステップS415として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS415,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS415,No)、制御部22は、ステップS402以降を再実行する。
【0072】
第1の物体および第2の物体が検出され、かつ、仮選択状態の3次元オブジェクトがある場合(ステップS403,Yes)、制御部22は、ステップS408として、第1の物体と第2の物体の距離を算出する。そして、制御部22は、ステップS409として、距離がほぼ一定であるかを判定する。距離がほぼ一定でない場合(ステップS409,No)、制御部22は、ステップS414として、仮選択状態の3次元オブジェクトの仮選択状態を解除する。
【0073】
そして、制御部22は、ステップS415として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS415,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS415,No)、制御部22は、ステップS402以降を再実行する。
【0074】
第1の物体と第2の物体の距離がほぼ一定の場合(ステップS409,Yes)、制御部22は、ステップS410として、距離がほぼ一定に保たれている期間が所定時間以上であるかを判定する。距離がほぼ一定に保たれている期間が所定時間未満の場合(ステップS410,No)、制御部22は、ステップS415として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS415,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS415,No)、制御部22は、ステップS402以降を再実行する。
【0075】
距離がほぼ一定に保たれている期間が所定時間以上の場合(ステップS410,Yes)、制御部22は、ステップS411として、第1の物体と第2の物体との間に表示されている3次元オブジェクトを選択状態にする。また、制御部22は、ステップS412として、第1の物体と第2の物体との間に3次元オブジェクトを移動させる。そして、制御部22は、ステップS413として、図5に示した操作検出処理を実行し、その中で、選択状態にある3次元オブジェクトを検出された操作に応じて変化させる。
【0076】
操作検出処理が終了した後、制御部22は、ステップS415として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS415,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS415,No)、制御部22は、ステップS402以降を再実行する。
【0077】
上述してきたように、第2の実施例では、指等の物体の間に3次元オブジェクトが位置した後、物体の距離が所定時間以上ほぼ一定に保たれた場合に3次元オブジェクトが選択されることとしたので、利用者は、3次元オブジェクトの選択後の操作を迅速に開始することができる。
【0078】
なお、図10に示すステップS31からステップS33のように、第1の物体と第2の物体のうち少なくとも一方が3次元オブジェクトに接触した後に第1の物体と第2の物体の距離が所定時間以上ほぼ一定に保たれることを、3次元オブジェクトを選択する条件としてもよい。3次元オブジェクトへの接触を選択の条件とすることにより、複数の3次元オブジェクトが近接して表示されている場合に、利用者が所望の3次元オブジェクトを選択し易くなる。
【0079】
図11は、3次元オブジェクトへの接触を選択の条件とする場合の選択検出処理の処理手順を示すフローチャートである。図11に示すように、制御部22は、まず、ステップS501として、3次元オブジェクトを立体的に表示する。続いて、制御部22は、ステップS502として、検出部、すなわち、撮影部40および42によって第1の物体および第2の物体が検出されたかを判定する。第1の物体および第2の物体が検出されない場合(ステップS502,No)、制御部22は、ステップS514として、仮選択状態の3次元オブジェクトがあれば、その3次元オブジェクトの仮選択状態を解除する。仮選択状態とは、2つの物体の間に3次元オブジェクトが表示されている状態が検出された後、2つの物体の距離がほぼ一定に保たれているかが監視されている状態である。
【0080】
そして、制御部22は、ステップS515として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS515,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS515,No)、制御部22は、ステップS502以降を再実行する。
【0081】
第1の物体および第2の物体が検出された場合(ステップS502,Yes)、制御部22は、ステップS503として、仮選択状態の3次元オブジェクトがあるか否かを判定する。仮選択状態の3次元オブジェクトがない場合(ステップS503,No)、制御部22は、ステップS504として、表示されている3次元オブジェクトの中から第1の物体または第2の物体の少なくとも一方に接触している3次元オブジェクトを探す。
【0082】
該当する3次元オブジェクトがない場合(ステップS505,No)、制御部22は、ステップS515として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS515,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS515,No)、制御部22は、ステップS502以降を再実行する。
【0083】
第1の物体または第2の物体の少なくとも一方に接触している3次元オブジェクトがみつかった場合(ステップS505,Yes)、制御部22は、ステップS506として、第1の物体と第2の物体との間に表示されている3次元オブジェクトを仮選択状態にする。また、制御部22は、ステップS507として、第1の物体と第2の物体の距離を算出する。
【0084】
そして、制御部22は、ステップS515として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS515,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS515,No)、制御部22は、ステップS502以降を再実行する。
【0085】
第1の物体および第2の物体が検出され、かつ、仮選択状態の3次元オブジェクトがある場合(ステップS503,Yes)、制御部22は、ステップS508として、第1の物体と第2の物体の距離を算出する。そして、制御部22は、ステップS509として、距離がほぼ一定であるかを判定する。距離がほぼ一定でない場合(ステップS509,No)、制御部22は、ステップS514として、仮選択状態の3次元オブジェクトの仮選択状態を解除する。
【0086】
そして、制御部22は、ステップS515として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS515,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS515,No)、制御部22は、ステップS502以降を再実行する。
【0087】
第1の物体と第2の物体の距離がほぼ一定の場合(ステップS509,Yes)、制御部22は、ステップS510として、距離がほぼ一定に保たれている期間が所定時間以上であるかを判定する。距離がほぼ一定に保たれている期間が所定時間未満の場合(ステップS510,No)、制御部22は、ステップS515として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS515,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS515,No)、制御部22は、ステップS502以降を再実行する。
【0088】
距離がほぼ一定に保たれている期間が所定時間以上の場合(ステップS510,Yes)、制御部22は、ステップS511として、第1の物体と第2の物体との間に表示されている3次元オブジェクトを選択状態にする。また、制御部22は、ステップS512として、第1の物体と第2の物体との間に3次元オブジェクトを移動させる。そして、制御部22は、ステップS513として、図5に示した操作検出処理を実行し、その中で、選択状態にある3次元オブジェクトを検出された操作に応じて変化させる。
【0089】
操作検出処理が終了した後、制御部22は、ステップS515として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS515,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS515,No)、制御部22は、ステップS502以降を再実行する。
【実施例3】
【0090】
以下に、第3の実施例について説明する。第3の実施例に係る携帯電話端末1は、制御プログラム24aが提供する機能に基づいて実行する選択検出処理および操作検出処理の処理手順が第1の実施例と異なるものの、ハードウェアとして見ると、第1の実施例に係る携帯電話端末1と同一の構成を有する。そこで、第3の実施例では、第1の実施例と重複する説明は省略し、主として、選択検出処理および操作検出処理について説明する。
【0091】
まず、図12および図13を参照しながら、3次元オブジェクトに対する操作の検出について説明する。図12および図13は、3次元オブジェクトに対する操作の検出について説明するための図である。図12に示すステップS41では、タッチパネル32によって、立体視空間中に、3次元オブジェクトOB1が立体的に表示されている。また、3次元オブジェクトOB1を選択するために、利用者は、指F1と指F2の間に3次元オブジェクトOB1が位置するように指F1および指F2を移動させている。
【0092】
携帯電話端末1は、立体視空間内で2つの物体が検出され、かつ、それらの2つの物体の間に3次元オブジェクトOB1が位置する場合、2つの物体の距離の変化を監視する。そして、距離が所定時間以上ほぼ一定であれば、3次元オブジェクトOB1が選択されたと判定し、3次元オブジェクトOB1を選択状態にする。そして、携帯電話端末1は、3次元オブジェクトOB1の表示態様を変更する等して、3次元オブジェクトOB1が選択状態になったことを利用者に通知する。
【0093】
携帯電話端末1が2つの物体の距離の変化を監視している間、2つの物体は、3次元オブジェクトOB1を挟む位置に留まる必要はない。すなわち、利用者は、ステップS41に示したように指F1と指F2の間に3次元オブジェクトOB1が位置するように指F1および指F2を移動させた後、その状態を保つことなく、指F1および指F2を他の位置へ移動させて構わない。
【0094】
ステップS41の状態から、ステップS42に示すように、利用者が、指F1と指F2の距離D1をほぼ一定に保ったまま移動させたものとする。この場合、携帯電話端末1は、指F1と指F2の間に3次元オブジェクトOB1が表示されていることが検出された段階、すなわち、ステップS41の段階から、指F1および指F2の動きに応じて、3次元オブジェクトOB1に移動、変形、消失等の変化を加える。そして、携帯電話端末1は、ステップS43に示すように、指F1と指F2の距離D1がほぼ一定に保たれた状態が所定時間以上継続した段階で、3次元オブジェクトOB1を選択状態にする。
【0095】
なお、図13のステップS51からステップS53に示すように、所定時間が経過する前に指F1と指F2の距離D1が離れた場合、すなわち、選択が行われなかった場合、携帯電話端末1は、それまでに加えた変化と逆の変化を3次元オブジェクトOB1に加える。その結果、3次元オブジェクトOB1は、ステップS51の段階と同じ位置に同じ状態で表示される。逆の変化を3次元オブジェクトOB1に加える速度は、それまでに3次元オブジェクトOB1に変化が加えられた速度よりも速くてもよい。すなわち、高速に逆再生しているかのように3次元オブジェクトOB1を逆変化させてもよい。
【0096】
このように、2つの物体の間に3次元オブジェクトが表示されていることが検出された段階から3次元オブジェクトに変化を加え始めることにより、利用者は、3次元オブジェクトが選択されつつあることを選択が確定する前から認識することができる。その結果、利用者は、意図した3次元オブジェクトが選択されたか否かを早期に知ることができる。なお、2つの物体の距離がほぼ一定に保たれた状態が所定時間以上継続するまでは、変化を加えられている3次元オブジェクトを通常時とも選択状態とも異なる態様(例えば、半透明)で表示することにより、利用者が3次元オブジェクトの状態を判別しやすくしてもよい。
【0097】
次に、図14および図15を参照しながら、3次元オブジェクトの操作に関して携帯電話端末1が実行する処理手順について説明する。図14は、3次元オブジェクトの選択検出処理の処理手順を示すフローチャートである。図14に示す処理手順は、所定の操作が検出されたこと等を契機として、制御部22が制御プログラム24aを実行することによって実現される。
【0098】
図14に示すように、制御部22は、まず、ステップS601として、3次元オブジェクトを立体的に表示する。続いて、制御部22は、ステップS602として、検出部、すなわち、撮影部40および42によって第1の物体および第2の物体が検出されたかを判定する。第1の物体および第2の物体が検出されない場合(ステップS602,No)、制御部22は、ステップS610として、仮選択状態の3次元オブジェクトがあれば、その3次元オブジェクトの仮選択状態を解除する。
【0099】
そして、制御部22は、ステップS611として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS611,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS611,No)、制御部22は、ステップS602以降を再実行する。
【0100】
第1の物体および第2の物体が検出された場合(ステップS602,Yes)、制御部22は、ステップS603として、仮選択状態の3次元オブジェクトがあるか否かを判定する。仮選択状態の3次元オブジェクトがない場合(ステップS603,No)、制御部22は、ステップS604として、表示されている3次元オブジェクトの中から第1の物体と第2の物体との間に表示されている3次元オブジェクトを探す。
【0101】
該当する3次元オブジェクトがない場合(ステップS605,No)、制御部22は、ステップS611として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS611,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS611,No)、制御部22は、ステップS602以降を再実行する。
【0102】
第1の物体と第2の物体との間に表示されている3次元オブジェクトがみつかった場合(ステップS605,Yes)、制御部22は、ステップS606として、第1の物体と第2の物体との間に表示されている3次元オブジェクトを仮選択状態にする。また、制御部22は、ステップS607として、第1の物体と第2の物体の距離を算出する。
【0103】
そして、制御部22は、ステップS611として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS611,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS611,No)、制御部22は、ステップS602以降を再実行する。
【0104】
第1の物体および第2の物体が検出され、かつ、仮選択状態の3次元オブジェクトがある場合(ステップS603,Yes)、制御部22は、ステップS608として、第1の物体と第2の物体の少なくとも一方が移動しているかを判定する。第1の物体と第2の物体のいずれも移動していない場合(ステップS608,No)、制御部22は、ステップS611として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS611,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS611,No)、制御部22は、ステップS602以降を再実行する。
【0105】
第1の物体と第2の物体の少なくとも一方が移動している場合(ステップS608,Yes)、制御部22は、ステップS609として、図15に示す操作検出処理を実行し、その中で、選択状態にある3次元オブジェクトを検出された操作に応じて変化させる。
【0106】
操作検出処理が終了した後、制御部22は、ステップS611として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS611,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS611,No)、制御部22は、ステップS602以降を再実行する。
【0107】
図15は、操作検出処理の処理手順を示すフローチャートである。図15に示す処理手順は、制御部22が制御プログラム24aを実行することによって実現される。図15に示すように、制御部22は、まず、ステップS701として、第1の物体と第2の物体の距離を算出する。そして、制御部22は、ステップS702として、操作検出処理の開始時点以降の第1の物体と第2の物体の距離がほぼ一定であるかを判定する。
【0108】
第1の物体と第2の物体の距離がほぼ一定の場合(ステップS702,Yes)、制御部22は、ステップS703として、操作検出処理が開始されてから所定時間が経過したかを判定する。所定時間が経過していた場合(ステップS703,Yes)、制御部22は、ステップS704として、仮選択状態の3次元オブジェクトがあれば、その3次元オブジェクトを選択状態にする。所定時間が経過していない場合(ステップS703,No)、ステップS704は実行されない。
【0109】
続いて、制御部22は、ステップS705として、第1の物体および第2の物体の移動速度を算出する。そして、制御部22は、ステップS706として、算出した移動速度が閾値以下であるかを判定する。移動速度が閾値以下の場合(ステップS706,Yes)、制御部22は、ステップS707として、検出された第1の物体および第2の物体の動きに応じて3次元オブジェクトを移動させたり回転させたりする。そして、制御部22は、ステップS701以降を再実行する。
【0110】
移動速度が閾値より速い場合(ステップ706,No)、制御部22は、ステップS708として、3次元オブジェクトを消去する。3次元オブジェクトを消去するに際して、3次元オブジェクトが第1の物体および第2の物体の移動方向へ向けて飛んでいくようにアニメーション表示してもよい。そして、制御部22は、操作検出処理を終了させる。なお、第1の物体および第2の物体を高速で移動させる操作ではなく、例えば、3次元オブジェクトを握りつぶす操作に3次元オブジェクトの消去を割り当ててもよい。また、3次元オブジェクトを消去する代わりに、3次元オブジェクトを当初の配置場所に戻すこととしてもよい。
【0111】
第1の物体と第2の物体の距離がほぼ一定でない場合(ステップS702,No)、制御部22は、ステップS709として、距離が、3次元オブジェクトの選択時、すなわち、操作検出処理の開始時点よりも拡大しているかを判定する。距離が拡大している場合(ステップS709,Yes)、制御部22は、ステップS710として、第1の物体と第2の物体の間に表示されていた3次元オブジェクトが仮選択状態であるかを判定する。
【0112】
3次元オブジェクトが仮選択状態である場合(ステップS710,Yes)、制御部22は、ステップS711として、3次元オブジェクトの仮選択状態を解除する。また、制御部22は、ステップS712として、3次元オブジェクトを逆変化させて元の状態に戻す。そして、制御部22は、操作検出処理を終了させる。
【0113】
3次元オブジェクトが仮選択状態でない場合、すなわち、選択状態の場合(ステップS710,No)、制御部22は、ステップS713として、3次元オブジェクトの選択状態を解除する。また、制御部22は、ステップS714として、選択状態を解除した3次元オブジェクトを重力等に従って移動させる。そして、制御部22は、操作検出処理を終了させる。ここでの移動は、例えば、3次元オブジェクトが重力に従って落下し、床やテーブルの上で停止するように表示される。3次元オブジェクトの動きを停止させる前に、3次元オブジェクトの弾性や床やテーブルの硬度に応じて3次元オブジェクトをバウンドさせてもよい。3次元オブジェクトが床やテーブルに衝突するときの衝撃の大きさを算出し、衝撃が所定の値よりも大きい場合には3次元オブジェクトを破損したように表示してもよい。また、実際の重力が働く場合よりも3次元オブジェクトをゆっくりと移動させてもよい。
【0114】
第1の物体と第2の物体の距離が3次元オブジェクトの選択時よりも縮まっている場合(ステップS709,No)、制御部22は、ステップS715として、距離に応じて3次元オブジェクトを変形させる。そして、制御部22は、ステップS701以降を再実行する。3次元オブジェクトを変形させる程度は、例えば、3次元オブジェクトに属性として設定されている硬度に応じて変更してもよい。
【0115】
上述してきたように、第3の実施例では、指等の物体の間に3次元オブジェクトが位置していることが検出された時点から、操作に応じて3次元オブジェクトを変化させることとしたので、利用者が3次元オブジェクトの選択を認識しやすい。
【0116】
なお、図16に示すステップS61からステップS63のように、第1の物体と第2の物体のうち少なくとも一方が3次元オブジェクトに接触した後に第1の物体と第2の物体の距離が所定時間以上ほぼ一定に保たれることを、3次元オブジェクトを選択する条件としてもよい。3次元オブジェクトへの接触を選択の条件とすることにより、複数の3次元オブジェクトが近接して表示されている場合に、利用者が所望の3次元オブジェクトを選択し易くなる。
【0117】
図17は、3次元オブジェクトへの接触を選択の条件とする場合の選択検出処理の処理手順を示すフローチャートである。図17に示すように、制御部22は、まず、ステップS801として、3次元オブジェクトを立体的に表示する。続いて、制御部22は、ステップS802として、検出部、すなわち、撮影部40および42によって第1の物体および第2の物体が検出されたかを判定する。第1の物体および第2の物体が検出されない場合(ステップS802,No)、制御部22は、ステップS810として、仮選択状態の3次元オブジェクトがあれば、その3次元オブジェクトの仮選択状態を解除する。
【0118】
そして、制御部22は、ステップS811として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS811,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS811,No)、制御部22は、ステップS802以降を再実行する。
【0119】
第1の物体および第2の物体が検出された場合(ステップS802,Yes)、制御部22は、ステップS803として、仮選択状態の3次元オブジェクトがあるか否かを判定する。仮選択状態の3次元オブジェクトがない場合(ステップS803,No)、制御部22は、ステップS804として、表示されている3次元オブジェクトの中から第1の物体または第2の物体の少なくとも一方に接触している3次元オブジェクトを探す。
【0120】
該当する3次元オブジェクトがない場合(ステップS805,No)、制御部22は、ステップS811として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS811,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS811,No)、制御部22は、ステップS802以降を再実行する。
【0121】
第1の物体または第2の物体の少なくとも一方に接触している3次元オブジェクトがみつかった場合(ステップS805,Yes)、制御部22は、ステップS806として、第1の物体と第2の物体との間に表示されている3次元オブジェクトを仮選択状態にする。また、制御部22は、ステップS807として、第1の物体と第2の物体の距離を算出する。
【0122】
そして、制御部22は、ステップS811として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS811,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS811,No)、制御部22は、ステップS802以降を再実行する。
【0123】
第1の物体および第2の物体が検出され、かつ、仮選択状態の3次元オブジェクトがある場合(ステップS803,Yes)、制御部22は、ステップS808として、第1の物体と第2の物体の少なくとも一方が移動しているかを判定する。第1の物体と第2の物体のいずれも移動していない場合(ステップS808,No)、制御部22は、ステップS811として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS811,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS811,No)、制御部22は、ステップS802以降を再実行する。
【0124】
第1の物体と第2の物体の少なくとも一方が移動している場合(ステップS808,Yes)、制御部22は、ステップS809として、図15に示す操作検出処理を実行し、その中で、選択状態にある3次元オブジェクトを検出された操作に応じて変化させる。
【0125】
操作検出処理が終了した後、制御部22は、ステップS811として、操作終了が検出されたかを判定する。操作終了が検出された場合(ステップS811,Yes)、制御部22は、選択検出処理を終了させる。操作終了が検出されない場合(ステップS811,No)、制御部22は、ステップS802以降を再実行する。
【実施例4】
【0126】
以下に、第4の実施例について説明する。上記の各実施例では、3次元オブジェクトを操作する物体を撮影部が撮影する画像に基づいて検出することとしたが、他の検出方式を用いてもよい。例えば、静電容量式のタッチセンサは、感度を上げることにより、タッチセンサに接触していない指の位置を検出することができる。そこで、第4の実施例では、タッチセンサを、3次元オブジェクトを操作する物体を検出する検出部として活用する例を示す。なお、以下の説明では、既に説明した部分と同様の部分には既に説明した部分と同一の符号を付す。また、重複する説明については、説明を省略することがある。
【0127】
まず、図18および図19を参照しながら、第4の実施例に係る携帯電話端末(表示機器)2の構成について説明する。図18は、携帯電話端末2の外観を示す正面図である。図19は、携帯電話端末2の機能的な構成を示すブロック図である。
【0128】
図18および図19に示すように、携帯電話端末2は、操作部13と、マイク15と、レシーバ16と、制御部22と、記憶部24と、通信部26と、音声処理部30と、タッチパネル32とを有する。
【0129】
タッチパネル32は、文字、図形、画像等の各種の情報を表示するとともに、表示されたアイコン、ボタン、文字入力領域等の所定領域に対する入力操作を検出する。タッチパネル32は、表示部32aと、タッチセンサ32bとを重畳して構成される。本実施例において、タッチセンサ32bは、静電容量式のタッチセンサである。タッチセンサ32bは、3次元オブジェクトを操作する指を検出する検出部としても機能する。
【0130】
次に、図20を参照しながら、3次元オブジェクトに対する操作の検出について説明する。図20は、3次元オブジェクトに対する操作の検出について説明するための図である。図20では、タッチパネル32によって、立体視空間中に、3次元オブジェクトOB1が立体的に表示されている。
【0131】
ここで、利用者が3次元オブジェクトOB1に対して何らかの操作を行いたいものとする。3次元オブジェクトOB1に対して何らかの操作を行うには、まず、操作の対象として3次元オブジェクトOB1を選択する必要がある。3次元オブジェクトOB1を選択するために、利用者は、図20に示すように、指F1と指F2の間に3次元オブジェクトOB1が位置するように指F1および指F2を移動させる。
【0132】
携帯電話端末2は、指F1および指F2の位置を、タッチセンサ32bを用いて検出する。タッチセンサ32bは、感度を高めることで、例えば、指F1および指F2とタッチパネル32の表面からのZ軸方向の距離が10cm程度ある場合でも、指F1および指F2のX軸方向およびY軸方向の位置を検出することができる。また、タッチセンサ32bは、静電容量の大きさに基づいて、指F1のタッチパネル32の表面からのZ軸方向の距離D2および指F2のタッチパネル32の表面からのZ軸方向の距離D3を検出することができる。
【0133】
こうして検出された指F1および指F2の立体視空間での位置に基づいて、携帯電話端末2は、指F1および指F2間の距離D1を算出したり、指F1および指F2の間に3次元オブジェクトが表示されているかを判定したりすることができる。指F1および指F2の間に3次元オブジェクトが表示されていることが検出された後の制御については、上述した第1ないし第3の実施例のいずれかにおいて説明した処理手順に従って実行される。
【0134】
上述してきたように、第4の実施例では、タッチセンサを検出部として用いることとしたので、撮影部を備えない表示装置であっても、3次元オブジェクトに対する操作を検出することができる。
【0135】
なお、3次元オブジェクトに対する操作を検出するために撮影部およびタッチセンサを併用してもよい。撮影部およびタッチセンサを併用する場合、それぞれの検出結果を平均して指F1および指F2の位置を特定してもよい。また、タッチパネル32と近い領域では、撮影部40は指F1および指F2の画像を取得し難いのでタッチセンサの検出結果の重みづけを大きくし、タッチパネル32と遠い領域では、タッチセンサの検出精度が低くなるので撮影部40の検出結果の重みづけを大きくした加重平均を用いてもよい。
【0136】
また、他の指等が障害となってタッチセンサが指の位置を精度よく検出できないことが生じにくいように、3次元オブジェクトに対する操作を複数のタッチセンサを用いて検出してもよい。図21は、3次元オブジェクトに対する操作を複数のタッチセンサを用いて検出する携帯電話端末3の構成の一例を示す図である。
【0137】
携帯電話端末3は、第1の筐体3aと、第2の筐体3bと、ヒンジ部3cとを有する。ヒンジ部3cは、第1の筐体3aおよび第2の筐体3bを開閉可能に連結する。そして、第1の筐体3aは、タッチセンサ32bを有するタッチパネル32を備え、第2の筐体3bは、タッチセンサ34bを有するタッチパネル34を備える。タッチセンサ32bおよびタッチセンサ34bは、図21に示すように、第1の筐体3aおよび第2の筐体3bが約90度の角度をもって固定された場合に、立体視空間に異なる角度で接する。
【0138】
タッチセンサ32bは、指F1および指F2のX軸方向およびY軸方向の位置を検出することができる。また、タッチセンサ32bは、静電容量の大きさに基づいて、指F1のタッチパネル32の表面からのZ軸方向の距離D2および指F2のタッチパネル32の表面からのZ軸方向の距離D3を検出することができる。
【0139】
タッチセンサ34bは、指F1および指F2のX軸方向およびZ軸方向の位置を検出することができる。また、タッチセンサ34bは、静電容量の大きさに基づいて、指F1のタッチパネル34の表面からのY軸方向の距離D4および指F2のタッチパネル34の表面からのY軸方向の距離D5を検出することができる。
【0140】
このように、異なる方向から指F1および指F2を検出することにより、何らかの障害物がある場合でもいずれかの方向から指F1および指F2の位置を検出することができる。なお、異なる方向から指F1および指F2を検出する場合、一方のタッチパネルが3次元オブジェクトを表示し、他方のタッチパネルは非表示とするか、2次元でガイダンス等を表示してもよい。また、3次元オブジェクトを表示しない方のタッチパネルを単なるタッチセンサとしてもよい。
【実施例5】
【0141】
以下に、上記の各実施例において説明した表示装置の適用例および変形例について説明する。操作の対象となる3次元オブジェクト(表示物)は、例えば、本、積み木、スプーン、箸、トランプ、粘土、楽器のように現実に存在するものを模したオブジェクトであってもよいし、仮想のアバター、ゲームのキャラクター、仮想現実のARタグのように実在はしないオブジェクトであってもよい。また、検出された操作に応じて3次元オブジェクトに加えられる変化は、上記の移動、変形、消失等に限定されない。操作検出処理において検出される操作と、操作に応じて3次元オブジェクトに加えられる変化は、上記の実施例に限定されず、3次元オブジェクトの種類に応じて変更してよい。
【0142】
例えば、本を模した3次元オブジェクト(以下、単に「本」という)を操作対象とする場合、選択検出処理によって操作対象の本が選択される。選択される本は、閉じた状態でも開いた状態でもよい。そして、本が選択された後、表示装置は、検出された操作に応じて、本の移動やページめくり等を実行し、本の外観を変化させる。ページめくりと連動して、立体視空間のどこかに現在のページ番号を表示してもよい。
【0143】
また、トランプを模した3次元オブジェクト(以下、単に「トランプ」という)を操作対象とする場合、選択検出処理によって操作対象のトランプが選択される。選択検出処理において、操作に応じて選択されるトランプの枚数を制御してもよい。例えば、最も上のトランプと最も下のトランプを挟むような操作が検出された場合、トランプの束全体を選択状態にしてよい。また、トランプを側面から挟むような操作が検出された場合、トランプを挟む物体の位置に応じて、トランプの束の一部を選択状態にしてよい。そして、トランプが選択された後、表示装置は、検出された操作に応じて、トランプのシャッフル等を実行し、トランプの外観を変化させる。
【0144】
なお、上記の実施例で示した本発明の態様は、本発明の要旨を逸脱しない範囲で任意に変更することができる。また、上記の実施例を適宜組み合わせてもよい。例えば、上記の実施例で示した制御プログラム24aは、複数のモジュールに分割されていてもよいし、他のプログラムと統合されていてもよい。また、上記の実施例では、3次元オブジェクトに対して指で操作を行うこととしたが、先端に静電気を帯びた棒状の物等を指の代わりに用いてもよい。
【0145】
また、上記実施例では、3次元オブジェクトを検出するために撮影部やタッチセンサを検出部として用いる例を示したが、検出部はこれに限られない。例えば、撮影部に代えて、TOF(Time-of-Flight)法を用いたセンサでもよい。また、立体視空間における面方向の移動を検出できる近接センサ等を、物体の移動方向とほぼ水平に配置すると、物体の変位が非接触でも検出できることから、もちろんこれらを用いてもよい。なお、物体にセンサ等を配置することなく、物体の変位の検出ができることが好ましい。物体にセンサ等を配置しないことにより、指にわざわざ加速度センサを取り付けたり、加速度を備えた表示機器そのものを移動させたりする必要がないので、コスト低減が図れる。
【0146】
また、上述の実施例では、3次元オブジェクトが利用者側に飛び出す場合について記載したが、表示部よりも奥側に3次元オブジェクトが存在するように見せる場合でも本発明を適用できる。この場合、表示部の裏面側にセンサやカメラを配置すればよい。表示機器が携帯電話端末の場合、利用者自身を撮影するためのインカメラと、風景等を撮影するためのアウトカメラとを備えていることが多い。そこで、このアウトカメラを用いることで裏面側における物体の変位を捕捉することができるようにしてもよい。
【0147】
また、上記の実施例では、3次元オブジェクトに対する操作を検出する例について説明したが、本発明は、2次元オブジェクトに対する操作を検出するためにも用いることができる。例えば、タッチパネル上に表示されているアイコンの両側において指の接触が検出され、その後、その状態が所定時間以上維持された場合や、指の距離が所定時間以上ほぼ一定に保たれた場合にそのアイコンを選択状態にしてもよい。
【0148】
また、上記の実施例では、表示機器が単独で3次元オブジェクトに対する操作を検出することとしたが、表示機器がサーバ装置と協業して3次元オブジェクトに対する操作を検出することとしてもよい。この場合、表示機器は、検出部の検出した情報をサーバ装置へ逐次送信し、サーバ装置が操作を検出して検出結果を表示機器へ通知する。このような構成とすることにより、表示機器の負荷を低減することができる。
【符号の説明】
【0149】
1、2、3 携帯電話端末
22 制御部
24 記憶部
24a 制御プログラム
26 通信部
32、34 タッチパネル
32a 表示部
32b、34b タッチセンサ(検出部)
40、42 撮影部(検出部)

【特許請求の範囲】
【請求項1】
表示物を立体的に表示する表示部と、
前記表示物が表示される立体視空間において第1の物体および第2の物体を検出する検出部と、
前記立体視空間において前記第1の物体と前記第2の物体の間に前記表示物が位置することが検出されたときに、前記表示物を変化させる制御部と
を備えることを特徴とする表示機器。
【請求項2】
前記第1の物体と前記第2の物体の間に前記表示物が位置するときには、前記第1の物体と前記第2の物体とを結ぶ直線が前記表示部の表示面と交差するときを含むことを特徴とする請求項1に記載の表示機器。
【請求項3】
前記検出部は、前記第1の物体と前記第2の物体の間に前記表示物が位置する第1の状態を検出し、
前記制御部は、前記第1の状態が検出されたときに、前記表示物を変化させることを特徴とする請求項1または2に記載の表示機器。
【請求項4】
前記検出部は、所定時間以上、前記第1の物体と前記第2の物体の間に前記表示物が位置する第2の状態を検出し、
前記制御部は、前記第2の状態が検出されたときに、前記表示物を変化させることを特徴とする請求項1または2に記載の表示機器。
【請求項5】
前記検出部は、前記第1の物体と前記第2の物体の間に前記表示物が位置し、かつ、所定時間以上、前記第1の物体と前記第2の物体間の距離が開かない第3の状態を検出し、
前記制御部は、前記第3の状態が検出されたときに、前記表示物を変化させることを特徴とする請求項1または2に記載の表示機器。
【請求項6】
前記検出部は、前記第1の物体と前記第2の物体の間に前記表示物が位置してから、前記第1の物体あるいは前記第2の物体の少なくとも一方が移動し、かつ、所定時間以上、前記第1の物体と前記第2の物体間の距離が開かない第4の状態を検出し、
前記制御部は、前記移動を検出したときから前記表示物を変化させ始めることを特徴とする請求項1または2に記載の表示機器。
【請求項7】
前記制御部は、前記第1の物体と前記第2の物体の間に前記表示物が位置してから、前記第1の物体あるいは前記第2の物体の少なくとも一方が移動し、かつ、前記所定時間の経過前に前記第1の物体と前記第2の物体間の距離が開いたことが検出されたときには、前記表示物の変化を元に戻す逆変化の表示を行うことを特徴とする請求項6に記載の表示機器。
【請求項8】
前記制御部は、前記変化に要した時間よりも短い時間で前記逆変化の表示を行うことを特徴とする請求項7に記載の表示機器。
【請求項9】
前記制御部は、前記第1の物体あるいは前記第2の物体の移動にともなって、前記表示物を移動させ、回転させ、またはこれらを組み合わせることにより、前記表示物を変化させることを特徴とする請求項1から8のいずれか1項に記載の表示機器。
【請求項10】
前記制御部は、前記第1の物体あるいは前記第2の物体の移動にともなって、前記表示物を変形させることにより、前記表示物を変化させることを特徴とする請求項1から8のいずれか1項に記載の表示機器。
【請求項11】
前記制御部は、前記第1の物体あるいは前記第2の物体の移動にともなって、前記表示物を消失させることにより、前記表示物を変化させることを特徴とする請求項1から8のいずれか1項に記載の表示機器。
【請求項12】
表示物を立体的に表示する表示部と、
前記表示物が表示される立体視空間において第1の物体および第2の物体を検出する検出部と、
前記立体視空間において前記第1の物体または前記第2の物体の少なくとも一方が前記表示物と接触する位置にあることが検出されたときに、前記表示物を変化させる制御部と
を備えることを特徴とする表示機器。
【請求項13】
前記立体視空間において前記第1の物体または前記第2の物体の少なくとも一方が前記表示物と接触する位置にあることが検出されたときには、前記第1の物体と前記第2の物体とを結ぶ直線が前記表示部の表示面と交差するときを含むことを特徴とする請求項12に記載の表示機器。
【請求項14】
前記検出部は、所定時間以上、前記第1の物体または前記第2の物体の少なくとも一方が前記表示物と接触する第1の状態を検出し、
前記制御部は、前記第1の状態が検出されたときに、前記表示物を変化させることを特徴とする請求項12または13に記載の表示機器。
【請求項15】
前記検出部は、前記第1の物体または前記第2の物体の少なくとも一方が前記表示物と接触し、かつ、所定時間以上、前記第1の物体と前記第2の物体間の距離が開かない第2の状態を検出し、
前記制御部は、前記第2の状態が検出されたときに、前記表示物を変化させることを特徴とする請求項12または13に記載の表示機器。
【請求項16】
前記検出部は、前記第1の物体または前記第2の物体の少なくとも一方が前記表示物と接触してから、前記第1の物体あるいは前記第2の物体の少なくとも一方が移動し、かつ、所定時間以上、前記第1の物体と前記第2の物体間の距離が開かない第3の状態を検出し、
前記制御部は、前記移動を検出したときから前記表示物を変化させ始めることを特徴とする請求項12または13に記載の表示機器。
【請求項17】
前記制御部は、前記第1の物体または前記第2の物体の少なくとも一方が前記表示物と接触してから、前記第1の物体あるいは前記第2の物体の少なくとも一方が移動し、かつ、前記所定時間の経過前に前記第1の物体と前記第2の物体間の距離が開いたことが検出されたときには、前記表示物の変化を元に戻す逆変化の表示を行うことを特徴とする請求項16に記載の表示機器。
【請求項18】
前記制御部は、前記変化に要した時間よりも短い時間で前記逆変化の表示を行うことを特徴とする請求項17に記載の表示機器。
【請求項19】
前記制御部は、前記第1の物体あるいは前記第2の物体の移動にともなって、前記表示物を移動させ、回転させ、またはこれらを組み合わせることにより、前記表示物を変化させることを特徴とする請求項12から18のいずれか1項に記載の表示機器。
【請求項20】
前記制御部は、前記第1の物体あるいは前記第2の物体の移動にともなって、前記表示物を変形させることにより、前記表示物を変化させることを特徴とする請求項12から18のいずれか1項に記載の表示機器。
【請求項21】
前記制御部は、前記第1の物体あるいは前記第2の物体の移動にともなって、前記表示物を消失させることにより、前記表示物を変化させることを特徴とする請求項12から18のいずれか1項に記載の表示機器。
【請求項22】
表示物を立体的に表示する表示部と、
前記表示物が表示される立体視空間において第1の物体と第2の物体とが前記表示物を挟む位置にあるときに、前記表示物を変化させる制御部と
を備えることを特徴とする表示機器。
【請求項23】
表示物を表示面に表示する表示部と、
前記表示面において第1の物体および第2の物体を検出する検出部と、
前記表示面において前記第1の物体と前記第2の物体の間に前記表示物が位置することが検出されたときに、前記表示物を変化させる制御部と
を備えることを特徴とする表示機器。
【請求項24】
表示物を表示面に表示する表示部と、
前記表示面において第1の物体および第2の物体を検出する検出部と、
前記表示面において前記第1の物体または前記第2の物体の少なくとも一方が前記表示物と接触する位置にあることが検出されたときに、前記表示物を変化させる制御部と
を備えることを特徴とする表示機器。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate


【公開番号】特開2012−248033(P2012−248033A)
【公開日】平成24年12月13日(2012.12.13)
【国際特許分類】
【出願番号】特願2011−119688(P2011−119688)
【出願日】平成23年5月27日(2011.5.27)
【出願人】(000006633)京セラ株式会社 (13,660)
【Fターム(参考)】