




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机图形学实验报告实验三 三维图形的投影变换学生姓名专业、班级指导教师成绩电子与信息工程系2010 年 11月 6日1、 实验目的:绘制三维物体的轴测投影图和一点透视图 ,在程序中给定控制多面体的顶点坐标及点线信息。视点固定在z轴某点上,输入物体的旋转角度及平移量。正轴测投影图和一点透视图。二、题目: 三维图象的基本变换三、设计思想:因为电脑显示的是2维持坐标图象,所以在设计时要将三维的图象坐标转换成电脑能显示的二维持坐标图,然后根据图象的基本变换矩阵计算出变换后的坐标点,最后绘制出图象变换效果。四、原程序:CPoint dian228;/六面体的8个2维坐标点CPoint dian8;float coordinate283;float coordinate383 六面体的8个3维坐标点 Void draw6angle()/绘制一个六面方体。dc.MoveTo(0,0);/yuan dian zuo biao dian(400,400) dc.LineTo(400,0);/x /绘制一x轴,Y,Z轴dc.MoveTo(0,0);dc.LineTo(0,400);/y dc.MoveTo(50,50);/zdc.LineTo(-200,-200);dc.MoveTo(dian0);/0-1dc.LineTo(dian1);dc.MoveTo(dian0);/0-3dc.LineTo(dian3);dc.MoveTo(dian0);/0-7dc.LineTo(dian7);dc.MoveTo(dian4);/4-3dc.LineTo(dian3);dc.MoveTo(dian4);/4-5dc.LineTo(dian5);dc.MoveTo(dian4);/4-7dc.LineTo(dian7);dc.MoveTo(dian6);/6-5dc.LineTo(dian5);dc.MoveTo(dian6);/6-7dc.LineTo(dian7);dc.MoveTo(dian6);/6-1dc.LineTo(dian1);dc.MoveTo(dian2);/2-1 dc.LineTo(dian1);dc.MoveTo(dian2);/2-3dc.LineTo(dian3);dc.MoveTo(dian2);/2-5dc.LineTo(dian5)void CCBod_3DView:switch_point()/将三维坐标点转换成电脑上能表示的二维坐标点 float canshu=0.7071; for(int i=0;i8;i+) diani.x=float (coordinate3i0+float(-coordinate3i2*canshu); diani.y=float (coordinate3i1+float(-coordinate3i2*canshu); void CCBod_3DView:OnMoveOnz() /图象在Z轴上的移动。/ TODO: Add your command handler code here for(int i=0;iInvalidate();void CCBod_3DView:OnSpinz() /Z轴上旋转 / TODO: Add your command handler code here float b=cos(0.23); float a=sin(0.23);for(int i=0;iInvalidate();void CCBod_3DView:OnDUICHeng() /关于X对称/ TODO: Add your command handler code herefor(int i=0;iInvalidate();void CCBod_3DView:OnZhengzhouce() /轴测投影图/ TODO: Add your command handler code hereif(flage=false) flage=true;else flage=false; float dian383; for(int i=0;i8;i+) dian3i0=coordinate3i0; dian3i1=coordinate3i1; dian3i2=coordinate3i2; float a,b,c; float angle_a=3.1415/4; float angle_b=3.1415/6; for(int j=0;j8;j+) a=dian3j0;b=dian3j1;c=dian3j2;dian3j0=float ( a*cos(angle_a) -b*sin(angle_a) );dian3j1=0;dian3j2= float( -sin(angle_b)*( a*sin(angle_a)+b*cos(angle_a) ) + c*cos(angle_b) ); float canshu=0.7071; for(int i2=0;i2Invalidate(); void CCBod_3DView:OnONEView() /一点透视图象/ TODO: Add your command handler code herthis-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025广东广州市增城区康园工疗站服务中心招聘3人模拟试卷参考答案详解
- 2025年山东开放大学公开招聘人员(11名)模拟试卷参考答案详解
- 2025湖南衡阳市衡南县社会保险服务中心公益性岗位招聘4人考前自测高频考点模拟试题完整参考答案详解
- 2025年渭南市医疗机构定向招聘笔试等后续工作模拟试卷及答案详解(典优)
- 2025甘肃陇南慈航精神康复医院招聘17人模拟试卷附答案详解(模拟题)
- 2025山东济南建工集团有限公司校园招聘40人笔试题库历年考点版附带答案详解
- 2025年福建省福州市公安局地铁分局招聘30人考前自测高频考点模拟试题附答案详解(突破训练)
- 2025江西中小学教师招聘考试南昌考区考前自测高频考点模拟试题及完整答案详解一套
- 2025年汉中市中心医院第二批备案制工作人员招聘(19人)考前自测高频考点模拟试题及一套答案详解
- 2025中国电信安全公司春季校园招聘笔试题库历年考点版附带答案详解
- NoSQL数据库应用与实践 课件 第1-6章 认识NoSQL - 增删改查
- DB37-T4868-2025 既有公路隧道结构健康监测技术规范
- 供应链金融视角下涉农中小企业信用风险评估研究
- 宁夏差旅费管理办法文件
- DB51∕T 3231-2024 公路隧道岩爆防控技术规程
- 新高考考试命题培训心得体会
- 2023CSCO头颈部肿瘤诊疗指南
- DB54∕T 0425.1-2024 公共数据 数据元规范 第一部分:总则
- 七年级语文上册第一单元古诗词赏析训练题
- DZ/T 0275.2-2015岩矿鉴定技术规范第2部分:岩石薄片制样
- 茶叶示范基地管理制度
评论
0/150
提交评论