最新计算机图形学第二章a课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《最新计算机图形学第二章a课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 计算机 图形学 第二 课件
- 资源描述:
-
1、上海师范大学计算机图形学上海师范大学计算机图形学第二章第二章a int getx(void);int gety(void);2.直线 void line(int x0,int y0,int x1,int y1);当前坐标(x,y)void lineto(int x,int y);void linerel(int deltax,int deltay);当前坐标(x+deltax,y+deltay)例题:arc(40,40,0,120,30);8 DRAKGRAY9 LIGHTBLUE10 LIGHTGREEN11 LIGHTCYAN12 LIGHTRED13 LIGHTMAGENTA14 YEL
2、LOW15 WHITE 6.void setlinestyle(int linestyle,unsigned upattern,int thickness);Linestyle取值:SOLID-LINE 0 实线 DOTTED-LINE 1 点线 CENTER-LINE 2 中心线 DASHED-LINE 3 虚线 USERBIT-LINE 4 用户定义的线 upattern仅在userbit-line时起作用 thickness线宽 NORM-WIDTH 1 一个象素宽 THICK-WIDTH 3 三个象素宽例题:setlinestyle(DASHED-LINE,0,THICK-WIDTH)
3、;或 setlinestyle(3,0,3);line(300,50,300,200);上机作业2:画出如下图形第二章 基本图形的生成和计算 如何在指定的输出设备上描述构造基本二维几何图形(点、直线、圆、椭圆、多边形、字符串及其相关属性等)2.1 直线的生成算法图形的扫描转换:图形的扫描转换:在光栅显示器等数字设备上确定一个最佳逼近于图形的象素集的过程。图5-1 用一系列的象素点来逼近直线用一系列的象素点来逼近直线2.1 直线的生成算法2.1.1直线DDA算法(Digital Differential Analyser)设直线起点(x1,y1),终点(x2,y2)xy(x1,y1)(x2,y2
4、)则斜率mm=(y2-y1)/(x2-x1)=dy/dxxy(x1,y1)(x2,y2)dydxxy(x1,y1)(x2,y2)dydxdy/dx=Dy/Dxxi+1=xi+Dxyi+1=yi+DyDy=m*Dx(xi,yi)(xi+1,yi+1)DxDyxy1b1a4a4b3b3a2a2bxi+1=xi+1yi+1=yi+mxi+1=xi-1yi+1=yi-m(x1,y1)(x2,y2)Oxi+1=xi+1/myi+1=yi+1象限 Dx Dy 象限 Dx Dy1a 1 m 4a 1 -m1b 1/m 1 4b 1/m -12a -1 m 2b -1/m 13a -1 -m3b -1/m -
5、1结论:1.当|m|1时,|Dx|=1,|Dy|=m 否则|Dx|=1/m,|Dy|=1结论:2.Dx,Dy的符号与dx,dy的符号相同。缺点:1.浮点增量的连续迭加,误差积累使长线段计算的象素位置偏离实际线段 2.浮点运算十分耗时1965年由Bresenham提出设直线起点(x1,y1),终点(x2,y2)y=mx+bb=y1-m*x1m=(y2-y1)/(x2-x1)=dy/dx2.1.2 直线Bresenham算法1312111010111213(11,11)(12,11)或(12,12)当直线方向限于1a象限(x1,y1)(x2,y2)当直线方向限于1a象限,则xi+1=xi+1 yi
6、+1yi+1d2,则yi+1=yi+1,否则yi+1=yid1=y-yi d2=yi+1-yd1-d2=2y-2yi-1y=m(xi+1)+bm=dy/dx d1=y-yi d2=yi+1-yd1-d2=2dy/dx(xi+1)+2b-2yi-1 两边*dx,令Pi=(d1-d2)dx 则Pi=2dy(xi+1)+2b*dx-2yi*dx-dx =2xidy-2yidx+2dy+(2b-1)dx 由于dx0,则Pi可用来判断符号 Pi+1=2xi+1dy-2yi+1dx+2dy+(2b-1)dx =2(xi+1)dy-2yi+1dx+2dy+(2b-1)dx =Pi+2dy-2yi+1dx+2
展开阅读全文