第9章Android图形图像处理课件

上传人:91274****mpsvz 文档编号:243111670 上传时间:2024-09-16 格式:PPT 页数:32 大小:1.34MB
返回 下载 相关 举报
第9章Android图形图像处理课件_第1页
第1页 / 共32页
第9章Android图形图像处理课件_第2页
第2页 / 共32页
第9章Android图形图像处理课件_第3页
第3页 / 共32页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第章图形图像处理,网络资源:,群:(编程清华版),(公共版),号:,本章知识结构图,逐帧动画,简单图片,作为一款注重用户体验的应用程序,当然离不开图形、图像的支持。在中对图形、图像提供了多种支持,一般使用和方法来封装和管理位图,通过和类来保存和控制逐帧动画,使用和两个类绘制各种各样的图形,其中,可以绘制一些常见的规则图形,而则用于绘制一些不规则、自定义的图形。,静态图片即图片内容不发生变化的图片,通常用于显示、增添界面美观,例如图标、背景等。对于这种类型的图片通常由一些图片控件进行处理,如等。,动态图片即内容、大小、位置等会随着时间而变化的图片,一般采用不断重新绘制的方式来处理,每隔多少毫秒绘制一次,给人的感觉就是连续变化的。,绘图接口结构,图片不仅可以使用等图片控件显示,也可以作为、等控件的背景。从广义的角度来看,应用中图片不仅包括*(首选)、*、*(不建议)等格式的位图,也包括使用资源文件定义的各种对象。,逐帧动画是一种常见的动画形式,其原理是利用人的视觉的滞后性,在时间轴的每帧上绘制不同的内容,然后在足够短的时间内进行播放,给人的感觉就如同连续的动画。,由于逐帧动画的帧序列内容不一样,这不但给制作增加了负担而且最终输出的文件量也很大,但它的优势也很明显:逐帧动画适合于表演细腻的动作。例如:人物走路、说话,动物奔跑等,简单图片和逐帧动画,逐帧动画,简单图片,简单图片和逐帧动画,简单图片和逐帧动画,程序结构,在中操作图片是通过类来完成的,类有很多子类,如类用于操作位图,类用于操作逐帧动画,类用于操作形状。,不允许图片资源的文件名中出现大写字母,且不能以数字开头。,需要指出的是,只是一个类型的常量,代表该对象的,如果在程序中需要获得实际的对象,则可以调用 () 方法再调用的( )方法来获取。,对象,简单图片,. 和,用于表示一张位图,用于封装一个对象。,如果想将对象包装成对象,可以调用的构造方法。,( );,如果需要获取包装的对象,可以调用的()方法。,();,简单图片,类常用方法,方法,描述,( , , , , ),从原位图的指定坐标点 () 开始,截取宽为,长为的部分,创建一个新的对象,( , , ),创建一个宽为,长为的新位图,(),获取位图的高度,(),获取位图的宽度,(),返回该对象是否已被回收,(),强制一个对象立即回收自己,简单图片,是一个工具类,该类所有的方法都是静态方法,这些方法可以从不同的数据源来解析、创建对象,如资源、路径、文件和数据流等方式。,方法,描述,( , , ),从指定的字节数组的位置,将长度为的字节数据解析成对象,( ),从指定的文件中解析,创建一个对象,( , ),从指定的资源中解析创建对象,( ),从指定的输入流解析,创建一个对象,简单图片,类常用方法,. 实现示例,简单图片,设置图片的缩放方式,设置两个的上下间距,简单图片,()();,获取对象,()();,(), );,获取草地背景的位图,( () ,设置触摸监听器,( , ) ,()();,();,()()();,获取原图的缩放量,()()();,()()*);,获取触摸的坐标对应原图上的位置,()()*);,()();,对越界情况的处理,()();,();,(, , , );,以点击的位置为中心查看原图的局部细节,();,;,);,.创建逐帧动画,创建逐帧动画的一般方法:先在程序中存放逐帧动画的素材,再在文件夹下创建一个文件夹,再在该文件夹下创建一个文档,在元素中添加元素来定义动画的全部帧。,注意:也支持在代码中创建逐帧动画,调用的( ) 方法即可,类似于使用方法创建时的。,逐帧动画,其中:,()属性定义动画是否循环播放。只播一次,不循环播放;循环播放。,()元素定义每一张图片的内容和播放持续时间。指定内容,指定时间。,()元素出现的顺序指定图片播放的顺序。,也支持在代码中创建逐帧动画:,调用的 ( , ) 方法即可,类似于使用方法创建时的。,逐帧动画,. 实现示例,逐帧动画,程序界面布局中定义了三个组件:两个和一个,两个用于控制逐帧动画的开始和停止,用于显示背景和逐帧动画。,. 实现示例,逐帧动画,逐帧动画为马的奔跑,布局文件:,. 实现示例,逐帧动画,()();,()();,()();,()();,获取逐帧动画的对象,( () ,为“动画开始”按钮添加单击事件处理,( ) ,();,开始动画,);,( () ,为“动画停止”按钮添加单击事件处理,( ) ,();,停止动画,);,两个按钮代码所在文件:,. 实现示例,逐帧动画,该程序在使用引用逐帧动画,如果无需草地背景,也可以使用“,将逐帧动画作为背景显示,,在代码中将“ () () ;”,改为“ (). ();”。,首先在界面布局中添加控件。,示例讲解,要实现示例的在简单图片和逐帧动画界面中进行切换功能,需要利用控件。,设置初始状态为,然后在代码中为添加一个状态改变的监听器,状态为时显示简单图片的界面,状态为时显示逐帧动画的界面。,示例讲解,该示例完整的代码请参考,自定义绘图,除了可以使用程序中的图片资源外,应用还可以自行绘制图形,也可以在运行时动态地生成图片,前面我们所讲的自定义控件就用到了自定义绘图。,在应用中,和是两个绘图的基本类,使用这两个类几乎可以完成所有的绘制工作。,:画布,图形系统最核心的一个类,作为参数传入()方法,完成绘制工作,该类提供了各种绘制方法,用于绘制不同的图形,例如点、直线、矩形、圆、文本、颜色、位图等。,:画笔,用于设置绘制的样式、颜色等信息。,自定义绘图,第章介绍了如何自定义控件,本节介绍利用自定义方法进行绘图的相关类的使用。,示例:自定义绘图的程序。,程序清单:,方法,描述,( , , , , ),绘制弧形,( , , , ),绘制位图,( , , , ),绘制圆形,( , , , , ),绘制一条线,( , , ),绘制一个点,( , , , , ),绘制矩形,( , , , ),绘制字符串,类常用方法,和,方法,描述,( ),设置透明度,( , , , ),绘制颜色,( ),设置颜色,( ),设置渲染效果,( , , , ),设置阴影,( ),设置画笔粗细,( ),设置画笔风格,类常用方法,和,方法,描述,( ),设置透明度,( , , , ),绘制颜色,( ),设置颜色,( ),设置渲染效果,( , , , ),设置阴影,( ),设置画笔粗细,( ),设置画笔风格,类常用方法,和,类的子类,子类,构造方法,描述,( , , ),使用位图平铺的渲染效果,( , , , , , , ),( , , , , , , ),使用线性渐变来渲染图形,( , , , , , ),( , , , , , ),使用圆形渐变来渲染图形,( , , , ),( , , , ),使用角度渐变来渲染图形,( , , ),( , , ),使用组合效果来渲染图形,方法,描述,( , , , ),为路径添加一个圆形轮廓,( , , , , ),为路径添加一个矩形轮廓,(),将目前的轮廓闭合,即连接起点和终点,( , ),从最后一个点到点()之间画一条线,( , ),设置下一个轮廓的起点,类常用方法,和,类的子类,子类,构造方法,描述,( ),使用圆角来代替尖角,从而对图形尖锐的边角进行平滑处理,( , ),创建一个虚线的轮廓(短横线小圆点),( , ),与相似,但是添加了随机性,需要指定每一段的长度和与原始路径的偏离度,( , , , . ),定义一个新的路径,并将其用作原始路径的轮廓标记,( , ),添加两种效果,将两种效果结合起来,( , ),在路径上先使用第一种效果,再在此基础上应用第二种效果,示例没有采用进行界面布局,而是直接使用代码布局,示例讲解,该示例完整的代码请参考,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!