CN113407029B - 一种页面对象状态信息确定方法、装置、设备和可读介质 - Google Patents
一种页面对象状态信息确定方法、装置、设备和可读介质 Download PDFInfo
- Publication number
- CN113407029B CN113407029B CN202110711218.8A CN202110711218A CN113407029B CN 113407029 B CN113407029 B CN 113407029B CN 202110711218 A CN202110711218 A CN 202110711218A CN 113407029 B CN113407029 B CN 113407029B
- Authority
- CN
- China
- Prior art keywords
- current frame
- frame
- gesture
- information
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 78
- 230000008859 change Effects 0.000 claims abstract description 142
- 230000006870 function Effects 0.000 claims description 41
- 238000004364 calculation method Methods 0.000 claims description 12
- 230000000694 effects Effects 0.000 description 22
- 230000033001 locomotion Effects 0.000 description 20
- 230000008569 process Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 12
- 230000003139 buffering effect Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 8
- 230000006872 improvement Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 230000004044 response Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 230000002688 persistence Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction 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
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)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本说明书实施例公开了一种页面对象状态信息确定方法、装置、设备和可读介质。方案可以包括:先基于当前帧手势状态信息和对象参考状态信息,确定用于表示当前帧目标对象状态变化前目标对象的状态与用户的当前帧手势所指示的预测状态间的差距的参考状态差值信息;并确定当前时间与用户手势末次变化帧的前一帧对应参考时间之间的参考时间差;再将预设的动画持续时长和所述参考时间差输入预设的动画缓冲函数计算得到用于调节页面对象的状态变化幅度的动画缓冲参数;最后根据动画缓冲参数和参考状态差值信息,得到当前帧对象状态变化信息,进而得到目标对象的当前帧对象状态信息。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种页面对象状态信息确定方法、装置、设备和计算机可读介质。
背景技术
在现有技术中,可以预先为页面对象设置对应的预设动画,当用户对页面对象进行操作完成后,程序触发预设动画,使得页面对象按照预设动画来实现动画效果。例如,可以为小球预先设置对应的弹跳动画,当用户点击或轻触小球后,小球可以按照预设的弹跳动画的轨迹完成预设运动。
在实际应用时,用户的操作可能不止是针对页面对象进行点击或轻触等短暂操作,而是需要对页面对象执行诸如移动位置、旋转、缩放的持续性操作。此时,用户并不希望等到持续性操作结束后,页面对象才开始执行动画动作,而是希望在对页面对象进行持续性操作的过程中,页面对象就执行动画动作。
为此,需要提供一种在用户对页面对象进行持续性操作的过程中,如何实现页面对象的动画效果的技术方案。
发明内容
本说明书实施例提供一种页面对象状态方法、装置、设备和计算机可读介质,从而实现了,在用户对页面对象进行持续性操作的过程中,页面对象在响应于用户操作改变状态的同时可以执行动画动作。
为解决上述技术问题,本说明书实施例是这样实现的:
本说明书实施例提供的一种页面对象状态信息确定方法,包括:获取用户的当前帧手势状态信息和目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息;基于所述当前帧手势状态信息和所述对象参考状态信息,确定参考状态差值信息;所述参考状态差值信息表示所述目标对象在当前帧状态变化前的状态与用户的当前帧手势所指示的预测状态间的差距;获取当前时间和用户手势末次变化帧的前一帧对应的参考时间;基于所述当前时间和所述参考时间,计算参考时间差;所述参考时间差表示所述当前时间距离所述参考时间的差值;获取所述目标对象的预设动画持续时长;将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数;所述动画缓冲参数用于调节所述目标对象的状态变化幅度;基于所述动画缓冲参数和所述参考状态差值信息,得到当前帧对象状态变化信息;基于所述对象参考状态信息和所述当前帧对象状态变化信息,得到所述目标对象的当前帧对象状态信息。
本说明书实施例提供的一种页面对象状态信息确定装置,包括:
第一信息获取模块,用于获取用户的当前帧手势状态信息和目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息;
参考状态差值信息确定模块,用于基于所述当前帧手势状态信息和所述对象参考状态信息,确定参考状态差值信息;所述参考状态差值信息表示所述目标对象在当前帧状态变化前的状态与用户的当前帧手势所指示的预测状态间的差距;
第二信息获取模块,用于获取当前时间和用户手势末次变化帧的前一帧对应的参考时间;
参考时间差计算模块,用于基于所述当前时间和所述参考时间,计算参考时间差;所述参考时间差表示所述当前时间距离所述参考时间的差值;
第三信息获取模块,用于获取所述目标对象的预设动画持续时长;
动画缓冲参数计算模块,用于将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数;所述动画缓冲参数用于调节所述目标对象的状态变化幅度;
对象状态变化信息确定模块,基于所述动画缓冲参数和所述参考状态差值信息,得到当前帧对象状态变化信息;
对象状态信息确定模块,用于基于所述对象参考状态信息和所述当前帧对象状态变化信息,得到所述目标对象的当前帧对象状态信息。
本说明书实施例提供的一种页面对象状态信息确定设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:获取用户的当前帧手势状态信息和目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息;基于所述当前帧手势状态信息和所述对象参考状态信息,确定参考状态差值信息;所述参考状态差值信息表示所述目标对象在当前帧状态变化前的状态与用户的当前帧手势所指示的预测状态间的差距;获取当前时间和用户手势末次变化帧的前一帧对应的参考时间;基于所述当前时间和所述参考时间,计算参考时间差;所述参考时间差表示所述当前时间距离所述参考时间的差值;获取所述目标对象的预设动画持续时长;将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数;所述动画缓冲参数用于调节所述目标对象的状态变化幅度;基于所述动画缓冲参数和所述参考状态差值信息,得到当前帧对象状态变化信息;基于所述对象参考状态信息和所述当前帧对象状态变化信息,得到所述目标对象的当前帧对象状态信息。
本说明书实施例提供的一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现一种页面对象状态信息确定方法。
本说明书一个实施例至少能够达到以下有益效果:通过在屏幕每帧刷新时,一方面计算出目标对象的用于表示所述目标对象在当前帧状态变化前的状态与用户的当前帧手势所指示的预测状态间的差距的参考状态差值信息,另一方面设置预设动画持续时长并基于预设动画持续时长计算出动画缓冲参数,然后基于所述参考状态差值信息和所述动画缓冲参数来确定出目标对象的当前帧对象状态变化信息,进而计算出目标对象的当前帧对象状态信息,从而实现了,在用户对页面对象进行持续性操作的过程中,页面对象在响应于用户操作而改变状态的同时,可以执行动画动作。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书实施例提供的一种页面对象状态信息确定方法的流程图;
图2为本说明书实施例提供的一种由用户采用手势对页面对象进行位置移动的场景示意图;
图3为本说明书实施例提供的用户对页面对象进行位置移动过程中一种页面对象位置信息确定方法的原理示意图;
图4为本说明书实施例提供的一种页面对象状态信息确定装置的示意图;
图5为本说明书实施例提供的一种页面对象状态信息确定设备的结构示意图。
具体实施方式
现有技术中,在用户控制页面对象时,通常是不断获取用户的手势位置,然后根据用户的当前手势位置变化情况来直接决定页面对象的当前状态变化情况。例如,在用户对页面对象的位置进行移动的场景下,如果用户手势在当前帧向x轴方向移动a距离,则可以将页面对象在当前帧向x轴方向移动a距离。又如,在用户对页面对象进行旋转的场景下,如果用户手势在当前帧向x轴方向移动a距离,则可以将页面对象在当前帧以y轴为旋转轴顺时针旋转α角度(α角度与a距离具有对应关系)。
而在实际应用时,例如,在一些数据可视化项目中,为了得到更好的页面呈现效果,用户可能期望在对页面对象进行操作的过程中,页面对象不只是严格依照用户操作的轨迹来发生状态变化,而是希望能够在页面对象响应于用户操作改变状态的同时还执行额外的动画动作。如在本申请实施例中的方案,例如,在用户对页面对象的位置进行移动的场景下,如果用户手势在当前帧向x轴方向移动了a距离,则页面对象在当前帧中移动的距离,可以是在距离a的基础上进行调节得到的距离a′。又如,在用户对页面对象进行旋转的场景下,如果用户手势在当前帧向x轴方向移动了a距离,则页面对象在当前帧中以y轴为旋转轴顺时针旋转的角度,可以是基于角度α(α角度与a距离具有对应关系)进行调节得到的角度α′。
在一个具体的应用场景中,当用户同时在对小屏终端(例如,手机终端或平板电脑等)和大屏终端上的页面对象进行操作时,如果当用户对页面对象执行相同的操作时,期望的效果是页面对象在小屏终端和大屏终端中的运动效果是类似的如,以便用户在来回切换的过程中不会感到突兀、不适应。然而,在实际应用时,受到大屏终端的数据处理和展示机制等因素的影响,在大屏终端中,页面对象的变化会具有一定的动画效果,而在小屏终端中,目前尚未有方案能够实现类似效果以缩小小屏终端与大屏终端的显示效果的差异。在此背景下,采用本说明书实施例的方案,当用户在小屏终端操作页面对象时,通过在用户操作页面对象的过程中,为页面对象响应于用户操作的状态变化过程增设动画效果,能够在一定程度上使得小屏终端与大屏终端的动态显示效果趋于一致,来提升用户的使用体验。
在实际应用时,用户可以对页面对象执行诸如移动、旋转、缩小、放大等各种持续性操作。因此,页面对象的状态信息可以包括页面对象的位置信息、角度信息、尺寸信息等。用户的手势状态信息,可以是用户的用于指示页面对象的状态(例如,位置、角度、尺寸等)的信息。具体地,在本说明书的实施例中,当获取用户手势的位置信息后,可以根据用户手势的位置信息来换算得到用户期望的对页面对象进行控制后的页面对象的各种状态信息。
帧率,是以帧为单位的位图图像连续出现在显示器上的频率(速率)。刷新帧率,又称为刷新频率,是指屏幕在每秒钟能刷新的次数。在本说明书的实施例中,屏幕按照预设的刷新帧率进行刷新,在每帧刷新时,需要执行本说明书实施例中用于确定页面对象的状态信息的方案,来确定页面对象在当前帧中的状态信息,并根据页面对象在当前帧中的状态信息来显示所述页面对象。
为使本说明书一个或多个实施例的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书一个或多个实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书一个或多个实施例保护的范围。
应当理解,尽管在本申请文件中可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1为本说明书实施例提供的一种页面对象状态信息确定方法的流程示意图。从程序角度而言,流程的执行主体可以为搭载于应用服务器或应用终端的程序。优选地,在本说明书的实施例中,流程的执行主体可以为搭载于智能手机、平板电脑、智能穿戴设备等终端中的程序。
如图1所示,该流程可以包括以下步骤。
步骤102:获取用户的当前帧手势状态信息和目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息。
在本说明书的实施例中,当用户在页面中操作目标对象的过程中,为了确定目标对象在当前帧中的状态信息(即,当前帧对象状态信息),需要先确定出当前帧手势状态信息,并根据所述当前帧手势状态信息来确定当前帧对象状态信息。
具体地,在根据所述当前帧手势状态信息来确定所述当前帧对象状态信息的过程中,需要先确定出所述当前帧对象状态信息所指示的预测状态。其中,该预测状态可以是指如果不对目标对象实施本说明书实施例的动画缓冲方案的情况下,若将页面对象按照当前帧中用户手势状态信息显示所述目标对象时,该目标对象的状态。实际上,在现有技术中,在当前帧中,是按照预测状态来显示目标对象的。
在本说明书的实施例中,为了使得目标对象在小屏上的变化与其在大屏上的变化趋于一致,在当前帧中,不是以预测状态显示目标对象,而是针对目标对象实施了动画缓冲方案。在实施动画缓冲方案的过程中,可以按照如步骤102至步骤116所示的方法来确定当前帧中目标对象的状态信息。
在本说明书实施例中,为了确定当前帧中目标对象的状态信息,可以先确定所述目标对象在当前帧状态变化前的状态与用户的当前帧手势所指示的预测状态间的差距信息(即,参考状态差值信息),并确定当前帧中为了实现缓冲动画效果,需要对已确定的参考状态差值信息进行调整的动画缓冲参数信息,进而基于所述参考状态差值信息和所述动画缓冲参数来确定出当前帧中目标对象的状态信息。
具体地,如步骤102和步骤104,确定了参考状态差值信息;如步骤106至步骤110,确定了动画缓冲参数信息;如步骤110和步骤112,进一步基于所述参考状态差值信息和所述动画缓冲参数信息,确定了当前帧中所述目标对象的状态信息。
步骤104:基于所述当前帧手势状态信息和所述对象参考状态信息,确定参考状态差值信息;所述参考状态差值信息表示所述目标对象在当前帧状态变化前的状态与用户的当前帧手势所指示的预测状态间的差距。
具体地,为了确定参考状态差值信息,需要将所述目标对象在当前帧状态变化前的状态与用户的当前帧手势所指示的预测状态进行对比。其中,所述目标对象在当前帧状态变化前的状态,在实际应用中,是目标对象在用户手势末次变化帧的前一帧中的状态信息。
例如,若相比于当前帧的前一帧,用户的手势状态在当前帧发生了变化,则当前帧就是用户手势末次变化帧。若相比于前一帧,用户的手势状态在当前帧未发生变化,但是,相比于当前帧的上一帧的前一帧,用户的手势状态在当前帧的前一帧发生了变化,则当前帧的前一帧就是用户手势末次变化帧。实际情况可以依此类推。
所述获取目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息,具体可以包括:根据各帧中的用户手势状态信息,将用户手势状态信息末次变化的帧,确定为用户手势末次变化帧;获取目标对象在所述用户手势末次变化帧的前一帧中的状态信息,来作为所述目标对象的对象参考状态信息。
在实际应用中,首先,可以将起始帧标记为用户手势末次变化帧;此后,在每帧获得当前帧的手势状态信息后,可以判断当前帧的手势状态信息与用户手势末次变化帧的手势状态信息是否一致,若不一致,则将当前帧标记为用户手势末次变化帧,若一致,则不执行前述将当前帧标记为用户手势末次变化帧的操作。
具体地,在可选的实施例中,获取目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息,具体可以包括:获取当前帧的用户手势状态信息以及当前帧的前一帧的用户手势状态信息;判断所述当前帧的前一帧的用户手势状态信息与所述当前帧的用户手势状态信息是否相同,得到第一判断结果。
可选地,若所述第一判断结果表示,所述当前帧的前一帧的用户手势状态信息与所述当前帧的用户手势状态信息不同,则将所述当前帧标记为更新后的用户手势末次变化帧;并获取所述目标对象在所述当前帧的前一帧中的状态信息,作为所述对象参考状态信息。
可选地,若所述第一判断结果表示,所述当前帧的前一帧的用户手势状态信息与所述当前帧的用户手势状态信息相同,则获取所述目标对象在所述用户手势末次变化帧的前一帧中的状态信息,作为对象参考状态信息。
步骤106:获取当前时间和用户手势末次变化帧的前一帧对应的参考时间。
与上文中获取目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息相对应地,需要获取用户手势末次变化帧的前一帧对应的参考时间。因此,所述对象参考状态信息是在所述参考时间时,所述目标对象的状态信息。
所述当前时间,可以是指当前帧对应的时间。
在实际的程序执行过程中,可以设置用于表示用户手势末次变化帧的全局变量,在每次刷新时,可以进行当前帧中的用户手势状态信息与前一帧中的用户手势状态信息进行对比,若不同,则更新所述全局变量的值。可选地,所述全局变量可以是时间变量,此时,所述全局变量的值可以是所述参考时间。
步骤108:基于所述当前时间和所述参考时间,计算参考时间差;所述参考时间差表示所述当前时间距离所述参考时间的差值。
在实际应用中,所述当前时间和所述参考时间可以以绝对时间或时间偏量的形式表示。所述当前时间与所述参考时间的格式和单位保持一致。
具体地,基于所述当前时间和所述参考时间,计算参考时间差,可以是将所述当前事件与所述参考时间作差,以得到参考时间差。
步骤110:获取所述目标对象的预设动画持续时长。
其中,所述预设动画持续时长是预先设置的动画在手势结束后的持续时间。在实际应用时,所述预设动画持续时长可以根据需要设置。例如,可以根据页面对象在大屏上进行状态变化时与在小屏上进行状态变化相比会缓动的时间差,来设置目标对象在小屏上显示时的预设动画持续时长。若执行本说明书实施例的方案来在用户操作目标对象的过程中显示目标对象,则在用户操作停止后的预设动画持续时长内,目标对象可以仍保持状态变化,直至预设动画持续时长结束后,目标对象停止发生状态变化。
在本说明书实施例中,可以基于前述计算的参考时间差以及预设的动画持续时长来作为参数,计算动画缓冲参数。这是因为,动画缓冲参数用于调节目标对象的在单一帧中的状态变化幅度,相当于调节目标对象在页面中的状态变化速率,而预设动画持续时长也是被设置为用于调节目标对象的状态变化速率(或者说,目标对象的状态变化持续时长)的。
在实际应用中,作为示例,所述预设动画持续时长可以为2秒、1秒等,可以根据实际需要来设置。
步骤112:将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数;所述动画缓冲参数用于调节所述目标对象的状态变化幅度。
其中,所述动画缓冲参数可以根据实际需要来设置。例如,所述动画缓冲参数可以是线性缓动函数、快进函数、快进快出函数等,不限与此。
在实际应用中,当计算动画缓冲参数之前,可以先根据预设动画持续时长和参考时间差来确定是否还需要继续根据动画缓冲参数调节目标对象的状态变化情况。若判断结果表明无需继续调节,则无需再计算动画缓冲参数。这是由于,若当前帧不是用户手势末次变化帧,则会存在用户手势已经结束的情况,而如果用户手势已经结束,则在用户手势末次变化帧之后的动画持续时长之后,就无需再继续根据动画缓冲参数调节目标对象的状态变化情况。
因此,在可选的实施例中,所述将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数计算得到动画缓冲参数之前,还可以包括:确定所述参考时间差小于所述预设动画持续时长。
具体地,所述将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数计算得到动画缓冲参数之前,还可以包括:判断所述参考时间差是否小于所述预设动画持续时长,得到第三判断结果;若所述第三判断结果为是,则表明用户手势未停止,则可以将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数;若所述第三判断结果为否,则表明用户手势已停止,则不再计算动画缓冲参数,在实际应用中,可以将用户的当前帧手势所指示的预测状态确定为所述当前帧对象状态。
在实际应用中,用户手势结束,意味着用户手指离开屏幕。用户手势未变化,意味着相邻两帧屏幕获取手势的状态信息未发生变化,例如,用户手势在相邻两帧之间未发生移动。在实际应用时,由于屏幕刷新频率相比于用户操作频率来说特别快(例如,不同机器每秒钟可以刷新60次到120次不等),因此,即使用户的手指一直在屏幕上移动,也会存在用户手势在相邻两帧间没有变化的情况。
步骤114:基于所述动画缓冲参数和所述参考状态差值信息,得到当前帧对象状态变化信息。
在本说明书的实施例中,所述动画缓冲参数可以用于对所述参考状态差值进行调节,以得到当前帧对象状态变化值。作为示例,可以将所述动画缓冲参数与所述参考状态差值做积,以得到当前帧对象状态变化值。
步骤116:基于所述对象参考状态信息和所述当前帧对象状态变化信息,得到所述目标对象的当前帧对象状态信息。
具体地,可以将所述对象参考状态信息与所述当前帧对象状态变化信息叠加,以得到所述目标对象的当前帧对象状态信息。
例如,若所述对象参考状态信息为对象参考位置,所述当前帧对象状态变化信息为当前帧对象移动距离,则可以在所述对象参考位置的基础上,移动所述对象移动距离,以得到所述目标对象的当前帧对象位置。
又如,若所述对象参考状态信息为对象参考角度,所述当前帧对象状态变化信息为当前帧对象旋转角度,则可以在所述对象参考角度的基础上,旋转所述对象旋转角度,以得到所述目标对象的当前帧对象角度。在实际应用时,目标对象可以绕着几何中心或其他预设的中心进行选择,在此情况下,可以通过当前帧对象角度一个变量来确定目标对象的最终位置。
再如,若所述对象参考状态信息为对象参考尺寸,所述当前帧对象状态变化信息为当前帧对象变化尺寸,则可以在所述对象参考尺寸的基础上,改变所述对象变化尺寸,以得到所述目标对象的当前帧对象尺寸。在本说明书的实施例中,所述对象变化尺寸可以包括用于将目标对象变小的尺寸负向变化信息或用于将目标对象的尺寸变大的尺寸正向变化信息。
另外,在实际应用中,当得到到所述目标对象的当前帧对象状态信息之后,可以与所述当前帧对象地,存储所述当前帧对象状态信息。
应当理解,本说明书一个或多个实施例所述的方法中,部分步骤的顺序可以根据实际需要调整,或者可以省略部分步骤。
前述步骤102至步骤116不一定按照目前撰写的顺序执行,而是可以根据实际需要来设置。
例如,可以先执行步骤106至步骤112来生成动画缓冲参数,再执行步骤102至步骤104来生成参考状态差值信息,然后根据生成的动画缓冲参数和参考状态差值信息来生成当前帧对象状态变化信息,进而生成当前帧对象状态信息。
例如,步骤102、步骤106、步骤110中获取相应信息的步骤可以分开执行,也可以同时执行。
图1中的方法,通过一方面计算出目标对象的用于表示所述目标对象在当前帧状态变化前的状态与用户的当前帧手势所指示的预测状态间的差距的参考状态差值信息,另一方面设置预设动画持续时长并基于预设动画持续时长计算出动画缓冲参数,然后基于所述参考状态差值信息和所述动画缓冲参数来确定出目标对象的当前帧对象状态变化信息,进而计算出目标对象的当前帧对象状态信息,从而,实现了在用户持续移动页面对象的过程中,为页面对象响应于用户操作的状态变化过程增设动画效果。
此外要说明的是,基于本说明书实施例的方案,当已知页面对象的起始状态和用户操作信息的情况下,页面对象的最终状态是可以确定的。这是因为,尽管在页面对象响应于用户操作来运动的过程中增设了动画效果,但是该动画效果是在每一帧中以页面对象的预测状态为基础,根据预设的确定参数或函数调整得到的,因此调整得到的动画运动轨迹是确定的。例如,在用户通过手势移动页面对象的过程中,若用户手势沿方向x移动了距离a,则相应地,页面对象的位置可以从起始位置沿着x方向移动距离a,或者可选地,若预先设置了参数p,则页面对象的位置可以从起始位置沿着x方向移动距离p*a、a/p等,不限定于此。当然,在此示出的页面对象的运动情况与用户手势的移动情况的对比示例仅是为了说明的需要,不构成本申请范围的限定。
基于图1的方法,本说明书实施例还提供了该方法的一些具体实施方式,下面进行说明。
在本说明书的实施例中,用户对页面对象进行的操作具体可以包括对页面对象的移动、旋转、缩放(放大或缩小)等。
在可选的实施例中,所述页面对象状态信息可以包括页面对象位置信息。
相应地,提供了如下一种页面对象位置确定方法。首先,获取用户的当前帧手势位置和目标对象在用户手势末次移动帧的前一帧中的对象参考位置;基于所述当前帧手势位置和所述对象参考位置,计算参考距离,其中,所述参考距离表示当前帧目标对象移动前所述目标对象的位置与用户的所述当前帧手势位置的距离。然后,获取当前时间和用户手势末次变化帧的前一帧对应的参考时间;基于所述当前时间和所述参考时间,计算参考时间差;所述参考时间差表示所述当前时间距离所述参考时间的差值;获取所述目标对象的预设动画持续时长;将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数;所述动画缓冲参数用于调节所述目标对象的位置移动幅度。最后,基于所述动画缓冲参数和所述参考距离,得到当前帧对象移动距离;再基于所述对象参考位置和所述当前帧对象移动距离,得到所述目标对象的当前帧对象位置。
在实际应用中,计算目标对象的当前帧对象位置,可以包括目标对象在当前帧的x坐标位置和y坐标位置。具体地,分别地,可以在x轴方向上,计算目标对象在x轴方向上的当前帧坐标位置;并在y轴方向上,计算目标对象在y轴上的当前帧坐标位置。
作为示例,图2示出了本说明书实施例提供的一种由用户采用手势对页面对象进行位置移动的场景示意图。如图2所示,用户可以操作页面对象201按照预定方向或轨迹移动位置,在此过程中,当屏幕每帧刷新时,可以根据用户手势203(即,用户手势与页面的接触点)的位置来计算当前帧中页面对象201的位置。
在实际应用时,页面对象201的位置信息和用户手势202的位置信息可以采用坐标来表示,或者,可以采用相对于坐标系零点或坐标系中指定点的相对位移来表示。具体地,实践中为了方便,可以采用页面对象201的几何中心或边缘的位置来表示页面对象201的位置,同理,可以采用用户手势202的几何中心或边缘的位置来表示用户手势202的位置。
尽管在图2中示出了用户采用手势将页面对象向右侧移动,而实际应用中,用户可以对页面对象进行任意方向的移动。尽管在图2中示出了用户移动页面对象时,用户手势的位置可以与页面对象的位置重叠,但在实际应用中,用户手势的位置可以与页面对象的位置完全不重叠。
沿用图2的示例,图3示出了本说明书实施例提供的用户对页面对象进行位置移动过程中页面对象位置信息确定方法的原理示意图。
如图3中,示出了第n帧、第n+1帧、第n+2帧这连续3帧中,用户手势在x轴方向上的移动情况,以及由此计算出的页面对象在x轴方向上的移动情况。在此仅以在x轴方向上的移动情况的计算为例进行说明,在实际应用时,y轴方向上的移动情况的计算与此同理。
在图3中,采用页面对象的右侧边缘位置作为页面对象的位置,并用虚线进行标示。采用手势位置右侧边缘的位置作为用户手势的位置,并点虚线进行表示。
关于第n+1帧中页面对象位置的计算,如图3所示,假设从第n帧至第n+1帧,用户发生手势移动,则可以根据第n+1帧中用户手势的位置以及第n帧中页面对象的位置,来计算出第n+1帧中页面对象的位置。
具体地,由于第n+1帧相比于第n帧,用户手势发生变化,则第n+1帧为用户手势末次变化帧。第n帧中页面对象的位置,即为,页面对象在用户手势末次变化帧的前一帧中的对象参考位置,那么,如图3所示,第n帧中页面对象的位置与当前第n+1帧中用户手势所指示的位置之间的位移S1,即为,参考距离。
当前第n+1帧的时间与第n帧之间的时间差T1,即为,参考时间。进而,可以将参考时间T1和预设动画持续时长T0,输入至动画缓冲函数w=f(Tx,T0)中,来计算得到动画缓冲参数w1。此后,可以使用动画缓冲参数来调节参考距离,以得到页面对象在到当前第n+1帧的应移动距离,例如,可以计算w1*S1作为调节后的应移动距离,进而可以得到页面对象在当前第n+1帧的显示位置。
关于第n+2帧中页面对象位置的计算,如图3所示,假设从第n+1帧至第n+2帧,用户手势未发生移动,则可以根据第n+2帧中用户手势的位置以及第n帧中页面对象的位置,来计算出第n+2帧中页面对象的位置。
具体地,由于第n+2帧相比于第n帧,用户手势未发生变化,则第n+1帧仍然为用户手势末次变化帧。第n帧中页面对象的位置,即为,页面对象在用户手势末次变化帧的前一帧中的对象参考位置,那么,如图3所示,第n帧中页面对象的位置与当前第n+2帧中用户手势所指示的位置之间的位移S2,即为,参考距离。
当前第n+2帧的时间与第n帧之间的时间差T2,即为,参考时间。进而,可以将参考时间T2和预设动画持续时长T0,输入至动画缓冲函数w=f(Tx,T0)中,来计算得到动画缓冲参数w2。此后,可以使用动画缓冲参数来调节参考距离,以得到页面对象在到当前第n+2帧的应移动距离,例如,可以计算w2*S2作为调节后的应移动距离,进而可以得到页面对象在当前第n+2帧的显示位置。
在实际应用中,动画缓冲函数w=f(Tx,T0)可以包括线性动画缓冲函数、快进快出动画缓冲函数、倒退动画缓冲函数、弹跳动画缓冲函数等,可以根据实际需要来设置。
例如,线性动画缓冲函数可以设置为w=Tx/T0。又如,快出动画缓冲函数可以设置为w=1.0*((Tx/T0)-1.0)*((Tx/T0)-1.0)。再如,快进快出动画缓冲函数可以设置为,设m=Tx/T0,如果m小于0.5,S=2*m*m,否则S=1-2*(m-1)*(m-1)。
基于本说明书实施例的前述方案,实现了在用户持续移动页面对象的过程中,为页面对象响应于用户操作而移动的过程增加了动画效果。
在实际应用中,通过缓冲动画来调节小屏终端上页面对象的位置变化情况,既能够使页面对象在小屏终端的对象变化效果与大屏终端的对象变化效果趋于一致,避免用户在同时使用大屏终端和小屏终端操作页面对象时,因二者的显示效果差异导致的用户体验不流畅;也能够通过引入丰富的动画缓冲效果,进一步提升用户的使用体验。
在可选的实施例中,所述页面对象状态信息包括页面对象角度信息。
相应地,提供了如下一种页面对象角度信息确定方法。首先,获取用户的当前帧手势角度和目标对象在用户手势末次变化帧的前一帧中的对象参考角度;基于所述当前帧手势角度,确定所述目标对象的当前帧对象预测角度;基于所述当前帧对象预测角度和所述对象参考角度,计算参考角度差,其中,所述参考角度差表示当前帧目标对象旋转前所述目标对象的角度与所述当前帧对象预测角度的差距。然后,获取当前时间和用户手势末次变化帧的前一帧对应的参考时间;基于所述当前时间和所述参考时间,计算参考时间差;所述参考时间差表示所述当前时间距离所述参考时间的差值;获取所述目标对象的预设动画持续时长;将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数;所述动画缓冲参数用于调节所述目标对象的角度旋转幅度。最后,基于所述动画缓冲参数和所述参考角度差,得到当前帧对象旋转角度;再基于所述对象参考角度和所述当前帧对象旋转角度,得到所述目标对象的当前帧对象角度。
在可选的实施例中,所述页面对象状态信息包括页面对象尺寸信息。
相应地,提供了如下一种页面对象角度信息确定方法。首先,获取用户的当前帧手势状态信息和目标对象在用户手势末次移动帧的前一帧中的对象参考尺寸;基于所述当前帧手势状态信息,确定所述目标对象的当前帧对象预测尺寸;基于所述当前帧对象预测尺寸和所述对象参考尺寸,计算参考尺寸差,其中,所述参考尺寸差表示当前帧目标对象尺寸变化前所述目标对象的尺寸与所述当前帧对象预测尺寸的尺寸差。然后,获取当前时间和用户手势末次变化帧的前一帧对应的参考时间;基于所述当前时间和所述参考时间,计算参考时间差;所述参考时间差表示所述当前时间距离所述参考时间的差值;获取所述目标对象的预设动画持续时长;将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数;所述动画缓冲参数用于调节所述目标对象的尺寸变化幅度。最后,基于所述动画缓冲参数和所述参考尺寸差,得到当前帧对象变化尺寸;再基于所述对象参考尺寸和所述当前帧对象变化尺寸,得到所述目标对象的当前帧对象尺寸。
在实际应用中,由于进行页面对象尺寸变化时,用户通常会使用两个或更多个手指进行操作。因此,所述基于所述当前帧手势状态信息,确定所述目标对象的当前帧对象预测尺寸,具体可以包括:根据用户手势在终端屏幕上的至少两个接触点,确定所述至少两个接触点所指示的当前帧对象预测尺寸。
基于同样的思路,本说明书实施例还提供了上述方法对应的装置。图4为本说明书实施例提供的对应于图1的一种页面对象状态信息确定装置的结构示意图。如图4所示,该装置可以包括:
第一信息获取模块402,用于获取用户的当前帧手势状态信息和目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息;
参考状态差值信息确定模块404,用于基于所述当前帧手势状态信息和所述对象参考状态信息,确定参考状态差值信息;所述参考状态差值信息表示所述目标对象在当前帧状态变化前的状态与用户的当前帧手势所指示的预测状态间的差距;
第二信息获取模块406,用于获取当前时间和用户手势末次变化帧的前一帧对应的参考时间;
参考时间差计算模块408,用于基于所述当前时间和所述参考时间,计算参考时间差;所述参考时间差表示所述当前时间距离所述参考时间的差值;
第三信息获取模块410,用于获取所述目标对象的预设动画持续时长;
动画缓冲参数计算模块412,用于将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数;所述动画缓冲参数用于调节所述目标对象的状态变化幅度;
对象状态变化信息确定模块414,基于所述动画缓冲参数和所述参考状态差值信息,得到当前帧对象状态变化信息;
对象状态信息确定模块416,用于基于所述对象参考状态信息和所述当前帧对象状态变化信息,得到所述目标对象的当前帧对象状态信息。
可以理解,上述的各模块是指计算机程序或者程序段,用于执行某一项或多项特定的功能。此外,上述各模块的区分并不代表实际的程序代码也必须是分开的。
基于同样的思路,本说明书实施例还提供了上述方法对应的设备。
图5为本说明书实施例提供的对应于图1的一种页面对象状态信息确定设备的结构示意图。如图5所示,设备500可以包括:
至少一个处理器510;以及,
与所述至少一个处理器通信连接的存储器550;其中,
所述存储器550存储有可被所述至少一个处理器510执行的指令520,所述指令被所述至少一个处理器510执行,以使所述至少一个处理器510能够:
获取用户的当前帧手势状态信息和目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息;
基于所述当前帧手势状态信息和所述对象参考状态信息,确定参考状态差值信息;所述参考状态差值信息表示所述目标对象在当前帧状态变化前的状态与用户的当前帧手势所指示的预测状态间的差距;
获取当前时间和用户手势末次变化帧的前一帧对应的参考时间;
基于所述当前时间和所述参考时间,计算参考时间差;所述参考时间差表示所述当前时间距离所述参考时间的差值;
获取所述目标对象的预设动画持续时长;
将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数;所述动画缓冲参数用于调节所述目标对象的状态变化幅度;
基于所述动画缓冲参数和所述参考状态差值信息,得到当前帧对象状态变化信息;
基于所述对象参考状态信息和所述当前帧对象状态变化信息,得到所述目标对象的当前帧对象状态信息。
基于同样的思路,本说明书实施例还提供了上述方法对应的计算机可读介质。计算机可读介质上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现以下方法:
获取用户的当前帧手势状态信息和目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息;
基于所述当前帧手势状态信息和所述对象参考状态信息,确定参考状态差值信息;所述参考状态差值信息表示所述目标对象在当前帧状态变化前的状态与用户的当前帧手势所指示的预测状态间的差距;
获取当前时间和用户手势末次变化帧的前一帧对应的参考时间;
基于所述当前时间和所述参考时间,计算参考时间差;所述参考时间差表示所述当前时间距离所述参考时间的差值;
获取所述目标对象的预设动画持续时长;
将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数;所述动画缓冲参数用于调节所述目标对象的状态变化幅度;
基于所述动画缓冲参数和所述参考状态差值信息,得到当前帧对象状态变化信息;
基于所述对象参考状态信息和所述当前帧对象状态变化信息,得到所述目标对象的当前帧对象状态信息。
上述对本说明书特定实施例进行了描述,在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可。
本说明书实施例提供的装置、设备与方法是对应的,因此,装置、设备也具有与对应方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述对应装置、设备的有益技术效果。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字符系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC625D、AtmelAT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字符多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带式磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (13)
1.一种页面对象状态信息确定方法,包括:
获取用户的当前帧手势状态信息和目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息;
基于所述当前帧手势状态信息和所述对象参考状态信息,确定参考状态差值信息;所述参考状态差值信息表示所述目标对象在当前帧状态变化前的状态与用户的当前帧手势所指示的预测状态间的差距;所述目标对象在当前帧状态变化前的状态是所述目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息;
获取当前时间和用户手势末次变化帧的前一帧对应的参考时间;
基于所述当前时间和所述参考时间,计算参考时间差;所述参考时间差表示所述当前时间距离所述参考时间的差值;
获取所述目标对象的预设动画持续时长;
将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数;所述动画缓冲参数用于调节所述目标对象的状态变化幅度;
基于所述动画缓冲参数和所述参考状态差值信息,得到当前帧对象状态变化信息;
基于所述对象参考状态信息和所述当前帧对象状态变化信息,得到所述目标对象的当前帧对象状态信息。
2.如权利要求1所述的方法,所述页面对象状态信息包括页面对象位置信息,其中,
所述获取用户的当前帧手势状态信息和目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息,具体包括:获取用户的当前帧手势位置和目标对象在用户手势末次变化帧的前一帧中的对象参考位置;
所述基于所述当前帧手势状态信息和所述对象参考状态信息,确定参考状态差值信息,具体包括:基于所述当前帧手势位置和所述对象参考位置,计算参考距离;所述参考距离表示当前帧目标对象移动前所述目标对象的位置与用户的所述当前帧手势位置的距离;所述当前帧目标对象移动前所述目标对象的位置是所述目标对象在用户手势末次变化帧的前一帧中的对象参考位置;
所述基于所述动画缓冲参数和所述参考状态差值信息,得到当前帧对象状态变化信息,具体包括:基于所述动画缓冲参数和所述参考距离,得到当前帧对象移动距离;
所述基于所述对象参考状态信息和所述当前帧对象状态变化信息,得到所述目标对象的当前帧对象状态信息,具体包括:基于所述对象参考位置和所述当前帧对象移动距离,得到所述目标对象的当前帧对象位置。
3.如权利要求1所述的方法,所述页面对象状态信息包括页面对象角度信息,其中,
所述获取用户的当前帧手势状态信息和目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息,具体包括:获取用户的当前帧手势角度和目标对象在用户手势末次变化帧的前一帧中的对象参考角度;
所述基于所述当前帧手势状态信息和所述对象参考状态信息,确定参考状态差值信息之前,还包括:基于所述当前帧手势角度,确定所述目标对象的当前帧对象预测角度;
所述基于所述当前帧手势状态信息和所述对象参考状态信息,确定参考状态差值信息,具体包括:基于所述当前帧对象预测角度和所述对象参考角度,计算参考角度差;所述参考角度差表示当前帧目标对象旋转前所述目标对象的角度与所述当前帧对象预测角度的差距;所述当前帧目标对象旋转前所述目标对象的角度是所述目标对象在用户手势末次变化帧的前一帧中的对象参考角度;
所述基于所述动画缓冲参数和所述参考状态差值信息,得到当前帧对象状态变化信息,具体包括:基于所述动画缓冲参数和所述参考角度差,得到当前帧对象旋转角度;
所述基于所述对象参考状态信息和所述当前帧对象状态变化信息,得到所述目标对象的当前帧对象状态信息,具体包括:基于所述对象参考角度和所述当前帧对象旋转角度,得到所述目标对象的当前帧对象角度。
4.如权利要求1所述的方法,所述页面对象状态信息包括页面对象尺寸信息,其中,
所述获取用户的当前帧手势状态信息和目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息,具体包括:获取用户的当前帧手势状态信息和目标对象在用户手势末次变化帧的前一帧中的对象参考尺寸;
所述基于所述当前帧手势状态信息和所述对象参考状态信息,确定参考状态差值信息之前,还包括:基于所述当前帧手势状态信息,确定所述目标对象的当前帧对象预测尺寸;
所述基于所述当前帧手势状态信息和所述对象参考状态信息,确定参考状态差值信息,具体包括:基于所述当前帧对象预测尺寸和所述对象参考尺寸,计算参考尺寸差;所述参考尺寸差表示当前帧目标对象尺寸变化前所述目标对象的尺寸与所述当前帧对象预测尺寸的尺寸差;所述当前帧目标对象尺寸变化前所述目标对象的尺寸是所述目标对象在用户手势末次变化帧的前一帧中的对象参考尺寸;
所述基于所述动画缓冲参数和所述参考状态差值信息,得到当前帧对象状态变化信息,具体包括:基于所述动画缓冲参数和所述参考尺寸差,得到当前帧对象变化尺寸;
所述基于所述对象参考状态信息和所述当前帧对象状态变化信息,得到所述目标对象的当前帧对象状态信息,具体包括:基于所述对象参考尺寸和所述当前帧对象变化尺寸,得到所述目标对象的当前帧对象尺寸。
5.如权利要求4所述的方法,所述基于所述当前帧手势状态信息,确定所述目标对象的当前帧对象预测尺寸,具体包括:
根据用户手势在终端屏幕上的至少两个接触点,确定所述至少两个接触点所指示的当前帧对象预测尺寸。
6.如权利要求1所述的方法,获取目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息,具体包括:
获取当前帧的前一帧的用户手势状态信息;
判断所述当前帧的前一帧的用户手势状态信息与所述当前帧的用户手势状态信息是否相同,得到第一判断结果;
若所述第一判断结果表示,所述当前帧的前一帧的用户手势状态信息与所述当前帧的用户手势状态信息不同,则将所述当前帧标记为更新后的用户手势末次变化帧;
获取所述目标对象在所述当前帧的前一帧中的状态信息,作为所述对象参考状态信息。
7.如权利要求6所述的方法,所述判断所述当前帧的前一帧的用户手势状态信息与所述当前帧的用户手势状态信息是否相同,得到第一判断结果之后,还包括:
若所述第一判断结果表示,所述当前帧的前一帧的用户手势状态信息与所述当前帧的用户手势状态信息相同,则获取所述目标对象在所述用户手势末次变化帧的前一帧中的状态信息,作为对象参考状态信息。
8.如权利要求1所述的方法,所述将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数之前,还包括:
判断所述参考时间差是否小于所述预设动画持续时长,得到第三判断结果;
所述将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数,具体包括:
若所述第三判断结果为是,则将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数。
9.如权利要求8所述的方法,所述判断所述参考时间差是否小于所述预设动画持续时长,得到第三判断结果之后,还包括:
若所述第三判断结果为否,则将用户的当前帧手势所指示的预测状态确定为所述当前帧对象状态。
10.如权利要求1所述的方法,所述预设动画持续时长是预先设置的动画在手势结束后的持续时间。
11.一种页面对象状态信息确定装置,包括:
第一信息获取模块,用于获取用户的当前帧手势状态信息和目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息;
参考状态差值信息确定模块,用于基于所述当前帧手势状态信息和所述对象参考状态信息,确定参考状态差值信息;所述参考状态差值信息表示所述目标对象在当前帧状态变化前的状态与用户的当前帧手势所指示的预测状态间的差距;所述目标对象在当前帧状态变化前的状态是所述目标对象在用户手势末次变化帧的前一帧中的对象参考状态信息;
第二信息获取模块,用于获取当前时间和用户手势末次变化帧的前一帧对应的参考时间;
参考时间差计算模块,用于基于所述当前时间和所述参考时间,计算参考时间差;所述参考时间差表示所述当前时间距离所述参考时间的差值;
第三信息获取模块,用于获取所述目标对象的预设动画持续时长;
动画缓冲参数计算模块,用于将所述预设动画持续时长和所述参考时间差输入预设的动画缓冲函数,计算得到动画缓冲参数;所述动画缓冲参数用于调节所述目标对象的状态变化幅度;
对象状态变化信息确定模块,基于所述动画缓冲参数和所述参考状态差值信息,得到当前帧对象状态变化信息;
对象状态信息确定模块,用于基于所述对象参考状态信息和所述当前帧对象状态变化信息,得到所述目标对象的当前帧对象状态信息。
12.一种页面对象状态信息确定设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至10中任一项所述的页面对象状态信息确定方法。
13.一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现权利要求1至10中任一项所述的页面对象状态信息确定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110711218.8A CN113407029B (zh) | 2021-06-25 | 2021-06-25 | 一种页面对象状态信息确定方法、装置、设备和可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110711218.8A CN113407029B (zh) | 2021-06-25 | 2021-06-25 | 一种页面对象状态信息确定方法、装置、设备和可读介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113407029A CN113407029A (zh) | 2021-09-17 |
CN113407029B true CN113407029B (zh) | 2024-02-20 |
Family
ID=77679438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110711218.8A Active CN113407029B (zh) | 2021-06-25 | 2021-06-25 | 一种页面对象状态信息确定方法、装置、设备和可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113407029B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102236511A (zh) * | 2010-04-30 | 2011-11-09 | 腾讯科技(深圳)有限公司 | 响应操作的方法和装置 |
CN103677592A (zh) * | 2012-09-03 | 2014-03-26 | 腾讯科技(深圳)有限公司 | 网页内滑动显示网页对象的方法及装置 |
CN105765515A (zh) * | 2013-11-08 | 2016-07-13 | 三菱电机株式会社 | 动画装置和动画方法 |
CN108476306A (zh) * | 2016-12-30 | 2018-08-31 | 华为技术有限公司 | 一种图像显示的方法及终端设备 |
WO2018166470A1 (zh) * | 2017-03-17 | 2018-09-20 | 腾讯科技(深圳)有限公司 | 基于帧率的动画展示方法及终端设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111273778B (zh) * | 2020-02-14 | 2023-11-07 | 北京百度网讯科技有限公司 | 基于手势控制电子设备的方法和装置 |
-
2021
- 2021-06-25 CN CN202110711218.8A patent/CN113407029B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102236511A (zh) * | 2010-04-30 | 2011-11-09 | 腾讯科技(深圳)有限公司 | 响应操作的方法和装置 |
CN103677592A (zh) * | 2012-09-03 | 2014-03-26 | 腾讯科技(深圳)有限公司 | 网页内滑动显示网页对象的方法及装置 |
CN105765515A (zh) * | 2013-11-08 | 2016-07-13 | 三菱电机株式会社 | 动画装置和动画方法 |
CN108476306A (zh) * | 2016-12-30 | 2018-08-31 | 华为技术有限公司 | 一种图像显示的方法及终端设备 |
WO2018166470A1 (zh) * | 2017-03-17 | 2018-09-20 | 腾讯科技(深圳)有限公司 | 基于帧率的动画展示方法及终端设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113407029A (zh) | 2021-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10289260B2 (en) | Systems and techniques for application multi-tasking | |
US8640047B2 (en) | Asynchronous handling of a user interface manipulation | |
CN108228050B (zh) | 一种图片缩放方法、装置以及电子设备 | |
KR102255830B1 (ko) | 복수 개의 윈도우를 디스플레이하는 방법 및 장치 | |
CN110244949B (zh) | 一种页面信息展示方法及装置 | |
CN110389810B (zh) | 一种在虚拟画布上快速摆放ui控件的方法、装置及设备 | |
WO2016040353A1 (en) | Upright mounted camera actuator component with trapezoidal magnet for optical image stabilization | |
KR20150034255A (ko) | 3d 상호작용을 위한 멀티터치 제스처 인식의 명확화 | |
CN106484080B (zh) | 一种显示界面的展示方法、装置及设备 | |
CN114115643A (zh) | 一种组件显示方法、装置、电子设备和可读介质 | |
WO2019119975A1 (zh) | 信息输入的方法及装置 | |
TWI691206B (zh) | 浮水印添加處理方法、裝置及客戶端 | |
CN113407029B (zh) | 一种页面对象状态信息确定方法、装置、设备和可读介质 | |
CN116028697B (zh) | 一种页面渲染方法、装置、存储介质及电子设备 | |
CN112528614A (zh) | 一种表格编辑方法、装置和电子设备 | |
CN112861042B (zh) | 一种信息显示方法、装置、设备和可读介质 | |
CN116245051A (zh) | 一种仿真软件渲染方法、装置、存储介质及电子设备 | |
CN110262714A (zh) | 一种信息提示方法、装置及设备 | |
CN115543168A (zh) | 一种切换应用的方法、装置、设备及介质 | |
CN112000329B (zh) | 一种数据展示方法、装置、设备及介质 | |
CN111061978B (zh) | 页面跳转方法及装置 | |
CN114202598A (zh) | 一种流体粒子的渲染方法、装置、系统及存储介质 | |
CN110262732B (zh) | 一种图片移动方法和装置 | |
CN116975485A (zh) | 一种页面区块的懒加载方法、装置、存储介质及设备 | |
CN111857524B (zh) | 交互控制方法、装置、存储介质和处理器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220713 Address after: 100190 Beijing Haidian District Zhichun Road 49 No. 3 West 309 Applicant after: TENCENT CLOUD COMPUTING (BEIJING) Co.,Ltd. Address before: 100102 Room 203, 14 and 19, floor 2, building 19, Wangjing Dongyuan seventh district, Chaoyang District, Beijing Applicant before: Beijing Guangqiyuan Digital Technology Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |