CN104766356B - 一种iOS动画制作方法及装置 - Google Patents

一种iOS动画制作方法及装置 Download PDF

Info

Publication number
CN104766356B
CN104766356B CN201510134111.6A CN201510134111A CN104766356B CN 104766356 B CN104766356 B CN 104766356B CN 201510134111 A CN201510134111 A CN 201510134111A CN 104766356 B CN104766356 B CN 104766356B
Authority
CN
China
Prior art keywords
animation
component
animation component
target element
ios
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
Application number
CN201510134111.6A
Other languages
English (en)
Other versions
CN104766356A (zh
Inventor
吕庆春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuba Co Ltd
Original Assignee
Wuba Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuba Co Ltd filed Critical Wuba Co Ltd
Priority to CN201510134111.6A priority Critical patent/CN104766356B/zh
Publication of CN104766356A publication Critical patent/CN104766356A/zh
Application granted granted Critical
Publication of CN104766356B publication Critical patent/CN104766356B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本发明提供一种iOS动画制作方法及装置,用以解决现有技术中基于iOS系统自带引擎提供的基本的单位动画制作动画导致内存以及引擎驱动开销较大的问题。其中,iOS动画制作方法包括:将至少一个iOS单位动画制作为一个动画组件;根据接收到的动画组件获取请求,将与请求对应的动画组件封装为遍历器;根据接收到的配置参数,由遍历器提供目标组件;绘制目标组件,该方案降低了动画占用的内存以及引擎驱动的开销。

Description

一种iOS动画制作方法及装置
技术领域
本发明涉及通信技术领域,尤其涉及一种iOS动画制作方法及装置。
背景技术
目前,在iOS平台上对图像或者动画的显示都是基于iOS平台自带的引擎来进行,但iOS系统自带的引擎都是属于最基本的单位动画,因此,在进行复杂动画或者视图较多的动画的显示时,动画占用的内存开销和引擎驱动计算的开销较大。同时,过多的基本单位动画在复杂的动画效果下也会大大增加开发人员自定义组件的难度。
发明内容
本发明提供一种iOS动画制作方法及装置,用以解决现有技术中基于iOS系统自带引擎提供的基本的单位动画制作动画导致内存以及引擎驱动开销较大的问题。
根据本发明的一个方面,提供了一种iOS动画制作方法,包括:将至少一个iOS单位动画制作为一个动画组件;
根据接收到的动画组件获取请求,将与请求对应的动画组件封装为遍历器;根据接收到的配置参数,由遍历器提供目标组件;绘制目标组件。
进一步的,上述方法还包括:在将至少一个iOS单位动画制作为一个动画组件之后,将动画组件与动作名称对应存储;根据接收到的动画组件获取请求,将与请求对应的动画组件封装为遍历器,包括:根据接收到的动画组件获取请求中的动画名称查找动画组件对应的动画效果类的名称,根据名称生成动画组件对象,将生成的动画组件对象添加到遍历器中。
其中,根据接收到的配置参数,由遍历器提供目标组件,包括:根据配置参数中指示的颜色以及大小的参数值,确定目标组件的颜色以及大小,按照确定出的目标组件的颜色以及大小生成目标组件。
其中,绘制目标组件,包括:在接收到图片文件后,根据动画组件获取请求中指示的对图片文件的特效处理类型,调用预先封装的特效处理算法对图片文件进行特效处理;输出经过特效处理后的图片文件。
其中,调用预先封装的特效处理算法对图片文件进行特效处理,包括:
直接对输入的图片文件的原始数据进行更改,得到特效处理后的图片文件。
进一步的,根据本发明的另一个方面,提供了一种iOS动画制作装置,包括:制作模块,用于将至少一个iOS单位动画制作为一个动画组件;封装模块,用于根据接收到的动画组件获取请求,将与请求对应的动画组件封装为遍历器;组件提供模块,用于根据接收到的配置参数,由遍历器提供目标组件;绘制模块,用于绘制目标组件。
进一步的,上述装置还包括:存储模块,用于在将至少一个iOS单位动画制作为一个动画组件之后,将动画组件与动作名称对应存储;封装模块用于:根据接收到的动画组件获取请求中的动画名称查找动画组件对应的动画效果类的名称,根据名称生成动画组件对象,将生成的动画组件对象添加到遍历器中。
其中,组件提供模块用于:根据配置参数中指示的颜色以及大小的参数值,确定目标组件的颜色以及大小,按照确定出的目标组件的颜色以及大小生成目标组件。
其中,绘制模块,包括:调用单元,用于在接收到图片文件后,根据动画组件获取请求中指示的对图片文件的特效处理类型,调用预先封装的特效处理算法对图片文件进行特效处理;输出单元,用于输出经过特效处理后的图片文件。
其中,调用单元用于:直接对输入的图片文件的原始数据进行更改,得到特效处理后的图片文件。
本发明实施例的方案,将iOS单位动画制作为动画组件,在接收到动画组件获取请求,根据接收到的配置参数,提供目标组件,降低了动画占用的内存以及引擎驱动的开销。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例1的iOS动画制作方法的流程图;
图2是对iOS动画引擎的使用过程流程图;
图3是本发明实施例2的iOS动画制作方法的流程图;
图4是本发明实施例3的iOS动画制作装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本实施例提供了一种iOS动画制作方法,该方法用于解决现有技术中基于iOS系统自带引擎提供的基本的单位动画制作动画导致内存以及引擎驱动开销较大的问题。图1是该方法的流程图,如图1所示,该方法包括如下步骤:
步骤101:将至少一个iOS单位动画制作为一个动画组件;
在本实施例中,一个动画效果是通过UI视图上多个动画组件组成的,动画组件为一个承托显示到屏幕的动画效果,即是指一套完整的由一个或多个单位动画组成的动画效果类,比如尺寸放大、位置移动等。在该步骤中,可以将iOS系统自带的最基本的单位动画制作成多个组件,并将其固化,例如存储于iOS字典中。
步骤102:根据接收到的动画组件获取请求,将与请求对应的动画组件封装为遍历器;
步骤103:根据接收到的配置参数,由遍历器提供目标组件;
该步骤103具体可以包括:根据接收到的配置参数中指示的颜色以及大小的参数值,确定目标组件的颜色以及大小,按照确定出的目标组件的颜色以及大小生成目标组件。
步骤104:绘制目标组件。
在具体的开发中,也可以根据开发者不同的需要从iOS字典中将多个动画组件添加到UI视图中。
在上述步骤101之后,上述方法还可以包括:在将至少一个iOS单位动画制作为一个动画组件之后,将动画组件与动作名称对应存储;基于此,根据接收到的动画组件获取请求,将与请求对应的动画组件封装为遍历器,包括:根据接收到的动画组件获取请求中的动画名称查找动画组件对应的动画效果类的名称,根据名称生成动画组件对象,将生成的动画组件对象添加到遍历器中。
进一步的,本实施例的方法还可以包括对输入的进行特效处理的过程,具体地,根据该功能绘制目标组件,包括:在接收到图片文件后,根据动画组件获取请求中指示的对图片文件的特效处理类型,调用预先封装的特效处理算法对图片文件进行特效处理;输出经过特效处理后的图片文件。
基于本实施例中由一个或多个基本单位动画构成的动画组件,本实施例中的动画引擎在使用过程中可以直接调用动画组件,图2是对iOS动画引擎的使用方法流程图,以下通过对iOS动画引擎的使用过程来对本实施例的iOS动画制作方法进行进一步说明,如图2所示,该流程包括如下:
初始化整个图像引擎:
把引擎中的动画组件模型K--V加入到内存中;
根据用户的需求,在iOS字典中选出动画组件,构造遍历器;
检查遍历器,确定是否需要更新组件的类型,如果需要,则更新,新增的组件具有注册的接口,初始化引擎时接收注册,添加组件。
对于组件的增加和减少,可以通过下载更新组件包的方式,也可以提供开发者注册接口,在其注册后写入新的组件。
引擎访问动画组件库,例如iOS字典,根据需求通过K值查找到动画组件。构造出来遍历器。构造遍历器实际上是根据K值求Value的过程,其中K值为动画组件的名称,Value动画组件类名。根据动画组件模型K--V中的K值找到V,这个V是存在里面的动画class name根据class name生成的对象object,然后再将生成的对象统一添加到遍历器中。即将所选中的组件封装为一个遍历器。封装遍历器后,根据开发人员需求,由配置接口提供的配置参数,工开发人员选择颜色和大小。
同时通过配置接口,接收使用者,例如设计人员,输入的配置参数,由遍历器来进行最终组件动画的定制。
最后通过引擎的图形绘制接口,将定制的动画绘制在iOS的系统上。
优选地,调用UI的绘制方法进行动画组件绘制,绘制方法即Draw方法,调用之后即可直接动画开始绘制。
优选地,在一个动画周期内,如果遍历器完成组件库中所有组件的动画接口和配置接口的访问后,则将所有的动画页面都配置完,整个遍历器将处于休眠状态。其中,动画周期:是指从构建动画开始一直到动画结束,为一个动画周期。这个动画可能由多个组件组成,所以动画周期不同于组件周期。动画接口是用于接受动画的速率类型mode的比如,先快后慢,先慢后快,提供给开发者,可以又开发者自行配置的。遍历器所完成的访问是指对那些根据需求所选择的构建了遍历器的组件进行的访问。在整个动画周期内,如果接到动画终止命令,图形绘制接口终止动画,并唤醒遍历器,等待新的动画指令,重新根据新的动画指令从组件字典中选出动画组件,构造遍历器。如果未接到命令,结束整个动画的绘制,立即释放绘制资源。
实施例2
本实施例提供了一种iOS动画制作方法,该方法主要介绍动画引擎提供的对输入图像进行特效处理的过程。基于此,本实施例的图像动画引擎还提供了一组图像工具库,包括一系列特效的粒子系统和特定的特效图像类。该类包封装了对图像的特效处理算法,比如:模糊,渐变等处理算法。在内部实现了对图像的数据处理功能。开发人员可以通过直接调用接口来绘制一些特效图像类,基于此,用户可以输入为原始的图片文件或者当前屏幕的截图,则可以输出经过特效处理的图像data数据。同时,为了节省内存,在对输入原始的jpg文件模糊化过程中,直接对原始数据进行更改,从而节省了图片copy的内存。
图3是该实施例提供的iOS动画制作方法的流程图。如图3所示,该方法包括如下步骤:
输入需要进行特效处理的图像的jpg文件或者图像数据;
在动画引擎工具类提供的图像特效中选择特效组件;
配置特效组件中的参数;
工具库对输入的文件或者数据进行特效处理,输出返回的文件。
其中,图像工具库在使用时不需要将其构建在遍历器中,使用一个方法调用即可。
实施例3
本实施例提供了一种iOS动画制作装置,该装置具体可以位于iOS动画引擎中,用于实现上述实施例1以及实施例2所提供的动画制作方法,图4是该装置30的结构框图,如图4所示,该装置包括如下组成部分:
制作模块31,用于将至少一个iOS单位动画制作为一个动画组件;
封装模块32,用于根据接收到的动画组件获取请求,将与请求对应的动画组件封装为遍历器;
组件提供模块33,用于根据接收到的配置参数,由遍历器提供目标组件;
绘制模块34,用于绘制目标组件。
进一步的,该装置30还包括:
存储模块,用于在将至少一个iOS单位动画制作为一个动画组件之后,将动画组件与动作名称对应存储;基于此,上述封装模32块用于:
根据接收到的动画组件获取请求中的动画名称查找动画组件对应的动画效果类的名称,根据名称生成动画组件对象,将生成的动画组件对象添加到遍历器中。
其中,上述组件提供模块33具体可以用于:
根据配置参数中指示的颜色以及大小的参数值,确定目标组件的颜色以及大小,按照确定出的目标组件的颜色以及大小生成目标组件。
其中,上述绘制模块34,具体可以包括:
调用单元,用于在接收到图片文件后,根据动画组件获取请求中指示的对图片文件的特效处理类型,调用预先封装的特效处理算法对图片文件进行特效处理;输出单元,用于输出经过特效处理后的图片文件。
其中,上述调用单元具体可以用于:直接对输入的图片文件的原始数据进行更改,得到特效处理后的图片文件。
本发明实施例提供的方案,通过将iOS单位动画制作为动画组件,在接收到动画组件获取请求,根据接收到的配置参数,提供目标组件,降低了动画占用的内存以及引擎驱动的开销,进而使得iOS动画引擎的使用更加流畅,同时更加方便了动画组件的自定义。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (8)

1.一种iOS动画制作方法,其特征在于,包括:
将至少一个iOS单位动画制作为一个动画组件;
根据接收到的动画组件获取请求,将与所述请求对应的动画组件封装为遍历器;
根据接收到的配置参数,由所述遍历器提供目标组件;
绘制所述目标组件;
其中,所述绘制所述目标组件,包括:
在接收到图片文件后,根据所述动画组件获取请求中指示的对所述图片文件的特效处理类型,调用预先封装的特效处理算法对所述图片文件进行特效处理;
输出经过特效处理后的图片文件。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在将至少一个iOS单位动画制作为一个动画组件之后,将动画组件与动作名称对应存储;
所述根据接收到的动画组件获取请求,将与所述请求对应的动画组件封装为遍历器,包括:
根据接收到的动画组件获取请求中的动画名称查找动画组件对应的动画效果类的名称,根据所述名称生成动画组件对象,将生成的所述动画组件对象添加到所述遍历器中。
3.根据权利要求1所述的方法,其特征在于,所述根据接收到的配置参数,由所述遍历器提供目标组件,包括:
根据所述配置参数中指示的颜色以及大小的参数值,确定目标组件的颜色以及大小,按照确定出的所述目标组件的颜色以及大小生成目标组件。
4.根据权利要求1所述的方法,其特征在于,所述调用预先封装的特效处理算法对所述图片文件进行特效处理,包括:
直接对输入的图片文件的原始数据进行更改,得到特效处理后的图片文件。
5.一种iOS动画制作装置,其特征在于,包括:
制作模块,用于将至少一个iOS单位动画制作为一个动画组件;
封装模块,用于根据接收到的动画组件获取请求,将与所述请求对应的动画组件封装为遍历器;
组件提供模块,用于根据接收到的配置参数,由所述遍历器提供目标组件;
绘制模块,用于绘制所述目标组件;
其中,所述绘制模块,包括:
调用单元,用于在接收到图片文件后,根据所述动画组件获取请求中指示的对所述图片文件的特效处理类型,调用预先封装的特效处理算法对所述图片文件进行特效处理;
输出单元,用于输出经过特效处理后的图片文件。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
存储模块,用于在将至少一个iOS单位动画制作为一个动画组件之后,将动画组件与动作名称对应存储;
所述封装模块用于:
根据接收到的动画组件获取请求中的动画名称查找动画组件对应的动画效果类的名称,根据所述名称生成动画组件对象,将生成的所述动画组件对象添加到所述遍历器中。
7.根据权利要求5所述的装置,其特征在于,所述组件提供模块用于:
根据所述配置参数中指示的颜色以及大小的参数值,确定目标组件的颜色以及大小,按照确定出的所述目标组件的颜色以及大小生成目标组件。
8.根据权利要求5所述的装置,其特征在于,所述调用单元用于:
直接对输入的图片文件的原始数据进行更改,得到特效处理后的图片文件。
CN201510134111.6A 2015-03-25 2015-03-25 一种iOS动画制作方法及装置 Active CN104766356B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510134111.6A CN104766356B (zh) 2015-03-25 2015-03-25 一种iOS动画制作方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510134111.6A CN104766356B (zh) 2015-03-25 2015-03-25 一种iOS动画制作方法及装置

Publications (2)

Publication Number Publication Date
CN104766356A CN104766356A (zh) 2015-07-08
CN104766356B true CN104766356B (zh) 2018-07-06

Family

ID=53648161

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510134111.6A Active CN104766356B (zh) 2015-03-25 2015-03-25 一种iOS动画制作方法及装置

Country Status (1)

Country Link
CN (1) CN104766356B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107038029A (zh) * 2017-03-28 2017-08-11 武汉斗鱼网络科技有限公司 苹果开发语言、C++混合编译调用openCV的方法及系统
CN111311715B (zh) * 2020-02-14 2023-07-21 北京三快在线科技有限公司 一种网页中添加动画效果的方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102866886A (zh) * 2012-09-04 2013-01-09 北京航空航天大学 一种基于Web的算法动画可视化开发系统
CN103049547A (zh) * 2012-12-27 2013-04-17 南京新与力文化传播有限公司 一种基于IDF文档格式的iOS页面处理方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7956848B2 (en) * 2007-09-04 2011-06-07 Apple Inc. Video chapter access and license renewal

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102866886A (zh) * 2012-09-04 2013-01-09 北京航空航天大学 一种基于Web的算法动画可视化开发系统
CN103049547A (zh) * 2012-12-27 2013-04-17 南京新与力文化传播有限公司 一种基于IDF文档格式的iOS页面处理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于cocos2d-x引擎的手机游戏快速开发工具的设计与实现;舒沂;《中国优秀硕士学位论文全文数据库 信息科技辑》;20131015;第I138-54页 *

Also Published As

Publication number Publication date
CN104766356A (zh) 2015-07-08

Similar Documents

Publication Publication Date Title
CN107103113B (zh) 面向神经网络处理器的自动化设计方法、装置及优化方法
CN109445784B (zh) 结构数据的处理方法、装置、存储介质及电子设备
CN104102545A (zh) 移动增强现实浏览器三维资源配置与加载的优化方法
CN103413343B (zh) 一种3d图像动画引擎
CN103164204A (zh) 基于Symbian系统的用户界面的生成方法和系统
CN105631925A (zh) 基于osg三维渲染引擎预处理的三维场景生成方法及装置
CN107180444A (zh) 一种动画生成方法、装置、终端和系统
CN107807821A (zh) 动画弹窗的实现方法和终端
CN104517307A (zh) 一种动画制作方法和装置
CN110624244B (zh) 游戏中脸部模型的编辑方法、装置和终端设备
CN104766356B (zh) 一种iOS动画制作方法及装置
CN110516218A (zh) 表格的生成方法、终端和计算机可读存储介质
CN104503769B (zh) 一种基于xml配置文件的字符点阵液晶界面实现方法
CN109242934A (zh) 一种动画代码的生成方法及设备
CN110045956A (zh) 组件的配置方法、装置、设备及可读存储介质
CN104063231B (zh) 一种基于hit‑tena的试验资源快速接入方法
CN110610535B (zh) 基于矢量数据的可配置前端纯js地图动画集实现方法
CN110109423B (zh) 一种基于Html5技术的水电厂实时数据监视系统
CN110443880A (zh) 图像渲染方法、装置、存储介质及电子设备
CN103425469A (zh) 基于mda技术的手机游戏代码生成方法
CN102930581A (zh) 对数据帧动画的通用表示
CN107230244A (zh) 一种动画文件的生成方法和渲染系统
CN109925715B (zh) 一种虚拟水域生成方法、装置及终端
CN106354449B (zh) 一种文档在线演示方法及客户端
CN106648586A (zh) 一种基于网络浏览器进行vr创作的平台

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant