- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实 验 报 告课程名称 计算机图形学 实验名称 小型绘图系统 姓 名 学 号 专业班级 实验日期 2011 年 12 月 26 日 成绩 指导教师 爨莹 一、实验目的1.熟悉计算机图形的生成算法2.用编程的方法实现计算机的生成算法3.巩固计算机图形学中学到的一些理论知识二、实验环境 软件:windows7 系统 JavaScript 三、实验内容与步骤(可提供屏幕抓图)1)绘制直线 (1)DDA 算法的原理 DDA算法是根据直线的微分方程来计算Δx或Δy生成直线的扫描转换算法。 在一个坐标轴上以单位间隔对线段取样, 以决定另一个坐标轴方向上最靠近理想线段的整数值。 设(x0, y0)为直线段的始点, (x1, y1)为直线段的终点, 且端点坐标均为整数, 则直线的微分方程为 设|k|≤1, 则有 yi+1=kxi+1+b=k(xi+Δx)+b=yi+kΔx上式表明, 若Δx=1, 则当x每递增1时, y递增k。 扫描转换开始时, 取直线始点(x0, y0)作为初始坐标。 程序代码: void DDA-line(x0, y0, x1, y1, color) int x0, y0, x1, y1, color; {int x; float y, k, deltx, delty; deltx=x1-x0; delty=y1-y0; k=delty/deltx; y=y0; for(x=x0; x=x1; x++) { putpixel(x, int(y+0.5), clolor); y=y+k; } 实现截图 DDA算法绘制直线 (2)中点法算法的原理为了讨论的方便, 假定直线的斜率在0~1之间, 其它情况参照下述讨论进行处理。 假设直线的起点和终点分别为(x0, y0)和(x1, y1), 则直线方程为? F(x, y)=ax+by+c=0其中, a=y0-y1, b=x1-x0, c=x0y1-x1y0。 对于直线上的点, F(x,y)=0; 对于直线上方的点, F(x,y)>0; 而对于直线下方的点, F(x,y)<0。 如图3.1所示, 若直线在x方向上增加一个单位, 则在y方向上的增量只能在0和1之间。 假设横坐标为xP的各像素点中最佳逼近于理想直线的像素为(xP,yP), 用实心小圆表示。 ?那么, 下一个与直线最近的像素只能是正右方的P1(xP+1,yP)或右上方的P2(xP+1, yP+1)两者之一, 用空心小圆表示。 我们用P1和P2的中点M(xP+1, yP+0.5)与理想直线的位置关系来判定。 中点画线示意图程序void MidPoint-Line(x0, y0, x1, y1, color) int x0, y0, x1, y1, color; { int a, b, delta1, delta2, d, x, y; a=y0-y1; b=x1-x0; d=2*a+b delta1=2*a; x=x0; y=y0; putpixel(x, y, color); while(xx1) { if(d0) { x++; y++; d+=delta2; } else { x++; d+=delta1; } putpixel(x, y, color); } } }实现截图 (3)Bresenham算法算法的原理Bresenham画线算法与中点画线法有相似之处, 也是通过在每列像素中确定与理想直线最近的像素来进行直线的扫描转换的。 为了讨论的方便,不妨也假定直线的斜率在0~1之间。 如图所示, 过各行、 各列像素中心构造一组虚拟网格线, 按直线从起点到终点的顺序计算直线与各垂直网格线
您可能关注的文档
最近下载
- 英语语法大全-英语语法大全.pdf VIP
- 合信MagicWorks HMI用户手册V3.00.pdf
- 《股骨远端骨折教学》.ppt VIP
- 天然气制氢简介演示.ppt VIP
- 学堂在线 日语与日本文化 期末考试答案.docx VIP
- 北师大版八年级数学下册专题10分式方程应用的三种考法全攻略(原卷版+解析).docx VIP
- ppt素材大全.ppt VIP
- 人教版八年级数学上册专题10分式方程实际应用压轴题的四种考法全攻略(原卷版+解析).docx VIP
- 2025年铁路轨道参数动态检测装置项目市场调查研究报告.docx
- 人教版八年级数学上册专题08因式分解压轴题的四种考法(原卷版+解析).docx VIP
文档评论(0)