计算机图形学实验指导(一、二).doc

计算机图形学实验指导(一、二).doc

ID:59493037

大小:43.00 KB

页数:5页

时间:2020-11-03

计算机图形学实验指导(一、二).doc_第1页
计算机图形学实验指导(一、二).doc_第2页
计算机图形学实验指导(一、二).doc_第3页
计算机图形学实验指导(一、二).doc_第4页
计算机图形学实验指导(一、二).doc_第5页
资源描述:

《计算机图形学实验指导(一、二).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、计算机图形学实验指导实验一、直线的扫描转换算法实验实验目的掌握中点Bresenham直线扫描转换算法的思想。实验环境Windows系统,VC6.0实验内容问题描述:给定两个点的坐标P0(x0,y0),P1(x1,y1),使用中点Bresenham直线扫描转换算法画出连接两点的直线。中点Bresenham直线扫描转换算法原理见课本。实验基本步骤首先、使用MFCAppWizard(exe)向导生成一个单文档视图程序框架。其次、使用中点Bresenham直线扫描转换算法实现自己的画线函数,函数原型可表示如下:voidDrawLine(CDC*pDC,intp0x,intp0y,i

2、ntp1x,intp1y);在函数中,可通过调用CDC成员函数SetPixel来画出扫描转换过程中的每个点。COLORREFSetPixel(intx,inty,COLORREFcrColor);再次、找到文档视图程序框架视图类的OnDraw成员函数,调用DrawLine函数画出不同斜率情况的直线,如下图:最后、调试程序直至正确画出直线。实验要求1写出中点Bresenham直线扫描转换算法的程序并在vc6下编译和调试通过,画出具有各种斜率范围的直线(仅使用GDI函数SetPixel函数)。2按规定的实验格式写出实验报告,包含实验代码(自己写的画线函数),结果(截图)。实验二

3、、多边形填充算法实验实验目的掌握边标志算法或有效边表算法进行多边形填充的基本设计思想。实验环境Windows系统,VC6.0实验内容问题描述:给定多边形的顶点的坐标P0(x0,y0),P1(x1,y1),P2(x2,y2),P3(x3,y3),P4(x4,y4)…使用边标志算法或有效边表算法进行多边形填充。边标志算法或有效边表算法原理见课本。实验基本步骤首先、使用MFCAppWizard(exe)向导生成一个单文档视图程序框架。其次、实现边标志算法或有效边表算法函数,如下:voidFillPolygon(CDC*pDC,intpx[],intpy[],intptnumb);

4、px:该数组用来表示每个顶点的x坐标py:该数组用来表示每个顶点的y坐标ptnumb:表示顶点个数注意实现函数FillPolygon可以直接通过窗口的DC(设备描述符)来进行多边形填充,不需要使用帧缓冲存储。(边标志算法)首先用画线函数勾画出多边形,再针对每条扫描线,从左至右依次判断当前像素的颜色是否勾画的边界色,是就开始填充后面的像素直至再碰到边界像素。注意对顶点要做特殊处理。通过调用GDI画点函数SetPixel来画出填充过程中的每个点。需要画线可以使用CDC的画线函数MoveTo和LineTo进行绘制,也可以使用实验一实现的画直线函数。CPointMoveTo(int

5、x,inty);BOOLLineTo(intx,inty);实现边标志算法算法需要获取某个点的当前颜色值,可以使用CDC的成员函数COLORREFGetPixel(intx,inty);再次、找到文档视图程序框架视图类的OnDraw成员函数,调用FillPolygon函数画出填充的多边形,如下:voidCTestView::OnDraw(CDC*pDC){CTestcoodtransDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);//TODO:adddrawcodefornativedatahere//绘制之前先把整个窗口涂上背景色(白色

6、)以便于下面的填充RECTRt;GetClientRect(&Rt);pDC->FillSolidRect(&Rt,RGB(255,255,255));intptx[]={10,100,200,150,80};intpty[]={10,50,80,120,70};FillPolygon(pDC,ptx,pty,5);}最后、调试程序直至正确。实验要求1写出多边形填充的边标志算法的程序并在vc6下编译和调试通过。2按规定的实验格式写出实验报告,包含实验代码(自己写的画线函数),结果(截图)。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。