




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机图形学实训报告学号: 20091620319 姓名: 班级: 计算机科学与技术专业2班 一、实验目的和要求 1、任意指定一个起始点坐标和终止点坐标画出该直线2、要求用数值微分法(daa)3、通过实验了解数值微分法的算法形式以前如何用c语言来表示该算法二、算法原理介绍 数值微分法(daa)对任何沿直线给定的x的增量x,可以从下式中计算出y的增量y:y =kx同样,可以得出对应于指定的y的x增量x:x=y/k对于具有斜率绝对值|k1的线段,可以让x从起点到终点变化,每步递增(或递减)1,即令x1,用式(3-2)计算对应的y增量,y=k。若前量资助的直线上像素点坐标为(xi , yi ),这一次的直线上像素点坐标为(xi+1,yi+1),则xi+1= xi 1, yi+1= yi k。随后用putpixel(xi+1 ,(int)( yi+1 +0.5),color)函数输出该像素的颜色什即可。这里用int来取整是因为像素的坐标什都是整数。对于具有斜率绝对值|k1的线段,可以让y从起点到终点变化,每步递增(或递减)1,x1/k用式(3-3)计算对应的x增量,。若前一次的直线上像素点坐标为(xi , yi ),这一次的直线上像素点坐标为(xi+1,yi+1),则xi+1= xi 1/k,yi+1= yi 1。随后用putpixel(int)( yi+1 +0.5),yi+1,color)函数输出该像素的颜色值即可。如图所示。(xi,(int)(yi+0.5)(xi , yi )(xi +1,yi)(xi+1,(int)(yi+0.5)数值微分法示意图数值微分法的本质,是用数值方法解微分方程,通过同时对和各增加一个小增量,计算下一步的值。以下是用数值微分算法生成直线的c语言描述(0k1)。void ddaline(int x1,int y1,int x2,int y2,int color) int x; float k, y=y1; k=1.0(y2-y1)/(x2-x1); for(x=x1;xx2;x+) putpixel (x, (int)(y+0.5),color); y=y+k;三、程序文档说明程序主要是采用c语言来实现的,运行环境是用win-tc运行。程序采用的是dda算法来实现画直线,#include /*表示头文件,c语言中必须包含头文件*/;#include /*图形处理函数都在此函数中,所以画图必须*/;#include /*数学函数*/;dda算法是由函数void ddaline (int x1,int y1,int x2,int y2,int color),在main函数中来调用函数就可以了;getch();/*获取图形*/;closegraph();/*关闭图形系统,退出图形状态*/;initgraph(&gd,&gm,c:tcbgi) detect和gmode图形模式 /*自动检测硬件*/。程序实现的图形所示:四、程序源代码 /*用dda算法画直线的应用*/#include #include 四、程序源代码#include #include #include #include void ddaline (int x1,int y1,int x2,int y2,int color) int x; float k,y=y1; k=1.0*(y2-y1)/(x2-x1); for (x=x1;x=x2;x+) putpixel(x,(int)(y+0.5),color); y=y+k; void main() int gd = detect,gm; initgraph(&gd,&gm,c:tcbgi); setbkcolor(0);printf(this is line drawed dda add liu mei xia is homework); ddaline(100,100,450,100,1); ddaline(100,150,450,150,2); ddaline(100,200,450,200,3); ddaline(100,250,450,250,4); ddaline(100,300,450,300,5); ddaline(100,350,450,350,6); ddaline(100,50,450,150,1); ddaline(100,100,450,200,2); ddaline(100,150,450,250,3); ddaline(100,200,450,300,4); ddaline(100,250,450,350,5); ddaline(100,300,450,4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025福建厦门市集美区蔡林学校非在编教师招聘2人笔试参考题库附答案解析
- 2025杭州西湖区市场监督管理局编外招聘3人笔试参考题库附答案解析
- 2025文山州麻栗坡县杨万乡委员会公开选聘储备村(社区)后备干部笔试备考试题及答案解析
- 2025下半年衢州市柯城区属事业单位招聘15人-统考笔试参考题库附答案解析
- 2025年芜湖鸠兹水务有限公司下属子公司第二批工作人员招聘9名笔试备考题库及答案解析
- 2025西安太白学校招聘考试参考题库附答案解析
- 2025云南省阜外心血管病医院第二批招聘15人笔试模拟试题及答案解析
- 2025年武汉市江夏国资集团招聘财务工作人员笔试备考题库及答案解析
- 电商行业多渠道营销推广策略
- 2025年8月广东深圳市福田区选用机关事业单位特聘岗位工作人员40人考试模拟试题及答案解析
- 2024在役立式圆筒形钢制焊接储罐安全附件检验技术规范
- 托管老师培训课件
- 大客户营销管理策略下的客户激励与忠诚度提升
- 管道改造管道吹扫安全方案
- 非营利组织战略管理机制的构建-以上海市青少年发展基金会为例的中期报告
- 煤矿与环境保护
- 脑梗死后遗症护理查房
- 竞价采购文件示范文本
- Office2021基础与应用中职全套教学课件
- 中国特色社会主义思想概论 课件 第四章 坚持以人民为中心
- 2022工程设计资质标准
评论
0/150
提交评论