版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGE《计算机图形学》课程教《计算机图形学》课程教案绪论课时2学时(90分钟)教学目标了解计算机图形学的概念、研究历史、研究内容、应用领域及发展趋势。学情分析学生刚开始接触计算机图形学。教学重点及难点无课程资源主要资源:教材、课件网上资源:/course/203432320.html教学内容与过程教学方法及策略1什么是计算机图形学介绍国际标准化组织IS对图形学的定义:计算机图形学(ComputerGraphics)是一门研究通过计算机将数据转换成图形,并在专门显示设备上显示的原理方法和技术的学科。通过图形介绍计算机图形学与前面已经学过的字图像处理的区别。2计算机图形学研究历史通过图形动画介绍:采用多种教学方式如:多媒体+板书、讲授+实例3图形学研究的主要内容通过图形动画介绍:再介绍一些前人在计算机图形学方面的研究成果,如:提供参考文献,帮助学生了解相关知识。4计算机图形学的应用通过图形动画介绍在各方面的应用:再介绍目前应用比较广的:(1)虚拟现实(VR)利用电脑产生三维空间虚拟世界,通过VR设备提供使用者视觉、听觉、触觉的模拟,让使用者如同身历其境感觉。【图形展示】(2)增强现实(AR)通过设备,把虚拟世界套在现实世界并进行互动。【图形展示】(3)混合现实(MR)通过设备合并现实和虚拟世界,产生新的可视化环境。【图形展示】(4)3D打印(快速成形)举出从1983年开始,到目前的比较典型的3D成品。例如:5计算机图形学发展趋势主要从5各方面介绍:绘制速度、三维数据设备更便携、结合AI快速生成高质量的图形、改进虚拟现实与增强现实的技术和产品、进一步完善大场景的获取和展现。【学生练习】通过手机,现场查阅计算机图形学的应用,并由学生上台介绍,让大家讨论是否属于计算机图形学领域。预习任务直线的绘制算法。
授课题目数值微分(DDA)直线生成算法课时2学时(90分钟)教学目标了解图形扫描转换的过程,熟悉用数值方法解微分方程,掌握数值微分画线算法在第一象限的直线公式推导过程;要求学生能够使用DDA公式编程绘制直线。学情分析学生能够使用画图软件的功能实现基本图形的绘制,但并不了解这些图形的生成算法,因此,通过画图软件引入知识点,激发学习兴趣。教学重点及难点重点:第一象限直线的数值微分法公式推导难点:将任意方向直线的数值微分法公式进行简化课程资源主要资源:教材、演示软件、课件网上资源:/course/203432320.html教学内容与过程教学方法及策略[前沿知识介绍]介绍图形学在多个领域的应用。由基本图形可演变成复杂图形,由此引出本教学单元内容,基本图形的绘制。[提出问题]如图,在画图软件中绘制的直线为什么常出现锯齿状?分析:显示器显示图形的最小单位是象素,在屏幕上显示的直线是最佳逼近于理想直线的一组像素,而非理想直线上无数点组成。所以出现锯齿状。如何找到最佳逼近像素?通过直线生成算法求出直线上关键点的坐标,再通过取整方式找到逼近像素,用写点方式将像素显示。[教学内容与设计]数值微分法(DigitalDifferentalAnalyzer)简称DDA法[PPT展示思路]:①用数值方法解微分方程,通过对x和y各增加一个小增量,计算直线上关键点的x、y的值。②确定最佳逼近象素。xi+1=xi+1yi+1=kxi+1xi+1=xi+1yi+1=kxi+1+b=k(xi+1)+b=kxi+b+k=yi+k已知直线起点(xs,ys),终点(xe,ye),直线斜率k=(ye-ys)/(xe-xs)①确定某个方向为计长方向,规则:dx>dy,x为计长方向√dy>dx,y为计长方向通过现实生活中存在的问题,引导学生寻求答案,以此激发学生的学习兴趣,并引出课堂知识点。采用多种教学方式如:多媒体+板书、讲授+提问+讨论、实例+理论等方式激发学生的学习欲望,使学生在课堂上积极思考,善于发现问题,提出问题,并逐步解决问题。②计算另一个方向的增量。x从起点到终点变化,dx>dy,x方向作为计长方向;x每步递增1,y递增k。for(x=xs;x<=xe;x++){y=y+k;for(x=xs;x<=xe;x++){y=y+k;pDC->SetPixel(x,(int)(y+0.5),RGB(255,0,0));}[板书]:写出主要代码,如右图。演示程序。2.DDA法的公式推导(第一象限k〉1)5′[提问、分组讨论]分析:dy>dx,y为计长方向,y每步递增1,计算相应点的x坐标。y=kx+bxi=1/k(yi-b)yi+1=yi+1,xi+1=1/k(yi+1-b)=1/k(yi+1-b)=1/k(yi-b)+1/k=xi+1/k难点:3.任意方向直线的DDA公式如图,直线可分8种情况。寻求规律。分析:直线①:x+1,y+k,直线⑧和直线①关于x轴对称,DDA公式相同。同理,得出四组公式。再进一步简化:直线①⑤是同一根线。if(xe<xs)交换if(xe<xs)交换(xs,ys)与(xe,ye)xi+1=xi+1,yi+1=yi+k|Dx|>|Dy|if(ye<ys)交换(xs,ys)与(xe,ye)yi+1=yi+1,xi+1=xi+1/k|Dx|<|Dy|方向一致,可用直线①的DDA公式。简化结果:得出两组公式,如图。4.DDA绘制直线段的程序设计根据算法步骤对应展示程序设计。5.线型的设计3′通过图形与程序展示,增加计数变量作为控制开关,控制显示的像素个数和间隔的像素个数。思考:如何减少或消除锯齿状?6.反走样处理简介通过图形与公式介绍反走样的思路。采用循序渐进的方式讲授教学内容,由易到难,从简单拓展到复杂,使学生逐步掌握相关算法。课后实验编写程序,实现任意方向直线的绘制。预习任务中点画线算法。教学反思通过前沿知识和问题引入知识点,激发学生学习兴趣。突出重点内容的讲解,区分不同的知识点,采用对应的最佳教学方式。
授课题目中点画线算法课时2学时(90分钟)教学目标掌握用中点画线算法在第一象限的直线公式推导过程;熟悉程序设计步骤,了解消除小数的方法,要求学生能够使用中点画线公式绘制直线。学情分析学生已了解图形扫描转换的过程、熟悉直线的DDA生成算法,在此基础上引入中点画线算法进行分析、比较。教学重点及难点重点:第一象限直线的中点画线法公式推导难点:绘制具有一定宽度的直线。课程资源主要资源:教材、演示软件、课件网上资源:/course/203432320.html教学内容与过程(含时间分配)教学方法及策略[知识回顾]DDA画线算法的生成过程。[提出问题]演示画图软件绘制直线的过程,提出问题,直线还可通过什么算法来实现?[教学内容与设计]中点画线算法[PPT展示思路]:1.算法原理根据可取像素点的中点与直线的关系来判断取哪一个像素已知直线(x0,y0)-(x1,y1)0<k<1直线方程:F(x,y)=y-kx-b=0设P为当前离直线最接近的像素中点判别式:F(xM,yM)=(yi+0.5)-k(xi+1)-b根据中点与直线的关系判断下一个像素:若F(xM,yM)>=0,M在直线之上,取P1F(xM,yM)<0,M在直线之下,取P2重点:2.公式推导(第一象限k<=1)di=F(xM,yM)>0取P1,则下一点应取哪一点?di+1=F(xM1,yM1)=(yi+0.5)-k(xi+2)-b=di–kdi=F(xM,yM)<0取P2,则下一点应取哪一点?di+1=F(xM1,yM1)=(yi+1.5)-k(xi+2)-b=di+1-k[提问]:d0=?以提问的方式,激发学生的学习兴趣,并引出中点画线算法算理。采用PPT动画效果,使学生可以直观地看到算法的判断过程,调动学生积极性。[板书推导]:计算di的初始值,第一个象素是(x0,y0),相应的判别式为:d0=(y0+0.5)-k(x0+1)-b=0.5-k=0.5-(y1-y0)/(x1-x0)dx=xe–dx=xe–xs;dy=ye–ys;d=dx-2*dy;y=ys;for(x=xs;x<=xe;x++){pDC->SetPixel(x,y,RGB(…));if(d>=0)d=d–dy-dy;else{y=y+1;d=d+dx+dx-dy-dy;}}用2di(x1-x0)代替di,消除小数得出公式,如右图:d0=dx-2dy当di>=0时,xi+1=xi+1,di+1=di-2dy当di<0时,xi+1=xi+1,yi+1=yi+1di+1=di-2dy+2dx3.程序设计编程环境编写代码,如右图。演示程序,根据图形再次分析算法。难点:4.宽度直线的生成绘制具有一定宽度的曲线,可以通过水平刷子,垂直刷子和方形刷子。分析:水平刷子在显示点(x,y)的同时将它上下的像素也显示。垂直刷子在显示点(x,y)的同时将它左右的像素也显示。缺点:在直线的两端会有明显的缺口。方形刷子:把方形边界像素全部显示。缺点:相同宽度方形刷在不同方向的直线宽度不同。[总结]算法:根据可取像素点的中点与直线的关系来判断取哪一个像素。重点:推导出中点画线算法的公式。难点:绘制宽度直线。在编程环境直接编写、调试及运行程序,使学生能直观地观察并分析结果,其中可设置一些错误,引导学生分析,提高分析和设计能力。课后实验编写程序,实现任意方向直线的绘制。预习任务圆的生成算法。教学反思将知识点与画图软件中的功能相结合,引导学生分析、思考问题。重点掌握第一象限的中点画线公式推导方法,要求学生根据公式编写程序,实现直线的绘制。授课题目圆的绘制算法课时2学时(90分钟)教学目标了解对参数方程离散化的概念,熟悉通过离散点绘制圆的过程,掌握中点法绘制圆,理解圆刷生成一定宽度的圆。学情分析学生已经掌握中点画线算法,在此基础上,中点画圆算法相对较容易理解。教学重点及难点重点:中点画圆算法难点:绘制一定宽度的圆课程资源主要资源:教材、演示软件、课件网上资源:/course/203432320.html教学内容与过程教学方法及策略[课程导入]回顾中点画线算法。[教学内容与设计]中点画圆算法[PPT展示]:1圆的参数方程绘制算法【复习】圆的参数方程根据圆的参数方程得出绘制圆:xi+1=xc+Rcosqi+1yi+1=yc+Rsinqi+1【师生交互】qi+1=qi+Dq中的Dq如何确定?根据圆周长公式,取Dq=1/(2pR)。程序设计voidArc_Para(CDC*pDC,intxc,intyc,intr,COLORREFcolor){intx,y;floatd=1/(2*3.14*r);for(floatt=0;t<6.283;t=t+d) {x=xc+r*cos(t); y=yc+r*sin(t);pDC->SetPixel(x,y,color); }}多媒体课件与板书相结合讲解知识点,以提问、讨论等方式寻求解决方案,在传授知识的同时提高学生分析及解决问题的能力。【师生交互】如何绘圆弧?如何绘椭圆?【应用案例】简易五角星的绘制,介绍实现思路。【思政元素】五角星具有“胜利”的含义,我国国旗的五角星象征共产党领导下的革命人民大团结。2中点画圆1)算法原理算法思路:讨论圆心在原点的八分之一圆,根据可取点的中点与圆的位置关系,确定逼近像素。圆的代数方程:F(x,y)=x2+y2-R2=0di=F(M)=(xi+1)2+(yi-0.5)2-R2<0取P1再下一点的判别式:di+1=(xi+2)2+(yi-0.5)2-R2=di+2xi+3di=F(M)≥0取P2再下一点的判别式为di+1=(xi+2)2+(yi-1.5)2-R2=di+2xi-2yi+5问题:d0=?起点坐标(0,R),将可取点的中点坐标(1,R-0.25)代入圆的方程d0=12+(R-0.5)2-R2=1.25-R可得中点画圆公式:d0=1.25-R,x0=0,y0=R,di<0:di+1=di+2xi+3,xi+1=xi+1di≥0:di+1=di+2xi-2yi+5,xi+1=xi+1,yi+1=yi-1(i=0,1,2,…,直到x>y为止)[组织讨论]如何去掉公式中的小数?去掉小数:设Di=di-0.25d0=1.25-R-->D0=1-Rdi<0-->Di<-0.25(D初值为整数)-->Di<0结果:D0=1-R,x0=0,y0=R,Di<0:Di+1=Di+2xi+3,xi+1=xi+1Di≥0:Di+1=Di+2xi-2yi+5,xi+1=xi+1,yi+1=yi-1(i=0,1,2,…,直到x>y为止)2)程序设计画一个点的同时画出圆上其它的对称点,完成整个圆的绘制。while(y>=x)while(y>=x){pDC->SetPixel(x+x0,y+y0,color);pDC->SetPixel(-x+x0,y+y0,color);if(d<0)d=d+2*x+3;elsed=d+2*(x-y)+5,y--;x++;}3圆弧的线刷子处理【师生交互】线刷子与方刷子的特点?难点:应用案例生成纪念币图像2018年11月中国人民银行发行一套庆祝改革开放40周年的纪念币。1978年12月党的十一届三中全会确立改革开放路线。40年的实践充分证明,改革开放是坚持和发展中国特色社会主义的必由之路,是决定当代中国命运的关键一招,也是实现“两个一百年”奋斗目标、实现中华民族伟大复兴的关键一招。分析:纪念币图案中包含一定宽度的圆。可通过圆刷子实现:在绘制圆上一个点的同时,以该点为圆心再绘制一个小圆,以此产生一定宽度的圆。引出简单的圆刷子:intx,y;floatd=1/(2*r*3.14);for(floatt=0;t<6.3;t=t+d){x=x0+r*cos(t); y=y0+r*sin(t); floatdt=1.0/(3.14*w); for(floatt=0;t<6.3;t=t+dt){xx=x+w/2*cos(t);yy=y+w/2*cos(t);pDC->SetPixel(xx,yy,color);}}【总结】中点算法:根据可取点的中点与圆的位置关系,确定逼近像素。难点:绘制具有宽度圆。【课堂练习】生成金刚石图案的思路在应用案例中引入思政元素。课后实验编写画圆程序。预习任务字符的生成算法。教学反思适当引入思政元素,在传授专业知识的同时培养学生的爱国情怀及责任担当。。
授课题目点阵字符的生成算法课时1学时(45分钟)教学目标掌握点阵字符形状信息的构造方法,熟悉点阵字符放大的过程,了解不同的存储方式;要求学生能够编程显示简单字符。学情分析学生能够使用软件编辑文字,但并不了解字符的生成算法,因此,通过画图软件显示文字的功能引入字符生成算法。教学重点及难点重点:构造点阵字符的位图信息并显示字符难点:点阵字符的缩放课程资源主要资源:教材、演示软件、课件网上资源:/course/203432320.html教学内容与过程教学方法及策略[提出问题]打开画图软件运行界面,在”工具”中单击字母图标,在编辑区域输入字母A,即可显示A。显示字符可通过什么算法实现?引入教学内容。[教学内容与设计]点阵字符的生成算法[PPT展示思路]1.点阵字符的存储点阵字符将字符形状表示为一个矩形点阵,如D字符,用8*8矩阵表示。在内存中如何存放?每一行8位为一个字节,共占8个字节。笔画经过的位用1表示,没经过的位用0表示。如右图。D字符的位图信息用十进制表示为252、102、99、99、99、102、252、0。相同方法可构造出其他字符的位图信息。如右图所示。重点:2.点阵字符的显示先把字模(即位图信息)存入内存,可用文件的形式保存,也可用数组保存。要显示字符,必须从内存中读取该字符的信息,然后判断字符每个字节的每一位通过实例来介绍字符的存储信息,在讲解实例的过程中,突出重点并提出问题,引导学生课堂讨论,思考问题。是否为1,如为1,则显示该点。[板书]:程序代码bytem[8]={252,102,99,99,102,252};bytet[]={128,64,32,16,8,4,2,1};for(inty=0;y<8;y++)for(intx=0;x<8;x++)if((m[y]&t[x])==t[x])pDC->SetPixel(x+x0,y+y0,color);难点:3.点阵字符的放大[引导思考]用16*16点阵显示字符,共需要32个字节。在上述程序基础上进行修改。[板书]:代码shortm[16]={0x7ff0,0x7ff8……};for(inty=0;y<16;y++)for(intx=0;x<16;x++)if((m[y]&(short)pow(2,15-x))==(short)pow(2,15-x))pDC->SetPixel(x+x0,y+y0,color);缩放不方便[应用案例]简易时钟的绘制[思政元素]时钟记录着时间,时间流逝不可逆,要珍惜时间,把握好每一刻。(1)设计数字点阵(2)简易时钟表盘设计(3)时钟指针移动模拟:时钟函数OnTimer移动秒针[知识拓展]字符的位图信息可存储在文件中,如图。步骤:1)建立简单字库文件,存放点阵字符信息。2)从文件中读取字符信息,显示字符。[总结]点阵字符的特点:美观,可写出具有一定宽度的字,查询快,但缩放不方便。如将8*8矩阵放大为16*16矩阵,字体分辨率不高,用矢量字缩放方便。板书写程序,与学生互动,共同完成,紧抓学生注意力。通过知识拓展,对原有知识进行补充强化,加大学生的知识面,提高学生解决问题的能力。教学反思对于重难点内容通过引入典型案例进行讲解并引发思考,把知识点变得浅显易懂。
授课题目矢量字符的生成算法课时1学时(45分钟)教学目标掌握AutoCAD系统矢量字符存储方式,熟悉矢量字符的显示过程,了解其编码方式及长度设置要求;要求学生能够编程显示简单矢量字符。学情分析学生已掌握点阵字符的生成算法,点阵字符不易缩放,在此基础上引入矢量字符生成算法,对两种字符生成算法进行比较、分析。教学重点及难点重点:构造矢量字符的笔画信息并显示字符难点:对抬笔、落笔等标志的判断课程资源主要资源:教材、演示软件、课件网上资源:/course/203432320.html教学内容与过程教学方法及策略[知识回顾]点阵字符:用矩形点阵表示字符形状,字符美观,但缩放不方便。引入教学内容。[教学内容与设计]矢量字符的生成算法[PPT展示思路]1.矢量字符端点存储方式记录每一笔画的端点坐标。首先在局部坐标系下写字模(如图3-43所示),然后确定字符各笔画坐标、划线标志(例如0为移动、1为画线、2为画曲线,且各笔画坐标不等于这三个值)和结束标志(1)等。缺点:不易设置笔画端点坐标。重点:2.矢量字符方向编码存储存储字符每一笔画的方向及长度。采用AutoCAD系统矢量字符存储方式,如右图。不同方向的单位长度不同。0、1、2方向的单位长度的x值相同;2、3、4方向的单位长度的y值相同;1方向单位长度的y值及3方向单位长度的x值都为1/2单位长度。通过课件动态展示矢量字符的笔画信息,使学生对整个的编码过程有更清楚地认识和理解。举例:板书配合课件,写出“北”字的笔画信息。0x24,0x49,0x41,0x44,0x38,0x30,0x44,2,0x20,1,0x5c,0x31,0x39,0x5c,0x40,0x24,0难点:3.矢量字符的显示分析:关键步骤如下1)存放编码信息可用文件存放,也可直接用数组存放。2)获取笔画方向、笔画长度方向:d=bh[i]&15;长度:lens=bh[i]>>43)根据不同的标志做出不同的处理。关键代码如图。4.矢量字符的缩放只需将变量lens乘上倍数即可。x=x+m*lens;y=y+n*lens;5.曲线笔画的绘制提问:如果笔画中有曲线,如何实现?引导学生讨论。对于移动与绘制直线比较简单,而对于过三点绘制曲线,可使用二次参数曲线(抛物线)。已知过抛物线三个点坐标(x1,y1),(x2,y2),(x3,y3),其中第1个点是抛物线的起点,第3个点是抛物线的终点,则根据三个点的坐标值,可推出系数。根据曲线方程,实现曲线笔画的绘制。[总结]矢量字符记录字符的笔画信息,它具有存储空间小、美观、变换方便等优点。对于字符的旋转、缩放等变换,点阵字符的变换需要对表示字符位图中的每一像素进行修改。【课堂练习】用AutoCAD方法定义矢量字“中”。中心垂线长度为3,中心矩形宽度为2,高度为1。板书写出字符显示的关键步骤及主要代码,将抽象的理论知识以直观的形式展示出来,更利于学生掌握。组织学生讨论,主动思考,寻求解决方案。预习任务区域填充算法教学反思通过实例讲解矢量字符的编码方式,突出字符显示的关键步骤,在授课过程中以启发、讨论、提问等方式加强学生对重点知识的理解。
授课题目种子填充算法课时1学时(45分钟)教学目标掌握种子填充算法,熟悉该算法实现填充过程,要求学生能够对区域进行填充。学情分析学生能够使用画图软件的功能实现多边形区域填充,但并不了解填充的过程,因此,引入种子填充算法。教学重点及难点重点:简单种子填充算法难点:扫描线种子填充算法课程资源主要资源:教材、演示软件、课件网上资源:/course/203432320.html教学内容与过程教学方法及策略[课程导入]在画图软件运行界面,先在“颜色”中选取一种颜色,然后在“工具”中单击油漆桶图标,在编辑区域的多边形内单击,即可用指定的颜色对多边形进行填充。如图。填充过程可通过什么算法实现?引入教学内容。[教学内容与设计]简单种子与扫描线种子填充算法[PPT展示]重点:1、改进型的种子填充算法步骤:1)种子像素坐标入栈并置色。2)当栈非空时,取出栈顶像素坐标;栈空时结束。3)检查出栈像素的左、上、右、下4个相邻像素,如不在边界或未置区内颜色,将其坐标入栈并置色,重复2),3)。PPT展示填充的过程,与简单型种子填充过程进行对比。结论:入栈次数为区域内像素的点数,无重复入栈。难点:程序设计步骤:给出区域顶点坐标(x,y)绘制区域边界指定种子像素,入栈置色while(栈非空)教学过程中,将教学内容设计成学生感兴趣的、有意义的具体任务,如对一个多边形区域进行填充,带着问题,学习新的知识。{栈顶像素出栈判断出栈像素相邻4个像素,未置色则入栈置色while(top>0){while(top>0){pop(xz,yz,top);if(pDC->GetPixel(xz-1,yz)!=RGB(255,0,0)){push(xz-1,yz,top);pDC->SetPixel(xz-1,yz,RGB(0,0,0));}……}注意:①多边形的第一个点和最后一个点为同一个点,画封闭区域;②入栈调用push函数,出栈调用pop函数;判断周围像素,代码如右图。程序演示以下两种情况1)给出不封闭的区域。2)种子像素不在区域内部。根据错误结果得出结论:种子填充算法填充的多边形必须是封闭区域;种子像素必须为多边形区域内的一点。[总结]5′算法:从区域内的一个点开始,由内向外将填充色扩展到整个区域内的过程。缺点:未考虑象素之间的连贯性需对区域内的像素逐个进行判断。2、扫描线种子填充算法思路如果一个像素在区域内,其左右像素也可能在区域内,直到遇到边界像素为止。所以在一连贯水平区段内只入栈一个像素点即可。算法步骤:1)种子像素入栈。2)当栈非空时,栈顶像素出栈,否则结束。3)沿扫描线对出栈像素及左边和右边像素填充,直到遇到左(记为XL)、右(记为XR)边界为止。4)在(XL,XR)区间内检查与当前扫描线相临的上下两条扫描线是否为边界或已填充,如果不是,则将每一区间的最右边的像素取作种子入栈。转到2)。PPT展示填充的动态效果。【说明】种子填充算法适用于交互式填充,一般通过鼠标给定种子点坐标。[应用案例1]交通标志的绘制:禁止机动车调头的标志展示绘制过程:[思政元素]交通标志是用文字或符号传递引导、限制、警告或指示信息的道路设施,用于管理交通、保障交通安全。[应用案例2]奥运五环的绘制展示绘制过程:[思政元素]奥运会是体育精神、民族精神和国际主义精神于一体的世界级运动盛会,象征着世界和平、友谊和团结。奥运五环标志象征着世界五大洲的团结和友好,也体现了全球运动员在公正、坦率的比赛中追求卓越的体育精神。【课堂练习】用改进型的简单种子填充算法填充下面的区域,写出其入栈、填充、出栈步骤(种子像素为5,入栈邻域顺序是左、上、右、下)。程序演示错误的情况,引导学生分析、判断,即能提高学生分析程序的能力,又能避免再次出现类似错误。课后实验用改进型种子填充算法实现曲域的填充。教学反思以完成任务作为课堂的主线,将知识点融入到任务中,使学生在任务的驱动和老师的引导下,寻求解决问题的方案。
授课题目扫描线填充算法课时1学时(45分钟)教学目标掌握扫描线填充算法,熟悉该算法实现填充过程,理解扫描线过顶点的判断,要求学生能够对多边形进行填充。学情分析学生已掌握种子填充算法的过程及算法的缺点,理解该算法对像素逐个判断的思路,在此基础上引入扫描线填充算法进行分析、比较。教学重点及难点重点:扫描线填充算法步骤及程序设计难点:图案填充区域算法。课程资源主要资源:教材、演示软件、课件网上资源:/course/203432320.html教学内容与过程教学方法及策略[知识回顾]种子填充算法:从区域内的一个点(种子)开始,由内向外将填充色扩展到整个区域内的过程。缺点:未考虑象素之间的连贯性。优点:算法简单。[教学内容与设计]扫描线填充算法[PPT展示]1、扫描线填充算法思路算法:用扫描线对区域进行填充,按扫描线顺序,计算扫描线与多边形的相交区间,再用要求的颜色显示这些区间的像素。重点:算法步骤求交:计算扫描线与多边形的交点。排序:将交点按x值排序。填充:每一对交点之间画线填充。演示动画效果。如右图。[提问]:交点过顶点如何处理?[分组讨论],引导学生思考,得出结论。[板书]绘图,帮助理解结论:判断交点个数时将扫描线坐标加0.5求交点坐标时,需将扫描线还原通过回顾上次课的内容,分析算法的优缺点,提出更好的算法思路,引出本次课的内容。。通过提问、启发、讨论、绘图等方式促进学生思考,加强对知识点的理解。难点:2、算法实现过程确定多边形顶点坐标绘制多边形确定扫描线的范围ymin与ymaxfor(h=ymin;h<=ymax;h++)//扫描线循环{k=0;//交点数赋初值0for(i=0;i<n-1;i++)//多边形边循环求交排序for(i=0;i<=k-1;i=i+2){pDC->MoveTo(xd[i],h);for(i=0;i<=k-1;i=i+2){pDC->MoveTo(xd[i],h);pDC->LineTo(xd[i+1],h);}[板书]:代码,如右图。注意:①多边形的第一个点和最后一个点为同一个点,画封闭区域;②填充是交点两两连线;[演示程序][总结]5′按扫描线顺序,计算扫描线与多边形的相交区间,再用要求的颜色显示这些区间的像素。考虑了像素之间的连贯性。[提问]如何实现图案填充?组织讨论。3、平形线填充′实现不同平形线填充效果。如右图三种情况,处理方式:①只需将扫描线增量加大。②x方向和y方向的操作互换。③画出两个多边形,求出扫描线和两个多边形的交点,再排序,两两连线。【师生交互】如何实现斜线填充。4、图案填充将多边形填充与点阵字符结合:【思考题】如何实现带空洞区域的扫描线填充?组织讨论。在程序设计过程,先介绍总体步骤设计,再进行各部分设计。给出错误程序,分析出错原因,加深印象,避免再次出现类似错误。课后实验编程实现扫描线填充多边形。预习任务图形的几何变换。教学反思扫描线填充算法步骤是该次课的重点,在讲授过程中注意放慢讲课速度,通过多种方式帮助学生更好理解内容,注意与学生互动,提高学习兴趣。
授课题目几何变换课时2学时(90分钟)教学目标了解窗口试图变换过程,掌握二维、三维图形的简单几何变换。学情分析学习基本的几何变化,为复杂变换奠定基础。教学重点及难点重点:图形的二维几何变换难点:图形的三维几何变换课程资源主要资源:教材、演示软件、课件网上资源:/course/203432320.html教学内容与过程教学方法及策略[教学内容与设计]图形的几何变换及交互拖动处理[PPT展示]1、窗口视图变换用户域:程序员用来定义草图的整个自然空间,它是一个实数域,理论上用户域是连续无限的。窗口区:用户在用户域范围内指定的任一区域为窗口区,它是用户域的子域,一般为矩形域。屏幕域:设备输出图形的最大区域,它是有限的整数域。视图区:任何小于等于屏幕域的区域,一个屏幕上可定义多个视图。窗口与视图之间可进行坐标转换。2、二维几何变换图形的几何变换是对点的变换,对原来图形中的关键点坐标通过变换生成新的点坐标,再根据新的点坐标生成图形。齐次坐标:用n+1维向量表示一个n维向量。(1)平移变换设图形上点P(x,y),在X和Y轴方向分别移动Tx和Ty,生成新的点。x´=x+Txy´=y+Ty(2)比例变换x’=x.Sxy’=y.Sy在讲解几何变换时设计学生感兴趣的案例,如奥运五环、五角星,增强学生学习兴趣。(3)对称变换x’=ax+by y’=dx+ey(4)旋转变换x´=xcosθ-ysinθ y´=xsinθ+ycosθ通过旋转变换可得到五角星图案。(5)错切变换x’=x+by
y’=dx+y(6)复合变换一般的图形变换大多是复合变换,即由多个基本几何变换组合而成,复合变换矩阵实际上是一系列基本几何变换矩阵的乘积结果。图形绕平面上一点(x0,y0)旋转变换θ角度的过程:[应用案例]简易自行车模拟[思政元素]自行车是一种绿色环保的交通工具,也是体育竞技的项目。介绍1)自行车的形状模拟(2)自行车的水平移动模拟轮辐条的旋转,其他部件形状不变,但需要水平位移变换3、三维几何变换通过齐次坐标及矩阵表示:介绍后面使用较多的绕三个坐标轴旋转的程序设计:voidRevolveX(floatcx,floatxx,floatyy,floatzz,float&x,float&y,float&z){x=xx;y=yy*cos(cx)-zz*sin(cx);z=yy*sin(cx)+zz*cos(cx);}voidRevolveY(floatcy,floatxx,floatyy,floatzz,float&x,float&y,float&z){x=xx*cos(cy)+zz*sin(cy);y=yy;z=-xx*sin(cy)+zz*cos(cy);}voidRevolveZ(floatcz,floatxx,floatyy,floatzz,float&x,float&y,float&z){x=xx*cos(cz)-yy*sin(cz);y=xx*sin(cz)+yy*cos(cz);z=zz;}[总结]通过图形变换,可由简单图形生成复杂图形。对案例图形进行拓展,引入思政元素。预习任务投影变换教学反思通过对简易自行车模拟,引入思政元素,培养学生爱护环境。
授课题目正平行投影变换课时1学时(45分钟)教学目标掌握正平行投影变换步骤,熟悉公式推导过程,了解投影变换的分类,要求学生能够绘制长方体的正平行投影效果图。学情分析学生已了解图形的几何变换(比例、旋转、对称、复合等),但不了解三维物体变为二维图形表示的过程,引入物体的投影变换。教学重点及难点重点:正平行投影变换步骤难点:投影变换的物体信息存储方式课程资源主要资源:教材、演示软件、课件网上资源:/course/203432320.html教学内容与过程教学方法及策略[课程导入]通过实物展示效果引入教学内容。拿一个粉笔盒,放在投影仪与投影面中间,可在投影面上看到投影图。[教学内容与设计]正平行投影变换[PPT展示]1、正平行投影变换简介投影变换:把三维物体变为二维图形表示的过程。在二维平面(屏幕、纸张等)显示三维物体,必须经过投影变换。正平行投影的特点:①投影方向垂直于投影面②投影线为平行线重点:2、三视图公式1)正视图生成三维形体正视图的变换过程:(1)先对三维形体作正投影变换,(2)再对投影后的图形进行平移变换,正视图的变换式为:x'=x+ax,y'=y+ay,z'=0(通过实物展示)2)侧视图生成三维形体侧视图的变换过程:先将三维形体绕y轴旋转90,)对投影后的图形进行平移变换。(通过实物展示)通过实物变换展示,帮助学生理解,提高学生空间想象、理解能力。借助于课件动态效果,展示变换的过程。侧视图的变换式为:x'=z+bx,y'=y+by,z'=03)俯视图生成三维形体俯视图的变换过程:先将三维形体绕x轴旋转90,再对三维形体作正投影变换,对投影后的图形进行平移变(通过实物展示)。俯视图的变换式为:x'=x+cx,y'=z+cy,z'=0介绍三视图坐标值计算过程,并画出图2、正轴测投影变换[提出问题]通过实物展示,提出问题:如何在正平行投影中通过一个投影图反映物体三个坐标方向的形状?(通过实物展示)重点:正轴测投影变换步骤及公式(1)先将三维形体绕y轴旋转角,如图(b)所示;(2)再将三维形体绕x轴旋转角,如图(c)所示;(3)对三维形体作正投影变换,如图(d)所示;(4)对投影后的图形进行平移变换,如图(e)所示。得出正轴测投影的变换式为:难点:3、正平行投影程序设计【例2】φ=45o,θ=45o,dx=10,dy=10。介绍三视图坐标值计算过程,并画出图[提问]:如何存储物体信息?难点:1)存储6个顶点坐标值;2)存放顶点之间的线信息;ints[]={0,1,2,3,4,5,1,2,0},e[]={1,2,0,4,5,3,4,5,3};3)计算每条边起点和终点的正平行投影点坐标,将其连线。[板书]:代码如下。for(i=0;i<=11;i++) {x1=x[s[i]]cos(f)+z[s[i]]sin(f)+dx; y1=x[s[i]]sin(f)sin(c)+y[s[i]]cos(c)-z[s[i]]cos(f)sin(c)+dy;x2=x[e[i]]cos(f)+z[e[i]]sin(f)+dx; y2=x[e[i]]sin(f)sin(c)+y[e[i]]cos(c)-z[e[i]]cos(f)sin(c)+dy;pDC->MoveTo(x1,y1);pDC->LineTo(x2,y2);}演示程序,观察效果图,分析与三视图的不同之处。课后思考:如果投影面不在XOY面上,如何处理?[师生交流]听取学生对本次课的感受,分析薄弱环节,在下次课中适时补充。[总结]正平行投影的特点。板书在教学过程中起着不可缺少的作用。借助于板书,可与学生共同完成程序代码部分,不仅增加了相互交流,而且使学生对每一步骤都有清楚的认识。课后实验编程实现长方体三视图效果。预习任务斜平行投影变换教学反思三维物体的信息存储用到顶点表和线表,如在描述某条边起点的坐标和终点坐标时,较难理解,逐步引导学生给出正确描述方式。
授课题目斜平行投影变换课时1学时(45分钟)教学目标掌握斜平行投影变换过程,熟悉公式推导过程,要求学生能够绘制长方体的斜平行投影效果图。学情分析学生已经掌握正平行投影变换,在此基础上引入斜平行投影变换,对两种投影的特点、变化过程做个比较。教学重点及难点重点:斜平行投影变换步骤难点:斜平行投影变换的程序设计课程资源主要资源:教材、演示软件、课件网上资源:/course/203432320.html教学内容与过程教学方法及策略[提出问题]通过实物展示,提出问题:物体为长方体,如果投影线平行,投影线与投影面不垂直,产生怎样的投影图?[教学内容与设计]斜平行投影变换[PPT展示]:1、斜平行投影变换简介特点:①投影方向不垂直于投影面②投影线为平行线通过实物展示。重点:2、斜平行投影变换公式用两种方法来推导斜平行投影的公式。(1)已知投影方向为(xp,yp,zp)的推导方法。若形体被投影到z=0平面上,形体上的一点为(x,y,z),要确定它在z=0平面上的投影(x',y')。如图所示,由投影方向矢量(xp,yp,zp),可得到投影线的参数方程=0;则有=z/zp,把t代入上述参数方程可得通过实物展示,使学生更容易理解,再配以课件的演示进行补充。并结合具体实例。得出变换公式为:【例1】如下正方体,投影面为XOY面,设投影方向为(1,1,-2),计算投影后的各顶点坐标。(2)已知投影方向与投影面的夹角以及投影方向在投影面上的投影与x轴的夹角。如图所示,投影平面是z=0平面,三维形体上某一点P(0,0,1)投影到z=0平面上的点为P''(Lcos,Lsin,0)。现考虑任意一点(x,y,z)在xoy平面上的投影(x',y'),因投影方向与投影线平行,且投影线的方程:,又z'=0所以,x'=x+z(Lcos)=x+zcotcos,y'=y+z(Lsin)=y+zcotsin,【例2】如上正方体,设投影方向与XOY夹角为45o,投影线的投影与X轴夹角为135o,计算投影点坐标。难点:3、程序设计方法1)给出顶点坐标值;2)记录点线信息;3)计算每条边起点和终点的斜平行投影点坐标,将其连线。for(i=0;i<12;i++){x0=x[s[i]]+z[s[i]]*1/tan(b)*cos(a);y0=y[s[i]]+z[s[i]]*1/tan(b)*sin(a);x1=x[e[i]]+z[e[i]]*1/tan(b)*cos(a);y1=y[e[i]]+z[e[i]]*1/tan(b)*sin(a);pDC->MoveTo(x0,y0);pDC->LineTo(x1,y1);}演示程序,观察效果图,分析与正平行投影变换图的不同之处。课后思考:长方体斜投到其余三个象限的效果图?[总结]投影方向不垂直于投影平面,可通过两种方式推导出投影公式。①已知投影方向矢量②已知投影方向与投影面的夹角以及投影方向在投影面上的投影与x轴的夹角通过两种方法来推导斜平行投影的公式,对这两种方法进行比较、分析。在教学中融入比较学习法、深入学习法、综合分析法的学习思想,尽可能提高学生的分析设计能力。课后实验编程实现长方体斜平行投影效果图。预习任务透视投影变换。教学反思对于重点和难点部分,采用实例讲解、提问讨论等方式,加深学生对知识点的理解,优化学习效率。
授课题目透视投影变换课时2学时(90分钟)教学目标掌握透视投影变换过程,熟悉公式推导过程,要求学生能够绘制长方体的一点透视投影效果图。学情分析学生已经掌握平行投影变换,引入透视投影变换进行比较。教学重点及难点重点:一点透视投影难点:两点透视、三点透视程序设计课程资源主要资源:教材、演示软件、课件网上资源:/course/203432320.html教学内容与过程教学方法及策略[提出问题]通过实物展示,提出问题:如何投影线不平行,产生怎样的投影图?[教学内容与设计]透视投影变换[PPT展示]:1、透视投影变换简介特点:投影中心与投影面的距离有限,投影中心可认为是人的视点。重点:2、一点透视投影变换公式15′由相似三角形原理x’:x=y’:y=h:h-zx’=x/(1-z/h)y’=y/(1-z/h)比较一点透视投影与平行投影图的区别以板书的形式,与学生共同推出变换公式,使学生注意力更集中;再配以课件的演示进行补充。[例1]已知长方体,投影面为XOY面,设视点位置为(0,0,600),平移(100,100,0),计算一点透视投影后的各顶点坐标。[应用案例]简易房屋远近的动画效果模拟房屋是家庭的基体,是人类生存的寄托。房屋是避开外界的干扰,与亲人享受自由自在的场所。1)房屋的几何造型:房屋主要由房顶、房体、门、窗户等部分组成。2)房屋的一点透视投影变换3)房屋远近的动画效果二点透视投影x’=(xcosφ+zsinφ+dx)/Hy’=(y+dy)/Hz’=0H=xsinφ/h-zcosφ/h+1-dz/h[例2]已知正方体,投影面为XOY面,设视点位置为(0,0,600),绕Y轴旋转45o,平移(200,100,0),求二点透视投影。三点透视投影x’=(xcosφ+zsinφ+dx)/Hy’=(xsinθsinφ+ycosθ-zsinθcosφ+dy)/Hz’=0H=xcosθsinφ/h-ysinθ/h-zcosθcosφ/h+1-dz/h[例3]已知正方体,投影面为XOY面,设视点位置为(0,0,600),绕Y轴旋转45o,绕X轴旋转45o,平移(200,100,0),求三点透视投影。难点:3、程序设计1)给出顶点坐标值;2)记录点线信息;3)计算每条边起点和终点的透视投影点坐标,将其连线。intxx[50],yy[50];floatH;for(inti=0;i<pn;i++)H=1+x[i]*cos(a)*sin(b)/h-y[i]*sin(a)/h-z[i]*cos(a)*cos(b)/h-(float)ddz/h,xx[i]=(x[i]*cos(b)+z[i]*sin(b)+ddx)/H+dx,yy[i]=(x[i]*sin(a)*sin(b)+y[i]*cos(a)-z[i]*sin(a)*cos(b)+ddy)/H+dy;for(i=0;i<fn;i++)for(intj=FS[i];j<FE[i];j++)Line_DDA(pDC,xx[PL[j]],yy[PL[j]],xx[PL[j+1]],yy[PL[j+1]],color);总结:三种透视的特点对三种透视投影图举例计算,并结合实际图片,进行比较、分析。加深学生对知识点的理解。。课后作业编程实现长方体透视投影效果图。预习任务透视投影变换。教学反思通过案例图片引入思政教育,展示中国速度、中国力量、中国精神。
授课题目线段的编码裁剪算法课时1学时(45分钟)教学目标了解图形裁剪的概念,熟悉端点编码规则,掌握编码裁剪算法对线段进行裁剪的过程;要求学生能够算法实现线段的裁剪。学情分析学生已掌握图形的基本处理和变换,但对裁剪处理并不了解,引入裁剪算法,对线段进行裁剪。教学重点及难点重点:端点编码规则及裁剪算法难点:设计端点编码函数及线段裁剪函数课程资源主要资源:教材、演示软件、课件网上资源:/course/203432320.html教学内容与过程教学方法及策略[课程导入]在画图软件的编辑区域绘制一条直线,在”选择”按钮下单击”矩形选择”,可通过一个矩形框对直线进行裁剪,将直线裁剪成框内部分和框外部分,只保留框内的这部分线段。裁剪过程是用什么算法实现的?[教学内容与设计]线段的编码裁剪算法[PPT展示]:1、线段与裁剪窗口的位置关系①整个线段全在窗口内,画线,结束;②整个线段全在窗口外,结束;③线段部分在窗口外,部分在窗口内,裁剪。重点:2、端点编码规则将裁剪窗口的边界进行延长,将图形分为9个区域,每区域用一个4位二进制代码表示。设右边的位为第一位(最低二进制位),最左边的位为第四位,编码规则:上边的3个区域第四位为1;下边的3个区域第三位为1;右边的3个区域第二位为1;左边的3个区域第一位为1。围绕学生感兴趣的实例,提出并分析问题,引入教学内容,使学生快速明确本次课程的教学目的。通过多媒体课件动画展示教学内容,突出重点并引导学生讨论、思考问题。3、编码裁剪方法[举例]:对右图线段进行裁剪,画出裁剪过程,写出端点编码。线段的左端点A的编码为0101,右端点B的编码为1010,两端点的编码按位与结果为0000,则线段AB需要裁剪。[板书]:裁剪过程如下图:难点:4、编码裁剪算法intencode(intx,inty){intcode=0;intencode(intx,inty){intcode=0;if(x<xl)code=1;elseif(x>xr)code=2;if(y<yb)code=code+4;elseif(y>yt)code=code+8;}returnc;}[提问]:函数算法?给出错误,引导学生纠正,如右图。if(x<裁剪框左边)code=1;elseif(x>裁剪框右边)code=2;if(y<裁剪框底边)code=code+4;elseif(y>裁剪框顶边)code=code+8;(2)设计线段裁剪函数求线段起点编码c1和终点编码c2通过端点编码判断位置while(1){if(c1==0&&c2==0)画线,结束;elseif((c1&c2)!=0)结束;else求交点,编码,继续判断;}演示程序。[应用案例]水平滚动的矢量字1)矢量字的设计:”我爱中国“(思政)2)矢量字坐标的存储3)矢量字的显示4)矢量字的裁剪:每矢量字的笔画按线段裁剪5)矢量字的滚动:[总结]难点:设计端点编码函数、线段裁剪函数。特点:算法简单,实现容易,但只对线段进行裁剪。【课堂作业]】用编码法裁剪AB直线段(先从A点开始裁剪,画出裁剪步骤,并标出每步的线段端点编码)利用板书画出裁剪过程。帮助学生理解知识点。通过文字内容体现思政。回顾总结本次课的重点与难点,要求学生课后思考,预习下次课的内容。课后实验用端点编码算法设计程序,实现直线的裁剪过程。预习任务多边形裁剪教学反思根据教学内容采用不同的授课方式,如通过PPT动画展示端点编码规则、板书推出裁剪过程,使学生能更直观更容易掌握相应的知识点。
《计算机图形学》课程教学设计《计算机图形学》课程教学设计多边形裁剪算法课时1学时(45分钟)教学目标了解多边形裁剪的含义,熟悉多边形边与窗口边界位置关系及保留顶点的方式,掌握逐边裁剪算法,要求学生能够编程实现多边形的裁剪。学情分析学生已掌握线段裁剪算法,但多边形裁剪不等同于多条线段裁剪的结果,由此引入多边形裁剪算法。教学重点及难点重点:逐边裁剪算法的过程难点:编程实现多边形逐边裁剪算法课程资源主要资源:教材、演示软件、课件网上资源:/course/203432320.html教学内容与过程教学方法及策略[课程导入]在画图软件的编辑区域绘制一多边形,在”选择”按钮下单击”矩形选择”,可通过一个矩形框对多边形进行裁剪,将多边形裁剪成框内部分和框外部分,只保留框内部分。提问:裁剪过程是如何实现的?[教学内容与设计]多边形的逐边裁剪算法[PPT展示]:1、多边形裁剪的含义[提问]:多边形裁剪等于线段裁剪的组合?如右图。将多边形的每条边按线段裁剪算法进行裁剪,得到两条线段。事实上,多边形用矩形窗口裁剪后,是封闭的多边形。所以,多边形的裁剪不等于线段裁剪的组合即多边形的裁剪不能再用线段裁剪算法。在裁剪过程中,不仅要求出多边形的边和裁剪窗口交点,还要增加一些顶点,形成一个封闭的多边形。重点:2、逐边裁剪算法思路每次用窗口的一条延长边对多边形裁剪,保留窗口内侧多边形,作为下一次待裁的多边形,再逐次用其他边界裁剪得到图形。[提问]边与裁剪线的位置关系有几种?分组讨论。提出问题,启发学生思考,引出本堂课的内容。问题:①边与裁剪线的位置关系②裁剪时,交点、顶点按序连线约定:以最后一个点为起点,第一个点为终点,该边作为被裁剪的第一条[例]用逐边裁剪法裁剪多边形PPT展示裁减过程。【应用案例】蜂窝图形放大的裁剪多个正六边可以组成蜂窝图形,蜂窝是蜜蜂的蜂巢,蜜蜂象征勤劳、团结、自律等。1)正六边形的绘制2)正六边形的平移及存储3)蜂窝图形的放大并裁剪动画处理难点:3、逐边裁剪法编程20′设多边形顶点Pi(i=0,1,2…n),以左边界裁剪为例将最后一个点Pn作为第一个点的前一个点for(i=0;i<n;i++)if(当前点Pi在内) if(前一点在外)计算交点作为新顶点添加当前点为新点else当前点Pi在外 if(前一点在内) 计算交点作为新顶点再按相同的办法,使用上边界、右边界、下边界对多边逐次裁剪,最后得到裁剪结果。演示程序。总结:2′重点:每次用窗口的一条延长边对多边形裁剪,保留新顶点顺序并按序连线。难点:编程实现多边形逐边裁剪算法。【课堂作业】画出用逐边裁剪法实现图中多边形的裁剪过程,每次用一条裁剪边进行裁剪,并标出新的顶点顺序。采用多媒体演示与板书相结合的方式,多媒体展示裁剪过程,板书描述程序设计的关键步骤,帮助学生理解知识点。在讲解案例的过程中,突出重点并引出难点,引导学生课堂讨论,思考问题。应用案例体现思政课后实验画出用逐边裁剪法实现图中多边形的裁剪过程,每次用一条裁剪边进行裁剪,并标出新的顶点顺序。预习任务Bezier曲线教学反思采用图片展示、程序演示等多种手段相结合,充分调动学生的积极性和思维能动性。尤其重难点部分,通过实例讲解、提问讨论和课后作业的方式,加深学生的理解。
授课题目Bezier曲线生成算法课时1学时(45分钟)教学目标了解Bezier曲线的定义,熟悉Bezier曲线的的作图方式,掌握Bezier曲线生成算法,要求学生能够编程绘制n次Bezier曲线。学情分析学生已掌握规则曲线的生成算法,如圆或椭圆,对不规则曲线没有认识,本次课以Bezier曲线为例,介绍不规则曲线生成算法。教学重点及难点重点:三次Bezier曲线生成算法难点:编程实现n次Bezier曲线课程资源主要资源:教材、演示软件、课件网上资源:/course/203432320.html教学内容与过程教学方法及策略[课程导入]在画图软件的运行界面,当我们点击曲线图标,在编辑区域拖动鼠标,就可画出一条曲线,那么这根曲线是如何生成?任务:绘制一根由多个点控制的曲线。[教学内容与设计]Bezier曲线生成算法[PPT展示]:1、Bezier曲线的定义给出几个点,将点按序连接,形成一组多边形折线,称为控制多边形,根据控制多边形的点可生成一条Bezier曲线,如图,曲线的起点就是控制多边形的第一个点,曲线的终点就是控制多边形的最后一个点。[提问]:曲线上的其它点如何确定位置呢?定义:给定空间n+1个点的位置矢量Pi(i=0,1,…,n),Bezier曲线上各点的坐标公式:Pi代表第i+1个点,Bi,n(t)为n次基函数或加权函数,公式如下:通过基函数可得控制点对曲线的影响大小。n表示曲线的阶次,n+1个点为n次Bezier曲线T从0至1变化。重点:2、三次Bezier曲线的绘制公式展开:x(t)=x0B0,n(t)+x1B1,n(t)+x2B2,n(t)
+…+xnBn,n(t)y(t)=y0B0,n(t)+y1B1,n(t)+y2B2,n(t)
+…+ynBn,n(t)课堂开始提出课题任务,引导学生寻求解决办法。通过课件的动画效果将抽象的理论知识直观地展示出来,使学生更好理解.B0,3(t)=(1-t)3B0,3(t)=(1-t)3B1,3(t)=3t(1-t)2B2,3(t)=3t2(1-t)B3,3(t)=t3公式如右图:则可得到三次Bezier曲线公式:x(t)=x0(1-t)3+x13t(1-t)2+x23t2(1-t)+x3t3y(t)=y0(1-t)3+y13t(1-t)2+y23t2(1-t)+y3t3pDC->MoveTo(x[0]pDC->MoveTo(x[0],y[0]);for(t=0;t<=1.001;t=t+0.1){b03=(1-t)*(1-t)*(1-t);b13=3*t*(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年万博科技职业学院单招职业适应性测试题库及答案详解(全优)
- 2026年万博科技职业学院单招职业倾向性测试题库有答案详解
- 2026年云南水利水电职业学院单招职业技能考试题库及答案详解(真题汇编)
- 2026年云南锡业职业技术学院单招综合素质考试题库含答案详解(突破训练)
- 2026年云南锡业职业技术学院单招综合素质考试题库含答案详解(培优)
- 2026年中山火炬职业技术学院单招职业技能测试题库含答案详解(预热题)
- 2026年三门峡职业技术学院单招职业技能测试题库带答案详解(培优a卷)
- 2026年上海政法学院单招职业倾向性考试题库带答案详解(研优卷)
- 2026年临沂职业学院单招职业倾向性考试题库含答案详解(典型题)
- 2026年云南国防工业职业技术学院单招职业适应性考试题库含答案详解(典型题)
- 中国历史文献学(第2版) 课件全套 第1-18课 绪论 -近现代:历史文献学的变革时期(二)
- 2021-2025年高考化学真题知识点分类汇编之有机合成(推断大题)(一)
- ISO11137辐照灭菌剂量确认手册
- 煤矿运输培训知识课件
- 安桥AV功放接收机TX-SR600使用说明书
- 探究“教学评”一体化在小学数学教学中的应用与策略
- 2025年广安市中考语文试卷真题(含标准答案)
- 护理专利发明创新与应用
- PVC墙板装饰装修施工方案
- 《骨质疏松的防治》课件
- NB∕T 32015-2013 分布式电源接入配电网技术规定
评论
0/150
提交评论