微波辐射制备烟杆基木质陶瓷及其应用研究.ppt

上传人:ga****84 文档编号:376654 上传时间:2018-09-28 格式:PPT 页数:18 大小:1,020.50KB
下载 相关 举报
微波辐射制备烟杆基木质陶瓷及其应用研究.ppt_第1页
第1页 / 共18页
微波辐射制备烟杆基木质陶瓷及其应用研究.ppt_第2页
第2页 / 共18页
微波辐射制备烟杆基木质陶瓷及其应用研究.ppt_第3页
第3页 / 共18页
微波辐射制备烟杆基木质陶瓷及其应用研究.ppt_第4页
第4页 / 共18页
微波辐射制备烟杆基木质陶瓷及其应用研究.ppt_第5页
第5页 / 共18页
点击查看更多>>
资源描述

1、VC+动画图形绘制,概述,计算机动画:借助计算机生成一系列供动态演示图形的技术。动画技术在CAD、CAM、CAI等许多领域里都有广泛应用动画直观、形象等特点,在模拟仿真领域也有关非常重要的地位。如模拟航空器飞行,能使飞行员在计算机上处理实际飞行中可能出现的问题。计算机生成动画的两种途经:利用现成的动画制作软件,如二维的Flash工具、三维的3DMAX工具等。生成动画比较方便、快速,制作人员无需掌握编程知识,在较短的时间内就能学会。直接通过编写程序来生成动画要求制作人员具备一定的程序设计知识,动画编程技巧。利用计算机编程可产生种类型的动画:异或动画、调色板动画、侦动画、块动画和实时动画。,动画类

2、型简介,异或动画:利用异或方式在原来位置重画,就能快速地擦除刚才的画的物体,然后在新位置显示出来。异或操作:异或是一个数学运算符。他应用于逻辑运算。 其运算法则为a异或bab+ab(a为非a)。例如:00001111异或1111111111110000调色板动画:通过将各个像素点的颜色按一定的方式进行循环变化,就可以模仿出流动的水、空气和亮度等变化。侦动画:(翻页式动画)是将动画所有的侦准备好,然后快速地切换每一侦画面,由此形成动画。块动画:将显示对象分为背景和前景两部分,背景不发生改变面前景不断变化,便显示出动画效果。实时动画:在动画过程中实时地绘制图形,至少需要两个图形页,当在一页上绘制图

3、形时另一而被显示出来,如此循环切换来显示动画。,1 异或动画,1.1异或动画原理绘制图形时使用异或光栅操作代码,即R2_XORPEN代码, R2_XORPEN表将画笔和屏幕颜色进行异或运算,它们是绘制图形的基础,也是这种绘制方法名的由来。最后结果是两种颜色的异或,异或运算规则见下表:,1.1异或动画原理,第一次异或方式在屏幕上某一位置画图时,最后的结果是画笔颜色和屏幕颜色的异或。第二次在相同位置用异或方式重画后,最后的结果又变回屏幕原来的颜色,也就是将第一次所画的物体擦除了。由于是位运算,速度非常快,不会出现闪烁现象。在某一开始位置用异或的方式画一物体,然后隔一定的时间间隔在上次的位置再画一次

4、,然后沿某个方向移动一微小距离,在新的位置将物体再画一遍,如此循环下去,就可以看到一个物体在运动,可形成动画。,1.2异或动画举例,例子:在交互式绘图中用户想画一条直线,首先按下鼠标左键确定直线起点,接着移动鼠标,这时会有一条直线随着鼠标移动,直到用户松开左键为止,这条随鼠标移动的直线称为“像皮筋”。第一步:定义两个变量CPoint start,end;/直线的起点和终点int flag;/标志:第一次鼠标左键:0第二鼠标左键:在构造方法中初始化flag=0;第二步:增加鼠标左键消息处理及代码,1.2异或动画举例,CDC * dc = GetDC(); /取得绘图设备环境上下文指针 CPen

5、newpen(PS_SOLID,0,RGB(255,0,0); /创建新的画笔CPen * oldpen;if(flag =0) /第一次按下鼠标左键时flag=1;start=end=point;else /第二次按下鼠标左键时oldpen=dc-SelectObject(,1.2异或动画举例,第三步:增加鼠标移动消息处理及代码CDC * dc = GetDC(); CPen newpen(PS_SOLID,0,RGB(255,0,0);CPen * oldpen=dc-SelectObject(,2 调色板动画,2.1调色板动画原理一个调色板包含一组256个24位的RGB颜色值。调色板不同

6、颜色就不同,最多有256种,从0255索引:在显示缓存中,每个像素都有一个从0255的值。这个像素值指出了使用调色板中的哪种颜色给该像素着色。改变像素颜色的方法:改变像素的索引值,使其指向调色板中拐一项;改变调色板的RGB值。注意:第二种方法将导致屏幕上所有使用该调色板项值的像素的颜色都发生变化。缺点:整个屏幕只能显示256种颜色,而不是针对某个窗口或应用程序。优点:使未压缩的图像文件比真彩色图像小三分之二;可以使用Windows固有的调色板操作函数执行一种比较流行且经济的动画调色板动画。调色板动画就是通过有规律地改变每个像素的索引值,使得屏幕上每个像素的颜色发生变化,形成一种动感。能很好地模

7、仿出流动的水、空气、亮度等变化效果。,2.2 生成调色板动画的步骤,2.生成调色板动画的步骤.声明一个调色板对象,并将它初始化.创建几把画刷,每把画刷用标志置成0x01的值以初始化,这表明每个画刷的颜色都是一个指定调色板位置的索引3.设置一个定时器,用它来控制隔多长时间将屏幕重画。4.用创建的每把刷子各画一个物体。5.每隔一定时间调用调色板的操作函数AnimatePalette来改变每把画刷的索引最后的结果就是看起来屏幕上的每个物体在不停地移动,实际上是它们的颜色在发生改变。,2.3 调色板动画举例,2.3 调色板动画举例创建一个基于对话框的应用程序,在对话框的四周车许多小圆表示灯炮,程序运行

8、时各个小圆的颜色发生变化,好像门上闪烁的灯。,3 帧动画,3.1帧动画原理帧动画也称页动画或全屏幕动画。动画程序预先建立许多幅全屏幕图像,并将每幅图像都存起来。每幅图像也称为一帧面,播放时程序依次显示每幅图像,形成动画。常用于复杂的整屏三维动画。3.2制作帧动画首先:把第一帧画面建立起来。一般情况每帧的场景都非常复杂,习惯上都是用其他图形图像处理软件来实现。由于每一秒至少需要24帧画面才能取得比较好的效果,所以工作量非常大,而且需要的时间也比较多。其次:用动画播放程序来播放每一帧画面,当每一帧都比较小时可以一次将所有帧都读入内存,然后按照一定时间间隔连续显示每一帧画面。,onDraw函数CFr

9、ameDoc* pDoc = GetDocument();if(flag)/当播放时pDC-SetStretchBltMode(COLORONCOLOR);/设置位图拉伸模式(采用保存彩色位图颜色模式)/将指定内存位置大小的位图在屏幕上显示出来pDC-StretchBlt(100, 50, m_sizeDest.cx, m_sizeDest.cy,增加定时器及响应消息(onTimer)if(flag) if(index=0)index=1;elseindex=0;Invalidate();初始化更新m_pBitmap0.LoadBitmap(IDB_BITMAP1);/将位置装入内存m_pBi

10、tmap1.LoadBitmap(IDB_BITMAP2);for(int i=0;i2;i+)CClientDC dc(this);/创建关于窗口客户区的设备上下文OnPrepareDC(,3 帧动画,3.2程序举例及说明定义变量:CFrameDoc* GetDocument();CDC m_pdcMemory2; /设备上下文指针数组CBitmap m_pBitmap2; /位图指针数组CSize m_sizeDest;/目标区域大小CSize m_sizeSource;/源块大小BOOL flag;/标志,是否播放动画int index;/画面序号设置默认状态(View的构造函数中)Fl

11、ag=FALSE;Index=0;,4 块动画,4.1 块动画原理块动画又称为子画面动画、部分屏幕动画显示对象分成两部分:背景和前景背景通过不发生变化,前景不断地运动、改变,只要将背景画一次,不断更新前景就形成了块动画。由于每次不需要刷新整个屏幕,而仅仅是一小部分,所以可以获得很高的动画速度。许多电脑游戏中能看到这种动画,如背景上面有坦克或飞机到处移动。4.2 块动画的制作过程准备好一幅背景图画和一幅前景图(子画面)显示背景图确定子图画面将显示的位置,将可能被子画面覆盖的背景保存起来显示子画面更新位置变量恢复背景,并将新位置的背景保存起来;在新位置显示子画面;返回第步。,4 块动画,4.3 程序举例及说明,提问与答疑!,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。