CN114265506B - 旋转交互方法、装置、终端设备及可读存储介质 - Google Patents
旋转交互方法、装置、终端设备及可读存储介质 Download PDFInfo
- Publication number
- CN114265506B CN114265506B CN202111631211.1A CN202111631211A CN114265506B CN 114265506 B CN114265506 B CN 114265506B CN 202111631211 A CN202111631211 A CN 202111631211A CN 114265506 B CN114265506 B CN 114265506B
- Authority
- CN
- China
- Prior art keywords
- rotation
- parameters
- terminal
- angle values
- rotation angle
- 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
Landscapes
- User Interface Of Digital Computer (AREA)
- Input From Keyboards Or The Like (AREA)
Abstract
本发明提供了一种旋转交互方法、装置、终端设备及可读存储介质。该方法包括:根据用户对终端的旋转操作,获取预设时间长度内回调的多组旋转参数,然后根据终端的多组旋转参数,得到多个实际旋转角度值,并根据终端的当前性能参数,确定调优参数,调优参数至少包括过滤参数和触发参数,再根据过滤参数,对多个实际旋转角度值进行过滤,以得到多个有效旋转角度值,最后,当多个有效角度值满足所述触发参数时,执行旋转操作对应的旋转交互功能。根据终端的当前性能来获取调优参数,实现触发条件的动态调优,能够避免旋转交互功能频繁错误地触发,实现旋转交互功能的精准触发。
Description
技术领域
本发明涉及数据处理技术领域,特别是涉及一种旋转交互方法、装置、终端设备及可读存储介质。
背景技术
同一个终端可能会同时存在多个旋转交互功能,例如:终端的旋转触发转动屏幕或终端的旋转触发进入广告页面等。
相关技术中,旋转交互数据统一来源于系统陀螺仪功能回调,对于每个旋转交互功能均会注册回调旋转参数,且对回调的旋转参数处理不够合理,导致旋转交互功能频繁错误地触发。
发明内容
本发明实施例的目的在于提供一种旋转交互方法、装置、终端设备及可读存储介质,该方法根据终端的当前性能来获取调优参数,实现触发条件的动态调优,能够避免旋转交互功能频繁错误地触发,实现旋转交互功能的精准触发。具体技术方案如下:
在本发明实施例的第一方面,首先提供了一种旋转交互方法,所述方法包括:
根据用户对终端的旋转操作,获取预设时间长度内回调的多组旋转参数;
根据所述终端的多组旋转参数,得到多个实际旋转角度值;
根据所述终端的当前性能参数,确定调优参数,所述调优参数至少包括过滤参数和触发参数;
根据所述过滤参数,对所述多个实际旋转角度值进行过滤,以得到多个有效旋转角度值;
当多个有效角度值满足所述触发参数时,执行所述旋转操作对应的旋转交互功能。
在本发明实施例的第二方面,还提供了一种旋转交互装置,所述装置包括:
第一获取模块,用于根据用户对终端的旋转操作,获取预设时间长度内回调的多组旋转参数;
第一获得模块,用于根据所述终端的多组旋转参数,得到多个实际旋转角度值;
确定模块,用于根据所述终端的当前性能参数,确定调优参数,所述调优参数至少包括过滤参数和触发参数;
过滤模块,用于根据所述过滤参数,对所述多个实际旋转角度值进行过滤,以得到多个有效旋转角度值;
执行模块,用于当多个有效角度值满足所述触发参数时,执行所述旋转操作对应的旋转交互功能。
在本发明实施例的第三方面,还提供了一种终端设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的旋转交互方法。
在本发明实施例的又一方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一所述的旋转交互方法。
本发明实施例提供的一种旋转交互方法、装置、终端设备及可读存储介质,根据用户对终端的旋转操作,获取预设时间长度内回调的多组旋转参数,然后根据终端的多组旋转参数,得到多个实际旋转角度值,并根据终端的当前性能参数,确定调优参数,调优参数至少包括过滤参数和触发参数,再根据过滤参数,对多个实际旋转角度值进行过滤,以得到多个有效旋转角度值,最后,当多个有效角度值满足所述触发参数时,执行旋转操作对应的旋转交互功能。该方法具有如下技术效果:
(1)根据终端的当前性能来获取调优参数,实现触发条件的动态调优,能够避免旋转交互功能频繁错误地触发,实现旋转交互功能的精准触发。
(2)通过对终端的旋转参数进行统一处理,得到多个实际旋转角度值,而避免了对每一个旋转交互功能均回调终端的旋转参数并进行处理,避免了重复监听终端的旋转参数,减少了数据处理量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1是本申请一实施例示出的一种旋转交互方法的步骤流程图;
图2是本申请一实施例示出的一种根据性能参数确定调优参数的步骤流程图;
图3是本申请一实施例示出的一种旋转交互装置的结构框图;
图4是本申请一实施例示出的一种终端设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
相关技术中,旋转交互数据统一来源于系统陀螺仪功能回调,对于每个旋转交互功能均会注册回调旋转参数,且对回调的旋转参数处理不够合理,导致旋转交互功能频繁错误地触发。
为解决相关技术中旋转交互功能频繁错误地触发的问题,本申请提供了一种技术构思:根据终端的当前性能来获取调优参数,实现触发条件的动态调优,能够避免旋转交互功能频繁错误地触发,实现旋转交互功能的精准触发。
下面将对本申请的旋转交互方法进行详细说明。
图1是本申请一实施例示出的一种旋转交互方法的步骤流程图,如图1所示,所述旋转交互方法包括:
步骤S101:根据用户对终端的旋转操作,获取预设时间长度内回调的多组旋转参数。
在本实施例中,终端为移动终端,例如手机和平板电脑等智能设备,同一个终端可能会同时存在多个旋转交互功能,例如:终端的旋转触发转动屏幕或终端的旋转触发进入广告页面等,用户在对终端的使用中,会对终端进行旋转操作,可根据用户对终端的旋转操作,获取预设时间长度内回调的多组旋转参数,具体地,可实时监听终端的操作系统的旋转方向的回调接口,统一获取旋转参数,其中,预设时间长度可根据实际情况进行确定,在此不做具体限定,例如,预设时间长度可为2秒,回调的时间间隔可为0.1秒,每回调一次,可获取一组旋转参数,以便对旋转参数进行进一步处理。
步骤S102:根据所述终端的多组旋转参数,得到多个实际旋转角度值。
在本实施例中,可对终端的多组旋转参数进行处理,具体地,对每一组旋转参数分别进行处理,每一组旋转参数处理后得到一个实际旋转角度值,从而通过多组旋转参数可得到多个实际旋转角度值。
步骤S103:根据所述终端的当前性能参数,确定调优参数,所述调优参数至少包括过滤参数和触发参数。
在本实施例中,由于终端的性能参数在不断变化,且终端的性能与数据的处理速度以及响应速度有关,若在终端的性能参数不佳的情况下,依然执行较为严苛的触发条件,容易导致旋转交互功能难以触发,或者,在终端的性能参数较好的情况下,使用较为宽松的触发条件,容易造成旋转交互功能频繁错误地触发。所以,可获取终端的当前的性能参数,并根据当前的性能参数,确定调优参数,调优参数即为当前的触发条件,这样,实时获取终端的性能参数,并得到终端的实时调优参数,便能够实现触发条件的动态调优,其中,调优参数包括过滤参数和触发参数,以便用于判断是否触发旋转交互功能。
步骤S104:根据所述过滤参数,对所述多个实际旋转角度值进行过滤,以得到多个有效旋转角度值。
在本实施例中,过滤参数用于过滤掉实际旋转角度值中的部分不合理的值,以便提高触发精度,实现旋转交互功能的精准触发,具体地,通过过滤参数,对多个实际旋转角度值进行过滤,将不满足过滤参数的实际旋转角度值剔除,得到多个有效旋转角度值,即,多个有效旋转角度值为多个实际旋转角度值中满足过滤参数的多个实际旋转角度值。
步骤S105:当多个有效角度值满足所述触发参数时,执行所述旋转操作对应的旋转交互功能。
在本实施例中,触发条件用于判断用户对终端的旋转操作是否会触发旋转交互功能,当多个有效角度值满足触发参数时,执行旋转操作对应的旋转交互功能。
通过上述方法,根据终端的当前性能来获取调优参数,实现触发条件的动态调优,能够避免旋转交互功能频繁错误地触发,或者,能够解决旋转交互功能难以触发的问题,实现旋转交互功能的精准触发。
在一种可行的实施方式中,所述旋转参数至少包括重力加速度三维分量,步骤S102可具体包括:
根据多组旋转参数各自包含的重力加速度三维分量,得到所述终端的多个倾斜角度值;
将预设时间长度内第一次回调的一组旋转参数所得到的倾斜角度值确定为旋转基准点;
将多个倾斜角度值各自与所述旋转基准点的差值,确定为所述终端的多个实际旋转角度值。
在本实施例中,可分别根据每一组旋转参数中的重力加速度三维分量,计算得到终端的倾斜角度值,一组旋转参数中的重力加速度三维分量得到一个倾斜角度值,多组旋转参数各自包含的重力加速度三维分量,即可得到多个倾斜角度值,其中,倾斜角度值的具体计算公式为:
atan2f(motion.gravity.x,motion.gravity.y)/π*180
其中,atan2f为反正切函数,即求两个向量的夹角,motion.gravity.x和motion.gravity.y为重力加速度的xy分量,x和y为水平面上相互垂直的x轴和y轴。
然后,在预设时间长度内,会按照回调时间间隔,不断回调旋转参数,在此过程中,将预设时间长度内第一次回调的一组旋转参数所得到的倾斜角度值确定为旋转基准点,以便能够以该基准点为参考,分别计算每个倾斜角度值与旋转基准点的差值,得到多个实际旋转角度值。
在一种可行的实施方式中,旋转参数还包括欧拉角数据,以便通过欧拉角数据对计算得到的多个倾斜角度值进行过滤,从而减小数据误差。具体地,在将多个倾斜角度值各自与所述旋转基准点的差值,确定为所述终端的多个实际旋转角度值之前,所述方法还包括:
根据每组旋转参数中的所述欧拉角数据,得到所述终端的初始水平分量值;
对每个所述初始水平分量值进行偏差计算,得到偏差水平分量值;
根据每组旋转参数得到的偏差水平分量值对相应的倾斜角度值进行过滤,得到优化旋转角度值。
在本实施例中,每组旋转参数中均包含有欧拉角数据,每组旋转参数中的欧拉角数据均能够得到一个初始水平分量值,具体的计算初始水平分量值的公式为:
arcsin(2(q0q2-q1q3))
其中,q0,q1,q2,q3表示给定一个欧拉角,返回一个表示旋转的四元素对象。
然后,对每个初始水平分量值进行偏差计算,得到偏差水平分量值,具体地,可采用欧拉角结合卡尔曼滤波过滤算法对初始水平分量值进行偏差计算,例如,使用误差状态作为Kalman滤波器的状态变量,欧拉角和旋转矩阵互相转换,使用旋转矩阵积分,通过引入角速度的噪声参数,来获取积分后角速度的方差,最后通过积分后角速度的方差获取过滤偏差计算后的初始水平分量值。
得到偏差水平分量值后,即可根据每组旋转参数得到的偏差水平分量值对相应的倾斜角度值进行过滤,得到优化旋转角度值,具体地,每组旋转参数得到的偏差水平分量值以及相应的倾斜角度值为根据同一组旋转参数得到的偏差水平分量值以及倾斜角度值,可通过同一组旋转参数得到的偏差水平分量值对该组旋转参数得到的倾斜角度值进行校正对比,将超出误差范围的倾斜角度值过滤掉,得到多个优化旋转角度值。具体地,误差范围可设置为[0,10],若偏差水平分量值和倾斜角度值的差值在[0,10]范围之内,则将倾斜角度值确定为其中一个优化旋转角度值,若偏差水平分量值和倾斜角度值的差值不在[0,10]范围之内,则将倾斜角度值删除。
得到优化旋转角度值之后,若预设时间长度内第一次回调的一组旋转参数所得到的倾斜角度值被过滤掉了,不包含在多个优化旋转角度值内,则将多个优化旋转角度值内最早的一组旋转参数所得到的倾斜角度值作为旋转基准点,然后,将多个优化旋转角度值各自与旋转基准点的差值,确定为终端的多个实际旋转角度值。
通过Kalman(卡尔曼)滤波算法处理,有效地判断和剔除异常值,提高数据输出的准确性,同时也利用了Kalman滤波的存储优势,提高系统的实时性,达到更佳的旋转交互效果。
图2是本申请一实施例示出的一种根据性能参数确定调优参数的步骤流程图,如图2所示,在一种可行的实施方式中,可根据终端的当前性能参数,实时确定调优参数,以便能够实现触发条件的动态调优。具体地,步骤S103可包括以下步骤S201至步骤S203:
步骤S201:获取所述终端的当前性能参数,所述性能参数包括以下至少一项:终端型号、终端所采用的系统和终端的内存占用。
在本实施例中,由于终端的性能参数决定了终端的性能,终端的性能可为数据处理速度以及交互反应速度,且终端的性能参数是实时变化的,在此情况下,通过获取终端的当前性能参数,能够确定终端当前的数据处理速度以及交互反应速度,具体地,终端的性能参数可包括终端型号、终端所采用的系统和终端的内存占用中的一项或多项,其中,终端的型号和终端所采用的系统越好,终端的性能越好,终端的内存占用越低,终端的性能越好。
步骤S202:根据所述终端的当前性能参数,确定所述终端的性能等级。
在本实施例中,可根据终端的当前的性能参数,确定终端的当前的性能得分,具体地,不同的终端型号对应有不同的性能得分,终端所采用的不同的系统对应有不同的得分,终端的不同的内存占用对应有不同的得分,当性能参数只包含终端型号、终端所采用的系统和终端的内存占用的其中一项时,可直接确定终端的当前的性能得分,若性能参数包含终端型号、终端所采用的系统和终端的内存占用的其中多项时,可根据不同的性能参数的权重,计算得到终端的当前的性能得分,然后,根据终端的当前的性能得分确定终端的性能等级。
步骤S203:根据所述终端的性能等级,获取与所述性能等级相匹配的调优参数。
在本实施方式中,终端不同的性能等级分别对应有不同的调优参数,可根据终端的性能等级,获取与性能等级相匹配的调优参数,其中,调优参数可包括过滤参数和触发参数,终端的性能等级越高,调优参数中的过滤参数和触发参数越苛刻,终端的性能等级越低,调优参数中的过滤参数和触发参数越容易。
具体地,过滤参数可包括相邻角度差阈值和旋转角度值有效区间,根据所述过滤参数,对所述多个实际旋转角度值进行过滤,以得到多个有效旋转角度值,包括:
根据旋转角度值有效区间,对多个实际旋转角度值进行第一次过滤,以得到在旋转角度值有效区间内的第一角度集合;
根据相邻角度差阈值,对所述第一角度集合进行第二次过滤,得到多个有效旋转角度值,所述多个有效旋转角度值中相邻两个有效角度值的差值大于所述相邻角度差阈值。
在本实施方式中,可根据具体的过滤参数,对多个实际旋转角度值进行过滤,以得到多个有效旋转角度值,从而提高旋转交互功能的触发精度,具体地,先根据旋转角度值有效区间,对多个实际旋转角度值进行第一次过滤,以得到在旋转角度值有效区间内的第一角度集合,例如,旋转角度值有效区间可为0~45度,将不在旋转角度值有效区间内的实际旋转角度值全部过滤掉,得到第一角度集合。
然后,针对第一角度集合中的所有实际旋转角度,将第一个实际旋转角度确定为参考角度,并保留,然后,计算参考角度与相邻的实际旋转角度之间的差值,若差值大于相邻角度差阈值,则将相邻的实际旋转角度值保留,并将相邻的实际旋转角度值确定为新的参考角度,其中,相邻角度差阈值可根据实际情况进行设定,例如,相邻角度差阈值可为5度,然后,再计算新的参考角度与相邻的实际旋转角度之间的差值,若差值不大于相邻角度差阈值,则将相邻的实际旋转角度值过滤掉,重新计算参考角度与相邻的实际旋转角度之间的差值。根据上述方法,直至将第一角度集合中所有的实际旋转角度遍历一次,得到多个有效旋转角度值。
触发参数可包括触发角度值和触发角度数量,在得到多个有效旋转角度值之后,步骤S105包括:
当多个有效旋转角度值中最大差值大于或等于所述触发参数中的触发角度值,且多个有效旋转角度值的数量大于或等于所述触发参数中的触发角度数量时,执行所述旋转操作对应的旋转交互功能。
在本实施例中,计算多个有效旋转角度值中的最大差值,以及,获得多个有效旋转角度值的数量,当多个有效旋转角度值中最大差值大于或等于所述触发参数中的触发角度值,且多个有效旋转角度值的数量大于或等于所述触发参数中的触发角度数量时,可触发旋转交互功能,执行旋转操作对应的旋转交互功能。其中,触发角度值可为40度,有效旋转角度值的数量可为6个。
在一种可行的实施方式中,在确定需要触发旋转交互功能时,由于终端可能对应多个旋转交互功能,此时,需要确定触发多个旋转交互功能中的其中一个旋转交互功能,以避免旋转交互功能冲突,具体地,在执行所述旋转操作对应的旋转交互功能之前,所述方法还包括:
获取所述终端的多个旋转交互功能的优先级,每个旋转交互功能的优先级不同;
执行所述旋转操作对应的旋转交互功能,包括:
执行优先级最高所对应的旋转交互功能。
在本实施方式中,可获取终端的多个旋转交互功能的优先级,其中,每个旋转交互功能的优先级由用户指定,具体地,可获取用户输入的优先级指定信息,优先级指定信息包含多个旋转交互功能所对应的优先级,然后将优先级指定信息保存在本地,以便根据优先级指定信息获取终端的多个旋转交互功能的优先级,且每个旋转交互功能的优先级不同,即,不存在优先级相同的两个旋转交互功能。然后,执行优先级最高所对应的旋转交互功能。
在一种可行的实施方式中,还可根据终端的旋转状态来确定优先触发的旋转交互功能,以便使触发的旋转交互功能能够更加符合用户的实际需求,具体地,所述旋转参数还包括旋转状态,所述旋转状态表征所述终端在三维空间中的放置状态和旋转方向;
在执行优先级最高所对应的旋转交互功能之前,所述方法还包括:
根据所述旋转状态,获取与所述旋转状态匹配的优先触发的旋转交互功能;
将所述优先触发的旋转交互功能的优先级调整为最高优先级。
在本实施方式中,可获取终端的旋转状态,其中,旋转状态表征终端在三维空间中的放置状态和旋转方向,例如,终端的旋转状态为水平放置水平旋转或竖直放置水平旋转。然后,根据旋转状态,获取与旋转状态匹配的优先触发的旋转交互功能,例如,终端水平放置水平旋转,优先触发旋转交互功能中的转屏;终端竖直放置水平旋转,优先触发旋转交互功能中的旋转交互系列效果,例如进入广告页面等。并将优先触发的旋转交互功能的优先级调整为最高优先级,以便触发终端当前的旋转状态所对应的优先触发的旋转交互功能。
通过对终端的旋转参数进行统一处理,得到多个有效角度值,降低终端的性能损耗,并在多个有效角度值满足调优参数时,触发旋转操作对应的一个旋转交互功能,从而能够避免重复监听旋转参数,且能够避免旋转冲突。
基于同一发明构思,本发明一实施例提供一种旋转交互装置。参考图3,图3是本申请一实施例示出的一种旋转交互装置的结构框图。如图3所示,该装置包括:
第一获取模块31,用于根据用户对终端的旋转操作,获取预设时间长度内回调的多组旋转参数;
第一获得模块32,用于根据所述终端的多组旋转参数,得到多个实际旋转角度值;
确定模块33,用于根据所述终端的当前性能参数,确定调优参数,所述调优参数至少包括过滤参数和触发参数;
过滤模块34,用于根据所述过滤参数,对所述多个实际旋转角度值进行过滤,以得到多个有效旋转角度值;
执行模块35,用于当多个有效角度值满足所述触发参数时,执行所述旋转操作对应的旋转交互功能。
可选地,所述旋转参数至少包括重力加速度三维分量;
所述第一获得模块包括:
获得子模块,用于根据多组旋转参数各自包含的重力加速度三维分量,得到所述终端的多个倾斜角度值;
第一确定子模块,用于将预设时间长度内第一次回调的一组旋转参数所得到的倾斜角度值确定为旋转基准点;
第二确定子模块,用于将多个倾斜角度值各自与所述旋转基准点的差值,确定为所述终端的多个实际旋转角度值。
可选地,所述旋转参数还包括欧拉角数据;
在所述第二确定子模块之前,所述装置还包括:
第二获得模块,用于根据每组旋转参数中的所述欧拉角数据,得到所述终端的初始水平分量值;
第三获得模块,用于对每个所述初始水平分量值进行偏差计算,得到偏差水平分量值;
第四获得模块,用于根据每组旋转参数得到的偏差水平分量值对相应的倾斜角度值进行过滤,得到优化旋转角度值;
所述第二确定子模块,包括:
第一确定子单元,用于将多个优化旋转角度值各自与所述旋转基准点的差值,确定为所述终端的多个实际旋转角度值。
可选地,所述确定模块,包括:
第一获取子模块,用于获取所述终端的当前性能参数,所述性能参数包括以下至少一项:终端型号、终端所采用的系统和终端的内存占用;
第三确定子模块,用于根据所述终端的当前性能参数,确定所述终端的性能等级;
第二获取子模块,用于根据所述终端的性能等级,获取与所述性能等级相匹配的调优参数。
可选地,所述过滤参数包括相邻角度差阈值和旋转角度值有效区间;
所述过滤模块,包括:
第一过滤子模块,用于根据旋转角度值有效区间,对多个实际旋转角度值进行第一次过滤,以得到在旋转角度值有效区间内的第一角度集合;
第二过滤子模块,用于根据相邻角度差阈值,对所述第一角度集合进行第二次过滤,得到多个有效旋转角度值,所述多个有效旋转角度值中相邻两个有效角度值的差值大于所述相邻角度差阈值。
可选地,在执行模块之前,所述装置还包括:
第二获取模块,用于获取所述终端的多个旋转交互功能的优先级,每个旋转交互功能的优先级不同;
所述执行模块,包括:
执行子模块,用于执行优先级最高所对应的旋转交互功能。
可选地,所述旋转参数还包括旋转状态,所述旋转状态表征所述终端在三维空间中的放置状态和旋转方向;
在执行子模块之前,所述装置还包括:
第三获取子模块,用于根据所述旋转状态,获取与所述旋转状态匹配的优先触发的旋转交互功能;
调整子模块,用于将所述优先触发的旋转交互功能的优先级调整为最高优先级。
本发明实施例还提供了一种终端设备,如图4所示。图4是本申请一实施例示出的一种终端设备的结构示意图。参照图4,终端设备包括处理器41、通信接口42、存储器43和通信总线44,其中,处理器41,通信接口42,存储器43通过通信总线44完成相互间的通信;
存储器43,用于存放计算机程序;
处理器41,用于执行存储器43上所存放的程序时,实现如上述实施例中任一所述的旋转交互方法。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的旋转交互方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的旋转交互方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种旋转交互方法,其特征在于,包括:
根据用户对终端的旋转操作,获取预设时间长度内回调的多组旋转参数;
根据所述终端的多组旋转参数,得到多个实际旋转角度值;
根据所述终端的当前性能参数,确定调优参数,所述调优参数至少包括过滤参数和触发参数,所述过滤参数包括相邻角度差阈值和旋转角度值有效区间;
根据所述过滤参数,对所述多个实际旋转角度值进行过滤,以得到多个有效旋转角度值;
当所述多个有效旋转角度值中最大差值大于或等于所述触发参数中的触发角度值,且所述多个有效旋转角度值的数量大于或等于所述触发参数中的触发角度数量时,执行所述旋转操作对应的旋转交互功能。
2.根据权利要求1所述的方法,其特征在于,
所述旋转参数至少包括重力加速度三维分量;
根据所述终端的多组旋转参数,得到多个实际旋转角度值,包括:
根据多组旋转参数各自包含的重力加速度三维分量,得到所述终端的多个倾斜角度值;
将预设时间长度内第一次回调的一组旋转参数所得到的倾斜角度值确定为旋转基准点;
将多个倾斜角度值各自与所述旋转基准点的差值,确定为所述终端的多个实际旋转角度值。
3.根据权利要求2所述的方法,其特征在于,
所述旋转参数还包括欧拉角数据;
在将多个倾斜角度值各自与所述旋转基准点的差值,确定为所述终端的多个实际旋转角度值之前,所述方法还包括:
根据每组旋转参数中的所述欧拉角数据,得到所述终端的初始水平分量值;
对每个所述初始水平分量值进行偏差计算,得到偏差水平分量值;
根据每组旋转参数得到的偏差水平分量值对相应的倾斜角度值进行过滤,得到优化旋转角度值;
将多个倾斜角度值各自与所述旋转基准点的差值,确定为所述终端的多个实际旋转角度值,包括:
将多个优化旋转角度值各自与所述旋转基准点的差值,确定为所述终端的多个实际旋转角度值。
4.根据权利要求1所述的方法,其特征在于,
根据所述终端的当前性能参数,确定调优参数,包括:
获取所述终端的当前性能参数,所述性能参数包括以下至少一项:终端型号、终端所采用的系统和终端的内存占用;
根据所述终端的当前性能参数,确定所述终端的性能等级;
根据所述终端的性能等级,获取与所述性能等级相匹配的调优参数。
5.根据权利要求4所述的方法,其特征在于,
根据所述过滤参数,对所述多个实际旋转角度值进行过滤,以得到多个有效旋转角度值,包括:
根据旋转角度值有效区间,对多个实际旋转角度值进行第一次过滤,以得到在旋转角度值有效区间内的第一角度集合;
根据相邻角度差阈值,对所述第一角度集合进行第二次过滤,得到多个有效旋转角度值,所述多个有效旋转角度值中相邻两个有效角度值的差值大于所述相邻角度差阈值。
6.根据权利要求1所述的方法,其特征在于,
在执行所述旋转操作对应的旋转交互功能之前,所述方法还包括:
获取所述终端的多个旋转交互功能的优先级,每个旋转交互功能的优先级不同;
执行所述旋转操作对应的旋转交互功能,包括:
执行优先级最高所对应的旋转交互功能。
7.根据权利要求6所述的方法,其特征在于,
所述旋转参数还包括旋转状态,所述旋转状态表征所述终端在三维空间中的放置状态和旋转方向;
在执行优先级最高所对应的旋转交互功能之前,所述方法还包括:
根据所述旋转状态,获取与所述旋转状态匹配的优先触发的旋转交互功能;
将所述优先触发的旋转交互功能的优先级调整为最高优先级。
8.一种旋转交互装置,其特征在于,包括:
第一获取模块,用于根据用户对终端的旋转操作,获取预设时间长度内回调的多组旋转参数;
第一获得模块,用于根据所述终端的多组旋转参数,得到多个实际旋转角度值;
确定模块,用于根据所述终端的当前性能参数,确定调优参数,所述调优参数至少包括过滤参数和触发参数,所述过滤参数包括相邻角度差阈值和旋转角度值有效区间;
过滤模块,用于根据所述过滤参数,对所述多个实际旋转角度值进行过滤,以得到多个有效旋转角度值;
执行模块,用于当所述多个有效旋转角度值中最大差值大于或等于所述触发参数中的触发角度值,且所述多个有效旋转角度值的数量大于或等于所述触发参数中的触发角度数量时,执行所述旋转操作对应的旋转交互功能。
9.一种终端设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1至7任一所述的旋转交互方法中的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至7中任一所述的旋转交互方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111631211.1A CN114265506B (zh) | 2021-12-28 | 2021-12-28 | 旋转交互方法、装置、终端设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111631211.1A CN114265506B (zh) | 2021-12-28 | 2021-12-28 | 旋转交互方法、装置、终端设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114265506A CN114265506A (zh) | 2022-04-01 |
CN114265506B true CN114265506B (zh) | 2023-10-13 |
Family
ID=80831131
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111631211.1A Active CN114265506B (zh) | 2021-12-28 | 2021-12-28 | 旋转交互方法、装置、终端设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114265506B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150129558A (ko) * | 2014-05-12 | 2015-11-20 | 에스케이텔레콤 주식회사 | 센서를 이용한 어플리케이션의 동작 인식 방법 및 이를 위한 장치 |
CN109144358A (zh) * | 2018-06-13 | 2019-01-04 | 努比亚技术有限公司 | 性能调节方法、移动终端和计算机可读存储介质 |
CN109710139A (zh) * | 2018-12-20 | 2019-05-03 | 惠州Tcl移动通信有限公司 | 一种页面处理方法、装置、终端以及存储介质 |
KR20190118742A (ko) * | 2018-04-11 | 2019-10-21 | 한국과학기술원 | 촉각 자극 입출력 방법 및 이를 수행하는 장치들 |
CN110709754A (zh) * | 2017-09-28 | 2020-01-17 | 深圳市柔宇科技有限公司 | 一种角度识别方法及设备 |
CN110727506A (zh) * | 2019-10-18 | 2020-01-24 | 北京航空航天大学 | 一种基于成本模型的spark参数自动调优方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101750046B (zh) * | 2009-12-24 | 2013-05-08 | 三一重工股份有限公司 | 一种角度测量装置和方法及工程机械 |
US10255100B2 (en) * | 2015-12-03 | 2019-04-09 | International Business Machines Corporation | Performance optimization engine for processor parameter adjustment |
US20170168871A1 (en) * | 2015-12-15 | 2017-06-15 | Le Holdings (Beijing) Co., Ltd. | Method and electronic device for triggering background task |
-
2021
- 2021-12-28 CN CN202111631211.1A patent/CN114265506B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150129558A (ko) * | 2014-05-12 | 2015-11-20 | 에스케이텔레콤 주식회사 | 센서를 이용한 어플리케이션의 동작 인식 방법 및 이를 위한 장치 |
CN110709754A (zh) * | 2017-09-28 | 2020-01-17 | 深圳市柔宇科技有限公司 | 一种角度识别方法及设备 |
KR20190118742A (ko) * | 2018-04-11 | 2019-10-21 | 한국과학기술원 | 촉각 자극 입출력 방법 및 이를 수행하는 장치들 |
CN109144358A (zh) * | 2018-06-13 | 2019-01-04 | 努比亚技术有限公司 | 性能调节方法、移动终端和计算机可读存储介质 |
CN109710139A (zh) * | 2018-12-20 | 2019-05-03 | 惠州Tcl移动通信有限公司 | 一种页面处理方法、装置、终端以及存储介质 |
CN110727506A (zh) * | 2019-10-18 | 2020-01-24 | 北京航空航天大学 | 一种基于成本模型的spark参数自动调优方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114265506A (zh) | 2022-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108897628B (zh) | 一种分布式锁的实现方法、装置及电子设备 | |
CN109634819B (zh) | 告警根因定位方法和装置、电子设备 | |
CN110083475B (zh) | 一种异常数据的检测方法及装置 | |
CN108390856B (zh) | 一种DDoS攻击检测方法、装置及电子设备 | |
CN111986265B (zh) | 用于标定相机方法、装置、电子设备和介质 | |
CN108648156B (zh) | 点云数据中杂散点标记方法、装置、电子设备及存储介质 | |
CN110020383B (zh) | 一种页面数据请求处理方法及装置 | |
CN110646798B (zh) | 目标航迹关联方法、雷达和终端设备 | |
CN108108335A (zh) | 一种野值剔除方法及装置 | |
CN114265506B (zh) | 旋转交互方法、装置、终端设备及可读存储介质 | |
CN110287361A (zh) | 一种人物图片筛选方法及装置 | |
CN107844593B (zh) | 一种分布式计算平台中视频数据分布方法及装置 | |
CN112633299B (zh) | 一种目标检测方法、网络、装置、终端设备及存储介质 | |
CN113645630A (zh) | 一种基站布局的方法、装置、电子设备及存储介质 | |
CN111210120B (zh) | 极震区和影响场方向的确定方法、装置、设备及存储介质 | |
CN113572721B (zh) | 一种异常访问检测方法、装置、电子设备及存储介质 | |
CN117118698A (zh) | 一种元数据服务器的访问限流方法、装置及设备 | |
CN115827918B (zh) | 一种执行业务的方法、装置、存储介质及电子设备 | |
CN108846009B (zh) | 一种ceph中副本数据存储方法及装置 | |
CN109543888A (zh) | 营业厅位置选择方法、装置及存储介质 | |
CN114370875A (zh) | 一种车辆状态的检测方法、装置及终端设备 | |
CN106295671B (zh) | 一种应用列表聚类方法、装置及计算设备 | |
CN112288990A (zh) | 基于物联数据生成物联事件的方法、系统、介质及设备 | |
CN110850365A (zh) | 一种定位方法、装置及终端设备 | |
CN113285774B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |