[发明专利]一种实现视图动画显示的方法和装置有效
申请号: | 201110454232.0 | 申请日: | 2011-12-30 |
公开(公告)号: | CN103186917B | 公开(公告)日: | 2017-09-22 |
发明(设计)人: | 马斌 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06T13/00 | 分类号: | G06T13/00 |
代理公司: | 北京德琦知识产权代理有限公司11018 | 代理人: | 阎敏,宋志强 |
地址: | 518044 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 视图 动画 显示 方法 装置 | ||
技术领域
本发明涉及动画显示技术领域,尤其涉及一种实现视图动画显示的方法和装置。
背景技术
视图的动画显示,是指视图在绘画过程中,每一帧中绘制的图像相对前一帧的图像进行少量偏移,使视图看起来是连续的。现有的视图动画方案是,针对每个视图维护一个数据对象,在视图绘制之前,传递给数据对象当前时间,数据对象根据动画起始时间及当前时间计算动画完成的百分比,从而计算出视图偏移,根据该偏移绘制视图。
这种方式在绘制视图的每幅图像之前都要计算视图偏移,计算量较大。
发明内容
本发明提供了一种实现视图动画显示的方法和装置,能够减少为实现视图动画显示所需的计算量。
本发明的技术方案是这样实现的:
一种实现视图动画显示的方法,包括:
对于连续显示的多个帧,设置所述视图在每一帧绘制一幅图像;
根据视图动画显示所对应的视图位置移动情况计算所述视图在每一帧中绘制图像的位置;
根据所述位置绘制所述视图在每一帧中的图像。
一种实现视图动画显示的装置,包括:
重绘消息发送模块,用于对于连续显示的多个帧,设置所述视图在每一帧绘制一幅图像;
计算模块,用于根据视图动画显示所对应的视图位置移动情况计算所述视图在每一帧中绘制图像的位置;
绘制模块,用于根据所述位置绘制所述视图在每一帧中的图像。
可见,本发明提出的方法和装置,将视图的动画播放按照帧进行控制,在视图在每一帧的图像绘制之前统一获取每幅图像的位置,从而在绘制图像时可以直接根据自身位置进行绘制,减少了计算量。
附图说明
图1为本发明提出的实现视图动画显示的方法流程图;
图2为本发明提出的实现视图动画显示的装置结构示意图。
具体实施方式
本发明提出一种实现视图动画显示的方法,如图1为本发明提出的方法流程图,包括:
步骤101:对于连续显示的多个帧,设置所述视图在每一帧绘制一幅图像;
步骤102:根据视图动画显示所对应的视图位置移动情况计算所述视图在每一帧中绘制图像的位置;
步骤103:根据所述位置绘制所述视图在每一帧中的图像。
上述步骤101中,设置视图在每一帧绘制一幅图像的方式可以为:根据绘制图像所需时间和一帧的持续时间确定下一帧图像绘制的延迟时间。
具体地,如果绘制图像所需时间T1大于或等于一帧的持续时间T2,则设置在每一帧结束时立即绘制下一帧的图像;
如果绘制图像所需时间T1小于一帧的持续时间T2,则设置在当前绘制图像完成之后,延时(T2-T1)绘制下一帧的图像。
上述步骤102中,所述的视图位置移动情况可以包括:所述视图所绘制图像的初始位置、结束位置和移动方式。相应地,根据视图位置移动情况计算视图在每一帧中绘制图像的位置的方式可以为:根据视图所绘制图像的初始位置和结束位置计算移动方向及移动距离,根据移动方向、移动距离和移动方式计算视图在每一帧中绘制图像的位置。
以下举具体的实施例详细介绍。
实施例一:
步骤1:
当需要绘制动画时,在视图的图像绘制结束后,发送重绘消息,标识当前视图需要重新绘制图像,形成一个绘制的循环。这里为了控制帧数,在发送重绘消息时添加延时。具体地,
记绘制当前图像的耗时为T1(单位:毫秒),帧率为F(单位:次/秒),一帧的持续时间T2=1000/F(单位:毫秒);
如果T1≥T2,则在当前帧结束时直接发送重绘消息;
如果T1<T2,则在当前绘制图像完成之后,延时(T2-T1)毫秒发送重绘消息。
通过这种设置,在系统资源足够的情况下,保证了每秒F次稳定的刷新。
步骤2:
通过上述步骤1的设置,使视图每次重绘的时间固定为T2,因此可以提前计算好每次绘图时图像所在的位置,形成并保存针对该视图的坐标序列。这样,视图的动画播放就是按照帧进行控制,而不是按照时间进行控制。
在本实施例中,利用连续的4帧完成动画显示,视图所绘制图像的初始坐标位置为(X1,Y),结束坐标位置为(X2,Y),其移动方式为匀速平移。则,横坐标从X1移动到X2,移动的距离为D=X2-X1,每一帧中图像的水平方向偏移量为Xoffi=D/4,则可以得到第i帧中绘制视图的坐标为(X1+Xoffi×i,Y),生成视图在每一帧中绘制图像的位置为以下序列:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110454232.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:云渲染的高质量广告框架
- 下一篇:一种碱式碳酸镁碳热还原制备金属镁的方法