JP2018503166A - マルチタッチ仮想マウス - Google Patents

マルチタッチ仮想マウス Download PDF

Info

Publication number
JP2018503166A
JP2018503166A JP2017527549A JP2017527549A JP2018503166A JP 2018503166 A JP2018503166 A JP 2018503166A JP 2017527549 A JP2017527549 A JP 2017527549A JP 2017527549 A JP2017527549 A JP 2017527549A JP 2018503166 A JP2018503166 A JP 2018503166A
Authority
JP
Japan
Prior art keywords
contact portion
touch
kernel
cursor
vendor
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.)
Granted
Application number
JP2017527549A
Other languages
English (en)
Other versions
JP6641570B2 (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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of JP2018503166A publication Critical patent/JP2018503166A/ja
Application granted granted Critical
Publication of JP6641570B2 publication Critical patent/JP6641570B2/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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • 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
    • 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
    • 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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • 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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • 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
    • G06F3/04883Interaction 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 for inputting data by handwriting, e.g. gesture or text
    • 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
    • G06F3/04886Interaction 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 by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04808Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen
    • 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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)

Abstract

いくつかの実施形態に従って、タッチスクリーンまたはトラックパッドもしくはタッチパッドなどのタッチ入力デバイスは、2本以上の指で同時にスクリーンをタッチすることにより、マウスモードで操作され得る。一実施形態において、3本の指が利用され得る。一実施形態において、この3本の指は、親指ならびに人差し指および中指であり得る。その場合、人差し指および中指は、仮想マウスコマンドを入力すべく、左クリックまたは右クリックするのに用いられ得る。

Description

本発明は概して、タッチスクリーンカーソルを制御するためのマウスコマンドの使用に関する。
ラップトップコンピュータ、デスクトップコンピュータ、携帯電話、ゲーム機などのメディア再生デバイス、および他のそのようなデバイスなど、従来のプロセッサベースのシステムでは、タッチスクリーン入力マウスコマンドは、キーボードまたはマウスで入力されたカーソルコマンドの使用の代替手段を提供する。例えば、マウスコマンドは、ディスプレイスクリーン上で選択を行うべくカーソルを移動させるのに用いられ得る。従来、マウスはユーザの手の中に保持され、マウスが移動させられるとカーソルが移動する。マウス上のボタンをクリックすることで、カーソルによりオーバーレイされる表示オブジェクトの選択が可能になる。
いくつかの場合、モバイルユーザは、マウスの使用を面倒だと感じることがある。なぜなら、携帯電話などの実際のプロセッサベースのデバイスよりも大きいことがある追加のデバイスを持ち運ぶ必要があるからである。また、携帯電話において見られるものなど、小型のスクリーンデバイスでは、スクリーンに表示されるいくつかのより小さな機能を選択するのに十分なスクリーン空間がないことがある。別の問題は、ディスプレイスクリーン上の小さなアイコンボタンまたはリンクの場合、ユーザがマウスカーソルを特定の場所に正確に配置するのが困難であり得ることである。
いくつかの実施形態が以下の図に関して説明される。
一実施形態によるディスプレイスクリーン上のユーザの右手の上面図である。 一実施形態によるディスプレイスクリーン上のユーザの右手の上面図である。 一実施形態によるディスプレイスクリーンの中央でのユーザの人差し指の上面図である。 一実施形態によるディスプレイスクリーンの左側でのユーザの手による右クリックの上面図である。 一実施形態によるディスプレイスクリーンの右側でのユーザの手の上面図である。 一実施形態によるディスプレイスクリーンの底部中央でのユーザの手の上面図である。 一実施形態によるディスプレイスクリーンの底部左端の上面図である。 一実施形態によるディスプレイの底部右端でのユーザの手の上面図である。 一実施形態による左マウスクリック操作の上面図である。 一実施形態による右マウスクリック操作の上面図である。 一実施形態によるフィルタの概略図である。 一実施形態によるフィルタドライバアーキテクチャの概略図である。 一実施形態による図12のフィルタドライバの概略図である。 一実施形態によるフィルタドライバステートマシンのフローチャートである。 一実施形態によるユーザによる仮想マウスモードのアクティブ化の上面図である。 一実施形態によるユーザによるカーソル移動コマンドの開始の上面図である。 一実施形態によるユーザによるカーソル移動コマンドの実施過程の上面図である。 一実施形態による左マウスクリック操作の上面図である。 一実施形態による右マウスクリック操作の上面図である。 一実施形態のフローチャートである。
フィルタは、タッチジェスチャ認識のためにタッチ入力ストリームに挿入され得る。いくつかの実施形態において、次に、ストリームがマウスエミュレータに切り替えられ得る。しかしながら、これらのコンセプトは、他の入力/出力デバイスにも拡張され得る。例えば、音声入力ストリームのフィルタは、音声認識に用いられ得るが、次に、ストリームを、音声検出変換を実行するキーボードエミュレータに切り替え得る。よって、タッチ入力ストリームに関連して後述される例は、本開示の範囲を限定するものとみなされるべきではない。
一実施形態において、タッチスクリーンは、異なるモードで動作し得る。ノーマルモードでは、スクリーンは、オペレーティングシステムにより定義される、1本の指によるジェスチャ、複数の指によるジェスチャおよびペン/スタイラスでのジェスチャならびに関連する全てのジェスチャに応答する。(以下に定義される)特定のジェスチャを検出すると、タッチスクリーンは、仮想マウスモードに入る。このモードでは、通常のタッチ応答は無効化され、タッチスクリーンが仮想マウス/タッチパッドのように動作する。全ての指が持ち上げられた場合、一実施形態において、タッチスクリーンは、直ちにノーマルモードに戻る。
本明細書において用いられるように、タッチ入力デバイスとは、複数の指が入力デバイスにタッチしていることを検出するマルチタッチ入力デバイスをいう。
一実施形態において仮想マウスモードを開始すべく、ユーザは、図1に示されるように、3本の指によるジェスチャを用いて、任意の3本の指でスクリーンにタッチする。一実施形態において、ユーザは、ジェスチャを数ミリ秒保持する。複数の指のうちの1本は、人差し指と呼ばれ、マウスカーソルを制御する。開始時の3本の指によるジェスチャにおいて、人差し指は、スクリーンにタッチしている3本の指の中央(3本の指の位置のx値を比較することにより分かる)の指Pである。人差し指は、他の複数の指の少なくとも1本より上にある。これにより、ユーザは、カーソルCを容易に見ることができる。ユーザは、人差し指をスクリーン上に保持して、仮想マウスモードに留まる。
ユーザは、単に人差し指をスクリーンのあちこちに移動させることにより、カーソルを移動させ得る。カーソルは、必ずユーザに見えるよう、わずかに距離をおいて人差し指の周りに位置する。これにより、カーソルは人差し指に繋がっているようにも見える。カーソルの正確な位置は、スクリーンでの人差し指の位置に依存する。
指による接触をマウス入力として用いることに伴う課題の1つは、カーソルがスクリーン全体をカバーするのを可能にすることである。これは端およびコーナー部を含む。このため、カーソルは、カーソルがスクリーンのどの部分にあるかに応じて、人差し指に対する異なる位置に動的に移動させられる。図2に示されるように、人差し指がスクリーンの中央より上にある場合、カーソルCは、中心が人差し指Pである仮想の半楕円E上方の中央に位置する。
スクリーンを横切って延びるX軸に沿った人差し指の位置に応じて、カーソルは、当該楕円の周上の異なる点に位置する。人差し指の接触点は、図2〜8において円Dで表される。人差し指がスクリーンの中央にある場合、カーソルCは、図3に示されるように、Dにある人差し指より上に位置する。人差し指がスクリーンの左端に近い場合、カーソルは、図4に示されるように、楕円に沿って人差し指の左に位置する。人差し指が右端に近い場合、カーソルは、図5に示されるように、楕円に沿って人差し指の右に位置する。人差し指がスクリーンの中央より下にある場合、Yオフセット(Yo)がカーソル位置のy値に加算されることを除き、カーソルは上述のように位置する。これにより、図6に示されるように、カーソルCはスクリーンの底部への到達が可能になる。
Yオフセットの値は、Y軸に沿った人差し指からスクリーンの中央までの距離に依存する。人差し指が上述の場合の間で移動する場合、カーソルは、半楕円の周全体を円滑に移動する。この方法により、図7および8に示されるように、カーソルは、ジャンプを行うことなく、コーナー部を含むスクリーンのどこへでも到達が可能になる。図7において、人差し指は、スクリーンの底部左部分にある。図8において、人差し指は、スクリーンの底部右位置にある。
仮想マウスモードである場合、ユーザは、人差し指以外の任意の指で左クリックおよび右クリックを実行し得る。図9に示されるように、ユーザの親指の下の同心円Eにより示される、人差し指の左側への任意のタッチは、左クリックとみなされる。ユーザの中指の下の同心円Fにより示される、人差し指の右側への任意のタッチは、図10に示される右クリックとみなされる。タッチおよびホールドはマウスボタンの押下とみなされ、リリースはマウスボタンの解放とみなされる。ユーザは、人差し指をスクリーンからリリースすることにより、または任意の指で4回以上タッチを行うことにより、(仮想マウスモードを終了して)タッチモードに戻り得る。
図11に示されるアーキテクチャ10は、グラフィックエンジンまたはグラフィクスプロセッシングユニットコア12でタッチデジタル処理を実行する。これにより、いくつかの実施形態において、より高い性能およびスケーラビリティを有するタッチ処理アルゴリズムを実行することが可能になる。タッチ処理アルゴリズムは、グラフィックカーネルに実装される。グラフィックカーネルは初期化中にロードされる。これらのカーネルは、一実施形態において、OpenCL(登録商標)コード14で記述される。
カーネルのシーケンスは、タッチデータのストリーミング時に実行される。タッチ集積回路(IC)18のベンダは、グラフィクスプロセッシングユニット(GPU)12内でタッチセンサ16からの生タッチデータを処理して最終的なタッチX−Y座標を生成するカーネル(アルゴリズム)20を提供する。このデータは次に、標準タッチヒューマンインターフェースデバイス(HID)パケット24としてオペレーティングシステム22に送られる。
このアーキテクチャにより、追加の後処理カーネルの連鎖が可能になり、これにより、OSに到達する前にタッチデータがさらに処理され得る。
図11に示されるように、仮想マウスは、後処理カーネル26に実装される。この後処理ソリューションにより、ベンダカーネルに拘わらず、汎用アルゴリズムが実行可能になる。後処理カーネルは、タッチICベンダに拘わらず実行されるので、独立系ハードウェアベンダ(IHV)に非依存である。データフォーマットにおけるベンダ間の差異を統一すべく、構成データは、全てのタッチICベンダにわたってデータを整合する。このファームウェアは、初期化中にロードされ、GPU上で実行され、かつ、オペレーティングシステムに一切依存しないので、オペレーティングシステムベンダ(OSV)非依存でもある。
後処理カーネルは、1つのカーネルから次のカーネルへのデータのフローを可能にする連鎖実行モデルに続く。これにより、前に処理されたデータに対するカーネルの実行が可能になる。各カーネルは、特定のオペレーティングシステムまたはタッチコントローラに適応するのに用いられ得る。カーネルの位置は、構成の一部として、ユーザにより特定される。ハードウェア上で動作する能力により、ソフトウェアスタックを表示させることなくこれらのアルゴリズムが動作することが可能になる。後処理カーネルは、ベンダカーネルと同時に動作する。これにより、データのコピーまたは後処理カーネルの実行のための一切の外部介入の必要がなくなる。仮想マウス機能に追加して、ジェスチャおよびタッチデータフィルタリングが後処理に実装され得る。
タッチコントローラ18は、生センサデータを取得し、当該データを、カーネル、OSまたはアプリケーションにより用いられ得る、クリーンなデジタル接触点情報に転換する。このデータはタッチHIDパケット24として送信される。OSに到達する前に、HIDパケットは、上述のようにGPU上で動作するカーネル20のシーケンスを通過する。
仮想マウスカーネルまたはタッチ/マウススイッチ30はステートマシンのように動作する。それは、仮想マウスのステータス(オンまたはオフ)、およびカーソルの位置に関連する他の情報を格納する内部状態を保持する。
仮想マウスカーネル26は、HIDパケットのストリームを入力として取得して、ジェスチャ認識25を実行して、仮想マウスモードを開始すべく用いられるジェスチャを検出する。仮想マウスモードではない場合、カーネルの出力はタッチHIDパケット24になる。仮想マウスモードである場合、タッチHIDパケットはスイッチ30によりブロックされ、カーネルの出力はマウスHIDパケット32になる。タッチHIDパケットまたはマウスHIDパケットは、スイッチ30におけるパケットのフィルタリングについて認識していないOS22に渡される。OSは次に、アプリケーション(APPS)34に基づいてマウスモードおよびタッチモードを処理する。
スクリーン上の人差し指の位置を考慮してマウス用の正確な座標を計算するアルゴリズムが、カーネル26内に構築される。
仮想マウスを実装する代替的な方法は、ドライバを通じてタッチデータ処理およびタッチフィルタリングを行うことである。ジェスチャ認識アルゴリズムおよびタッチHIDパケットのフィルタリングは、上述のものに非常に類似するであろう。しかしながら、ドライバを通じてこれを行うと、アルゴリズムがOSに依存したものになってしまうであろう。OSに依存したものだと、仮想マウス機能を実装するのにOSベンダとの連携が必要になる。
仮想マウスの使用をユーザにとってより直感的なものにすべく、システムが仮想マウスモードである場合、マウスの光透過オーバーレイ画像が表示されてもよい。ユーザがスクリーンの近くで指を左に持っていくと、タッチホバー機能を用いてそれが検出され、光透過画像が接触点の近くに現れて、このタッチにより左クリックが行われることになる旨をユーザに示唆する。同様に、指が近付くにつれて、異なる画像が右側に現れる。
上記のものの代替的な実装では、システムが仮想マウスモードになるとすぐに(すなわち、ホバー機能に依存することなく)、オーバーレイ画像は、左クリック領域および右クリック領域を示す。
仮想マウスのためのスクリーン全体の使用に代わるものとして、より小さい透過性の長方形が現れて、仮想タッチパッドのように動作してもよい。このタッチパッドは、OSまたはアプリケーションが表示しているコンテンツ上にオーバーレイされるであろう。ユーザはこのタッチパッドを用いて、それが物理タッチパッドであるかのようにマウスを制御する。仮想左右ボタンも提供されてよい。
仮想マウスは左クリックおよび右クリックに使用されている指を区別しないので、両手を使用することも可能である。システムが仮想マウスモードに入った場合、右手人差し指を使用してカーソルが移動され得、ユーザは左手で左クリックを行い得る。これはクリックおよびドラッグにも用いられ得る。ユーザは、人差し指カーソルで項目を選択し得、左手を使用してクリックし得、それをスクリーン上で保持しながら、右手人差し指をスクリーンのあちこちで移動させてドラッグ操作を行い得る。
また、アルゴリズムは、右利きの人と左利きの人とを考慮する。アルゴリズムは、3本の指によるジェスチャに基づいてそれを検出し、仮想マウスモードに入る。左利きの人のための指の配置は、右利きの人のための指の配置とは異なる。これは、今日の物理マウス操作方法に対する進歩である。ユーザは、マウスを右利き用または左利き用に用いるかを設定するのに選択(Windows(登録商標)コントロールパネル)を行わなければならない。仮想マウスの場合、これはオンザフライで操作され得る。
デバイスドライバを用いた一実施形態に従って、カーネルモードドライバは、仮想マウスデバイスを生成してオペレーティングシステム(OS)とインターフェースすることで、タッチパネルからイベントを取り込み、それらをマウスイベントに変換し、仮想マウスデバイスを通じてそれらをOSにエクスポーズする。また、マウスの動作を有効化/無効化および制御すべく、特定のタッチスクリーンでの指によるジェスチャのセットが定義される。
いくつかの実施形態において、ユーザは、スクリーン上でより正確にポイントし得、マウスムーブオーバーイベントをトリガし得、右クリックイベントを容易にトリガし得る。ユーザは外部マウスを持ち運ぶ必要がない。いくつかの実施形態の利点には、(1)いかなるマウスシミュレーションアプリケーションも手動で実行/停止することなく、マウスモードと通常タッチパネル動作モードとをシームレスに切り替えること、(2)ソフトウェアロジックがOSユーザモードモジュールに対して透過的であり、いかなるユーザモードのフレームワークにも依拠しないこと、および(3)使用体験が同じでありながら、Windows(登録商標)クラッシックデスクトップモードおよびModern (Metro) UIの両方をシームレスにサポートすることが含まれる。
よって、図19を参照すると、シーケンス80がソフトウェア、ファームウェアおよび/またはハードウェアに実装され得る。ソフトウェアおよびファームウェアの実施形態において、シーケンス80は、磁気記憶装置、光記憶装置または半導体記憶装置などの1または複数の非一時的コンピュータ可読媒体に格納されたコンピュータ実行命令により実装され得る。
図19を参照すると、仮想マウスシーケンス80は、ソフトウェア、ファームウェアおよび/またはハードウェアに実装され得る。ソフトウェアおよびファームウェアの実施形態において、仮想マウスシーケンス80は、磁気記憶装置、光記憶装置または半導体記憶装置などの1または複数の非一時的コンピュータ可読媒体に格納されたコンピュータ実行命令により実装され得る。
シーケンス80は、ひし形ブロック82において判定されるように特徴的なタッチが検出されたか否かを判定することにより始まる。例えば、特徴的なタッチは、仮想マウスモードに入る要望を示す、図15に描写される3本の指によるタッチであり得る。当該タッチが検出されなかった場合、フローは継続せず、デバイスは従来のタッチモードに留まる。
タッチモードの特徴が検出された場合には、ブロック84に示されるように、接触部の場所が判定される。具体的には、一実施形態において、中指がスクリーンに接触する、スクリーン上での場所が検出される。一実施形態において、この場所は、上端に近接する領域、下端に近接する領域、右端に近接する領域、左端に近接する領域、そして最後に中央領域、を含む、スクリーンの予め定められた領域であってよい。
次に、ブロック86に示されるように、人差し指に対するカーソル位置が接触部の場所に基づいて調整される。例えば、中央での接触が一実施形態において検出され、カーソル位置は、図3に示されるような向きになり得る。左端領域での接触が検出された場合には、カーソル位置は、図4に示されるように調整され得る。同様に、右端での接触が検出された場合には、カーソル位置は、図5に示されるように調整され得る。底端での接触が検出された場合、カーソル位置は、図6に示されるようになり得る。底部左端が検出された場合には、図7の構成が用いられ得、底部右端が検出された場合は、図8に示される構成が用いられ得る。同じ技術が上部左端および上部右端に用いられ得る。もちろん、ディスプレイスクリーン上に別個の領域を画定することに加えて、またはそれに代わるものとして、他の規定が用いられてもよい。
加えて、いくつかの実施形態において、指がスクリーンの中央より下または上のいずれかにある場合は、Yオフセットが加算される。いくつかの実施形態において、Yオフセットの値は、Y軸上での人差し指からスクリーンの中央までの距離に依存し得る。
別の実施形態によると、図12に示されるカーネルモードデバイスフィルタ(KMDF)ドライバ40は、タッチデバイスオブジェクトである物理デバイスオブジェクト(PDO)44とユーザ層サービス46との間に位置する。PDOは、Windows(登録商標)オペレーティングシステムにおけるロジカルデバイスを表す。フィルタドライバは、タッチベンダに非依存であるが、いくつかの実施形態において、Windows(登録商標)特有のものである。
このアーキテクチャは、ドライバ74を用いて、標準的なHID over I2Cプロトコルもサポートし得る。このアーキテクチャは、マウスドライバ70を用いて、物理マウスもサポートし得る。
このフィルタドライバは、タッチデバイスとユーザ層サービスとの間の全てのデータトランザクション、特に、外部タッチコントローラ48からのタッチイベントデータを取り込む。フィルタドライバは、このデータを処理し、タッチスクリーン上の予め定められた指によるジェスチャを認識し、次に、それらをマウスイベントに変換する。これらのイベントは、仮想HIDマウス物理デバイスオブジェクト(PDO)50およびHIDクラスドライバ72を通じてOSに送信される。
このフィルタドライバ40の内部アーキテクチャは、図13に示される。図13および図11に示されるアーキテクチャは、2つの異なるマウスオーバータッチソリューションを表わしている。図13は、セントラルプロセッサフィルタドライバベースのソリューションのアーキテクチャ設計を示す。このアーキテクチャ設計は、CPU上で動作するWindows(登録商標)ソフトウェアドライバに実装される。このアーキテクチャ設計は、図11に示されるカーネルを用いていない。このアーキテクチャ設計は、3つの主要な部分を含む。タッチイベントデータキャプチャコールバック60は、タッチデバイスオブジェクト44に対する全てのリクエストに登録されたコールバック機能、およびデータ抽出機能のセットである。これらの機能は、タッチデータで満たされたリクエストをタッチデバイスオブジェクトが完了するたびに呼び出される。これらの機能は、X/Y座標、タッチスクリーン上の指の数および個々の指の識別子を含む対象データを抽出し、当該データを次の受信モジュール68に送信する。また、データ転換・変換モジュール62からの仮想マウスアクティブの結果(はい/いいえ)に応じて、コールバックは、元のタッチイベントデータをOSに送信するか否かを決定する(ひし形ブロック66)。
タッチデータ転換・変換モジュール62は、予め定められた指によるジェスチャを認識し、それらをマウスデータに変換し、仮想マウスモードに入るか否かを決定する(ひし形ブロック66)、フィルタの主要ロジック部である。この部分は、図14に示されるように実装されるステートマシンである。
仮想マウスデバイスオブジェクトハンドラ64は、転換されたマウスイベントデータを受信し、当該データをHID入力レポートにパッケージ化してから、仮想マウスデバイスオブジェクト50を通じて当該レポートをOSに送信する。
一実施形態において、指によるジェスチャは、図15、16、17および18に示されるように仮想マウスと共に動作するよう定義される。図15に示されるように、3本の指がタッチスクリーン上である期間(例えば3秒)移動することなく留まっていると、タッチトゥーイベント変換がアクティブになる。これにより、フィルタドライバが元のタッチイベントデータをOSに渡すことが無効化される。タッチトゥー変換がアクティブになっている場合、タッチスクリーン上に3本の指を再び置くと、この変換が無効になり、元のタッチイベントデータを図13の受信モジュール68を介してOSに渡すことが可能になる。
1本の指のみがタッチしており、矢印Aにより示されるように移動した場合、マウスカーソルは、図16において矢印Bにより示されるようにスクリーン上を移動する。2本の指がタッチしており、矢印Cにより示されるように一緒に移動した場合、マウスカーソルは、図17において矢印Dにより示されるように左ボタン押下(アイコンIのドラッグアンドドロップ)がなされるかのように、矢印Bにより示されるように移動する。
図18Aおよび18Bにおいて円Tにより示されるように1本の指がタッチし、次に、別の指がタッチしてからある期間(例えば200ms)内に離された(タップ)場合、マウスボタンクリックイベントがトリガされる。右ボタンクリックまたは左ボタンクリックのどちらが意図されているかの認識は、タッピングしている指Fが左(図18A)または右(図18B)のどちらにあるかに依存する。
上述のようにタッチトゥーマウスイベント変換およびジェスチャをサポートすべく、一実施形態において、図14に示されるステートマシンは、図13のタッチデータ転換・変換モジュール62に実装される。
一実施形態において、図14に示される4つの状態がある。アイドル状態90では、タッチスクリーン上に指がなく、マウスイベントは生成されない。1本指状態92では、1本の指がタッチしているものと検出され、この指がタッチしたまま移動する距離および方向に従って、マウス移動イベントがOSに送信される。1本指から2本指に入る状態94では、1本指状態から2本の指がタッチしていることが検出される。しかしながら、これがユーザの指によるタッピングイベントであるか否かは不明である。そうであるので、フローはクリックタイムアウト(例えば200ms)を待機する。このタイムアウトの前にタッチスクリーン上で1本の指のみが再び検出された場合、フローは、1本指状態92に戻り、左/右ボタンクリックイベントをトリガする。このタイムアウトが生じた場合、当該状態は2本指状態96に変わる。2本指状態では、タッチスクリーン上で2本の指が検出され、これらの2本の指がタッチスクリーン上で移動する距離および方向に従って、カーソルが移動し、左ボタン押下イベントがOSに送信される。
加えて、一実施形態において、スキャンタイムアウト(例えば20ms)は、タッチスキャン間隔の2倍に等しい。このスキャンタイムアウトの後にタッチイベントが受信されない場合、ユーザは全ての指をスクリーンから離してしまっており、フローはアイドル状態に戻る。
いくつかの実施形態に従って、タッチスクリーンなどのタッチ入力デバイスは、2本以上の指で同時にスクリーンをタッチすることにより、マウスモードで操作され得る。一実施形態において、3本の指が利用されてもよい。一実施形態において、この3本の指は、親指ならびに人差し指および中指であり得る。その場合、人差し指および中指は、仮想マウスコマンドを入力すべく左クリックまたは右クリックするのに用いられ得る。
いくつかの実施形態において、システムは、複数の指によるタッチ入力デバイス上での同時タッチを検出し得る。3本の指によるスクリーンタッチコマンドの場合、システムは、左手または右手のどちらがデバイス上にあるのかと、3本の指の相対的な位置とを判定し得る。これが行われ得る一方法は、3つの接触点により画定される三角形の性質および特にその形状を解明し、このことから、ユーザの左手または右手のどちらがデバイス上にあるのかを判定することである。このような手の特定は、左クリックまたは右クリックのどちらが指示されているのかを判定する際に重要であり得る。一実施形態において、左クリックまたは右クリックは、左手または右手のどちらが使用されているかに応じて人差し指または中指のいずれかでスクリーンをタッピングすることにより、指示され得る。一実施形態において、左手人差し指は右の位置にあり、右手の人差し指は左の位置にある。それらの両方が左クリックである。そうであるので、いくつかの実施形態において、手の特定は重要であり得る。
以下の項目および/または例は、さらなる実施形態に関する。一例示的実施形態は、タッチ入力デバイス上での接触部を検出する段階と、上記接触部の場所を判定する段階と、上記接触部の上記場所に基づいて変化する、上記接触部に対する位置で、カーソルを表示する段階とを備える方法であってよい。方法は、上記接触部がスクリーン端に向かって移動することに応答して、上記接触部に対して中央により近い第1の位置から、上記接触部の中央により近くない第2の位置に上記カーソルを移動させる段階も含んでよい。方法は、スクリーン端への近さに基づいて、上記カーソルを、上記接触部を中心に移動させることも含んでよい。方法は、ベンダ非依存カーネルを用いて、タッチベンダカーネルから独立して動作するメカニズムを有効にする段階も含んでよい。方法は、初期化中にベンダ非依存カーネルをロードし、いかなるプラットフォームオペレーティングシステムにも依存することなく、上記ベンダ非依存カーネルをグラフィクスプロセッシングユニット上で実行する段階も含んでよい。方法は、仮想マウスデバイスオブジェクトを通じてマウス入力イベントをオペレーティングシステムにエクスポーズする段階も含んでよい。方法は、カーネルモードドライバを用いて上記仮想マウスデバイスオブジェクトを生成する段階も含んでよい。方法は、上記入力デバイスが、異なるヒューマンインターフェースデバイスパケットにそれぞれ関連付けられたタッチモードまたは仮想マウスモードのどちらであるかを検出することも含んでよい。方法は、未検出のモードの上記パケットをフィルタリングで除去する段階も含んでよい。方法は、仮想マウスモードを実装するためにドライバを用いる段階も含んでよい。
別の例示的な実施形態は、タッチ入力デバイス上での接触部を検出することと、上記接触部の場所を判定することと、上記接触部の上記場所に基づいて変化する、上記接触部に対する位置でカーソルを表示することとを含むシーケンスを実施すべく実行される命令を格納した1または複数の非一時的コンピュータ可読媒体を含んでもよい。上記媒体は、上記接触部がスクリーン端に向かって移動することに応答して、上記接触部に対して中央により近い第1の位置から、上記接触部の中央により近くない第2の位置に上記カーソルを移動させることを含む上記シーケンスを含んでもよい。上記媒体は、スクリーン端への近さに基づいて、上記カーソルを、上記接触部を中心に移動させることを含む上記シーケンスを含んでもよい。上記媒体は、ベンダ非依存カーネルを用いて、タッチベンダカーネルから独立して動作するメカニズムを有効にすることを含む上記シーケンスを含んでもよい。上記媒体は、初期化中にベンダ非依存カーネルをロードし、いかなるプラットフォームオペレーティングシステムにも依存することなく、上記ベンダ非依存カーネルをグラフィクスプロセッシングユニット上で実行することを含んでもよい。上記媒体は、仮想マウスデバイスオブジェクトを通じてマウス入力イベントをオペレーティングシステムにエクスポーズすることを含む上記シーケンスを含んでもよい。上記媒体は、カーネルモードドライバを用いて上記仮想マウスデバイスオブジェクトを生成することを含む上記シーケンスを含んでもよい。上記媒体は、上記入力デバイスが、異なるヒューマンインターフェースデバイスパケットにそれぞれ関連付けられたタッチモードまたは仮想マウスモードのどちらであるかを検出することを含む上記シーケンスを含んでもよい。上記媒体は、未検出のモードの上記パケットをフィルタリングで除去することを含む上記シーケンスを含んでもよい。上記媒体は、仮想マウスモードを実装するためにドライバを用いることを含む上記シーケンスを含んでもよい。
別の例示的な実施形態は、タッチ入力デバイス上での接触部を検出し、上記接触部の場所を判定し、上記接触部の上記場所に基づいて変化する、上記接触部に対する位置で、カーソルを表示する、プロセッサと、上記プロセッサに連結された記憶装置とを備える装置であってよい。上記装置は、上記接触部がスクリーン端に向かって移動することに応答して、上記接触部に対して中央により近い第1の位置から、上記接触部の中央により近くない第2の位置に上記カーソルを移動させる上記プロセッサを備えてよい。上記装置は、スクリーン端への近さに基づいて、上記カーソルを、上記接触部を中心に移動させる上記プロセッサを備えてよい。上記装置は、ベンダ非依存カーネルを用いて、タッチベンダカーネルから独立して動作するメカニズムを有効にする上記プロセッサを備えてよい。上記装置は、初期化中にベンダ非依存カーネルをロードし、いかなるプラットフォームオペレーティングシステムにも依存することなく、上記ベンダ非依存カーネルをグラフィクスプロセッシングユニット上で実行する上記プロセッサを備えてよい。
本明細書を通して、「一実施形態」または「実施形態」への言及は、当該実施形態に関連して説明される特定の機能、構造または特徴が、本開示に包含される少なくとも1つの実装に含まれることを意味する。よって、「一実施形態」または「実施形態において」という文言が用いられていても、必ずしも同じ実施形態に言及しているわけではない。さらに、特定の機能、構造または特徴は、図示される特定の実施形態以外の他の適切な形態で設けられてもよく、そのような形態は全て、本願の特許請求の範囲に包含され得る。
限定的な数の実施形態が説明されてきたが、当業者であれば、多数の修正形態および改変形態を理解するであろう。添付の特許請求の範囲が本開示の真の趣旨および範囲に含まれるそのような修正形態および改変形態の全てを対象に含むことが意図されている。

Claims (25)

  1. コンピュータ実装方法であって、
    タッチ入力デバイス上での接触部を検出する段階と、
    前記接触部の場所を判定する段階と、
    前記接触部の前記場所に基づいて変化する、前記接触部に対する位置で、カーソルを表示する段階と
    を備える、方法。
  2. 前記接触部がスクリーン端に向かって移動することに応答して、前記接触部に対して中央により近い第1の位置から、前記接触部の中央により近くない第2の位置に前記カーソルを移動させる段階を備える、請求項1に記載の方法。
  3. スクリーン端への近さに基づいて、前記カーソルを、前記接触部を中心に移動させる段階を備える、請求項1に記載の方法。
  4. ベンダ非依存カーネルを用いて、タッチベンダカーネルから独立して動作するメカニズムを有効にする段階を備える、請求項1に記載の方法。
  5. 初期化中に前記ベンダ非依存カーネルをロードし、いかなるプラットフォームオペレーティングシステムにも依存することなく、前記ベンダ非依存カーネルをグラフィクスプロセッシングユニット上で実行する段階を備える、請求項1に記載の方法。
  6. 仮想マウスデバイスオブジェクトを通じてマウス入力イベントをオペレーティングシステムにエクスポーズする段階を備える、請求項1に記載の方法。
  7. カーネルモードドライバを用いて前記仮想マウスデバイスオブジェクトを生成する段階を備える、請求項6に記載の方法。
  8. 前記入力デバイスが、異なるヒューマンインターフェースデバイスパケットにそれぞれ関連付けられたタッチモードまたは仮想マウスモードのどちらであるかを検出する段階を備える、請求項1に記載の方法。
  9. 未検出のモードのパケットをフィルタリングで除去する段階を備える、請求項8に記載の方法。
  10. 仮想マウスモードを実装するためにドライバを用いる段階を備える、請求項1に記載の方法。
  11. 1または複数の非一時的コンピュータ可読媒体であって、
    タッチ入力デバイス上での接触部を検出することと、
    前記接触部の場所を判定することと、
    前記接触部の前記場所に基づいて変化する、前記接触部に対する位置でカーソルを表示することと
    を含むシーケンスを実施すべく実行される命令を格納した、
    媒体。
  12. 前記シーケンスは、前記接触部がスクリーン端に向かって移動することに応答して、前記接触部に対して中央により近い第1の位置から、前記接触部の中央により近くない第2の位置に前記カーソルを移動させることを含む、請求項11に記載の媒体。
  13. 前記シーケンスは、スクリーン端への近さに基づいて、前記カーソルを、前記接触部を中心に移動させることを備える、請求項11に記載の媒体。
  14. 前記シーケンスは、ベンダ非依存カーネルを用いて、タッチベンダカーネルから独立して動作するメカニズムを有効にすることを含む、請求項11に記載の媒体。
  15. 前記シーケンスは、初期化中に前記ベンダ非依存カーネルをロードし、いかなるプラットフォームオペレーティングシステムにも依存することなく、前記ベンダ非依存カーネルをグラフィクスプロセッシングユニット上で実行することを含む、請求項11に記載の媒体。
  16. 前記シーケンスは、仮想マウスデバイスオブジェクトを通じてマウス入力イベントをオペレーティングシステムにエクスポーズすることを含む、請求項11に記載の媒体。
  17. 前記シーケンスは、カーネルモードドライバを用いて前記仮想マウスデバイスオブジェクトを生成することを含む、請求項16に記載の媒体。
  18. 前記シーケンスは、前記入力デバイスが、異なるヒューマンインターフェースデバイスパケットにそれぞれ関連付けられたタッチモードまたは仮想マウスモードのどちらであるかを検出することを含む、請求項11に記載の媒体。
  19. 前記シーケンスは、未検出のモードのパケットをフィルタリングで除去することを含む、請求項18に記載の媒体。
  20. 前記シーケンスは、仮想マウスモードを実装するためにドライバを用いることを含む、請求項11に記載の媒体。
  21. タッチ入力デバイス上での接触部を検出し、前記接触部の場所を判定し、前記接触部の前記場所に基づいて変化する、前記接触部に対する位置で、カーソルを表示する、プロセッサと、
    前記プロセッサに連結された記憶装置と
    を備える装置。
  22. 前記プロセッサは、前記接触部がスクリーン端に向かって移動することに応答して、前記接触部に対して中央により近い第1の位置から、前記接触部の中央により近くない第2の位置に前記カーソルを移動させる、請求項21に記載の装置。
  23. 前記プロセッサは、スクリーン端への近さに基づいて、前記カーソルを、前記接触部を中心に移動させる、請求項21に記載の装置。
  24. 前記プロセッサは、ベンダ非依存カーネルを用いて、タッチベンダカーネルから独立して動作するメカニズムを有効にする、請求項21に記載の装置。
  25. 前記プロセッサは、初期化中に前記ベンダ非依存カーネルをロードし、いかなるプラットフォームオペレーティングシステムにも依存することなく、前記ベンダ非依存カーネルをグラフィクスプロセッシングユニット上で実行する、請求項21に記載の装置。
JP2017527549A 2014-12-22 2014-12-22 マルチタッチ仮想マウス Active JP6641570B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2014/071797 WO2016105329A1 (en) 2014-12-22 2014-12-22 Multi-touch virtual mouse

Publications (2)

Publication Number Publication Date
JP2018503166A true JP2018503166A (ja) 2018-02-01
JP6641570B2 JP6641570B2 (ja) 2020-02-05

Family

ID=56151142

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017527549A Active JP6641570B2 (ja) 2014-12-22 2014-12-22 マルチタッチ仮想マウス

Country Status (7)

Country Link
US (1) US20160364137A1 (ja)
EP (1) EP3238008A4 (ja)
JP (1) JP6641570B2 (ja)
KR (1) KR102323892B1 (ja)
CN (1) CN107430430A (ja)
TW (1) TWI617949B (ja)
WO (1) WO2016105329A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021076959A (ja) * 2019-11-06 2021-05-20 レノボ・シンガポール・プライベート・リミテッド 情報処理装置及び情報処理方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014081104A1 (en) * 2012-11-21 2014-05-30 Lg Electronics Inc. Multimedia device for having touch sensor and method for controlling the same
US10088943B2 (en) * 2015-06-30 2018-10-02 Asustek Computer Inc. Touch control device and operating method thereof
CN105630393B (zh) * 2015-12-31 2018-11-27 歌尔科技有限公司 一种触摸屏工作模式的控制方法和控制装置
CN107728910B (zh) * 2016-08-10 2021-02-05 深圳富泰宏精密工业有限公司 电子装置、显示屏控制系统及方法
JP7022899B2 (ja) * 2016-12-27 2022-02-21 パナソニックIpマネジメント株式会社 電子機器、入力制御方法、及びプログラム
TWI649678B (zh) * 2017-11-08 2019-02-01 波利達電子股份有限公司 Touch device, touch device operation method and storage medium
JP6857154B2 (ja) * 2018-04-10 2021-04-14 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理システム、および、情報処理方法
CN113282186B (zh) * 2020-02-19 2022-03-11 上海闻泰电子科技有限公司 将hid触摸屏自适应成键盘鼠标的方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014048976A (ja) * 2012-08-31 2014-03-17 Nec System Technologies Ltd 入力表示制御装置、シンクライアントシステム、入力表示制御方法およびプログラム

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7489306B2 (en) * 2004-12-22 2009-02-10 Microsoft Corporation Touch screen accuracy
US7843427B2 (en) * 2006-09-06 2010-11-30 Apple Inc. Methods for determining a cursor position from a finger contact with a touch screen display
US20090207144A1 (en) * 2008-01-07 2009-08-20 Next Holdings Limited Position Sensing System With Edge Positioning Enhancement
US8754855B2 (en) * 2008-06-27 2014-06-17 Microsoft Corporation Virtual touchpad
EP2377031A4 (en) * 2008-12-05 2012-11-21 Social Communications Co REAL TIME CORE
US20100214218A1 (en) * 2009-02-20 2010-08-26 Nokia Corporation Virtual mouse
JP2011028524A (ja) * 2009-07-24 2011-02-10 Toshiba Corp 情報処理装置、プログラムおよびポインティング方法
WO2012047757A1 (en) * 2010-10-04 2012-04-12 Avocent System and method for monitoring and managing data center resources in real time incorporating manageability subsystem
US8839240B2 (en) * 2010-11-29 2014-09-16 International Business Machines Corporation Accessing vendor-specific drivers for configuring and accessing a self-virtualizing input/output device
TWM408737U (en) * 2011-01-12 2011-08-01 Dexin Corp Mouse device with touch panel
US9235340B2 (en) * 2011-02-18 2016-01-12 Microsoft Technology Licensing, Llc Modal touch input
US8643616B1 (en) * 2011-07-29 2014-02-04 Adobe Systems Incorporated Cursor positioning on a touch-sensitive display screen
US20130088434A1 (en) * 2011-10-06 2013-04-11 Sony Ericsson Mobile Communications Ab Accessory to improve user experience with an electronic display
EP2972714A4 (en) * 2013-03-14 2016-11-02 Intel Corp PROVIDING A HYBRID TOUCH PAD ON A COMPUTER DEVICE
US9558133B2 (en) * 2013-04-17 2017-01-31 Advanced Micro Devices, Inc. Minimizing latency from peripheral devices to compute engines
CN103324306A (zh) * 2013-05-11 2013-09-25 李隆烽 一种触屏计算机鼠标模拟系统及方法
CN105431810A (zh) * 2013-09-13 2016-03-23 英特尔公司 多点触摸虚拟鼠标
US20150091837A1 (en) * 2013-09-27 2015-04-02 Raman M. Srinivasan Providing Touch Engine Processing Remotely from a Touch Screen
CN103823630A (zh) * 2014-01-26 2014-05-28 邓湘 一种虚拟鼠标
US9678639B2 (en) * 2014-01-27 2017-06-13 Bentley Systems, Incorporated Virtual mouse for a touch screen device
US20160132139A1 (en) * 2014-11-11 2016-05-12 Qualcomm Incorporated System and Methods for Controlling a Cursor Based on Finger Pressure and Direction

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014048976A (ja) * 2012-08-31 2014-03-17 Nec System Technologies Ltd 入力表示制御装置、シンクライアントシステム、入力表示制御方法およびプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021076959A (ja) * 2019-11-06 2021-05-20 レノボ・シンガポール・プライベート・リミテッド 情報処理装置及び情報処理方法

Also Published As

Publication number Publication date
US20160364137A1 (en) 2016-12-15
TWI617949B (zh) 2018-03-11
EP3238008A4 (en) 2018-12-26
JP6641570B2 (ja) 2020-02-05
EP3238008A1 (en) 2017-11-01
CN107430430A (zh) 2017-12-01
WO2016105329A1 (en) 2016-06-30
TW201643608A (zh) 2016-12-16
KR20170095832A (ko) 2017-08-23
KR102323892B1 (ko) 2021-11-08

Similar Documents

Publication Publication Date Title
JP6641570B2 (ja) マルチタッチ仮想マウス
JP5730667B2 (ja) デュアルスクリーン上のユーザジェスチャのための方法及びデュアルスクリーンデバイス
US8355007B2 (en) Methods for use with multi-touch displays for determining when a touch is processed as a mouse event
CA2931604C (en) Touch event model
KR101361214B1 (ko) 터치스크린의 제어영역을 설정하는 인터페이스 장치 및 방법
US8581869B2 (en) Information processing apparatus, information processing method, and computer program
US20170255320A1 (en) Virtual input device using second touch-enabled display
US8452057B2 (en) Projector and projection control method
TW201531925A (zh) 多點觸控虛擬滑鼠
JP2014241139A (ja) 仮想タッチパッド
JP2013504794A (ja) 時間分離タッチ入力
KR20100108116A (ko) 터치 제스처 인식 장치 및 방법
US20110258566A1 (en) Assigning z-order to user interface elements
US20130181952A1 (en) Portable device and operation method thereof
JP2016062183A (ja) 情報処理装置、その制御方法、プログラム、及び記憶媒体
US10656746B2 (en) Information processing device, information processing method, and program
US20140298275A1 (en) Method for recognizing input gestures
US20170068321A1 (en) Gesture Interactive Operation Method
US20150153925A1 (en) Method for operating gestures and method for calling cursor
US20180059806A1 (en) Information processing device, input control method for controlling input to information processing device, and computer-readable storage medium storing program for causing information processing device to perform input control method
TW201610778A (zh) 虛擬鍵盤顯示系統及方法
WO2016206438A1 (zh) 一种触屏控制方法和装置、移动终端
TW201528114A (zh) 電子裝置及其觸控系統、觸控方法
US10540086B2 (en) Apparatus, method and computer program product for information processing and input determination
TW201710875A (zh) 觸控裝置的控制方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170724

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180918

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181218

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190930

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20191007

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: 20191203

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191209

R150 Certificate of patent or registration of utility model

Ref document number: 6641570

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250