数学与计算机学院代码,宁夏师范学院数学与计算机科学学院

《宁夏师范学院数学与计算机科学学院》由会员分享,可在线阅读,更多相关《宁夏师范学院数学与计算机科学学院(11页珍藏版)》请在人人文库网上搜索。

1、宁夏师范学院数学与计算机科学学院计算机图形学实验报告实验序号:2 实验项目名称:直线的扫描转换学 号77姓 名王艳艳专业、班级14计本一班实验地点文科楼206指导教师罗晓丽时间2017.3.17一、实验目的:学会使用MFC,能够运用直线的三种扫描算法即数值微分算法(DDA算法)、中点画线算法和Bresenham画线算法绘制直线,并熟悉掌握制作过程。二、实验环境:Windows 7VC+ 6.03、 实验内容:打开vc6.0,点击新建工程MFC AppWizard exe,创建项目名称(随便写),确定位置,然后点击确定。选择创建的应用类型单文档完成。点击确定。DDA算法:添加成员函数:1. 展开。

2、Wangyanyan classes右击WangyanyanView选择Add Member Funtion(添加成员函数)函数类型定义为void,函数描述为:DDAline点击确定2.展开Wangyanyan classesCWangyanyanView在DDAline()函数里添加形参int x0,int y0,int x1,int y1,int color,CClientDC & dc3.双击CWangyanyanView,在public中添加代码:void CWangyanyanjView:DDAline(int x0,int y0,int x1,int y1,int color,CC。

3、lientDC & dc);记住最后加分号4.展开CWangyanyan双击OnDraw添加代码:CClientDC dc(this);DDAline(8,12,20,20,RGB(255,145,200),dc);5. 双击DDAline,在函数体内编写如下代码:void CDWangyanyanView:DDAline(int x0,int y0,int x1,int y1,int color,CClientDC & dc)CPen newpen(PS_SOLID,1,color);dc.SelectObject(&newpen);int x,dx,dy,y,k;dx=x1-x0;dy=y。

4、1-y0;k=dy/dx;y=y0;for(x=x0;x右击CWangyanyanView选择Add Member Funtion(添加成员函数)函数类型定义为void,函数描述为:MidpointLine点击确定2.展开classesCWangyanyanview,在MidpointLine函数里添加形参int x0,int y0,int x1,int y1,int color,CClientDC & dc3.双击CWangyanyanView,在public中添加代码:void CWangyanyanView:MidpointLine(int x0,int y0,int x1,int y1。

5、,int color,CClientDC & dc);最后加分号4.展开CWangyanyanView双击OnDraw添加代码:MidpointLine(20,15,200,485,RGB(80,120,255), dc);5. 双击MidpointLine,在函数体内编写如下代码:CPen newpen(PS_SOLID,1,color);dc.SelectObject(&newpen);int a,b,delta1,delta2,d,x,y;a=y0-y1;b=x1-x0;d=2*a+b;delta1=2*a;delta2=2*(a+b);x=x0;y=y0;dc.SetPixel(x,y。

6、,color);while(x右击CWangyanyanView选择Add Member Funtion,函数类型定义为void,函数描述为:Bresenham_Line点击确定2.点击classesCWangyanyanview,在Bresenham_Line函数里添加形参int x0,int y0,int x1,int y1,int color,CClientDC & dc3.双击CWangyanyanView,在public中添加代码:void CWangyanyanView:Bresenham_Line(int x0,int y0,int x1,int y1,int color,CClientDC & dc),最后加分号4.展开CPwjView双击OnDraw添加代码:Bresenham_Line(65,12,400,450,RGB(20,180,250), dc);5. 双击Bresenham_Line,在函数体内编写如下代码:int x,y,dx,dy,e,i;dx=x1-x0;dy=y1-y0;e=-dx;x=x0;y=y0;for(i=0;i=0)y=y+1;e=e-2*dx;调试程序:运行结果:教师评语签名: 日期: 年 月 日 成绩11 / 11。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值