《江苏大学-计算机图形学第三次实验报告-二维图形变换》由会员分享,可在线阅读,更多相关《江苏大学-计算机图形学第三次实验报告-二维图形变换(13页珍藏版)》请在人人文库网上搜索。

1、计算机科学与通信工程学院实验报告课程计算机图形学实验题目二维图形变换学生姓名学号专业班级指导教师日期成绩评定表评价内容具体内容权重得分论证分析方案论证与综合分析的正确、合理性20%算法设计算法描述的正确性与可读性20%编码实现源代码正确性与可读性30%程序书写规范标识符定义规范,程序书写风格规范20%报告质量报告清晰,提交准时10%总 分指导教师签名二维图形变换1. 实验内容完成对北极星图案的缩放、平移、旋转、对称等二维变换。首先要建好图示的北极星图案的数据模型(顶点表、边表)。另外,可重复调用“清屏”和“暂停”等函数,使整个变换过程具有动态效果。2. 实验环境操作系统:Windows XP开。

2、发工具:visual studio 20083. 问题分析为了建立北极星图形,首先在二维空间中根据坐标绘制出北极星图形。并且在此坐标系中确定好走笔顺序以便于进行连线操作。同时需要好好的使用清屏函数以使得显示正常。1. 放大缩小变换 放大缩小变换公式为:x=x.a, y=y.d; 其中a,d分别为x,y方向的放缩比例系数。 可通过不同的比例系数来显示程序运行结果。当a=d时为等比例放缩操作。可令变换矩阵为T。2. 对称变换 包括以x轴对称、y轴对称和原点O对称三种。由于屏幕坐标只有第一象限,我们可以将原点平移到(500,240)处。在第一象限画出一个三角形,然后分别求出三个对称图形。3. 旋转变。

3、换 将图形上的点(x,y)旋转角度,得到新的坐标(x,y)为:x=xcos-ysin, y=xsin+ycos; 旋转矩阵T为4平移变换4. 算法设计5. 源代码/北极星void hzbjx(CDC* pDC,long x18,long y18) CPen newPen1,*oldPen; newPen1.CreatePen(PS_SOLID,2,RGB(255,0,0);oldPen = pDC-SelectObject(&newPen1); POINT vertex111=x1,y1,x2,y2,x3,y3,x4,y4,x5,y5,x3,y3,x1,y1,x6,y6,x3,y3,x7,y7。

4、,x5,y5; pDC-Polyline(vertex1, 11); newPen1.DeleteObject(); newPen1.CreatePen(PS_SOLID, 2, RGB(0,255,0); oldPen = pDC-SelectObject(&newPen1); POINT vertex25=x6,y6,x8,y8,x9,y9,x3,y3,x8,y8; pDC-Polyline(vertex2, 5); POINT vertex35=x4,y4,x10,y10,x11,y11,x3,y3,x10,y10; pDC-Polyline(vertex3, 5); newPen1.D。

5、eleteObject(); newPen1.CreatePen(PS_SOLID, 2, RGB(255,0,90); oldPen = pDC-SelectObject(&newPen1); POINT vertex411=x12,y12,x13,y13,x3,y3,x9,y9,x14,y14,x15,y15,x3,y3,x11,y11,x12,y12,x3,y3,x14,y14; pDC-Polyline(vertex4, 11); newPen1.DeleteObject(); newPen1.CreatePen(PS_SOLID, 2, RGB(0,100,255); oldPen 。

6、= pDC-SelectObject(&newPen1); POINT vertex55=x15,y15,x16,y16,x3,y3,x16,y16,x7,y7; pDC-Polyline(vertex5, 5); POINT vertex65=x2,y2,x17,y17,x3,y3,x17,y17,x13,y13; pDC-Polyline(vertex6, 5); pDC-SelectObject(oldPen); Sleep(10); void CDiamondView:Polaris()InvalidateRgn(NULL);UpdateWindow();CDC *pDC = GetD。

7、C();long x18,y18; x1=553,y1=100;x2=515,y2=251;x3=553,y3=338; x4=516,y4=426; x5=553,y5=551; x6=589,y6=253; x7=591,y7=426; x8=678,y8=212; x9=641,y9=311; x10=454,y10=438; x11=478,y11=364; x12=415,y12=338; x13=466,y13=301; x14=703,y14=338; x15=640,y15=375;x16=665,y16=450; x17=440,y17=226; hzbjx(pDC,x,y)。

8、;Sleep(500);InvalidateRect(NULL); UpdateWindow(); long x118,y118; /缩小for(double n=1;n=0.5;n-=0.01)for (int i=1;i=0;t-=0.01)for(int k=1;k18;k+) x6k=Round(xk*cos(t)-yk*sin(t)-x3*cos(t)+y3*sin(t)+x3); y6k=Round(xk*sin(t)+yk*cos(t)-x3*sin(t)-y3*cos(t)+y3); hzbjx(pDC,x6,y6);InvalidateRect(NULL); UpdateWi。

9、ndow(); Sleep(500); long x718,y718;/沿X=1000对称 for(int l=1;l18;l+) xl=Round(xl*0.5);yl=Round(yl*0.5);x7l=1000-xl; y7l=yl; hzbjx(pDC,x,y);hzbjx(pDC,x7,y7);Sleep(200);long x818,y818;/沿Y=600对称 for(int l=1;l18;l+) x8l=xl; y8l=600-yl; hzbjx(pDC,x,y);hzbjx(pDC,x8,y8);Sleep(200);long x918,y918;for(int l=1;l18;l+) x9l=1000-xl; y9l=600-yl; hzbjx(pDC,x,y);hzbjx(pDC,x9,y9);6. 程序运行结果图1 北极星图案的数据模型图2 北极星图案的缩放图3 北极星图案的平移图4 北极星图案的旋转图5 北极星图案的对称7. 总结在这次的实验中,我根据图形变换的基本原理简单实现了图形的几种变换。但是由于自己对框架和函数运用的不熟悉,在实验中遇到了一些本可以被避免的困难。因此,以后必须要在这方面有所改进。通过这次的实验,我知道了如何利用程序进行二维图形的一些基本变换。在以后的学习过程我还需要不断努力,这样才能在这门课程的学习中有所收获。

计算机图形学二维图形基本变换实验原理,江苏大学-计算机图形学第三次实验报告-二维图形变换...相关推荐

  1. OpenGL南邮计算机图形学实验报告二——两个纹理的渐变变换和移动

    OpenGL南邮计算机图形学实验报告二--两个纹理的渐变变换和移动 计算机图形学的新题目要求 OpenGL配置参考: 南邮老前辈wonz哥的OpenGL配置(Shader.h始终不用改).SOIL2 ...

  2. 计算机大机实验报告,大学计算机一实验报告二大学算机一实验报告二大学计算机一实验报告二大学计算机一实验报告二.doc...

    大学计算机一实验报告二大学算机一实验报告二大学计算机一实验报告二大学计算机一实验报告二 广东金融学院实验报告 课程名称:大学计算机Ⅰ 实验编号 及实验名称实验二中文Word 2010 实验系 别姓 名 ...

  3. 计算机控制技术实验报告pid,东南大学计算机控制技术实验报告二.docx

    东南大学计算机控制技术实验报告二 东南大学自动化学院 实 验 报 告 课程名称: 计算机控制技术 第 二 次实验 实验名称: 数字PID调节器算法的研究 院 (系): 自动化 专 业: 自动化 姓 名 ...

  4. 计算机控制技术实验报告数据采集,东南大学计算机控制技术实验报告二

    东南大学计算机控制技术实验报告二 (8页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 东南大学自动化学院实验报告课程名称: 计算机控制技术 ...

  5. 三维绘图matlab实验报告,matlab实验报告-二维绘图

    matlab实验报告-二维绘图 实验报告2 课程 数学实验与数学软件 实验名称 matlab的二维绘图 第 1 页 专业 数学与应用数学 班级_08级数学3班__ ______ 学号_182__ 姓名 ...

  6. 计算机组成移位运算器实验,计算机组成实验报告二移位运算实验

    <计算机组成实验报告二移位运算实验>由会员分享,可在线阅读,更多相关<计算机组成实验报告二移位运算实验(3页珍藏版)>请在人人文库网上搜索. 1.淮海工学院计算机工程学院实验报 ...

  7. 计算机数据表示实验报告,实验报告二数据的表示

    <实验报告二数据的表示>由会员分享,可在线阅读,更多相关<实验报告二数据的表示(4页珍藏版)>请在人人文库网上搜索. 1.计算机系统基础实验报告学院 信电学院 专业 计算机科学 ...

  8. 通信使用matlab三元码实验报告,Matlab仿真DSBSC信号与双极性不归零码通信原理实验报告二实验...

    Matlab仿真DSBSC信号与双极性不归零码通信原理实验报告二实验 Matlab 仿真 DSB-SC 信号与双极性不归零码通信原理实验报告二实验题目:Matlab 仿真 DSB-SC 信号与双极性不 ...

  9. oracle数据库环境实验报告,《Oracle数据库》实验报告二

    <<Oracle数据库>实验报告二>由会员分享,可在线阅读,更多相关<<Oracle数据库>实验报告二(5页珍藏版)>请在金锄头文库上搜索. 1.第 1 ...

最新文章

  1. oracle12测试骤,Oracle中SQL语句解析的步骤
  2. 【 C 】用动态数组实现堆栈
  3. 【Java 并发编程】线程池机制 ( ThreadPoolExecutor 线程池构造参数分析 | 核心线程数 | 最大线程数 | 非核心线程存活时间 | 任务阻塞队列 )
  4. IBM X系列服务器IMM日志采集
  5. 电路中滤波电容和退耦电容_电子电路中电容的作用,滤波消抖,充放电,耦合,退耦...
  6. 他们和机器人啪啪啪,并计划共度一生
  7. ionic+AnjularJs实现省市县三级联动效果
  8. php边框的颜色 怎么设置,网页中table表格如何修改边框颜色
  9. Python高级编程阅读笔记
  10. [凯立德]2014秋季版C1204-C7K05-3321J0L(SP2)WinCE版
  11. 蓝桥杯 ALGO-71 算法训练 比较字符串
  12. Arquillian和Jboss的版本问题
  13. vue+elementUI 打印pdf文件
  14. matlab abort,matlab自动关闭是怎么回事???
  15. 谷歌浏览器提示您的连接不是私密连接的解决方法
  16. java导出乱码_导出文件乱码问题处理(java)
  17. 印象笔记无法连接服务器解决办法
  18. 检查文件编码是什么格式的
  19. RDD、DataFrame、DataSet原理解析
  20. Spring事务管理的总结

热门文章

  1. 门槛越低,越容易引起共鸣
  2. 网上好友好久不见,表达想念之情
  3. 小啊呜产品读书笔记001:《邱岳的产品手记-16》第30讲产品案例分析:Primer的扑克牌交互 第31讲 产品分析的套路(下):如何出解决方案?
  4. 如何恢复回收站删除的文件
  5. 别怕,卷积其实很简单
  6. archlinux系统美化及实用软件
  7. 国家政策创业扶持资金有哪些申报技巧?
  8. 自己制作一个回收站图标吧~(超详细)
  9. 【2021年4.13月我发给小峰子的聊天】
  10. 女士性感内衣行业调研报告 - 市场现状分析与发展前景预测