CN103617041A - 一种基于模板的动画管理***及方法 - Google Patents
一种基于模板的动画管理***及方法 Download PDFInfo
- Publication number
- CN103617041A CN103617041A CN201310632402.9A CN201310632402A CN103617041A CN 103617041 A CN103617041 A CN 103617041A CN 201310632402 A CN201310632402 A CN 201310632402A CN 103617041 A CN103617041 A CN 103617041A
- Authority
- CN
- China
- Prior art keywords
- animation
- attribute
- linear
- animations
- template
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000008569 process Effects 0.000 claims abstract description 21
- 238000007726 management method Methods 0.000 claims description 22
- 230000008859 change Effects 0.000 claims description 19
- 230000007246 mechanism Effects 0.000 abstract description 7
- 230000006870 function Effects 0.000 description 12
- 230000000694 effects Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000739 chaotic effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种基于模板的动画管理***及方法,提高了应用场景的灵活性,即将所有动画种类分为线性动画与非线性动画两类,可以实现任何对象属性的改变,应用灵活,使用方便。通过上述两类动画来直接操作动画,非常直观且灵活。并且,对动画控制机制进行抽象,使其与播放器控制机制基本保持一致,控制比较简单,并且提供了强制动画播放完成的方法,在动画使用中会更加的灵活。
Description
技术领域
本发明涉及动画技术领域,尤其涉及一种基于模板的动画管理***及方法。
背景技术
目前各种动画种类的API(Application Programming Interface,应用程序编程接口)过于繁多,对于调用者来说不易记,而且不易于软件的开发维护,同样对于学习成本周期长,进一步的增加了产品成本。
例如,Android2D动画可分为:渐变透明度动画效果、渐变尺寸伸缩动画效果、画面转换位置移动动画效果、画面转移旋转动画效果等,其种类繁多,如下表1所示:
表1
通过以上列表发现,Android***中的API种类会根据功能的不同而不同,既会随着支持种类的增加而增加API的种类,并且参数种类个数也不同,如此一来,势必会增加学习成本及维护开发成本。
对3D引擎而言,其同样存在上述问题:动画种类同样繁多,例如irrlicht(用C++书写的高性能实时的3D引擎),其有直线飞行动画,旋转动画,加速动画,减速动画,还有渐变动画,模型动画,等等,这些动画种类过于多,调用者容易混乱,发生错误的概率很大,并且实际使用起来也不灵活。动画的种类繁多,参数的个数也不同,创建动画的函数也不同,大大的增加了使用者的难度及学习成本。
有鉴于此,现有技术有待改进和提高。
发明内容
鉴于现有技术中的不足,本发明目的在于提供一种基于模板的动画管理***及方法。旨在解决现有技术中由于动画种类繁多,调用时容易出现混乱,实际使用也不方便,增加了使用者的难度和学习成本的问题。
本发明的技术方案如下:
一种基于模板的动画管理方法,其中,所述方法包括以下步骤:
A、预先将所有动画分为线性动画和非线性动画两类;
B、遍历动画进程中的所有动画,当有动画发生改变时,判断所述动画的种类,定义动画的属性并调用相应的参数;
C、控制动画播放进程,判断动画当前的状态,自动调用相应的参数实现对动画的各种控制。
所述的基于模板的动画管理方法,其中,所述步骤B中判断所述动画的种类,定义动画的属性并调用相应的参数具体包括:
B1、判断所述动画为线性动画还是非线性动画,然后创建相应的线性或非线性插值算法;
B2、再根据动画起始值进行计算,获得相应的插值;
B3、根据所得插值对动画的属性进行修改并设定相应的参数。
所述的基于模板的动画管理方法,其中,所述步骤B中动画的属性包括:位置类型属性和颜色类型属性。
一种基于模板的动画管理***,其中,所述***包括:
分类单元,用于预先将所有动画按照种类分为线性动画和非线性动画;
调用单元,用于遍历动画进程中的所有动画,当有动画发生改变时,判断所述动画的种类,定义动画的属性并调用相应的参数;
控制单元,用于控制动画播放进程,判断动画当前的状态,自动调用相应的参数实现对动画的各种控制。
所述的基于模板的动画管理***,其中,所述动画的属性包括:位置类型属性和颜色类型属性。
有益效果:
本发明的一种基于模板的动画管理***及方法,提高了应用场景的灵活性,即将所有动画种类分为线性动画与非线性动画两类,可以实现任何对象属性的改变,应用灵活,使用方便。通过上述两类动画来直接操作动画,非常直观且灵活。并且,对动画控制机制进行抽象,使其与播放器控制机制基本保持一致,控制比较简单,并且提供了强制动画播放完成的方法,在动画使用中会更加的灵活。
附图说明
图1为本发明的基于模板的动画管理方法的流程图。
图2为本发明的基于模板的动画管理***的结构框图。
具体实施方式
本发明提供一种基于模板的动画管理***及方法,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,其为本发明的基于模板的动画管理方法的流程图。如图所示,所述方法包括以下步骤:
S1、预先将所有动画按照种类分为线性动画和非线性动画;
S2、遍历动画进程中的所有动画,当有动画发生改变时,判断所述动画的种类,定义动画的属性并调用相应的参数;
S3、控制动画播放进程,判断动画当前的状态,自动调用相应的参数实现对动画的各种控制。
下面分别针对上述步骤进行详细描述:
所述步骤S1为预先将所有动画分为线性动画和非线性动画两类。相比于现有技术中动画的API种类繁多,相较于调用者来说不容易记的问题。本发明将所有动画按照种类分为线性动画和非线性动画;其中,所述线性动画指动画的函数中两个变量的关系为线性关系,否则则为非线性动画。如此一来,现有技术中的动画如:直线飞行动画,旋转动画,加速动画,减速动画,还有渐变动画,模型动画均可以根据其动画函数的变量关系分类到线性动画和非线性动画中。从而方便用户在后续步骤中进行动画属性的定义和动画参数的调节。
所述步骤S2为遍历动画进程中的所有动画,当有动画发生改变时,判断所述动画的种类,定义动画的属性并调用相应的参数。具体来说,遍历动画进程中的所有动画,将所有动画放到一个队列中,实现所有动画的遍历刷新功能。然后判断所述动画的种类,即判断所述动画为线性动画还是非线性动画。然后,根据需要定义动画的属性并调用相应的参数,此处动画的属性包括动画的位置属性、旋转属性、模型属性或材质属性等。例如当用户想改变一个动画的颜色类型属性时,只需创建一个模板函数,然后调用该模板函数即可。同样,当用户想改变一个位置类型属性是同样调用此模板(区别在于,传入的模板类型分别为颜色类型和位置类型),然后根据此类型分别创建可以改变颜色类型属性的动画及改变位置属性的动画。即虽然调用方法一样,但是动画播放单元类型不一样。然后,将创建的动画播放单元放到相应的播放容器中,并以唯一ID标识,进一步地,还可以根据需要删除动画。如下表2所示,对于不同类型的动画,不管需要创建什么类型的动画,其规格都是统一的。
表2
如表2中所示,对于不同种类的动画,动画类型模板皆相同,只是属性类型部分不同。
在本实施例中,所述步骤S2中判断所述动画的种类,定义动画的属性并调用相应的参数具体包括:
S21、判断所述动画为线性动画还是非线性动画,然后创建相应的线性或非线性插值算法;
S22、再根据动画起始值进行计算,获得相应的插值;
S23、根据所得插值对动画的属性进行修改并设定相应的参数。
例如,所述算法可以为贝塞尔曲线算法,可以改变任何属性;根据动画的模板类型设定参数,同时对传入的属性进行修改。需要注意地是,对于非基本属性的类型的值,其需要重载加减乘除运算符。
所述步骤S3为控制动画播放进程,判断动画当前的状态,自动调用相应的参数实现对动画的各种控制。首先定义动画播放控制,其实现的功能是动画的控制,主要实现的功能为播放、暂停、停止功能。进一步地,还包括强制播完动画功能,主要是为了当有操控逻辑时实现UI的控制。进一步地还可以监听动画进程:判断目前的状态,是暂停、还是完成,其会自动调用用户定义的相应的参数实现对动画的各种控制。另外还可以创建动画,简而言之,动画具体类型通过传入的模板类型参数定义。并且根据传入的参数标识是线性动画还是非线性动画。同理,因为调用参数也采用模板方式,所以从架构上也是统一的,不会导致材质类型变化动画与旋转动画之间有很大的区别。
本发明还提供了一种基于模板的动画管理***,如图2所示,所述***包括:
分类单元100,用于预先将所有动画按照种类分为线性动画和非线性动画;
调用单元200,用于遍历动画进程中的所有动画,当有动画发生改变时,判断所述动画的种类,定义动画的属性并调用相应的参数;
控制单元300,用于控制动画播放进程,判断动画当前的状态,自动调用相应的参数实现对动画的各种控制。
上述各个部分的功能都已经在上述方法中进行了详细介绍,这里就不再冗述了。
当所述基于模板的动画管理***设置在客户端上时,客户端创建相应的分类单元,将动画按照种类分为线性动画和非线性动画;同时,通过调用单元遍历动画进程中的所有动画,当有动画发生改变时,判断所述动画的种类,定义动画的属性并调用相应的参数。具体来说,可以从动画管理单元中获取动画播放模块,并将分类单元传输动画播放模块中,令动画播放模块创建相应的动画模块,同时,将分类单元传入动画模块中保存。最后,通过控制单元控制动画播放进程(通过控制动画播放模块实现),判断动画当前的状态,自动调用相应的参数实现对动画的各种控制。然后,控制单元循环运动,直至动画播放完毕。
综上所述,本发明的一种基于模板的动画管理***及方法,提高了应用场景的灵活性,即将所有动画种类分为线性动画与非线性动画两类,可以实现任何对象属性的改变,应用灵活,使用方便。通过上述两类动画来直接操作动画,非常直观且灵活。并且,对动画控制机制进行抽象,使其与播放器控制机制基本保持一致,控制比较简单,并且提供了强制动画播放完成的方法,在动画使用中会更加的灵活。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (6)
1.一种基于模板的动画管理方法,其特征在于,所述方法包括以下步骤:
A、预先将所有动画分为线性动画和非线性动画两类;
B、遍历动画进程中的所有动画,当有动画发生改变时,判断所述动画的种类,定义动画的属性并调用相应的参数;
C、控制动画播放进程,判断动画当前的状态,自动调用相应的参数实现对动画的各种控制。
2.根据权利要求1所述的基于模板的动画管理方法,其特征在于,所述步骤B中判断所述动画的种类,定义动画的属性并调用相应的参数具体包括:
B1、判断所述动画为线性动画还是非线性动画,然后创建相应的线性或非线性插值算法;
B2、再根据动画起始值进行计算,获得相应的插值;
B3、根据所得插值对动画的属性进行修改并设定相应的参数。
3.根据权利要求2所述的基于模板的动画管理方法,其特征在于,所述步骤B中动画的属性包括:位置类型属性和颜色类型属性。
4.根据权利要求2所述的基于模板的动画管理方法,其特征在于,所述步骤B1中所述算法包括贝塞尔曲线算法。
5.一种基于模板的动画管理***,其特征在于,所述***包括:
分类单元,用于预先将所有动画按照种类分为线性动画和非线性动画;
调用单元,用于遍历动画进程中的所有动画,当有动画发生改变时,判断所述动画的种类,定义动画的属性并调用相应的参数;
控制单元,用于控制动画播放进程,判断动画当前的状态,自动调用相应的参数实现对动画的各种控制。
6.根据权利要求5所述的基于模板的动画管理***,其特征在于,所述动画的属性包括:位置类型属性和颜色类型属性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310632402.9A CN103617041B (zh) | 2013-11-29 | 2013-11-29 | 一种基于模板的动画管理***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310632402.9A CN103617041B (zh) | 2013-11-29 | 2013-11-29 | 一种基于模板的动画管理***及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103617041A true CN103617041A (zh) | 2014-03-05 |
CN103617041B CN103617041B (zh) | 2018-03-16 |
Family
ID=50167744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310632402.9A Expired - Fee Related CN103617041B (zh) | 2013-11-29 | 2013-11-29 | 一种基于模板的动画管理***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103617041B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105204859A (zh) * | 2015-09-24 | 2015-12-30 | 广州视睿电子科技有限公司 | 动画管理方法及其*** |
CN110213641A (zh) * | 2019-05-21 | 2019-09-06 | 北京睿格致科技有限公司 | 4d微课播放方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101266693A (zh) * | 2008-03-31 | 2008-09-17 | 康佳集团股份有限公司 | 一种动态控制动画运行过程的方法 |
US20090135189A1 (en) * | 2007-11-22 | 2009-05-28 | Electronics And Telecommunications Research Institute | Character animation system and method |
CN102346920A (zh) * | 2010-08-05 | 2012-02-08 | 深圳华强数字动漫有限公司 | 二维动画数据库管理***以及方法 |
CN102866886A (zh) * | 2012-09-04 | 2013-01-09 | 北京航空航天大学 | 一种基于Web的算法动画可视化开发*** |
-
2013
- 2013-11-29 CN CN201310632402.9A patent/CN103617041B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090135189A1 (en) * | 2007-11-22 | 2009-05-28 | Electronics And Telecommunications Research Institute | Character animation system and method |
CN101266693A (zh) * | 2008-03-31 | 2008-09-17 | 康佳集团股份有限公司 | 一种动态控制动画运行过程的方法 |
CN102346920A (zh) * | 2010-08-05 | 2012-02-08 | 深圳华强数字动漫有限公司 | 二维动画数据库管理***以及方法 |
CN102866886A (zh) * | 2012-09-04 | 2013-01-09 | 北京航空航天大学 | 一种基于Web的算法动画可视化开发*** |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105204859A (zh) * | 2015-09-24 | 2015-12-30 | 广州视睿电子科技有限公司 | 动画管理方法及其*** |
CN105204859B (zh) * | 2015-09-24 | 2018-09-25 | 广州视睿电子科技有限公司 | 动画管理方法及其*** |
CN110213641A (zh) * | 2019-05-21 | 2019-09-06 | 北京睿格致科技有限公司 | 4d微课播放方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103617041B (zh) | 2018-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103544253B (zh) | 一种以瀑布流方式显示图片的实现方法及*** | |
USD766968S1 (en) | Display screen with animated graphical user interface | |
JP2004070956A5 (zh) | ||
USD771692S1 (en) | Display screen with animated graphical user interface | |
CN102662664A (zh) | 界面动画实现方法及*** | |
CN103473077A (zh) | 丰富应用程序主窗口显示界面的方法及装置 | |
CN106681593A (zh) | 一种用户界面ui控件的显示控制方法及装置 | |
CN108769361B (zh) | 一种终端壁纸的控制方法、终端以及计算机可读存储介质 | |
CN108399646B (zh) | 一种图像渲染方法及装置 | |
USD771668S1 (en) | Display screen with animated graphical user interface | |
CN105022627A (zh) | 一种Android***中View间的通信方法 | |
CN104484895A (zh) | 一种数据显示方法及装置 | |
CN108519894B (zh) | 一种音乐盒加载初始化的方法 | |
CN102387413A (zh) | 一种电视机上展现天气信息的方法 | |
CN103617041A (zh) | 一种基于模板的动画管理***及方法 | |
CN108399092B (zh) | 一种分段进度条的生成方法 | |
CN109978979A (zh) | 提高实时渲染交互流畅性的方法、装置及电子设备 | |
CN106648623B (zh) | 一种安卓***中字符的显示方法及装置 | |
CN105487868A (zh) | 实现安卓设备虚拟按键隐藏和显示的方法和*** | |
CN109522532A (zh) | 一种折线图框选范围的计算方法及装置 | |
CN105678828A (zh) | 一种创建过渡动画的方法及装置 | |
CN104020929B (zh) | 一种应用消息展示方法、装置及终端设备 | |
CN103337089A (zh) | 一种在3d空间中实现文字跑马灯效果的方法 | |
USD759706S1 (en) | Display screen with animated graphical user interface | |
CN108664298A (zh) | 一种主题图标生成方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180316 |