您所在位置: 网站首页 / 计算机图形学实验报告精编.docx / 文档详情
计算机图形学实验报告精编.docx 立即下载
2025-08-28
约1.9万字
约32页
0
27KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

计算机图形学实验报告精编.docx

计算机图形学实验报告精编.docx

预览

免费试读已结束,剩余 27 页请下载文档后查看

10 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

计算机图形学实验报告

第一篇:计算机图形学实验报告0908141020试验092尤洋实验1-1:通过循环画线,实现了画四边形的功能实验1-2:通过循环设置顶点坐标,循环画线,实现了画7个顶点的金刚石实验1-3:通过填充实现了画三彩多边形实验2-1:实现了画各种范围不同斜率的直线实验3-1:通过Cohen-Sutherland算法和清屏重画实现了金刚石的区域裁剪实验4-1:通过不断地清屏重画实现了北极星的平移、比例、旋转、对称实验5-1:通过矩阵变换实现了三维图形的三视图、正轴测投影第二篇:《计算机图形学》实验报告吉林大学计算机科学与技术学院《计算机图形学》实验报告班级:211923班学号:21190928姓名:林星宇2021-2022学年第1学期实验项目1边标志算法的实现实验性质□演示性实验验证性实验□操作性实验综合性实验实验地点计算机楼B212机器编号一、实现的功能编写应用程序,采用鼠标输入顶点的方法确定待填充多边形(多边形最后一点双击);实现边标志算法完成对该多边形的填充,要求完成使用自己学号的后四位数字对多边形内部进行填充。二、采用的图形学算法及实现(算法的实现函数是什么(函数名,参数,返回值,函数功能等)以及采用了哪些数据结构(数组,链表等))要求使用边标志算法的原理和实现方法,所以使用了EdgeMarkFill函数,即边标志算法:voidCMFCDrawTestView::EdgeMarkFill(CDC*pDC,CArray*plist,COLORREFcolor)pDC为设备环境变量指针,plist为多边形点表,color为传入的RGB()值。intzima[16][32]为学号后4位二维数组。X1,x2,y1,y2分别为多边形上的最小最小大,y值三、采用的交互方式及实现(采用了哪些交互方式来完成绘制,这些交互方式应用到了哪些系统消息,是如何实现的)边填充的实现:编写应用程序,采用鼠标输入顶点的方法确定待填充多边形(多边形最后一点双击);实现边标志算法完成对该多边形的填充,要求完成使用自己学号的后四位数字对多边形内部进行填充。易知,在画完多边形后,即双击左键(OnLButtonUp)后,使用EdgeMarkFill函数。Type=2时,在OnLButtonUp中,调用EdgeMarkFill(pDC,&(obj->points),RGB(r,0,0));四、实验结果(程序的运行结果)应用程序运行后,标志算法完成对该多边形的填充的图形结果如下:五、遇到的问题及解决办法问题1:(在实现过程中遇到了什么样的问题,及采用了何种解决办法)在获取下x1,x2,y1,y2时,因为Dos界面x、y大小颠倒的原因,获取时出现了问题。首先,通过for(inti=1;iGetSize();i++){CPointp=plist->GetAt(i);if(x1>p.x)x1=p.x;if(x2if(y1>p.y)y1=p.y;if(y2}获取x1,x2,y1,y2.在遍历多边形过程中:intcount=plist->GetSize();for(inti=0;iCPointp1=plist->GetAt(i);CPointp2=plist->GetAt((i+1)%count);if(p1.y==p2.y)continue;if(p1.y>p2.y){CPointp;p=p1;p1=p2;p2=p;}xs=p1.x;dxs=(p2.x-p1.x)/(double)(p2.y-p1.y);//dys=abs(p2.y-p1.y)/(p2.y-p1.y);for(ys=p1.y;ys!=p2.y;ys+=1){Ixs=int(xs+0.5);MARK[ys][Ixs]=!MARK[ys][Ixs];xs=xs+dxs;}黄线处即为处理x1,x2,y1,y2的大小。问题2:通过数组zima[][]来确定多边形区域填充学号后4位时,zima[y][x]未%其字长,即zima[y%16][x%32]。后改为:for(y=y1;y{boolinside=false;for(x=x1;x{if(MARK[y][x])inside=!inside;if(inside){if(zima[y%16][x%32])pDC->SetPixel(x,y,RGB(255,0,0));}}}实验项目2立方体的比例、平移、旋转变换及投影显示实验性质□演示性实验验证性实验□操作性实验综合性实验实验地点计算机楼B212机器编号一、实现的功能建立立方体的数据模型;编写应用程序,利用菜单和键盘结合的方式完成对立方体的移动、比例和旋转变换,并显示透视或斜二测投影结果。要求应用程序具有如下功能:1、通过菜单选择的方式,选择对三维空间中的立方体作斜二测投影或透视投影;2、通过
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

计算机图形学实验报告精编

文档大小:27KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用