




已阅读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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安徽省池州一中2026届化学高三第一学期期末学业质量监测试题含解析
- 情景歌课件教学课件
- 全新学校清明节扫墓活动方案
- 陕西省西安市新城区西安中学2026届高一化学第一学期期中经典试题含解析
- 高校大学生联谊活动策划方案
- 幼儿园家园共庆端午节活动方案
- 恐龙大迁移课件
- 现代物业面试题及答案
- 海关监制考试题及答案
- 福建莆田秀屿下屿中学2026届化学高二上期末预测试题含答案
- 市政项目EPC总承包项目方案投标文件(技术方案)
- JG/T 324-2011建筑幕墙用陶板
- 第四届安徽省现代服务业职业技能竞赛(粮油保管员)备赛试题库(含答案)
- 城市道路智慧路灯项目投标方案(技术标)
- 人工智能辅助的舆论危机传播分析-洞察阐释
- 2025-2030年中国透皮贴剂行业市场现状供需分析及投资评估规划分析研究报告
- 广西安全员考试试题试题及答案
- 电力建设风电工程智慧工地技术规范
- 苏州瑞高新材料股份有限公司扩建汽车内饰环保合成革材料及膜塑复合制品项目报告表
- 新课标版2024-2025学年高中化学第一章从实验学化学第一节第2课时过滤蒸发及SO2-4的检验学案新人教版必修1
- 2025年劳务合同范本
评论
0/150
提交评论