发明内容
为此,本发明提供一种触摸输入事件处理方法及设备,以力图解决或者至少缓解上面存在的至少一个问题。
根据本发明的一个方面,提供一种增强的触摸输入操作处理设备,该设备包括:触摸敏感显示器,适于接收用户的滑动触摸输入操作,并将其转换为触摸输入信号;控制单元,适于从触摸输入信号中获取一系列触摸坐标点,并确定起始坐标和结尾坐标;计算单元,适于计算结尾坐标与起始坐标的连线的角度;以及判断单元,适于根据坐标连线的角度处于坐标系中的哪个区域,确定所动触摸输入操作的方向,其中坐标系的区域划分是不均匀的。
可选地,在根据本发明的触摸输入操作处理设备中,坐标系被划分为四个区域,且第一区域和第三区域大于第二区域和第四区域。另外,判断单元被设置为如果坐标连线的角度处于第一区域,则确定滑动触摸输入操作的方向为向右;如果坐标连线的角度处于第二区域,则确定滑动触摸输入操作的方向为向上;如果坐标连线的角度处于第三区域,则确定滑动触摸输入操作的方向为向左;如果坐标连线的角度处于第四区域,则确定滑动触摸输入操作的方向为向下。
可选地,在根据本发明的触摸输入操作处理设备中,计算单元还适于计算坐标连线的距离;并且,判断单元还适于判断连线的距离是否小于第一阈值,若小于第一阈值,则确定滑动触摸输入操作无效。
可选地,在根据本发明的触摸输入操作处理设备中,控制单元还适于实时返回滑动触摸输入操作当前的触点坐标;计算单元还适于实时计算触点坐标与起始坐标连线的距离;以及,判断单元还适于判断触点坐标与起始坐标的连线距离是否大于第二阈值,若大于第二阈值则确定触摸输入操作即时生效。
可选地,在根据本发明的触摸输入操作处理设备中,四区域坐标系的范围被划分为:第一区域对应于(-60°,60°),第二区域对应于(60°,120°),第三区域对应于(120°,-120°),第四区域对应于(-120°,-60°)。
根据本发明的另一方面,提供一种触摸输入操作处理方法,该方法包括:接收用户的滑动触摸输入操作,将其转换为触摸输入信号;基于触摸输入信号获取触摸坐标点,确定起始坐标和结尾坐标;计算结尾坐标与起始坐标的连线的角度;以及根据该角度处于坐标系中的哪个区域,确定该滑动触摸输入操作的方向,其中坐标系的区域划分是不均匀的。
可选地,在根据本发明的触摸输入操作处理方法中,坐标系被划分为四个区域,第一区域和第三区域大于第二区域和第四区域,并且确定该滑动触摸输入操作的方向的步骤包括:如果坐标连线的角度处于第一区域,则确定滑动触摸输入操作的方向为向右;如果坐标连线的角度处于第二区域,则确定滑动触摸输入操作的方向为向上;如果坐标连线的角度处于第三区域,则确定滑动触摸输入操作的方向为向左;如果坐标连线的角度处于第四区域,则确定滑动触摸输入操作的方向为向下。
可选地,在根据本发明的触摸输入操作处理方法中,本方法还包括步骤:计算坐标连线的距离,若该距离小于第一阈值,则确定该滑动触摸输入操作无效。
可选地,在根据本发明的触摸输入操作处理方法中,本方法还包括步骤:实时返回滑动触摸输入操作当前的触点坐标;计算该触点坐标与起始坐标连线的距离;以及如果连线的距离大于第二阈值,则确定该触摸输入操作即时生效。
根据本发明的另一方面,提供了一种计算设备,包括如上的触摸输入操作处理设备。
根据本发明的触摸输入操作处理方案,发明人认识到手指的生理结构导致的滑动操作的局限,将更多的坐标区域分配给左右滑动操作,从而降低了对用户滑动输入操作精确度的要求,提高了输入成功率。
另外,根据本发明的触摸输入操作处理方案,忽略距离过短的滑动,可以有效消除无意识抖动而产生的误操作。并且,当滑动达到一定距离时即使滑动输入生效,可以使用户更快地获得输入成功的视觉反馈,避免用户产生疑惑。
综上,本发明能够降低对用户输入精确度的要求,提高容错性。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图2是例示的触摸设备的处理堆栈的图示。本发明的触摸输入操作处理方案可以在处理堆栈及堆栈中的用户各类资源的一个或多个区域中实施。硬件层200可以包括各种硬件接口元件,例如触摸敏感或启用的设备或是触摸敏感显示器。该触摸敏感设备可以包括显示器以及用于同时感测多个触摸的面板。该硬件层200还可以包括用于检测触摸敏感显示器或设备的定向(如纵向,横向)的加速度计。
驱动程序层202中的一个或多个驱动程序可以与硬件进行通信。例如,这些驱动程序可以接收和处理由硬件层200中的触摸敏感显示器或设备产生的触摸输入信号。核心操作系统(OS)204可以与一个或多个驱动程序进行通信。核心OS可以处理从一个或多个驱动程序接收的原始输入数据。在某些实施例中,这些驱动程序可以被认为是核心OS的一部分。
一组OS应用编程接口(API)206可以与核心OS通信。这些API可以是一组通常与操作系统包含在一起的API(如Linux或UNIX API)。其中一组核心基础API 208可以使用OS API 206,而一组基础API 210则可以使用核心基础API 208。触摸事件API 212可以利用基础API 210。在设备上运行的应用214可以与各下层单元进行通信,由此最终与触摸敏感显示器或者其他各种用户接口应用进行通信。虽然每一层都可以利用其下方的层,但这并不总是需要的。例如在某些实施例中,应用214可以不定期地与OS API 206通信。
根据本发明的一个实施例,提供了一种触摸输入操作处理设备300,如图3所示,该设备300包括:触摸敏感显示器310、控制单元320、计算单元330、以及判断单元340。
根据本发明的一个实施方式,触摸敏感显示器310接收到用户的滑动触摸输入操作,并将其转换为触摸输入信号。其中,触摸敏感显示器310可以实施液晶显示器(LCD)技术,发光聚合物显示器(LPD)技术或是某些其他显示器技术。另外,触摸敏感显示器310可以处理多种触摸操作,例如可以使用手指、和弦、指示笔或其他指示设备来进行接触和交互。
由控制单元320检测该触摸输入信号,从中获取触摸坐标点并确定起始坐标和结尾坐标,而后将其发送给耦接到控制单元320的计算单元330进行下一步处理。
计算单元330接收到起始坐标和结尾坐标后,计算两个坐标连线的角度,将其发送给耦接到计算单元330的判断单元340进行进一步处理。
判断单元340在接收到计算单元330发送的角度信息后,根据该角度处于坐标系中的哪个区域,确定滑动触摸输入操作的方向,其中坐标系的区域划分是不均匀的。
考虑到用户的操作习惯以及用户手指的生理结构,当用户用右手向右滑动时,手指可能会偏向右上;同样,当右手向左滑动时候,手指可能会偏向左下。为减小用户左右滑动方向偏离而引起的误差,图4示出了根据本发明一个实施方式的四区域坐标系示意图,如图4所示,该坐标系被划分为四个区域,且第一区域和第三区域大于第二区域和第四区域。例如,第一区域对应于(-60°,60°),第二区域对应于(60°,120°),第三区域对应于(120°,-120°),第四区域对应于(-120°,-60°)。应当注意的是,本发明并不局限于以上述角度来划分坐标区域,本发明所描述的四区域坐标系可以包含任何第一区域和第三区域大于第二区域和第四区域的坐标系。
并且,判断单元340被设置为:如果坐标连线的角度处于第一区域,则确定滑动触摸输入操作的方向为向右;如果坐标连线的角度处于第二区域,则确定滑动触摸输入操作的方向为向上;如果坐标连线的角度处于第三区域,则确定滑动触摸输入操作的方向为向左;如果坐标连线的角度处于第四区域,则确定滑动触摸输入操作的方向为向下。
这样,即使右上的角度超过了45度,只要其范围不超过第一区域,那么仍会被判断为向右滑动;即使左下的角度超过45度,只要其范围不超过第三区域,那么仍会被判断为向左滑动。对于左手滑动的情况,图4所示的四区域坐标系分布也同样能够适用。因此,用户左右滑动方向偏离的问题可以被大大缩减。而对于上下滑动,手指的生理结构决定了用户的操作出现方向的偏差较小,因此缩小第二区域和第四区域的范围对于上下滑动的判断并不会产生影响。
根据本发明的一个实施方式,计算单元330在接收到起始坐标和结尾坐标后,还计算两个坐标连线的距离,并将距离值发送给耦接到计算单元330的判断单元340,判断单元340判断该距离值是否小于第一阈值,若小于第一阈值,则确定该滑动触摸输入操作无效。第一阈值例如可以是30个像素。通过忽略距离过短的滑动,可以有效消除无意识抖动而产生的误操作。
根据本发明的一个实施方式,控制单元320还适于实时返回滑动触摸输入操作当前的触点坐标,并将其发送给耦接到控制单元320的计算单元330,而后计算单元330将计算得到的该触点坐标与起始坐标连线的距离发送给判断单元340,由判断单元340判断该距离是否大于第二阈值,若大于第二阈值则确定触摸输入操作即时生效,该触点坐标就是结尾坐标,判断单元340按照上面描述的方式确定滑动触摸输入操作的方向。也就是说,只要触摸输入操作达到一定的滑动距离,即认为该滑动触摸输入操作生效。第二阈值例如可以是150个像素。对于某些输入实时性要求较高的应用,如游戏,这种快速生效是有意义的。例如,在游戏中,玩家做出了向右行进的滑动输入,但手指滑动的距离较长。在操作未生效前玩家看不到输入的效果,等看到了效果时已经来不及修改输入。通过使滑动输入快速生效,可以有效地避免这种延迟。
图5为根据本发明的一个实施方式的触摸输入操作处理的方法流程图,该方法始于步骤S510。在步骤S510中,接收用户的滑动触摸输入操作,将其转换为触摸输入信号。
随后在步骤S520中,检测该触摸输入信号以获取触摸坐标点,具体地,当触摸敏感显示器310感测到触摸输入操作时,记录下起始坐标,当感测到触摸释放时记录下结尾坐标。
随后在步骤S530中,连接该起始坐标和结尾坐标,并计算坐标连线的角度。
随后在步骤S540中,根据S530计算到的角度处于坐标系中的哪个区域,确定滑动触摸输入操作的方向,其中该坐标系的区域划分是不均匀的。
根据本发明的一个实施方式,如图4所示,该坐标系被划分为四个区域,且第一区域和第三区域大于第二区域和第四区域。例如第一区域对应于(-60°,60°),第二区域对应于(60°,120°),第三区域对应于(120°,-120°),第四区域对应于(-120°,-60°)。如果坐标连线的角度处于第一区域,则确定该滑动触摸输入操作的方向为向右;如果坐标连线的角度处于第二区域,则确定该滑动触摸输入操作的方向为向上;如果坐标连线的角度处于第三区域,则确定该滑动触摸输入操作的方向为向左;如果坐标连线的角度处于第四区域,则确定该滑动触摸输入操作的方向为向下。
应当注意的是,本发明并不局限于以上述角度来划分坐标区域,本发明及所附权利要求所描述的四区域坐标系包含任何第一区域和第三区域大于第二区域和第四区域的坐标系。
根据本发明的一个实施方式,在步骤S520中记录下滑动触摸输入操作的起始坐标和结尾坐标后,连接该起始坐标和结尾坐标,并计算连线的距离。若该距离小于第一阈值则确定该滑动触摸输入操作无效。
根据本发明的另一个实施方式,实时返回滑动触摸输入操作当前的触点坐标,计算触点坐标与起始坐标连线的距离,并判断该距离是否大于第二阈值,若大于第二阈值,则确定该触摸输入操作即时生效。根据该触点坐标和起始坐标来确定用户滑动输入的方向,而不用考虑后续的用户接触屏幕的过程。
应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。