CN102999218A - 用于多指针间接触摸输入设备的应用编程接口 - Google Patents

用于多指针间接触摸输入设备的应用编程接口 Download PDF

Info

Publication number
CN102999218A
CN102999218A CN2012105015502A CN201210501550A CN102999218A CN 102999218 A CN102999218 A CN 102999218A CN 2012105015502 A CN2012105015502 A CN 2012105015502A CN 201210501550 A CN201210501550 A CN 201210501550A CN 102999218 A CN102999218 A CN 102999218A
Authority
CN
China
Prior art keywords
input
display
equipment
computer system
module
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
CN2012105015502A
Other languages
English (en)
Other versions
CN102999218B (zh
Inventor
S.洪吉
P.米尔萨普
金子雅彦
E.赫本斯特雷特
M.德斯坎普
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN102999218A publication Critical patent/CN102999218A/zh
Application granted granted Critical
Publication of CN102999218B publication Critical patent/CN102999218B/zh
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/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
    • 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
    • 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
    • G06F3/04166Details of scanning methods, e.g. sampling time, grouping of sub areas or time sharing with display driving
    • 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

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

为了允许计算机平台为应用提供一致的接口以使用来自多点间接触摸输入设备的信息,一种应用编程接口被提供给软件接口层,该软件接口层管理系统与多指针间接触摸输入设备的各种例示的交互。

Description

用于多指针间接触摸输入设备的应用编程接口
背景技术
用于计算机系统的导航和空间控制的手动输入设备对计算机系统的能力和用户的总体体验具有显著影响。存在若干种手动输入设备。这些用于个人计算机的最常见的手动输入设备包括单指针、间接交互设备(比如鼠标或触控板)和直接交互设备(比如触摸屏)。
单指针、间接交互设备传感器检测用户与该传感器的交互并将该交互映射到显示器上的某个位置。将输入的点映射到显示器的一种方法涉及传感器范围到显示器的范围的一一映射,这被称为绝对映射。采用绝对映射的设备的示例是笔和触摸数字化仪。另一种方法涉及将设备传感器坐标映射到显示器的可移动子部分,这被称为相对映射。
采用相对映射的设备的示例是鼠标和诸如轨迹板之类的模仿鼠标的设备。鼠标感测移动,该移动基于所感测的与设备的交互而将假设的开始位置移位一定距离。轨迹板通常以与鼠标相似的方式使用。感测接触在轨迹板上的运动,并且以与鼠标输入相似的方式处理所感测的运动。
直接交互设备允许与在视觉上与显示器对准的设备交互。直接交互设备使用绝对映射在触敏表面上的位置与在相同尺寸的显示器上的位置之间进行映射。例如,当用户触摸触摸屏上的点时,输入事件可以在对应于由用户触摸的显示器上的点的位置处触发在用户接口中的诸如命令致动之类的应用响应。
来自多指针输入设备的空间输入到显示器的绝对和相对映射具有选择性的优点和缺点,这取决于输入和显示设备的物理属性、系统的能力、应用用户接口的性质和布局、用户正在执行的任务的类型以及各种人体工程学因素。
大多数输入设备除了它们的位置信息之外具有按钮。例如,双状态机械按钮在鼠标上是普遍的。笔数字化仪典型地在尖端也具有一些压力响应设备。用于笔数字化仪的大多数软件驱动器在处理尖端相关数据的过程中实现了鼠标模仿的形式。同样,按钮和其他机构一般地被作为输入设备的独立输入来处理。
输入设备可以被制作成各种形状和尺寸,可以具有相互不同的分辨率,并且可以提供各种数据作为计算机的输入。
发明内容
本发明内容被提供以通过简化形式介绍下面在具体实施方式中进一步描述的概念的选择。本发明内容不旨在标识要求保护的主题的关键特征或必要特征,也不旨在用于限制要求保护的主题的范围。
为了允许计算机平台为应用提供一致的接口以使用来自多点间接触摸输入设备的信息,将应用编程接口提供给软件接口层,该软件接口层管理系统与各种多指针间接触摸输入设备的例示的交互。
这种主机设备可以提供多个能力,比如:在该主机系统的物理附件上触摸控制器类设备的发现和绑定;用于在控制器与主机系统之间传达设备能力、触摸数据和设备模式变化的软件驱动器和仅硬件接口;由触摸控制器发射的无状态输入事件变换成一个或多个用户或应用-可选择的触摸交互模型;对触摸控制器设备、设备连接和用户交互状态的全局管理;用于触摸设备控制器的基础系统要求的实施;用于用户设备配置设定的公共接口;对特定于设备的、增值交互模型的支持;对主机和设备安全环境的管理;用于触摸控制器主机的部署和服务模型。
在下面的描述中,参照形成其一部分的附图,并且在附图中通过图解说明示出该技术的特定的示例实现方式。应当理解,可以利用其他实施例,并且可以进行结构改变而不脱离本公开的范围。
附图说明
图1是使用多指针间接触摸设备的示例系统的框图。
图2是图解说明视口安置的示例实现方式的流程图。
图3是图解说明接触映射的一个示例实现方式的流程图。
图4是图解说明接触映射的另一个示例实现方式的流程图。
图5是图解说明接触加速的示例实现方式的流程图。
图6是图解说明跨度调节的示例实现方式的流程图。
图7是在其中实现这种系统的示例计算设备的框图。
图8是用在用于实现这种系统的这种计算设备上的示例软件架构的框图。
具体实施方式
下面的部分提供示例操作环境,在该示例操作环境中可以使用间接触摸输入设备。在结合图1-6描述了多指针间接触摸设备的使用的示例实现方式之后,接着将结合图7和图8描述示例软件架构。
参照图1,计算机系统100包括具有传感器的多指针、间接输入设备102,其连接到计算机平台104(其示例的细节在下文中描述)。这种计算机系统可以是个人计算机、家庭娱乐系统、投影仪、一体机(kiosk)应用、紧凑的个人电子产品等等。计算机平台具有操作系统,其管理一个或多个应用108与计算机平台104的诸如包括所述多指针间接输入设备的其外围设备之类的资源之间的交互。
在操作系统内,从多指针间接输入设备102的传感器接收描述多个感测的输入点110的数据。这些输入点被处理以将它们映射到显示器120上的点。
该映射过程涉及确定设备坐标系统到显示器坐标系统的初始映射(该初始映射可以是相对或绝对的)并且于是涉及来自设备坐标系统的每个点到显示器坐标系统的映射。这种初始映射发生在每个输入会话的开始。
输入会话是从由传感器检测到第一个输入的时间点到从传感器移除最后一个输入的时间点。在输入会话期间,输入点有可能移动。输入点被从传感器坐标系统中它们的新地点映射到显示器坐标系统中对应的新地点。该移动映射可以考虑到诸如定界和加速之类的问题。
如图1所示,在输入会话开始处,多个点110被输入到视口选择模块130。视口选择模块提供作为其输出的显示器坐标系统中的视口尺寸和地点132。视口限定了传感器坐标空间被映射到的显示器坐标空间中的区域。在其中多个设备传感器连接到系统的配置中,每个传感器具有它自己的视口。视口可以具有与输入设备传感器的形状对应的形状。然而,在一些实现方式中,视口可以具有不同于传感器的纵横比或取向,或者甚至不同的形状。例如,椭圆体传感器可以被映射到矩形视口。视口的形状典型地由主机系统限定,但是也可以由设备或用户限定。当用户输入被传感器检测到时,计算视口的尺寸和位置。当没有用户输入被传感器检测到时,视口的尺寸和位置是不确定的。视口典型地不被显示给用户。视口的形状、尺寸和位置一起表示传感器坐标系统到显示器坐标系统的映射。设定134确定该映射如何进行,比如通过相对还是绝对映射来进行,下面更详细地描述其示例。
贯穿输入会话,多个点110也被输入到输入映射模块140。该输入映射模块提供显示器坐标系统中的多个点142作为其输出。设定134确定每个点被如何映射,比如通过确定设备和显示器参考地点用于解释相对输入位置、应用输入运动加速、跨度调节和定界条件来确定,下面更详细地描述其示例。
给定映射到显示器坐标系统的多个点,所述多个点142可以被显示在显示器上。每个点可以由操作系统106和/或应用108以相似于任何单个点的方式(例如用于选择显示的项目)、或以相似于来自直接触摸输入传感器的多个点的方式(例如影响主机系统用户接口中元件的缩放、旋转或移动)来处理。所述多个点一旦被映射到显示器,则所述多个点可能的使用范围不限制本发明。
给定该环境,现在将结合图2-4更详细地描述多个点到显示器的映射的示例实现方式。
在图2中,流程图描述了关于由视口选择模块可以如何选择视口尺寸和地点以及随后如何可以映射点的示例实现方式。
应当注意,下面的实现方式基于关于期望的用户体验的某些设计决策。例如,假设在投影到显示器时,每个物理输入相对于其他物理输入的相对位置被保持。还假设所有输入之间的距离被对称地缩放。
用户体验的另一个方面是输入设备与显示器之间的映射的种类。该映射可以是绝对的或相对的,并且对于每个轴而言可以是独立的。例如,相对映射可以应用到y轴,绝对映射应用到x轴,或反之亦然。同样,两个轴可以使用不同的相对映射。映射还可以基于输入设备和显示器的逻辑坐标或物理维度。如果映射基于设备的物理维度,则空间精度得到改进,从而提供更直观和认知高效的接口。关于映射的种类的这些决策在系统中可以是可选的设定。
用户体验的另一个方面是定界策略。特别地,设备输入可以受到针对系统的显示器定界策略的制约。例如,所有设备输入可以被强迫保持在显示器内,或者来自该组的仅一个设备输入可以被强迫保持在显示器内。另一个实现方式不使用任何定界策略。关于定界策略的这些决策在该系统中可以是可选的设定。
视口尺寸和地点在每个输入会话开始处确定。例如,在没有用户输入的时段之后当一个或多个输入点被传感器检测到时,检测200输入会话的开始。每个轴中的视口维度可以由输入设备、主机系统或用户来限定。维度可以被表达为目标显示设备的百分比或以距离的物理单位表达。对于要被使用的距离的物理单位,由例如设备、用户输入或其他装置提供输入传感器和显示器二者的物理的和逻辑的(坐标)范围。然后,取回201输出定位符在显示器坐标空间中的位置。在该实现方式中,输出定位符位置对用户会话(其在用户登录时开始并且在用户注销时结束)而言是全局的。输出定位符位置在连接到系统的多个单指针输入设备和多指针输入设备之间被共享并且由它们更新。输出定位符可以是从先前的输入会话保存的位置。如果不存在先前的输入会话,则显示设备的中心、鼠标或其他设备的最后的位置或可替代的默认显示器地点可以被用作为输出定位符位置。
接下来,给定显示设备和输入设备的已知的参数(即坐标和边界),确定202用于每个轴的缩放因子。这些参数典型地被存储在存储器中。在显示设备的情况下,可以使用系统API取回参数。在输入设备的情况下,可以经由设备询问取回参数。给定显示器和输入设备的坐标和边界,确定缩放因子。如果使用绝对映射,基于物理范围的计算不是必需的,并且x和y轴缩放因子基于设备和显示器坐标范围的一比一的比率。如果使用相对映射,则x和y轴缩放因子由设备维度与显示器坐标中的视口维度的比率确定。缩放因子可以被计算一次、存储在存储器中且在需要时被取回。
使用所确定的缩放因子确定203显示器坐标空间中的视口范围,即其顶点的x和y坐标。在新的输出定位符被如下计算之前,最初使用保存的输出定位符针对输入会话确定视口范围。
对于使用显示器的像素密度的缩放的视口,缩放因子SV是介于0与1之间的非零正值,并且视口的范围Rv=
{     LV0x–SVx/[2*范围(RDx)],
        LV0x + SVx/[2*范围(RDx)],
        LV0y–SVy/[2*范围(RDy)],
LV0y+SVy/[2*范围(RDy)]  }, 其中LV0 是初始视口定位符,典型地为目标显示器的中心,SV是缩放因子且范围(RD)是显示器的x和y 坐标范围, 即其像素宽度和高度,并且下标x和y指示x和y轴上的那些值。
对于使用物理维度的视口, 其中期望的尺寸SV 是不大于目标显示器的物理范围的非零正值, 且显示器的像素密度D是经由硬件询问而得知的,视口的范围 Rv =
{     [LV0x–SVx/[2*范围(RDx)]] * Dx + RDx.左,
       [LV0x+[SVx/[2*范围(RDx)]] * Dx + RDx.左,
       [LV0y–[SVy/[2*范围(RDy)]] * Dy + RDy.上,
       [LV0y+SVy/[2*范围(RDy)]] * Dy + RDy.上 }。
给定视口的初始范围, 然后最初在设备坐标系统中确定204传感器定位符。存在许多选择传感器定位符的方式,并且所选的特定方式取决于期望的用户交互。例如,如果存在被传感器检测到的单个输入,传感器定位符可以是该单个输入的坐标。如果存在多个输入,则传感器定位符可以是单个“主要”输入的位置,或具有与其他输入的特定关系的点,比如所有输入的几何中心。当没有输入点被检测到且在输入会话之间未持续时,传感器定位符是不确定的。
当主要输入的位置被用作传感器定位符时,各种方法之一可被使用来选择主要地位并且将其分配给该输入。一般地,“主要”输入是通过任何方法从其他输入点中选择的输入点。例如,主要输入可以是在会话中检测到的第一个输入或最后一个输入。该方法具有以下缺陷:在多个输入同时到达的情况下强制任意选择。一种解决方案是通过几何排序的形式选择主要输入,比如根据几何排序公式(其可以是交互相关的)的最高次序输入。例如,排序公式可以将由每个输入点相对于在所有输入的几何中心处的原点和参考点形成的角度进行排序。参考点可以是例如具有基于用户的左或右利手测量的角度的垂直线。
不管方法如何,传感器定位符确定可能受到输入的到达和离开的时间影响。为了保护免受其中用户倾向于同时到达或离开多个输入但却取而代之在稍微不同的时间出到达或离开它们的条件,小时间窗(例如,10-60 ms)可以被用来延迟传感器定位符计算。
接下来,传感器定位符位置被从设备坐标映射205到显示器坐标。结果是用于该帧的新的输出定位符位置。该位置可以通过[LS/范围(RS)*范围(RV)] + RV0来计算,其中LS 是传感器定位符的 x或y坐标,范围(RS)是传感器坐标空间的宽度或高度,且范围 (RV)是视口的宽度或高度,且RV0初始视口的宽度或高度。该新的输出定位符被限制在显示器的边界内。
给定新的输出定位符,视口于是通过获得206视口定位符而被置于显示器坐标空间中。针对会话的第一帧,确定视口位置;在后续帧中,从存储器中取回它。视口的位置在逻辑上被确定,这意味着是否显示视口是可选的。实际上,在大多数实现方式中,不实际显示视口有可能是优选的。
如上所记录的, 视口是输入传感器坐标空间在显示器上的投影, 并且在显示器坐标中视口定位符位置是视口的几何中心。同样如上所记录,不同于输出定位符,当没有输入被传感器检测到时,视口是不明确的。它与特定的设备实例相关联(而不是针对用户会话的全局),并且当用户最初将输入放置在传感器上时其位置得到更新。在输入会话开始之后且直到输入会话结束,视口在帧之间保持固定。如果帧表示输入会话的持续(来自先前和当前的帧二者的输入点的列表不是空的),则从存储器取回视口定位符。如果帧发起新的输入会话,则通过确定传感器定位符(步骤205中确定的)与输出定位符位置(步骤201中确定的)之间的偏移来获得视口定位符,如下。  
ΔLD = LD–LD0
LV = [LS/范围(RS)*范围(RV)] + LV0 +ΔLD
LV于是被限制于目标显示器的边界,并且使用新视口定位符重新计算上面所确定的视口的范围。
在计算传感器定位符、视口定位符和用于帧的输出定位符之后,用于该帧的传感器输入然后被以在下面更详细描述的方式映射208到显示器坐标。如果如在210处确定输入会话结束,则一些关于输入会话的信息可以被保存212(比如最后一个输出定位符)。如果输入会话尚未结束以及如果更新的传感器输入位置被接收(如在214处确定的),则该过程通过将这些新传感器输出映射208到显示器而重复确定 用于帧的传感器定位符204。然而,在帧是连续会话的一部分的情况下,视口定位符不在步骤206中确定,而是从存储器中被取回。
图3描述了给定视口尺寸和地点时,传感器输入如何被映射到视口中的点,包括单个显示器上边界条件的实施(如果相对映射被进行)。图3描述了其中所有输入被限制成在显示器内的情况。
系统接收300来自设备的输入点的列表,每个输入点具有在设备坐标空间中的坐标。接下来,输入点被映射302到显示器坐标空间中它们对应的点。例如, 设备坐标空间中的点CS的在显示器坐标空间中的坐标CD可以通过[CS/范围 (RS) * 范围 (RV)] + RV来计算。
限定304包含输入点的定界框。定界框的拐角被映射到显示器的视觉范围并与之比较306。如果定界框的拐角没有一个在显示器的视觉区域之外,则保留310输入映射。否则,确定312用于将定界框移动到显示器的视觉范围内的偏移。在计算最小补救偏移的过程中,输入定界框的每个不一致的拐角的先前与当前帧之间的位移矢量或各个输入限定了与可见的显示器边界交叉的路径和其点。补救偏移是路径的原点与交叉点之间的位移。该偏移被应用314到点以将它们重新映射到显示器的视觉区域内的新位置。
在另一个实现方式中,所述点被限制使得来自设备的至少一个输入点保持被显示。在图4中,系统接收400来自设备的输入点列表,每个输入点具有在设备坐标空间中的坐标。接下来,输入点被映射402到显示器坐标空间中它们的相应的点。限定404包含输入点的定界框。然后将定界框的拐角与显示器的视觉范围进行比较406。如果定界框的拐角的至少一个保持在显示器的视觉区域中,则保留410输入映射。否则,确定412用于将定界框的至少一个点移动到显示器的视觉范围内的补救偏移。接下来,距所包含的拐角的最近的输入的偏移被确定并被应用414到补救偏移。该更新的补救偏移被应用416到点以将它们重新映射到显示器的视觉区域内的新位置。
对于多个监视显示器,所述过程是类似的。存在规则的显示器拓扑,其中显示器的可见区域的并集(union)是没有内部空隙的单个的、矩形的、“虚拟的”显示器。对于规则的显示器拓扑,到虚拟显示器表面的边界的多个输入的定界与针对单个显示器的情况相同。还可以存在不规则的显示器拓扑,其中显示器的可见区域的并集是具有凸或凹内部空隙的直线的虚拟显示器。对于这些显示器拓扑,前述方法可以用来计算和应用补救偏移。
然而附加的故障情况是,在点位于凸和凹内部空隙之一中的情况下,仅包含显示器的视觉区域之外的那些点的定界框可被计算,并且被用于计算补救偏移。在此情况下,定界框被计算以包含没有映射到显示器的可见区域的输入点,这里被称为不一致的定界框。计算最小补救偏移,由此来确保不一致的定界框的至少一个拐角包含在显示器的可见部分内。该补救偏移被应用于针对所有输入的设备-显示器变换。
现在将描述用于多个监视器的边界条件的更具体的示例实现方式。
在该示例中,对于每个输入,目标定界显示器(RD,目标)以下述方式确定。首先确定输入位置CD是否没有包含在虚拟显示器表面的可见区域内。如果它没有包含在内,则取回用于先前帧的输入的显示器RD0的坐标。对于表示新会话的帧,这些坐标用包含输出定位符位置LD的显示器的那些坐标来代替。接下来,确定输入CD是否保持在x或y轴中由RD0定界。如果在任一轴中遵从正检验,则目标定界显示器是显示器RD0。否则,所述输入在显示器RD0的边界之外。然后,针对该输入确定传感器坐标中的位移矢量ΔSS:ΔSS = CS–CS0。取回传感器的范围,范围(RS)。确定位移的主导轴。如果,|ΔSSx/范围(RSx)| >= |ΔSSy/范围(RSy)|,则X轴主导。否则,Y轴主导。
输入位移的主导轴然后被用于确定目标定界显示器。如果X轴是主导,则目标定界显示器RD,目标是满足以下条件的显示器:1. 输入落在显示器的水平距离中;2. 目标显示器在输入的主要移动方向上并且与最后一个显示器共享边界;以及3. 最后一个输入位置落入显示器的竖直距离内。如果Y轴是主导,则目标定界显示器RD,目标满足以下条件:1. 输入落在显示器的竖直距离中;2. 目标显示器在输入的主要移动方向上并与最后一个显示器共享该边界;以及3. 最后一个输入位置落入显示器的水平距离内。
如果目标定界显示器不能使用主导方向来确定,则在非主导的方向上执行搜索。如果目标定界显示器仍未找到,目标显示器是输入的先前显示器。
给定用于输入的目标定界显示器,输入被夹持到该显示器,并且计算并存储夹持偏移。该夹持偏移被应用到所有输入,使得它们之间的相对距离得到维持。在以此方式调节输入之后,所有输入被再次检验以确保它们处在显示器的可见部分上。
在一些交互模式中,允许少量时间来实现用户的意图以利用传感器同时产生多个输入。当观察到会话的第一输入时,激活计时器并且到达输入被标记不活动,并且推迟传感器定位符确定直到计时器期满,或者在到达输入被移除的情况下终止。同样地,用户可能期望同时离开输入。为了实现该意图而不影响传感器定位符位置,可以使用计时器。该计时器被激活,并且离开输入持续包括在传感器定位符计算中直到计时器期满。
在前面的描述中,在相对和绝对映射模式二者中,输入点被直接映射到显示器坐标。然而,在相对映射模式中,输入设备只能跨越目标显示器坐标空间的子集。因此,从一个显示器地点到另一个地点的导航可以涉及多个行程,除非在输入点的移动被检测时应用点的一些形式的加速。相反地,为了实现像素-等级、点对点目标精度,可以应用点的减速的形式。这种加速和减速,有时被称为“指针发射(pointer ballistics)”,可以以下述方式应用于多输入、间接输入设备。在来自设备坐标空间的输入点到显示器坐标空间的映射中考虑输入点在输入设备上的位移,以根据具体情况加速或减速点在显示器上的移动。一般地,确定输入点的位移的度量。该位移是一种函数的输入,该函数基于该位移确定如何改变输入设备点到它们的对应的显示器坐标的映射。
在一个实现方式中,确定每个输入点的位移。具有最低幅值位移矢量的输入的传感器像素中的物理位移通过加速度曲线变换以产生单个加速的显示器位移,并且这被应用到输出定位符和所有点的显示器位移。到加速函数的输入可以是矢量幅值或用于每个轴的值,其可以被输入到两个不同的加速函数。现在将结合图5来描述该实现方式。
首先,从第一和第二时间点接收500输入传感器上的输入点。注意到,如何唯一地识别和跟踪移动或固定输入(在本领域被称为“输入识别和跟踪”)是特定于设备和传感器的。本发明不限于任何特定的输入识别和跟踪技术。可以使用已被发现在本领域适合的用于这种识别和跟踪的任何技术。
然后,确定502在一定的时间间隔内每个输入的每个维度中设备坐标(即像素)的位移。如果已知该时间间隔是恒定的,则可以单独使用该位移。否则,该时间间隔可以用于计算速度。
对于输入的每个时间间隔或“帧”,识别504具有最小幅值位移或速度的输入。具有最小幅值的输入被选择(例如,而不是平均或最大),使得在输入传感器上保持固定的输入在被映射到显示器上时保持固定。
所识别的输入的位移可以使用传感器的像素密度而从像素中的位移转换成物理位移。位移值被用作到加速函数的输入以将该值变换506成加速的位移。本发明不受所使用的特定加速公式的限制。可以使用本领域当前使用的任何合理的技术,比如用于鼠标指针加速的技术。本发明一般地可以应用于允许每个坐标轴(x,y或z)的独立加速的任何加速公式。可以使用将位移值映射到加速的位移值的分段线性函数来实现适当的变换。加速的位移值如果基于物理维度可以被向回转换成像素坐标。
然后,将加速的位移转换508成显示器坐标空间中的加速的位移。例如,该转换可以被表达如下:△CD = [△CS/范围(RS)*范围 (RV)] + RV。然后通过加速的位移调节510映射到显示器坐标的每个输入位置。
对于绝对映射维度,可以使用被称为跨度调节的类似过程,如结合图6所描述。在图6中,确定600来自传感器定位符的每个输入在设备坐标空间中的像素中的位移。选择602最小位移。使用设备的像素密度将该最小位移值转换604成物理维度。使用任何合适的变换将物理维度中的最小位移值变换606成跨度调节值。适当的变换可以类似于加速变换,比如将位移值映射到跨度调节值的分段线性函数。将该跨度调节值向回转换608成像素值。类似于加速,于是将跨度调节值被变换610成显示器像素值,并且使用该值调节612每个输入点。
应当注意,在应用确保输入点保持在可见显示区域中的边界条件之前,进行对输入点的加速和跨度调节修改。
现在已经描述了示例实现方式,现在将描述这种系统被设计来在其中操作的计算环境。下面的描述旨在提供对该系统可以在其中实现的适当的计算环境的简短、一般的描述。该系统可以利用众多通用或专用计算硬件配置来实现。可能适当的众所周知的计算设备的示例包括但不限于,个人计算机、服务器计算机、手持式或膝上型设备(例如,媒体播放器、笔记本计算机、蜂窝电话、个人数据助理、录音机)、多处理器系统、基于微处理器的系统、机顶盒、游戏控制台、可编程消费型电子产品、网络PC、小型计算机、大型计算机、包括上述系统或设备中任何一个的分布式计算环境等等。
图7图解说明了适当的计算系统环境的示例。该计算系统环境仅是适当的计算环境的一个示例并且不旨在暗示关于这种计算环境的用途或功能的范围的任何限制。所述计算环境也不应当被解释为具有与在示例操作环境中图解说明的组件的任何一个或组合有关的任何依赖性或要求。
参照图7,示例计算环境包括计算机器,比如计算机器700。在其最基本的配置中,计算机器700典型地包括至少一个处理单元702和存储器704。该计算设备可以包括多个处理单元和/或附加的协同处理单元,比如图形处理单元720。取决于计算设备的确切配置和类型,存储器704可以是易失性的(比如RAM)、非易失性的(比如ROM、闪存等)或这二者的组合。该最基本的配置在图7中用虚线706图解说明。此外,计算机器700还可以具有附加的特征/功能。例如,计算机器700还可以包括附加的存储装置(可移动的和/或不可移动的),其包括但不限于磁的或光学的盘或带。这种附加的存储装置在图7中用可移动存储装置708和不可移动存储装置710来图解说明。计算机存储介质包括以用于存储诸如计算机程序指令、数据结构、程序模块或其他数据之类的信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。存储器704、可移动存储装置708和不可移动存储装置710都是计算机存储介质的示例。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光学存储装置、盒式磁带、磁带、磁盘存储装置或其他磁存储设备、或可以用于存储期望的信息并可以由计算机器700访问的任何其他介质。任何这样的计算机存储介质可以是计算机器700的一部分。
计算机器700还可以包含允许设备与其他设备通信的(多个)通信连接712。(多个)通信连接712是通信介质的示例。通信介质典型地在诸如载波或其他传输机制之类的已调制数据信号中携带计算机程序指令、数据结构、程序模块或其他数据,并且包括任何信息递送介质。术语“已调制数据信号”意指这样的信号,该信号已经将其特性中的一个或多个以这样的方式设置或改变:以使得在该信号中编码信息,从而改变信号的接收设备的配置或状态。通过举例而非限制,通信介质包括诸如有线网络或直接布线连接之类的有线介质和诸如声学、RF、红外和其他无线介质之类的无线介质。
计算机器700 可以具有(多个)各种输入设备714,比如键盘、鼠标、笔、相机、触摸输入设备等等。诸如显示器、扬声器、打印机等等之类的(多个)输出设备716也包括在其中。所有这些设备在本领域是众所周知的并且不需要在这里详细讨论。
系统可以在软件的一般环境中实现,包括由计算机器处理的计算机可执行指令和/或计算机解释的指令,比如程序模块。一般地,程序模块包括在被处理单元处理时命令处理单元执行特定任务或实现特定的抽象数据类型的例程、程序、对象、组件、数据结构等等。该系统可以在其中由通过通信网络链接的远程处理设备执行任务的分布式计算环境中实践。在分布式计算环境中,程序模块可以位于包括存储器存储设备的本地的和远程的计算机存储介质中。
现在将结合图8描述特定示例软件架构。一个或多个间接触摸设备800可以通过USB/HID接口802而连接到计算机平台。这些间接触摸设备中的每一个具有与其相关联的触摸控制器接口对象804,其可以被实现为由操作系统作为用户-级服务安装的动态链接库。接触识别模块806可以被提供以提供用于对来自输入设备的传感器数据进行低级处理,以便针对每个帧提供接触的列表和这些接触的属性。该模块可以是软件库806或固件实现的库806a。
触摸控制器接口对象804具有以下方法。一种开放方法允许呼叫者打开并初始化设备以用于跟随设备附件的数据传送。一种关闭方法允许呼叫者关闭设备,其涉及清理跟随的物理移除。一种查询方法取回设备数据。该设备数据由触摸控制器接口对象存储为一个或多个数据结构。该设备数据可以包括诸如支持的设备模式、传感器维度和分辨率、接触的最大数量、压力进入/退出阈值之类的信息。一种得到方法使得对象传送无状态接触描述符的阵列、状态信息(比如锁定的状态地位)和帧时间信息。一种设置方法使得对象进入一组模式的其中之一。例如,该方法可以实现或禁止在触摸交互期间的硬件事件报告模式(例如HID鼠标),告知设备交互模式改变,或分配功率状态。
用于每个连接的设备的触摸控制器接口由触摸控制器系统(TCS)运行时间模块810访问。每个设备连接具有设备输入/输出(i/o)线程830,其将触摸控制器设备结合到系统、查询并管理触摸控制器设备能力、以及根据主机条件和用户配置设定分配设备模式和设备的属性。输入/输出(i/o)缓冲器线程832从设备提取触摸数据。每个设备连接还具有注入线程834,其将来自触摸设备的信息注入到由应用814访问的核心输入栈812,以实现对触摸控制器设备的一致的且优质的最终用户体验。TCS运行时间模块可以被实现为由操作系统作为用户-级的服务安装的动态链接库,或者可以是内核-级的实现方式。
运行时间模块执行各种功能,上面描述了这些功能的示例实现方式,比如间接触摸特定交互、用户交互模型、基于z-信息的状态转变、映射模式、加速/减速、跨度调节、跨越各设备的数据的标准化以及功率管理。控制面板810是允许运行时间模块810的各种设定由用户来操纵的用户接口。
本文描述的上述可替代实施例中的任意一个或所有可以以期望的任何组合的形式用来形成附加的混合实施例。应当理解,在所附权利要求中限定的主题不必限于上面所描述的特定实现方式。上面描述的特定实现方式仅作为示例而被公开。所附权利要求的导言中的术语“制品”、“过程”、“机器”和“组合物”不旨在将权利要求限制于被认为落在由在35 U.S.C.§101中这些术语的用途而限定的可授予专利权的主题的范围内的主题。

Claims (10)

1.一种计算机系统,包括:
一个或多个输入(802),其用于连接到一个或多个多点间接触摸输入设备;
运行时间模块(810),其将来自所述间接触摸输入设备的信息提供给可由计算机系统上的应用访问的输入栈,其中该运行时间模块提供在所述间接触摸输入设备上的接触到显示器的映射。
2.权利要求1的计算机系统,进一步包括:
针对每个输入设备的触摸控制器模块,其具有接口;以及
其中所述运行时间模块通过所述接口访问每个触摸控制器模块以访问关于所述输入设备上的接触的信息。
3.权利要求1的计算机系统,其中所述运行时间模块进一步将加速应用到接触。
4.权利要求1的计算机系统,其中所述运行时间模块进一步将跨度调节应用到接触。
5.权利要求1的计算机系统,其中所述运行时间模块进一步提供与接触相关联的z-信息。
6.权利要求5的计算机系统,其中所述z-信息跨越多个输入设备而被标准化。
7.权利要求1的计算机系统,其中所述运行时间模块进一步基于z-信息提供状态信息。
8.权利要求1的计算机系统,其中所述映射包括应用边界条件。
9.权利要求3的计算机系统,其中所述运行时间模块包括用于设置加速函数的接口。
10.权利要求4的计算机系统,其中所述运行时间模块包括用于设置跨度调节函数的接口。
CN201210501550.2A 2011-11-30 2012-11-30 用于多指针间接触摸输入设备的应用编程接口 Active CN102999218B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/306,989 US9389679B2 (en) 2011-11-30 2011-11-30 Application programming interface for a multi-pointer indirect touch input device
US13/306989 2011-11-30

Publications (2)

Publication Number Publication Date
CN102999218A true CN102999218A (zh) 2013-03-27
CN102999218B CN102999218B (zh) 2016-08-03

Family

ID=47927857

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210501550.2A Active CN102999218B (zh) 2011-11-30 2012-11-30 用于多指针间接触摸输入设备的应用编程接口

Country Status (4)

Country Link
US (2) US9389679B2 (zh)
EP (1) EP2786227B1 (zh)
CN (1) CN102999218B (zh)
WO (1) WO2013081982A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080168402A1 (en) 2007-01-07 2008-07-10 Christopher Blumenberg Application Programming Interfaces for Gesture Operations
US20080168478A1 (en) 2007-01-07 2008-07-10 Andrew Platzer Application Programming Interfaces for Scrolling
US8645827B2 (en) 2008-03-04 2014-02-04 Apple Inc. Touch event model
US9684521B2 (en) * 2010-01-26 2017-06-20 Apple Inc. Systems having discrete and continuous gesture recognizers
US8566045B2 (en) 2009-03-16 2013-10-22 Apple Inc. Event recognition
US8552999B2 (en) 2010-06-14 2013-10-08 Apple Inc. Control selection approximation
KR20140089660A (ko) * 2013-01-04 2014-07-16 삼성전자주식회사 터치 패드, 디스플레이 장치 및 터치 패드의 제어 방법
US9733716B2 (en) 2013-06-09 2017-08-15 Apple Inc. Proxy gesture recognizer
US10401375B2 (en) * 2014-04-10 2019-09-03 SZ DJI Technology Co., Ltd. Method and device for measuring flight parameters of an unmanned aerial vehicle
US10565778B2 (en) * 2017-08-22 2020-02-18 Samsung Electronics Co., Ltd. Electronic devices for and methods of implementing memory transfers for image warping in an electronic device
KR20210045388A (ko) * 2018-06-21 2021-04-26 블루스택 시스템즈 인코포레이티드 입력들을 소프트웨어 어플리케이션에 매핑하는 방법, 시스템 및 컴퓨터 프로그램 제품
CN118132293B (zh) * 2024-05-06 2024-07-12 海马云(天津)信息技术有限公司 触发事件信息处理方法与装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080001923A1 (en) * 2006-06-28 2008-01-03 Microsoft Corporation Input Simulation System For Touch Based Devices
CN101526880A (zh) * 2008-03-04 2009-09-09 苹果公司 触摸事件模型
US20100103117A1 (en) * 2008-10-26 2010-04-29 Microsoft Corporation Multi-touch manipulation of application objects
CN102197377A (zh) * 2008-10-26 2011-09-21 微软公司 多触摸对象惯性模拟

Family Cites Families (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2552427B2 (ja) 1993-12-28 1996-11-13 コナミ株式会社 テレビ遊戯システム
US6029214A (en) 1995-11-03 2000-02-22 Apple Computer, Inc. Input tablet system with user programmable absolute coordinate mode and relative coordinate mode segments
US6323846B1 (en) 1998-01-26 2001-11-27 University Of Delaware Method and apparatus for integrating manual input
US7808479B1 (en) 2003-09-02 2010-10-05 Apple Inc. Ambidextrous mouse
US7289109B2 (en) 2000-09-26 2007-10-30 Denny Jaeger Method and apparatus for detecting actuation of a controller device on a touch screen
US6738045B2 (en) 2001-02-26 2004-05-18 Microsoft Corporation Method and system for accelerated data navigation
US7730401B2 (en) 2001-05-16 2010-06-01 Synaptics Incorporated Touch screen with user interface enhancement
JP4149926B2 (ja) 2001-11-01 2008-09-17 イマージョン コーポレーション 触知感覚を与える方法及び装置
WO2003065190A2 (en) 2002-01-29 2003-08-07 Meta4Hand Inc. Computer pointer control
US7310103B2 (en) 2002-03-05 2007-12-18 Sun Microsystems, Inc. Pipelined 2D viewport clip circuit
US6995748B2 (en) 2003-01-07 2006-02-07 Agilent Technologies, Inc. Apparatus for controlling a screen pointer with a frame rate based on velocity
US7757186B2 (en) 2003-07-07 2010-07-13 Apple Inc. Automatic mapping of pointing devices to multiple displays
US8164573B2 (en) 2003-11-26 2012-04-24 Immersion Corporation Systems and methods for adaptive interpretation of input from a touch-sensitive input device
US7180531B2 (en) 2004-02-27 2007-02-20 Microsoft Corporation Method and apparatus for enabling application program compatibility with display devices having improved pixel density
US7629961B2 (en) 2004-03-01 2009-12-08 Microsoft Corporation Dynamically adjusting operation of one or more sensors of a computer input device
JP4763695B2 (ja) 2004-07-30 2011-08-31 アップル インコーポレイテッド タッチ・センシティブ入力デバイスのためのモード・ベースのグラフィカル・ユーザ・インタフェース
US7692627B2 (en) 2004-08-10 2010-04-06 Microsoft Corporation Systems and methods using computer vision and capacitive sensing for cursor control
US7557774B2 (en) * 2004-08-13 2009-07-07 Microsoft Corporation Displaying visually correct pointer movements on a multi-monitor display system
CN101027679B (zh) 2004-09-09 2010-04-21 奥普提克斯晶硅有限公司 表达通用的二维空间变换的系统和方法
US7432916B2 (en) 2004-12-09 2008-10-07 Universal Electronics, Inc. Controlling device with dual-mode, touch-sensitive display
TWI254581B (en) 2004-12-27 2006-05-01 Sunplus Technology Co Ltd Method and device for detecting image movements
US7605804B2 (en) 2005-04-29 2009-10-20 Microsoft Corporation System and method for fine cursor positioning using a low resolution imaging touch screen
US7567240B2 (en) 2005-05-31 2009-07-28 3M Innovative Properties Company Detection of and compensation for stray capacitance in capacitive touch sensors
US9019209B2 (en) 2005-06-08 2015-04-28 3M Innovative Properties Company Touch location determination involving multiple touch location processes
US20070109275A1 (en) 2005-11-16 2007-05-17 Chen-Ting Chuang Method for controlling a touch screen user interface and device thereof
WO2007064456A2 (en) 2005-11-28 2007-06-07 The George Washington University Virtual reality simulator harness systems
US7869646B2 (en) 2005-12-01 2011-01-11 Electronics And Telecommunications Research Institute Method for estimating three-dimensional position of human joint using sphere projecting technique
JP4151982B2 (ja) 2006-03-10 2008-09-17 任天堂株式会社 動き判別装置および動き判別プログラム
US20070257891A1 (en) 2006-05-03 2007-11-08 Esenther Alan W Method and system for emulating a mouse on a multi-touch sensitive surface
US20080001926A1 (en) * 2006-06-29 2008-01-03 Xiaoping Jiang Bidirectional slider
US7733346B2 (en) 2006-07-28 2010-06-08 Sony Corporation FACS solving in motion capture
JP2008033739A (ja) 2006-07-31 2008-02-14 Sony Corp 力覚フィードバックおよび圧力測定に基づくタッチスクリーンインターラクション方法および装置
US20080055256A1 (en) 2006-08-31 2008-03-06 Intel Corporation Touch screen controller with embedded overlay
US8284165B2 (en) 2006-10-13 2012-10-09 Sony Corporation Information display apparatus with proximity detection performance and information display method using the same
US8023726B2 (en) 2006-11-10 2011-09-20 University Of Maryland Method and system for markerless motion capture using multiple cameras
KR100720335B1 (ko) 2006-12-20 2007-05-23 최경순 접촉 위치 이동에 따라 생성되는 상대좌표값에 대응하는텍스트를 입력하는 텍스트 입력 장치 및 그 방법
KR100818990B1 (ko) 2006-12-28 2008-04-04 삼성전자주식회사 움직임 신호를 변환하는 장치 및 방법
US7855718B2 (en) 2007-01-03 2010-12-21 Apple Inc. Multi-touch input discrimination
CA2675689A1 (en) * 2007-02-08 2008-08-14 Silverbrook Research Pty Ltd Bar code reading method
EP2135155B1 (en) 2007-04-11 2013-09-18 Next Holdings, Inc. Touch screen system with hover and click input methods
US20090046110A1 (en) 2007-08-16 2009-02-19 Motorola, Inc. Method and apparatus for manipulating a displayed image
US8432365B2 (en) 2007-08-30 2013-04-30 Lg Electronics Inc. Apparatus and method for providing feedback for three-dimensional touchscreen
US8125458B2 (en) 2007-09-28 2012-02-28 Microsoft Corporation Detecting finger orientation on a touch-sensitive device
FR2922035B1 (fr) 2007-10-08 2016-09-30 Dav Procede de commande d'un dispositif de commande a surface tactile et dispositif de commande electrique a surface tactile comportant des moyens de mise en oeuvre dudit procede
US8031175B2 (en) 2008-04-21 2011-10-04 Panasonic Corporation Touch sensitive remote control system that detects hand size characteristics of user and adapts mapping to screen display
JP2011503709A (ja) * 2007-11-07 2011-01-27 エヌ−トリグ リミテッド デジタイザのためのジェスチャ検出
JP2009116769A (ja) 2007-11-09 2009-05-28 Sony Corp 入力装置、入力装置の制御方法、及びプログラム
WO2009093241A2 (en) 2008-01-23 2009-07-30 N-Trig Ltd. Graphical object manipulation with a touch sensitive screen
US8797271B2 (en) 2008-02-27 2014-08-05 Microsoft Corporation Input aggregation for a multi-touch device
WO2009108334A2 (en) 2008-02-28 2009-09-03 New York University Method and apparatus for providing input to a processor, and a sensor pad
TWI416381B (zh) 2008-03-05 2013-11-21 Mitac Int Corp Touch the sliding method
CN102084326A (zh) 2008-05-14 2011-06-01 3M创新有限公司 评估多个触摸输入的位置的系统和方法
US9268483B2 (en) 2008-05-16 2016-02-23 Microsoft Technology Licensing, Llc Multi-touch input platform
US8390577B2 (en) 2008-07-25 2013-03-05 Intuilab Continuous recognition of multi-touch gestures
US8810522B2 (en) 2008-09-29 2014-08-19 Smart Technologies Ulc Method for selecting and manipulating a graphical object in an interactive input system, and interactive input system executing the method
US8407624B2 (en) 2008-10-02 2013-03-26 International Business Machines Corporation Mouse movement using multiple thresholds utilizing linear exponential acceleration and sub-pixel precision
US8866790B2 (en) 2008-10-21 2014-10-21 Atmel Corporation Multi-touch tracking
DE102009046177A1 (de) 2008-10-30 2010-06-10 Samsung Electronics Co., Ltd., Suwon Berührungsdatengenerator
KR101021440B1 (ko) 2008-11-14 2011-03-15 한국표준과학연구원 터치입력장치, 이를 이용한 휴대기기 및 그 제어방법
US8294047B2 (en) 2008-12-08 2012-10-23 Apple Inc. Selective input signal rejection and modification
TWM361674U (en) 2009-02-19 2009-07-21 Sentelic Corp Touch control module
US8154529B2 (en) 2009-05-14 2012-04-10 Atmel Corporation Two-dimensional touch sensors
US9134848B2 (en) 2009-06-03 2015-09-15 Stmicroelectronics Asia Pacific Pte Ltd Touch tracking on a touch sensitive interface
US8462134B2 (en) * 2009-06-29 2013-06-11 Autodesk, Inc. Multi-finger mouse emulation
US9323398B2 (en) 2009-07-10 2016-04-26 Apple Inc. Touch and hover sensing
CN101626522B (zh) 2009-07-20 2010-11-03 北京中科同和信息技术有限公司 实现多媒体播放适屏显示的方法
TW201104529A (en) * 2009-07-22 2011-02-01 Elan Microelectronics Corp Touch device, control method and control unit for multi-touch environment
JP5471137B2 (ja) 2009-08-05 2014-04-16 ソニー株式会社 表示装置、表示方法及びプログラム
TWI407339B (zh) 2009-08-06 2013-09-01 Htc Corp 追蹤觸控面板上碰觸輸入之移動軌跡的方法與電腦程式產品及其相關電子裝置
US8850353B2 (en) * 2009-08-18 2014-09-30 Siemens Aktiengesellschaft Method and system for overlaying space-constrained display with a reference pattern during document scrolling operations
US8988191B2 (en) 2009-08-27 2015-03-24 Symbol Technologies, Inc. Systems and methods for pressure-based authentication of an input on a touch screen
KR20110028834A (ko) 2009-09-14 2011-03-22 삼성전자주식회사 터치스크린을 구비한 휴대 단말기의 터치 압력을 이용한 사용자 인터페이스 제공 방법 및 장치
US9430079B2 (en) 2009-10-19 2016-08-30 Flatfrog Laboratories Ab Determining touch data for one or more objects on a touch surface
KR101092841B1 (ko) 2009-12-29 2011-12-14 (주)엑시스 소프트웨어 엔지니어링 터치 입력을 인식하는 컴퓨팅 장치
US8502789B2 (en) 2010-01-11 2013-08-06 Smart Technologies Ulc Method for handling user input in an interactive input system, and interactive input system executing the method
US8988367B2 (en) 2010-02-05 2015-03-24 Broadcom Corporation Systems and methods for providing enhanced touch sensing
JP2011175440A (ja) 2010-02-24 2011-09-08 Sony Corp 情報処理装置、情報処理方法およびコンピュータ読み取り可能な記録媒体
US20110230238A1 (en) 2010-03-17 2011-09-22 Sony Ericsson Mobile Communications Ab Pointer device to navigate a projected user interface
US20110248948A1 (en) 2010-04-08 2011-10-13 Research In Motion Limited Touch-sensitive device and method of control
US8614693B2 (en) 2010-08-27 2013-12-24 Apple Inc. Touch and hover signal drift compensation
US9019230B2 (en) 2010-10-31 2015-04-28 Pixart Imaging Inc. Capacitive touchscreen system with reduced power consumption using modal focused scanning
US8593421B2 (en) 2011-03-22 2013-11-26 Adobe Systems Incorporated Local coordinate frame user interface for multitouch-enabled devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080001923A1 (en) * 2006-06-28 2008-01-03 Microsoft Corporation Input Simulation System For Touch Based Devices
CN101526880A (zh) * 2008-03-04 2009-09-09 苹果公司 触摸事件模型
US20100103117A1 (en) * 2008-10-26 2010-04-29 Microsoft Corporation Multi-touch manipulation of application objects
CN102197377A (zh) * 2008-10-26 2011-09-21 微软公司 多触摸对象惯性模拟

Also Published As

Publication number Publication date
CN102999218B (zh) 2016-08-03
US9952689B2 (en) 2018-04-24
US20130135217A1 (en) 2013-05-30
WO2013081982A1 (en) 2013-06-06
EP2786227A1 (en) 2014-10-08
EP2786227A4 (en) 2015-04-29
US9389679B2 (en) 2016-07-12
EP2786227B1 (en) 2019-09-11
US20170003758A1 (en) 2017-01-05

Similar Documents

Publication Publication Date Title
CN102999218A (zh) 用于多指针间接触摸输入设备的应用编程接口
AU2013223015B2 (en) Method and apparatus for moving contents in terminal
US9575562B2 (en) User interface systems and methods for managing multiple regions
US8839136B2 (en) Method of controlling virtual object or view point on two dimensional interactive display
CN202854722U (zh) 用于无线控制装置的系统
US20120256835A1 (en) Motion control used as controlling device
US20120208639A1 (en) Remote control with motion sensitive devices
EP2538309A2 (en) Remote control with motion sensitive devices
US20140218266A1 (en) Display Method, Terminal Device And Multi-Terminal Device System
CN101553843A (zh) 与3d表面上的2d内容进行交互
CN102929430B (zh) 多指针间接输入设备的显示映射模式
EP2538308A2 (en) Motion-based control of a controllled device
CN102902414B (zh) 用于间接触摸设备的基于压力的交互
US20130249807A1 (en) Method and apparatus for three-dimensional image rotation on a touch screen
CN104137026A (zh) 交互式制图识别
CN102902412B (zh) 多指针间接输入设备的基于加速的交互
CN115607967A (zh) 显示位置调整方法、装置、存储介质与电子设备
CN112130786B (zh) 一种双屏交互方法及交互装置
KR101398862B1 (ko) 터치 스크린을 이용한 스마트 기기 간 던지기 액션 수행방법
CN103270480A (zh) 时间信息接受装置、时间信息接受方法、计算机程序及记录介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150720

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150720

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C14 Grant of patent or utility model
GR01 Patent grant