




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验二 2-2一、实验题目 给定四个点绘制图4-44所示的不同转角的两个正方形,使用有效边表算法进行填充,填充效果如图4-45所示,注意采用“左闭右开”和“上闭下开”的原则,使得每个正方形的右边界和下边界没有填充。二、实验思想 有效边表填充算法通过维护边表和有效边表,避开了扫描线与多边形所有边求交的复杂运算。填充原理是按照扫描线从小到大的移动顺序,计算当前扫描线与有效边的交点,然后把这些交点按x值递增的顺序进行排序、配对,以确定填充区间,最后用指定颜色填充区间内的所有像素,即完成填充工作。三、实验代码voidCTestView::GetMaxX()//获得屏幕宽度{ CRectRect; GetClientRect(&Rect); MaxX=Rect.right;}voidCTestView::GetMaxY()//获得屏幕高度{ CRectRect; GetClientRect(&Rect); MaxY=Rect.bottom;}voidCTestView::ReadPoint()//读入点表函数{ //设置第一个正方形的4个顶点 inta=160; P1[0]=CP2(MaxX/4-a,MaxY/2+a);//P0 P1[1]=CP2(MaxX/4+a,MaxY/2+a);//P1 P1[2]=CP2(MaxX/4+a,MaxY/2-a);//P2 P1[3]=CP2(MaxX/4-a,MaxY/2-a);//P3 //设置第二个正方形的4个顶点 intb=ROUND(sqrt(2)*a); P2[0]=CP2(3*MaxX/4,MaxY/2+b);//P0 P2[1]=CP2(3*MaxX/4+b,MaxY/2);//P1 P2[2]=CP2(3*MaxX/4,MaxY/2-b);//P2 P2[3]=CP2(3*MaxX/4-b,MaxY/2);//P3 }voidCTestView::DrawRect(CDC*pDC,CP2*P)//绘制正方形函数{ CP2T; CLineline; for(inti=0;i<4;i++)//边循环 { if(i==0) { line.MoveTo(pDC,P[i]); T=P[0]; } else { line.LineTo(pDC,P[i]);; } } line.LineTo(pDC,T);//闭合}voidCTestView::OnMENUIFill(){ //TODO:Addyourcommandhandlercodehere COLORREFFColor; CColorDialogccd(RGB(255,0,0)); if(ccd.DoModal()==IDOK)//调用调色板选取色 { FColor=ccd.GetColor(); m_Red=GetRValue(FColor);//获得颜色的红色分量 m_Green=GetGValue(FColor);//获得颜色的绿色分量 m_Blue=GetBValue(FColor);//获得颜色的蓝色分量 } RedrawWindow();//刷新屏幕 FillRect(P1);//填充正方形1 FillRect(P2);//填充正方形2 }voidCTestView::FillRect(CP2*P)//填充正方形函数{ CFillfill; CPi2Point[4]; for(inti=0;i<4;i++) { Point[i].x=P[i].x; Point[i].y=ROUND(P[i].y); Point[i].c=CRGB(double(m_Red)/255.0,double(m_Green)/255.0,double(m_Blue)/255.0); } CDC*pDC=GetDC(); fill.SetPoint(Point,4);//填充正方
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 湖南电子科技职业学院《现代日语语法》2023-2024学年第二学期期末试卷
- 西昌学院《甲骨文专题》2023-2024学年第二学期期末试卷
- 天津美术学院《母婴中医护理学》2023-2024学年第一学期期末试卷
- 河北化工医药职业技术学院《货币与金融统计学》2023-2024学年第一学期期末试卷
- 南阳师范学院《铸牢中华民族共同体意识》2023-2024学年第一学期期末试卷
- 天府新区航空旅游职业学院《数字调色与达芬奇操作基础》2023-2024学年第二学期期末试卷
- 合肥师范学院《环境学基础》2023-2024学年第二学期期末试卷
- 养殖场家禽合作合同书
- 委托代理记账服务合同
- 装修工程增减项补充合同协议书
- 水准测量平差表(含公式可自动计算)
- 可爱的中国全册教案
- 机电安装工程危险源识别评价清单1-发网上
- 肿瘤疗效评估新标准-mRECIST标准
- 全国普通高等学校招生统一考试(上海卷)考试手册
- 260吨汽车吊地基承载力验算
- 群文阅读指导课-二年级《一个一个连下去》课件
- 沉淀反应 沉淀反应(免疫学检验课件)
- 医院品管圈10大步骤详解课件
- 田野调查方法
- 设备基础预埋施工方案【实用文档】doc
评论
0/150
提交评论