JP5732792B2 - 情報処理装置及び情報処理プログラム - Google Patents

情報処理装置及び情報処理プログラム Download PDF

Info

Publication number
JP5732792B2
JP5732792B2 JP2010208771A JP2010208771A JP5732792B2 JP 5732792 B2 JP5732792 B2 JP 5732792B2 JP 2010208771 A JP2010208771 A JP 2010208771A JP 2010208771 A JP2010208771 A JP 2010208771A JP 5732792 B2 JP5732792 B2 JP 5732792B2
Authority
JP
Japan
Prior art keywords
acceleration
plane
tilt
projection
state
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.)
Active
Application number
JP2010208771A
Other languages
English (en)
Other versions
JP2012064069A (ja
Inventor
潔 田代
潔 田代
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2010208771A priority Critical patent/JP5732792B2/ja
Priority to US13/005,590 priority patent/US8669937B2/en
Publication of JP2012064069A publication Critical patent/JP2012064069A/ja
Application granted granted Critical
Publication of JP5732792B2 publication Critical patent/JP5732792B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/1694Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being a single or a set of motion sensors for pointer control or gesture input obtained by sensing movements of the portable computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1626Constructional details or arrangements for portable computers with a single-body enclosure integrating a flat display, e.g. Personal Digital Assistants [PDAs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2200/00Indexing scheme relating to G06F1/04 - G06F1/32
    • G06F2200/16Indexing scheme relating to G06F1/16 - G06F1/18
    • G06F2200/163Indexing scheme relating to constructional details of the computer
    • G06F2200/1637Sensing arrangement for detection of housing movement or orientation, e.g. for controlling scrolling or cursor movement on the display of an handheld computer

Description

本発明は、情報処理装置及び情報処理プログラムに関する。
特許文献1には、従来の情報表示装置では、実際の書籍の操作性と異なるために訓練が必要である、操作のための部品が画面の一部を占有するため表示できる情報量が減少する、連続してページをめくる場合にローラを回し続ける等の連続操作により操作性が低下するという問題を課題とし、装置に加わる力を検出して表示部品に生ずるべき加速度を算出する表示加速度生成手段を有し、表示画面上の操作部品や多数の画面等を用いることなく装置を傾けるだけで連続的なページめくりが可能であり、書籍の見出しやしおりと同様な表示及び操作が可能な見出し入力手段を有し、自然な操作で自由なページ移動が可能であり、回転入力デバイスを駆動する回転駆動手段を有することにより、連続操作の操作量を低減可能であるとともにページめくり状態の触覚的な応答が可能であることが開示されている。
特許文献2には、携帯型情報端末の保持方向あるいは画像表示装置の表示面方向を変更するだけで、操作者の好みの方向に画像表示方向を変更することができるようにすることを課題とし、画像表示装置と重力検出装置を備えた携帯型情報端末であって、重力検出装置は磁気センサを用いたものであり、重力検出装置により検出された携帯型情報端末の保持方向、又は画像表示装置の上下面反転に伴う表示面方向にしたがって、前記画像表示装置に表示する画像の表示方向を変更すること、また、入力装置としてタッチパネルを有する第一の画像表示装置と、第一の画像表示装置に連結され且つ入力装置としてタッチパネルを有する第二の画像表示装置と、重力検出装置と、を備え、第一と第二の画像表示装置のいずれかにキー配列を表示する携帯型情報端末であって、重力検出装置により検出された携帯型情報端末の保持方向にしたがって、第一と第二の画像表示装置に表示する画像とキー配列の表示方向を操作者に正対する向きに変更することが開示されている。
特許文献3には、主としてタッチパネルを背面から操作可能な携帯端末において,タッチパネルの操作位置が確認できる携帯端末を提供することを課題とし、操作圧力の検出が可能なタッチパネルを設け、操作圧力により、タッチパネルへの入力操作をカーソル表示(移動)のモードとして処理するか、データ入力のモードとして処理するか、カーソル消去のモードとして処理するかを切り替えることにより、例えば、操作圧力が弱いときはカーソル表示のみ行い、強い圧力で操作されたときにのみ入力データの処理を行うことが開示されている。
特許文献4には、ユーザによる一連の動作に機能を割り当て、意図しない機能の実行を防止することを課題とし、CPUは、3軸加速度センサからの出力に基づいて、ポータブルコンピュータの本体に対して、所定の一連の動作(第1の動作及び第2の動作の組合せ)が行われたか否かを判定し、所定の一連の動作が行われた場合、ユーザインタフェースが表示画面に表示され、ユーザインタフェースが表示画面に表示された状態で、所定の一連の動作が再度行われた場合、ユーザインタフェースの表示画面への表示が終了されることが開示されている。
特許文献5には、タッチパッドの操作量と操作対象の移動表示制御量との間における、ユーザの感覚的なズレを補正して、操作対象を正確に操作可能とすることを課題とし、制御部は、タッチパッドが操作される際に、基準となる携帯電話機の傾き角(ニュートラルポジション)に対する、当該携帯電話機の現在の傾き角の差分角度を検出し、この検出した差分角度に対応する1単位移動操作量を差分角度/操作量対応テーブルから検出し、そして、ユーザがタッチパッドを操作することで得られた該指の移動量を上記1単位移動操作量に基づいて補正し、この補正した指の移動量、移動時間、及び移動方向に対応するように、操作対象を移動表示制御し、これにより、ユーザは、当該携帯電話機の傾き角を調整しながらタッチパッドを操作することで、該ユーザの感覚に合致した操作対象の移動状態を得ることができ、正確な操作を可能とすることができることが開示されている。
特開平10−161619号公報 特開2001−242845号公報 特開2003−058316号公報 特開2008−140064号公報 特開2009−251833号公報
本発明は、携帯可能であって表示画面を有する情報処理装置を操作する場合にあって、第1の状態と第2の状態における情報処理装置の傾き又は加速度によって、表示画面上の印の座標を決定するようにした情報処理装置及び情報処理プログラムを提供することを目的としている。
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項1の発明は、携帯可能であって表示画面を有する情報処理装置の第1の状態における傾き又は加速度を受け付ける第1の受付手段と、前記情報処理装置の第2の状態における傾き又は加速度を受け付ける第2の受付手段と、前記第1の受付手段によって受け付けられた傾き又は加速度と前記第2の受付手段によって受け付けられた傾き又は加速度に基づいて、前記表示画面上の位置を指し示すための印の前記第2の状態における座標を決定する座標決定手段と、前記表示画面に対する操作者による操作の位置を受け付ける操作位置受付手段と、前記操作位置受付手段によって受け付けられた位置と前記座標決定手段によって決定された位置との距離を、予め定められた閾値と比較して、該操作位置受付手段によって受け付けられた位置又は該座標決定手段によって決定された位置を変更する位置変更手段を具備することを特徴とする情報処理装置である。
請求項2の発明は、前記第1の受付手段と前記第2の受付手段が受け付ける傾き又は加速度は、前記情報処理装置におけるx軸、y軸、z軸のそれぞれにおける値であり、前記座標決定手段は、前記第1の状態における傾き又は加速度のyz平面への射影と前記第2の状態における傾き又は加速度のyz平面への射影との角度差に基づいて、前記表示画面上の上下方向における座標を決定し、該第1の状態における傾き又は加速度のxy平面への射影と該第2の状態における傾き又は加速度のxy平面への射影との角度差及び該第1の状態における傾き又は加速度のxz平面への射影と該第2の状態における傾き又は加速度のxz平面への射影との角度差に基づいて、該表示画面上の左右方向における座標を決定し、前記表示画面は、前記x軸と前記y軸が作る平面と平行であり、前記「傾き又は加速度のyz平面への射影」とあるのは、「傾きのyz平面への射影」又は「加速度のyz平面への射影」の意であり、前記「傾き又は加速度のxy平面への射影」とあるのは、「傾きのxy平面への射影」又は「加速度のxy平面への射影」の意であり、前記「傾き又は加速度のxz平面への射影」とあるのは、「傾きのxz平面への射影」又は「加速度のxz平面への射影」の意であり、前記傾きは前記情報処理装置の重力方向への向きであることを特徴とする請求項1に記載の情報処理装置である。
請求項3の発明は、前記座標決定手段は、前記第1の状態における傾き若しくは加速度のxy平面への射影の大きさ又は前記第2の状態における傾き若しくは加速度のxy平面への射影の大きさを、予め定められた閾値と比較して、予め定められた関係を有している場合は、該第1の状態における傾き又は加速度のxz平面への射影と該第2の状態における傾き又は加速度のxz平面への射影との角度差に基づいて、前記表示画面上の左右方向における座標を決定することを特徴とする請求項2に記載の情報処理装置である。
請求項4の発明は、前記座標決定手段は、前記第1の状態における傾き若しくは加速度のxz平面への射影の大きさ又は前記第2の状態における傾き若しくは加速度のxz平面への射影の大きさを、予め定められた閾値と比較して、予め定められた関係を有している場合は、該第1の状態における傾き又は加速度のxy平面への射影と該第2の状態における傾き又は加速度のxy平面への射影との角度差に基づいて、該表示画面上の左右方向における座標を決定することを特徴とする請求項2又は3に記載の情報処理装置である。
請求項の発明は、前記座標決定手段によって決定された前記表示画面上の座標の位置に、前記印を表示する表示手段をさらに具備することを特徴とする請求項1からのいずれか一項に記載の情報処理装置である。
請求項の発明は、前記表示手段による印の表示、非表示を切り替える表示切替手段をさらに具備することを特徴とする請求項に記載の情報処理装置である。
請求項の発明は、前記操作位置受付手段は、操作者より前記表示画面に対する接触位置を受け付けることを特徴とする請求項1に記載の情報処理装置である。
請求項の発明は、コンピュータを、携帯可能であって表示画面を有する情報処理装置の第1の状態における傾き又は加速度を受け付ける第1の受付手段と、前記情報処理装置の第2の状態における傾き又は加速度を受け付ける第2の受付手段と、前記第1の受付手段によって受け付けられた傾き又は加速度と前記第2の受付手段によって受け付けられた傾き又は加速度に基づいて、前記表示画面上の位置を指し示すための印の前記第2の状態における座標を決定する座標決定手段と、前記表示画面に対する操作者による操作の位置を受け付ける操作位置受付手段と、前記操作位置受付手段によって受け付けられた位置と前記座標決定手段によって決定された位置との距離を、予め定められた閾値と比較して、該操作位置受付手段によって受け付けられた位置又は該座標決定手段によって決定された位置を変更する位置変更手段として機能させることを特徴とする情報処理プログラムである。
請求項1の情報処理装置によれば、携帯可能であって表示画面を有する情報処理装置を操作する場合にあって、第1の状態と第2の状態における情報処理装置の傾き又は加速度によって、表示画面上の印の座標を決定することができる。また、操作者による操作の位置又は決定された表示画面上の印の位置を変更することができる。
請求項2の情報処理装置によれば、x軸、y軸、z軸におけるyz平面、xy平面、xz平面への射影を用いて、表示画面上の印の座標を決定することができる。
請求項3、4の情報処理装置によれば、閾値との関係に応じて、表示画面上の印の座標を決定することができる。
請求項の情報処理装置によれば、決定された表示画面上の座標に印を表示することができる。
請求項の情報処理装置によれば、印の表示、非表示を切り替えることができる。
請求項の情報処理装置によれば、操作者より表示画面に対する接触位置を受け付けることができる。
請求項の情報処理プログラムによれば、携帯可能であって表示画面を有する情報処理装置を操作する場合にあって、第1の状態と第2の状態における情報処理装置の傾き又は加速度によって、表示画面上の印の座標を決定することができる。また、操作者による操作の位置又は決定された表示画面上の印の位置を変更することができる。
第1の実施の形態の構成例についての概念的なモジュール構成図である。 第1の実施の形態による処理例を示すフローチャートである。 携帯情報処理装置の外観例を示す説明図である。 本実施の形態を具現化した場合のシステム構成例を示す説明図である。 xyz空間の例を示す説明図である。 表示画面内の座標の例を示す説明図である。 yz平面における携帯情報処理装置の傾きの例を示す説明図である。 表示画面内のカーソルの動きの例を示す説明図である。 xy平面における携帯情報処理装置の傾きの例を示す説明図である。 表示画面内のカーソルの動きの例を示す説明図である。 xz平面における携帯情報処理装置の傾きの例を示す説明図である。 第2の実施の形態の構成例についての概念的なモジュール構成図である。 第2の実施の形態による処理例を示すフローチャートである。 本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
まず、本実施の形態の説明の理解を容易にするために、タッチパネルを用いた一般的な操作インタフェースについて説明する。
タッチパネルを用いた操作インタフェースにおいては、指、ペン等がタッチパネル上に接触していること、及びその接触位置を検出するという特性上、様々な制約が発生する。
例えば、パーソナルコンピュータ(PC)によるマウス操作インタフェースでは、画面上のカーソルの位置のみを移動させるような操作があるが、タッチパネル操作インタフェースでは、クリックを伴わないような操作は検出できない。
また、例えばウェブブラウザによるホームページの閲覧などにおいては、ホームページの提供側は閲覧側の操作インタフェースを必ずしも特定できず、また特定できる場合においても、操作インタフェースの各々に異なる操作方法を提供することは、作成、維持上のコストの面で不利である。また操作者にとっても、マウス操作の場合とタッチパネル操作の場合で異なる操作方法が提供される場合には、各々の操作を学習する必要がある。
従来の多くのタッチパネル操作インタフェースにおいては、タッチパネル上のある箇所を短時間接触する操作を、マウス操作における、マウスボタンのクリックに対応付けている。また、タッチパネル上のある箇所で接触を開始し、異なる箇所まで接触を保持したまま移動する操作を、マウス操作における、マウスボタンを押したままマウスを移動する操作(マウスドラッグ)に対応付けている。
しかしながら、マウスボタンを押さずにマウスを動かして、画面上のカーソルを特定の位置に移動させる操作を、多くのタッチパネル操作インタフェースでは実現できていない。主にマウス操作を想定したホームページや、ソフトウェアにおいては、例えば特定のボタンを表す領域にマウスカーソルが移動されたことを検知した場合には、そのボタンの表示方法を変えてボタンをクリック可能であることを強調したり、そのボタンの説明を一時的に表示したりして、操作者の利便性を向上することが行われている。しかし、タッチパネル操作インタフェースでは、タッチパネルに接触せずにカーソルを移動させることができないため、そのような処理は行えないようになっている。
さらに、マウス操作インタフェースによるクリックでは、カーソル位置を画面上で確認した後にクリックを行うことができるのに対し、タッチパネルでのクリック操作では、タッチした時点で初めてタッチ位置が検出されるため、操作者は詳細なクリック位置を予測できないため誤操作を招くことがある。特に指によるタッチ操作では、指の角度により画面に触れる位置が操作者の想定と異なる場合があり、詳細な位置を指定する操作は困難となることがある。
以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
図1は、第1の実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
第1の実施の形態である情報処理装置は、携帯可能であって表示画面を有する携帯情報処理装置を操作するものであって、図1の例に示すように、携帯端末100とカーソル位置決定モジュール120を有している。携帯端末100とカーソル位置決定モジュール120は接続されている。携帯端末100とカーソル位置決定モジュール120は、同一筐体内にあってもよいし、それぞれ別の筐体内にあってもよい。
携帯端末100は、表示画面102、タッチセンサ104、傾き・加速度センサ106を有している。携帯端末100は、携帯可能である。ここで、携帯可能であるとは、操作者が携帯端末100そのものを傾ける、回転する、振る等の操作を行い得る形態であることをいう。また、操作としては、操作者がタッチセンサ104と一体となった表示画面102上で行う操作も含まれる。
図3は、携帯情報処理装置300の外観例を示す説明図である。携帯情報処理装置300は、タッチパネルである表示画面310を有している。また、携帯情報処理装置300は、図1に例示した携帯端末100を有しており、表示画面310は携帯端末100の表示画面102に該当する。図3(a)に例示の携帯情報処理装置300は、縦長に利用する場合の配置であり、図3(b)に例示の携帯情報処理装置300は、横長に利用する場合の配置である。いずれの配置の利用であってもよいし、1つの携帯情報処理装置300を図3(a)、図3(b)に例示の配置のいずれかに切り替えられるようにしてもよい。
なお、カーソル位置決定モジュール120は、携帯情報処理装置300で動作するOSの一部として実現し、カーソル表示モジュール122によって表示しようとしているカーソルの位置情報を、OS上で動作する各アプリケーションに送出するように構成してもよい。
また、カーソル位置決定モジュール120は、携帯情報処理装置300で動作するアプリケーションの一部として実現するように構成してもよい。
また、カーソル位置決定モジュール120は、携帯情報処理装置300と通信回線を介して接続されている情報処理装置内にあってもよい。
また、カーソル位置決定モジュール120を実現するソフトウェアを、サーバーから通信回線であるネットワークを経由して取得し、携帯情報処理装置300で実行させるように構成してもよい。図4は、本実施の形態を具現化した場合のシステム構成例を示す説明図である。携帯情報処理装置300A、携帯情報処理装置300B、携帯情報処理装置300C、Webサーバー410は、通信回線490を介して接続されている。このような構成において、カーソル位置決定モジュール120を実現するソフトウェアを例えばJavaScript(登録商標)として用意し、HTMLなどで表現されているWebページをWebサーバー410上のブラウザソフトウェアで閲覧するときに、そのJavaScriptを動作させることにより、カーソル位置決定モジュール120を実現し得る。
携帯端末100内の表示画面102は、液晶ディスプレイ等であり、文字、図形、画像、動画等を表示し得るものである。
携帯端末100内のタッチセンサ104は、表示画面102に対する操作者による操作の位置を受け付ける。タッチセンサ104は、表示画面102と一体となっており、表示画面102上に表示されたもの(メニュー等)に、操作者が指、ペン等で接触することによって操作を行うための装置である。一般に、タッチセンサ104と一体となった表示画面102は、タッチパネル、タッチスクリーン等ともいわれている(以下、単にタッチパネルともいう)。タッチセンサ104は、指、ペン等の接触した位置を検出する。タッチセンサ104は、抵抗膜方式、静電容量方式、表面弾性波方式、赤外線方式等によって実現され得る。なお、前述の説明では表示画面102の接触された位置を検出するとしたが、例えば、赤外線方式であれば、赤外線が遮られた位置を検出することになる。ただし、赤外線検出の位置を表示画面102の表面上に密着させることによって、接触された位置を検出することと同じこととなるので、以下、表示画面102の接触された位置を検出するという。また、タッチセンサ104と一体となった表示画面102があることによって、マウス等の装置を接続することは不要であるが、必ずしもマウス等の装置の接続を妨げるものではない。
携帯端末100内の傾き・加速度センサ106は、携帯端末100の傾き又は加速度を検出する装置である。ジャイロセンサ、加速度センサ、磁気センサ等によって実現され得る。例えば、3軸の加速度センサを備えている場合は、加速度は3次元のベクトルとして検出する。ここで、携帯情報処理装置300(図1における携帯端末100を含む)におけるxyz空間を図5に例示する。つまり、x軸は左右方向を示しており、y軸は上下方向(重力方向)を示しており、z軸は前後方向を示している。傾き・加速度センサ106は図5に例示したx軸、y軸、z軸に沿って配置され、各々のセンサで観測された加速度値をそのまま加速度ベクトルのx、y、z成分として説明する。
また、携帯情報処理装置300に備えられた2次元の表示画面102は、図5に例示のx軸とy軸が作る平面(xy平面)に並行に設置されているとし、表示画面102内の座標の説明としても、図5に例示のx軸、y軸を符号も含めて共通に用いる。例えば、図6に示すように、表示画面310(図1における表示画面102に該当する)内の座標系を定める。また、操作者の視線の方向は、z軸の正方向からあるものとする。したがって、x軸の正方向は操作者にとって右方向となり、x軸の負方向は操作者にとって左方向となる。
なお、携帯情報処理装置300がほぼ静止又は定速運動をしている場合には、携帯情報処理装置300にかかる加速度は重力加速度のみであり、傾き・加速度センサ106によって検出された加速度ベクトルの向きが重力の向きである。また、携帯情報処理装置300の傾きは、重力の向きから相対的に求められる。
カーソル位置決定モジュール120は、カーソル表示モジュール122、カーソル表示切替モジュール124、位置補正モジュール126、傾き・加速度受付モジュール128、定常状態決定モジュール130、カーソルx座標決定モジュール132、カーソルy座標決定モジュール134を有している。
傾き・加速度受付モジュール128は、携帯端末100の第1の状態における傾き又は加速度を受け付ける。そして、携帯端末100の第2の状態における傾き又は加速度を受け付ける。携帯端末100の傾き又は加速度は、傾き・加速度センサ106によって検出され、それを受け付ける。
ここで、第1の状態(以下、定常状態ともいう)とは、例えば、予め定められた時間内で検知された傾き又は加速度の変動量が予め定められた範囲内である状態、タッチセンサ104が表示画面102への最新の接触(タッチ操作)を検出したときの状態、操作者の操作によって定常状態であることが指定されたときの状態、又は携帯端末100の電源をオンにしたときの状態等をいう。
第2の状態(以下、カーソル位置決定状態ともいう)とは、カーソルの位置を決定すべき状態をいう。カーソルの位置は、定常状態が決定された後に決定されるので、第2の状態は、第1の状態での携帯端末100の傾き又は加速度を受け付けた後である。なお、カーソルとは、表示画面102上の位置を指し示すための印(一般的には、矢印形状の画像等)をいう。ただし、カーソルは、表示画面102上に常に表示されている必要はなく、潜在的に存在している場合もある。潜在的に存在している場合は、カーソルx座標決定モジュール132、カーソルy座標決定モジュール134によってカーソルの位置を決定するようにしてもよいし、潜在的になる前のカーソルの位置に固定していてもよい。
また、傾き・加速度受付モジュール128が受け付ける携帯端末100の傾き又は加速度は、携帯端末100におけるx軸、y軸、z軸のそれぞれにおける値であってもよい。
定常状態決定モジュール130は、傾き・加速度受付モジュール128が受け付けた携帯端末100の定常状態における傾き又は加速度に基づいて、携帯端末100の定常状態における傾き又は加速度を決定する。例えば、携帯端末100の傾きとは、携帯端末100の重力方向への向きである。定常状態として、予め定められた時間内で検知された傾き又は加速度の変動量が予め定められた範囲内であったときとした場合は、その時間内での携帯端末100の傾き又は加速度の統計的値(例えば、平均値、最頻値、中央値等)を、携帯端末100の定常状態における傾き又は加速度とする。また、定常状態として、タッチセンサ104が表示画面102への最新の接触を検出したときの状態、操作者の操作によって定常状態であることが指定されたときの状態、又は携帯端末100の電源をオンにしたときの状態等の場合は、その状態において傾き・加速度受付モジュール128が受け付けた携帯端末100の傾き又は加速度を定常状態における傾き又は加速度とする。
カーソルx座標決定モジュール132、カーソルy座標決定モジュール134は、定常状態とカーソル位置決定状態における傾き又は加速度の変化量に対応して、表示画面102上におけるカーソルの位置を決定する。
カーソルx座標決定モジュール132は、定常状態決定モジュール130によって決定された携帯端末100の定常状態における傾き又は加速度と傾き・加速度受付モジュール128によって受け付けられた携帯端末100のカーソル位置決定状態における傾き又は加速度に基づいて、カーソルのカーソル位置決定状態におけるx座標を決定する。
カーソルx座標決定モジュール132は、定常状態における傾き又は加速度のxy平面への射影とカーソル位置決定状態における傾き又は加速度のxy平面への射影との角度差及び定常状態における傾き又は加速度のxz平面への射影とカーソル位置決定状態における傾き又は加速度のxz平面への射影との角度差に基づいて、表示画面102上の左右方向における座標(x座標)を決定する。
さらに、カーソルx座標決定モジュール132は、定常状態における傾き若しくは加速度のxy平面への射影の大きさ又はカーソル位置決定状態における傾き若しくは加速度のxy平面への射影の大きさを、予め定められた閾値と比較して、予め定められた関係を有している場合は、定常状態における傾き又は加速度のxz平面への射影とカーソル位置決定状態における傾き又は加速度のxz平面への射影との角度差に基づいて、表示画面102上の左右方向における座標(x座標)を決定してもよい。ここでの「予め定められた関係」とは、定常状態における傾き若しくは加速度のxy平面への射影の大きさ又はカーソル位置決定状態における傾き若しくは加速度のxy平面への射影の大きさが、予め定められた閾値よりも小さい又は予め定められた閾値以下である関係をいう。
さらに、カーソルx座標決定モジュール132は、定常状態における傾き若しくは加速度のxz平面への射影の大きさ又はカーソル位置決定状態における傾き若しくは加速度のxz平面への射影の大きさを、予め定められた閾値と比較して、予め定められた関係を有している場合は、定常状態における傾き又は加速度のxy平面への射影とカーソル位置決定状態における傾き又は加速度のxy平面への射影との角度差に基づいて、表示画面102上の左右方向における座標(x座標)を決定するようにしてもよい。ここでの「予め定められた関係」とは、定常状態における傾き又は加速度のxz平面への射影の大きさ、又はカーソル位置決定状態における傾き又は加速度のxz平面への射影の大きさが、予め定められた閾値よりも小さい又は予め定められた閾値以下である関係をいう。
カーソルy座標決定モジュール134は、定常状態決定モジュール130によって決定された携帯端末100の定常状態における傾き又は加速度と傾き・加速度受付モジュール128によって受け付けられた携帯端末100のカーソル位置決定状態における傾き又は加速度に基づいて、カーソルのカーソル位置決定状態におけるy座標を決定する。
例えば、カーソルy座標決定モジュール134は、定常状態における傾き又は加速度のyz平面への射影とカーソル位置決定状態における傾き又は加速度のyz平面への射影との角度差に基づいて、表示画面102上の上下方向における座標(y座標)を決定する。
カーソル表示モジュール122は、カーソルx座標決定モジュール132によって決定されたx座標とカーソルy座標決定モジュール134によって決定されたy座標によって示される表示画面102上の位置に、カーソルを表示する。
カーソル表示切替モジュール124は、カーソルの位置、操作者の操作に基づいて、カーソル表示モジュール122によるカーソルの表示、非表示を切り替える。例えば、「カーソルの位置に基づいて」とは、予め定められた範囲内にカーソルが移動した場合は、カーソルを非表示の状態に切り替えるようにすることが該当する。「操作者の操作に基づいて」とは、操作者が表示画面102に接触した場合、携帯端末100を傾ける等の操作を行った場合に、カーソルを表示する状態に切り替えるようにすることが該当する。
位置補正モジュール126は、タッチセンサ104によって受け付けられた位置とカーソルx座標決定モジュール132とカーソルy座標決定モジュール134によって決定された位置との距離を、予め定められた閾値と比較して、タッチセンサ104によって受け付けられた位置又はカーソルx座標決定モジュール132とカーソルy座標決定モジュール134によって決定された位置を変更する。例えば、前述のように視覚差等によって、操作者が接触した位置(又は接触したと思っている位置)とカーソルの位置とが異なる場合に、その差を減ずるようにするものである。より具体的には、(1)タッチセンサ104によって受け付けられた位置をカーソルx座標決定モジュール132とカーソルy座標決定モジュール134によって決定された位置に変更すること、(2)カーソルx座標決定モジュール132とカーソルy座標決定モジュール134によって決定された位置をタッチセンサ104によって受け付けられた位置に変更すること、(3)タッチセンサ104によって受け付けられた位置、カーソルx座標決定モジュール132とカーソルy座標決定モジュール134によって決定された位置のいずれか一方又は両者を、両者の位置を用いて変更すること(例えば、両者を結ぶ直線の中間の位置(中間とは、必ずしも両者の1/2の位置でなくてもよく、例えば、タッチセンサ104によって受け付けられた位置に近い3/4の位置等であってもよい)に変更すること)等であってもよい。
図2は、第1の実施の形態による処理例を示すフローチャートである。
ステップS202では、傾き・加速度受付モジュール128が、傾き・加速度センサ106が検出した定常状態における傾き又は加速度を受け付ける。
ステップS204では、定常状態決定モジュール130が、ステップS202で受け付けた傾き又は加速度に基づいて、定常状態における傾き又は加速度を決定する。例えば、定常状態における重力加速度ベクトルを(Sx,Sy,Sz)とする。
ステップS206では、傾き・加速度受付モジュール128が、傾き・加速度センサ106が検出したカーソル位置決定状態における傾き又は加速度を受け付ける。例えば、カーソル位置決定状態における重力加速度ベクトルを(Tx,Ty,Tz)とする。
ステップS208では、カーソルy座標決定モジュール134が、カーソルのy座標を決定する。
より詳細に説明する。重力加速度ベクトル(Sx、Sy、Sz)のyz平面への射影と、z軸の正の向きとの角度をA1sとして求める。また、重力加速度ベクトル(Tx、Ty、Tz)のyz平面への射影と、z軸の正の向きとの角度をA1tとして求める。ここで角度の正負は、z軸正方向からy軸負方向への角度が正の90度となるように定義する。
表示画面上のカーソルの、y軸方向の位置Cyを、
Cy = M1 × (A1t − A1s) + P1 (1)式
として求める。このようにカーソルの位置を求めれば、係数M1が正の値であるときは、操作者から見て、携帯情報処理装置300の上部が操作者から離れるように傾ければ、カーソルは上に動き、逆の向きに傾ければカーソルは下に動くことになる。
操作者の好みなどによって携帯情報処理装置300の傾きとカーソルの移動方向の対応を逆にする場合には、係数M1の値を負にすればよい。また、係数M1の絶対値の大小は、どれだけ傾ける(Atが変化する)とどれだけカーソルが動くかを決定する。M1が大きい場合はわずかな傾きの変更でカーソルが大きく動くことになり、カーソルを画面上で大きく動かす場合には好適であるが、わずかなカーソル位置の調整には不利になる。M1が小さい場合は大きな傾きの変更でもカーソルはわずかな動きとなり、カーソル位置の微調整の場合には好適であるが、カーソルを大きく動かす場合には不利になる。M1の値は、携帯情報処理装置300として一意に決めておいてもよいし、操作者の設定に応じて値を変更してもよいし、また操作中の操作内容などに応じて動的に変更してもよい。
係数P1は傾きの変化に関わらず予め定められたオフセットを与える効果を持ち、A1tがA1sに等しいときのカーソルのy軸位置を示す。P1の値の例としては、定常時のカーソルのy軸位置、最新のタッチ操作におけるタッチ位置のy座標値、表示画面のy軸方向の中央(図8での原点位置)に相当するy座標値が好ましい。
図7は、yz平面における携帯情報処理装置300の傾きの例を示す説明図である。図7(a)は、定常状態における携帯情報処理装置300の例を示したものである。定常状態における重力加速度ベクトル(Sx,Sy,Sz)のyz平面への射影702と、z軸の正の向きとの角度であるA1sを表している。これは、携帯情報処理装置300を目よりも下におき、携帯情報処理装置300の上部を上に傾けた状態(携帯情報処理装置300の操作状態としては一般的な状態)である。この場合の表示画面310内のカーソルの位置は、図8に例示するような原点にあるカーソル802とする。
この状態から、図7(b)に例示するような状態にした場合、つまり、携帯情報処理装置300の上部を操作者から離れる向きに傾けた場合(携帯情報処理装置300を水平状態に近づける場合)は、図8に例示するようにカーソル802からカーソル804の位置へ移動する。図7(b)は、カーソル位置決定状態における重力加速度ベクトル(Tx、Ty、Tz)のyz平面への射影704と、z軸の正の向きとの角度であるA1tを表している。A1t>A1sの関係にあるので、(1)式のかっこ内は正となり、M1が正であれば、Cyは正の方向へ動くことになる。
また、逆に傾ける場合、図7(c)に例示するような状態にした場合、つまり、携帯情報処理装置300の上部を操作者に近づけるように傾けた場合(携帯情報処理装置300を垂直状態に近づける場合)は、図8に例示するようにカーソル802からカーソル806の位置へ移動する。図7(c)は、カーソル位置決定状態における重力加速度ベクトル(Tx、Ty、Tz)のyz平面への射影706と、z軸の正の向きとの角度であるA1tを表している。A1t<A1sの関係にあるので、(1)式のかっこ内は負となり、M1が正であれば、Cyは負の方向へ動くことになる。
ステップS210では、カーソルx座標決定モジュール132が、カーソルのx座標を決定する。
より詳細に説明する。重力加速度ベクトル(Sx、Sy、Sz)のxy平面への射影と、x軸の正の向きとの角度をA2s、重力加速度ベクトル(Sx、Sy、Sz)のxz平面への射影と、x軸の正の向きとの角度をA3sとして求める。また、重力加速度ベクトル(Tx、Ty、Tz)のxy平面への射影と、x軸の正の向きとの角度をA2t、重力加速度ベクトル(Tx、Ty、Tz)のxz平面への射影と、x軸の正の向きとの角度をA3tとして求める。ここで角度の正負は、x軸正方向からy軸正方向への角度、x軸正方向からz軸正方向への角度が正の90度となるように定義する。
表示画面上のカーソルの、x軸方向の位置Cxを、
Cx = M2 × (A2t − A2s) + M3 × (A3t − A3s) + P2 (2)式
として求める。
このようにカーソルの位置を求めれば、係数M2が正の値であるときは、操作者から見て、携帯情報処理装置300の上部を右に傾ければ、カーソルは右に動き、逆の向きに傾ければカーソルは左に動くことになる。
また、携帯情報処理装置300の右辺が奥に行くように回転すれば(携帯情報処理装置300の右辺が操作者から離れるように傾ければ)、カーソルは右に動き、逆の向きに回転すればカーソルは左に動くことになる。
なお、このように2つの平面(xy平面、xz平面)への射影角を用いるのは、操作者が端末を保持する態様として、表示画面が地面に対して垂直に近くなる(重力加速度ベクトルのxz平面への射影の大きさが小さくなる)ように保持する場合や、表示画面が地面に対して水平に近くなる(重力加速度ベクトルのxy平面への射影の大きさが小さくなる)ように保持する場合があるためである。
係数M2、M3の値に関しては、y軸方向で係数M1について説明したのと同様である。係数P2の値に関しては、y軸方向で係数P1について説明したのと同様である。
図9は、xy平面における携帯情報処理装置300の傾きの例を示す説明図である。図9(a)は、定常状態における携帯情報処理装置300の例を示したものである。定常状態における重力加速度ベクトル(Sx,Sy,Sz)のxy平面への射影902と、x軸の正の向きとの角度であるA2sを表している。この場合の表示画面310内のカーソルの位置は、図10に例示するような原点にあるカーソル1002とする。
この状態から、図9(b)に例示するような状態にした場合、つまり、携帯情報処理装置300の上部を右側に傾けた場合は、図10に例示するようにカーソル1002からカーソル1004の位置へ移動する。図9(b)は、カーソル位置決定状態における重力加速度ベクトル(Tx、Ty、Tz)のxy平面への射影904と、x軸の正の向きとの角度であるA2tを表している。A2t>A2sの関係にあるので、(2)式の最初のかっこ内は正となり、M2が正であれば、Cxは正の方向へ動くことになる。
また、逆に傾ける場合、図9(c)に例示するような状態にした場合、つまり、携帯情報処理装置300の上部を左側に傾けた場合は、図10に例示するようにカーソル1002からカーソル1006の位置へ移動する。図9(c)は、カーソル位置決定状態における重力加速度ベクトル(Tx、Ty、Tz)のxy平面への射影906と、x軸の正の向きとの角度であるA2tを表している。A2t<A2sの関係にあるので、(2)式の最初のかっこ内は負となり、M2が正であれば、Cxは負の方向へ動くことになる。
図11は、xz平面における携帯情報処理装置300の傾きの例を示す説明図である。図11(a)は、定常状態における携帯情報処理装置300の例を示したものである。定常状態における重力加速度ベクトル(Sx,Sy,Sz)のxz平面への射影1102と、x軸の正の向きとの角度であるA3sを表している。この場合の表示画面310内のカーソルの位置は、図10に例示するような原点にあるカーソル1002とする。
この状態から、図11(b)に例示するような状態にした場合、つまり、携帯情報処理装置300の右辺を奥に回転した場合(携帯情報処理装置300の右辺を操作者から離れるように回転した場合)は、図10に例示するようにカーソル1002からカーソル1004の位置へ移動する。図11(b)は、カーソル位置決定状態における重力加速度ベクトル(Tx、Ty、Tz)のxz平面への射影1104と、x軸の正の向きとの角度であるA3tを表している。A3t>A3sの関係にあるので、(2)式の2番目のかっこ内は正となり、M3が正であれば、Cxは正の方向へ動くことになる。
また、逆に傾ける場合、図11(c)に例示するような状態にした場合、つまり、携帯情報処理装置300の左辺を奥に回転した場合(携帯情報処理装置300の左辺を操作者から離れるように回転した場合)は、図10に例示するようにカーソル1002からカーソル1006の位置へ移動する。図11(c)は、カーソル位置決定状態における重力加速度ベクトル(Tx、Ty、Tz)のxz平面への射影1106と、x軸の正の向きとの角度であるA3tを表している。A3t<A3sの関係にあるので、(2)式の2番目のかっこ内は負となり、M3が正であれば、Cxは負の方向へ動くことになる。
また、重力加速度ベクトル(Sx、Sy、Sz)又は重力加速度ベクトル(Tx、Ty、Tz)のxy平面への射影の大きさが予め定められた値より小さい場合には、xy平面上での角度の変動は無視して、
Cx = M3 × (A3t − A3s) + P2 (3)式
として求めてもよい。これは(2)式の係数M2の値を0として計算することと同等である。こうすることにより、加速度ベクトルのxy平面への射影の大きさが小さい場合は、xy平面上での角度は誤差成分により大きく変わり得るので、操作者の意図と異なる動作を引き起こすことを防止するために採用する。
同様に、重力加速度ベクトル(Sx、Sy、Sz)又は重力加速度ベクトル(Tx、Ty、Tz)のxz平面への射影の大きさが予め定められた値より小さい場合には、xz平面上での角度の変動は無視して、
Cx = M2 × (A2t − A2s) + P2 (4)式
として求めてもよい。これは(2)式の係数M3の値を0として計算することと同等である。こうすることにより、加速度ベクトルのxz平面への射影の大きさが小さい場合は、xz平面上での角度は誤差成分により大きく変わり得るので、操作者の意図と異なる動作を引き起こすことを防止するために採用する。
ステップS212では、カーソル表示モジュール122が、カーソルを表示するか否かを判断し、表示する場合はステップS214へ進み、それ以外の場合はステップS216へ進む。この判断は、カーソル表示切替モジュール124によって切り替えられた表示又は非表示にしたがう。
ステップS214では、カーソル表示モジュール122が、表示画面102上にカーソルを表示する。
ステップS216では、カーソル位置に応じた処理を行う。例えば、カーソルが予め定められたボタン領域に移動されたことを検知した場合には、そのボタン領域の表示方法を変えてボタンをクリック可能であることを強調したり、そのボタンの説明を一時的に表示したりする。
ステップS218では、タッチ位置を検知してタッチ操作が開始されたか否かを判断し、タッチ操作が開始された場合はステップS220へ進み、それ以外の場合はステップS299(終了)へ進む。
ステップS220では、位置補正モジュール126が、ステップS208とステップS210で決定したカーソル位置及びステップS218で検知したタッチ位置を用いて、タッチ位置を補正する。
ステップS222では、タッチ位置に応じた処理を行う。例えば、短時間のタッチであればクリック操作と見なし、タッチ位置がボタンの領域内であれば、ボタンに割り当てられた処理を実行する。
図12は、第2の実施の形態の構成例についての概念的なモジュール構成図である。
第2の実施の形態である情報処理装置は、携帯可能であって表示画面を有する携帯情報処理装置を操作するものであって、図12の例に示すように、携帯端末1200とカーソル位置決定モジュール1220を有している。携帯端末1200とカーソル位置決定モジュール1220は接続されている。なお、第1の実施の形態と同種の部位には同一符号を付し重複した説明を省略する。携帯端末1200は第1の実施の形態の携帯端末100に、カーソル位置決定モジュール1220は第1の実施の形態のカーソル位置決定モジュール120に、それぞれ該当し、図3から図6の説明は、第2の実施の形態においてもあてはまる。
第2の実施の形態は、携帯情報処理装置の加速度をカーソル位置の決定に用いるものである。
携帯端末1200は、表示画面102、タッチセンサ104、加速度センサ1206を有している。
加速度センサ1206は、携帯端末1200の加速度を検出する装置であり、第1の実施の形態の傾き・加速度センサ106の加速度を検出する部分に該当する。例えば、3軸の加速度センサを備えている場合は、加速度は3次元のベクトルとして検出する。
重力による加速度は、携帯情報処理装置300がほぼ静止又は定速運動をしている場合に、加速度センサ1206によって検出される値であり、例えば、定められた時間内で観測された加速度が予め定められた範囲内であったとき、検出されている加速度を重力加速度と見なし、その後のある時刻に観測された加速度と重力加速度との差は、携帯情報処理装置300の運動による加速度(操作者が携帯情報処理装置300を振る等の動かすことによる操作)と見なすことができる。このように求める加速度ベクトルを(Ax, Ay, Az)とする。
カーソル位置決定モジュール1220は、カーソル表示モジュール122、カーソル表示切替モジュール124、位置補正モジュール126、加速度受付モジュール1228、カーソルx座標決定モジュール1232、カーソルy座標決定モジュール1234を有している。
加速度受付モジュール1228は、携帯端末1200の上下方向及び左右方向における加速度を受け付ける。前述の加速度ベクトル(Ax, Ay, Az)を受け付ける。
カーソルx座標決定モジュール1232は、予め定められた期間における加速度受付モジュール1228によって受け付けられた上下方向における加速度の和に基づいて、表示画面102のカーソルのx座標を決定する。
表示画面102上のカーソルの時刻tでのx座標は、
Cx = Mx × ∫p(Ax, Fx)dt + Dx (5)式
として求める。
カーソルy座標決定モジュール1234は、予め定められた期間における加速度受付モジュール1228によって受け付けられた左右方向における加速度の和に基づいて、表示画面102のカーソルのy座標を決定する。
表示画面102上のカーソルの時刻tでのy座標は、
Cy = My × ∫p(Ay, Fy)dt + Dy (6)式
として求める。
ここで∫dtは時間積分を表すが、加速度センサ1206は予め定められた間隔の時刻の加速度を検出する場合が多いため、各時刻の値の合計値により近似するようにしてもよい。
また、関数p(a, b)は、
p(a, b) = a + b (a ≦ −b) (7)式
p(a, b) = 0 (a > −b かつ a < b) (8)式
p(a, b) = a − b (a ≧ b) (9)式
で定義される関数である。このような関数p(a, b)によって、カーソルの座標を決めることにより、携帯情報処理装置300の加速度の絶対値が小さいとき(Fx、Fyよりも小)には、カーソル座標は変わらず、微小な振動や測定誤差によって操作者の意図に反してカーソルが移動することを防止し得る。また、ある程度より速い動作で装置を振るとカーソルが動き、速く振るほどカーソルの移動量は大きくなる。定数Fx、Fyが大きいほど、振動等による誤動作が少なくなる反面、同じカーソル移動量を得るのに速い動作が必要となる。係数Mx、Myは加速度の大きさに応じてどれだけカーソルを動かすかを決定する。Fx、Fy、Mx、Myの値は、携帯情報処理装置300に予め定められた値としておいてもよいし、操作者の設定に応じて値を変更してもよいし、また操作中の操作内容などに応じて動的に変更してもよい。また、Dx、Dyは、直前のカーソルのx座標、y座標である。
図13は、第2の実施の形態による処理例を示すフローチャートである。
ステップS1302では、加速度受付モジュール1228が、加速度センサ1206が検出した加速度を受け付ける。
ステップS1304では、加速度受付モジュール1228が、x軸方向、y軸方向のそれぞれの加速度を加算する。p(Ax, Fx)、p(Ax, Fx)による値を加算してもよい。
ステップS1306では、加速度受付モジュール1228が、予め定められた期間か否かを判断し、予め定められた期間である場合はステップS1308へ進み、それ以外の場合はステップS1302からの処理を行う。つまり、ステップS1304、ステップS1306によって、∫p(Ax, Fx)dt、∫p(Ay, Fy)dtの計算をする。
ステップS1308では、カーソルx座標決定モジュール1232が、カーソルのx座標を(5)式によって決定する。
ステップS1310では、カーソルy座標決定モジュール1234が、カーソルのy座標を(6)式によって決定する。
ステップS1312では、カーソル表示モジュール122が、カーソルを表示するか否かを判断し、表示する場合はステップS1314へ進み、それ以外の場合はステップS1316へ進む。この判断は、カーソル表示切替モジュール124によって切り替えられた表示又は非表示にしたがう。
ステップS1314では、カーソル表示モジュール122が、表示画面102上にカーソルを表示する。
ステップS1316では、カーソル位置に応じた処理を行う。例えば、カーソルが予め定められたボタン領域に移動されたことを検知した場合には、そのボタン領域の表示方法を変えてボタンをクリック可能であることを強調したり、そのボタンの説明を一時的に表示したりする。
ステップS1318では、タッチ位置を検知してタッチ操作が開始されたか否かを判断し、タッチ操作が開始された場合はステップS1320へ進み、それ以外の場合はステップS1399(終了)へ進む。
ステップS1320では、位置補正モジュール126が、ステップS1308とステップS1310で決定したカーソル位置及びステップS1318で検知したタッチ位置を用いて、タッチ位置を補正する。
ステップS1322では、タッチ位置に応じた処理を行う。例えば、短時間のタッチであればクリック操作と見なし、タッチ位置がボタンの領域内であれば、ボタンに割り当てられた処理を実行する。
なお、本実施の形態としてのプログラムが実行されるコンピュータ(携帯情報処理装置300、Webサーバー410等)のハードウェア構成は、図14に例示するように、一般的なコンピュータであり、具体的には携帯型パーソナルコンピュータ(携帯情報処理装置300の場合)、サーバー(Webサーバー410の場合)となり得るコンピュータ等である。つまり、具体例として、処理部(演算部)としてCPU1401を用い、記憶装置としてRAM1402、ROM1403、HD1404を用いている。HD1404として、例えばハードディスクを用いてもよい。カーソル表示モジュール122、カーソル表示切替モジュール124、位置補正モジュール126、傾き・加速度受付モジュール128、定常状態決定モジュール130、カーソルx座標決定モジュール132、カーソルy座標決定モジュール134、加速度受付モジュール1228、カーソルx座標決定モジュール1232、カーソルy座標決定モジュール1234等のプログラムを実行するCPU1401と、そのプログラムやデータを記憶するRAM1402と、本コンピュータを起動するためのプログラム等が格納されているROM1403と、補助記憶装置であるHD1404と、タッチパネル等に対する利用者の操作に基づいてデータを受け付ける受付装置1406と、液晶ディスプレイ等の出力装置1405と、ネットワークインタフェースカード等の通信ネットワークと接続するための通信回線インタフェース1407、そして、それらをつないでデータのやりとりをするためのバス1408により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図14に示すハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図14に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えばASIC等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図14に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。
なお、前述の携帯情報処理装置300は、PDA(Personal Digital Assistant)、携帯電話、携帯型ゲーム機、携帯音楽再生装置等として実現してもよい。
なお、前述の各種の実施の形態を組み合わせてもよく(例えば、ある実施の形態内のモジュールを他の実施の形態内に適用する、入れ替えする等も含む)、各モジュールの処理内容として背景技術で説明した技術を採用してもよい。
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray Disc(登録商標))、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM(登録商標))、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
100…携帯端末
102…表示画面
104…タッチセンサ
106…傾き・加速度センサ
120…カーソル位置決定モジュール
122…カーソル表示モジュール
124…カーソル表示切替モジュール
126…位置補正モジュール
128…傾き・加速度受付モジュール
130…定常状態決定モジュール
132…カーソルx座標決定モジュール
134…カーソルy座標決定モジュール
300…携帯情報処理装置
310…表示画面
410…Webサーバー
1200…携帯端末
1206…加速度センサ
1220…カーソル位置決定モジュール
1228…加速度受付モジュール
1232…カーソルx座標決定モジュール
1234…カーソルy座標決定モジュール

Claims (8)

  1. 携帯可能であって表示画面を有する情報処理装置の第1の状態における傾き又は加速度を受け付ける第1の受付手段と、
    前記情報処理装置の第2の状態における傾き又は加速度を受け付ける第2の受付手段と、
    前記第1の受付手段によって受け付けられた傾き又は加速度と前記第2の受付手段によって受け付けられた傾き又は加速度に基づいて、前記表示画面上の位置を指し示すための印の前記第2の状態における座標を決定する座標決定手段と、
    前記表示画面に対する操作者による操作の位置を受け付ける操作位置受付手段と、
    前記操作位置受付手段によって受け付けられた位置と前記座標決定手段によって決定された位置との距離を、予め定められた閾値と比較して、該操作位置受付手段によって受け付けられた位置又は該座標決定手段によって決定された位置を変更する位置変更手段
    を具備することを特徴とする情報処理装置。
  2. 前記第1の受付手段と前記第2の受付手段が受け付ける傾き又は加速度は、前記情報処理装置におけるx軸、y軸、z軸のそれぞれにおける値であり、
    前記座標決定手段は、前記第1の状態における傾き又は加速度のyz平面への射影と前記第2の状態における傾き又は加速度のyz平面への射影との角度差に基づいて、前記表示画面上の上下方向における座標を決定し、該第1の状態における傾き又は加速度のxy平面への射影と該第2の状態における傾き又は加速度のxy平面への射影との角度差及び該第1の状態における傾き又は加速度のxz平面への射影と該第2の状態における傾き又は加速度のxz平面への射影との角度差に基づいて、該表示画面上の左右方向における座標を決定し、
    前記表示画面は、前記x軸と前記y軸が作る平面と平行であり、
    前記「傾き又は加速度のyz平面への射影」とあるのは、「傾きのyz平面への射影」又は「加速度のyz平面への射影」の意であり、
    前記「傾き又は加速度のxy平面への射影」とあるのは、「傾きのxy平面への射影」又は「加速度のxy平面への射影」の意であり、
    前記「傾き又は加速度のxz平面への射影」とあるのは、「傾きのxz平面への射影」又は「加速度のxz平面への射影」の意であり、
    前記傾きは前記情報処理装置の重力方向への向きである
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記座標決定手段は、
    前記第1の状態における傾き若しくは加速度のxy平面への射影の大きさ又は前記第2の状態における傾き若しくは加速度のxy平面への射影の大きさを、予め定められた閾値と比較して、予め定められた関係を有している場合は、該第1の状態における傾き又は加速度のxz平面への射影と該第2の状態における傾き又は加速度のxz平面への射影との角度差に基づいて、前記表示画面上の左右方向における座標を決定する
    ことを特徴とする請求項2に記載の情報処理装置。
  4. 前記座標決定手段は、
    前記第1の状態における傾き若しくは加速度のxz平面への射影の大きさ又は前記第2の状態における傾き若しくは加速度のxz平面への射影の大きさを、予め定められた閾値と比較して、予め定められた関係を有している場合は、該第1の状態における傾き又は加速度のxy平面への射影と該第2の状態における傾き又は加速度のxy平面への射影との角度差に基づいて、該表示画面上の左右方向における座標を決定する
    ことを特徴とする請求項2又は3に記載の情報処理装置。
  5. 前記座標決定手段によって決定された前記表示画面上の座標の位置に、前記印を表示する表示手段
    をさらに具備することを特徴とする請求項1からのいずれか一項に記載の情報処理装置。
  6. 前記表示手段による印の表示、非表示を切り替える表示切替手段
    をさらに具備することを特徴とする請求項に記載の情報処理装置。
  7. 前記操作位置受付手段は、操作者より前記表示画面に対する接触位置を受け付ける
    ことを特徴とする請求項1に記載の情報処理装置。
  8. コンピュータを、
    携帯可能であって表示画面を有する情報処理装置の第1の状態における傾き又は加速度を受け付ける第1の受付手段と、
    前記情報処理装置の第2の状態における傾き又は加速度を受け付ける第2の受付手段と、
    前記第1の受付手段によって受け付けられた傾き又は加速度と前記第2の受付手段によって受け付けられた傾き又は加速度に基づいて、前記表示画面上の位置を指し示すための印の前記第2の状態における座標を決定する座標決定手段と、
    前記表示画面に対する操作者による操作の位置を受け付ける操作位置受付手段と、
    前記操作位置受付手段によって受け付けられた位置と前記座標決定手段によって決定された位置との距離を、予め定められた閾値と比較して、該操作位置受付手段によって受け付けられた位置又は該座標決定手段によって決定された位置を変更する位置変更手段
    として機能させることを特徴とする情報処理プログラム。
JP2010208771A 2010-09-17 2010-09-17 情報処理装置及び情報処理プログラム Active JP5732792B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010208771A JP5732792B2 (ja) 2010-09-17 2010-09-17 情報処理装置及び情報処理プログラム
US13/005,590 US8669937B2 (en) 2010-09-17 2011-01-13 Information processing apparatus and computer-readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010208771A JP5732792B2 (ja) 2010-09-17 2010-09-17 情報処理装置及び情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2012064069A JP2012064069A (ja) 2012-03-29
JP5732792B2 true JP5732792B2 (ja) 2015-06-10

Family

ID=45817279

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010208771A Active JP5732792B2 (ja) 2010-09-17 2010-09-17 情報処理装置及び情報処理プログラム

Country Status (2)

Country Link
US (1) US8669937B2 (ja)
JP (1) JP5732792B2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4966421B1 (ja) * 2011-03-31 2012-07-04 株式会社東芝 情報処理装置及び情報処理方法
US9230223B2 (en) * 2011-12-05 2016-01-05 Houzz, Inc. Consistent presentation of content and passive relevance determination of content relationship in an on-line commerce system
JP5905783B2 (ja) * 2012-06-28 2016-04-20 シャープ株式会社 画像表示システム
KR101404380B1 (ko) * 2012-09-24 2014-06-09 주식회사 팬택 모바일 디바이스 및 모바일 디바이스의 화면 방향 전환 방법
JP5585697B2 (ja) * 2012-10-01 2014-09-10 キヤノンマーケティングジャパン株式会社 携帯端末、携帯端末の制御方法、プログラム、および記録媒体
TWI582671B (zh) * 2012-11-15 2017-05-11 緯創資通股份有限公司 光學式觸控裝置和其觸控方法
JP6029453B2 (ja) * 2012-12-21 2016-11-24 京セラ株式会社 携帯端末、カーソル表示制御プログラム、カーソル表示制御方法、カーソル発生制御プログラム、カーソル発生制御方法、アイコン表示プログラムおよびアイコン表示方法
EP2749996B1 (en) * 2012-12-28 2018-05-30 Sony Mobile Communications Inc. Electronic device and method for improving accuracy of location determination of a user input on a touch panel
US9165533B2 (en) 2013-06-06 2015-10-20 Microsoft Technology Licensing, Llc Display rotation management
JP6068428B2 (ja) * 2014-12-25 2017-01-25 シャープ株式会社 画像表示システムの制御方法及び制御装置
US20160342208A1 (en) * 2015-05-20 2016-11-24 Immersion Corporation Haptic effects based on predicted contact
JP2017068350A (ja) * 2015-09-28 2017-04-06 株式会社東海理化電機製作所 操作入力装置
JP6569546B2 (ja) * 2016-01-28 2019-09-04 富士通コネクテッドテクノロジーズ株式会社 表示装置、表示制御方法、および表示制御プログラム
JP7075723B2 (ja) * 2017-04-17 2022-05-26 富士通株式会社 情報取得装置及びその方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1049290A (ja) * 1996-08-05 1998-02-20 Sony Corp 情報処理装置および方法
JP3063649B2 (ja) 1996-12-03 2000-07-12 日本電気株式会社 情報表示装置
US6115025A (en) * 1997-09-30 2000-09-05 Silicon Graphics, Inc. System for maintaining orientation of a user interface as a display changes orientation
JP2001242845A (ja) 2000-02-29 2001-09-07 Hitachi Ltd 携帯型情報端末
US6690358B2 (en) * 2000-11-30 2004-02-10 Alan Edward Kaplan Display control for hand-held devices
JP4587616B2 (ja) 2001-08-21 2010-11-24 シャープ株式会社 携帯端末
JP2006113859A (ja) * 2004-10-15 2006-04-27 Nec Corp 携帯情報端末及びその表示制御方法
JP2008140064A (ja) 2006-11-30 2008-06-19 Toshiba Corp 情報処理装置
JP2009251833A (ja) 2008-04-03 2009-10-29 Sony Ericsson Mobilecommunications Japan Inc 入力装置、入力方法、入力制御プログラム、及び携帯端末装置

Also Published As

Publication number Publication date
US8669937B2 (en) 2014-03-11
US20120068923A1 (en) 2012-03-22
JP2012064069A (ja) 2012-03-29

Similar Documents

Publication Publication Date Title
JP5732792B2 (ja) 情報処理装置及び情報処理プログラム
JP5703873B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP5557316B2 (ja) 情報処理装置、情報生成方法及びプログラム
US20110285631A1 (en) Information processing apparatus and method of displaying a virtual keyboard
US20120284671A1 (en) Systems and methods for interface mangement
US20120001943A1 (en) Electronic device, computer-readable medium storing control program, and control method
RU2598780C2 (ru) Способ управления вращением экрана и поддерживающие его терминал и воспринимающая касания система
US20110221777A1 (en) Electronic device with motion sensing function and method for executing functions based on movement of electronic device
JP5160579B2 (ja) 表示装置及び画面表示方法
US9141133B2 (en) Information processing apparatus and display screen operating method for scrolling
US20120284668A1 (en) Systems and methods for interface management
EP2902867B1 (en) Portable apparatus and method for adjusting window size thereof
JP2015506520A (ja) ポータブルデバイス及びその制御方法
WO2009084809A1 (en) Apparatus and method for controlling screen by using touch screen
CN107562335B (zh) 一种显示区域调整方法及移动终端
CN101676861A (zh) 具备麦克风的平板电脑以及控制方法
GB2528948A (en) Activation target deformation using accelerometer or gyroscope information
US20130106745A1 (en) Touch pad operable with multi-objects and method of operating same
KR20160026482A (ko) 모바일 디바이스 및 모바일 디바이스에서 이미지를 투사하는 방법
US20190064947A1 (en) Display control device, pointer display method, and non-temporary recording medium
US9665249B1 (en) Approaches for controlling a computing device based on head movement
JP5800361B2 (ja) 表示制御装置及びそれを用いた表示装置
JP2005284657A (ja) 携帯情報端末
JP2004271671A (ja) 画像表示装置及びそれを備えた端末装置
CN108885556B (zh) 控制数字输入

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130819

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140701

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140821

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150317

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150330

R150 Certificate of patent or registration of utility model

Ref document number: 5732792

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350