- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机图形学实习报告
四
图形变换
题目4 二维和三维图形变换
【问题描述】
一 目标
1、理解各种图形变换的原理及方法;
2、在二维变换的基础之上 增加三位维变换的功能,尽可能多的实现三维变换的种类;
3、调用对话框控制变换的幅度,比如平移距离,旋转角度等;
二 任务
实现各种类的二维图形变换;
实现三维变换平行投影中的正平行投影和斜平行投影;
实现对话框控制。
【程序设计】
一 数据结构设计
1、二维图形的变换是通过一个已经存贮好的图形来变换的,首先设计一个类,里面封装了二维图形各顶点坐标和各种操作的函数。
2、三维图形变换实际上是由二维变换衍生来的,就是添加了一个二维图形的Z坐标,图形类和二维相似
二 核心算法设计
1、二维图形变换是将图形M的个坐标值和变换矩阵相乘,得到新的图形坐标,变换矩阵是一个5*5的矩阵。其中用到的是右下角的3*3部分。这样便于读程序。
旋转变换:
平移变换:
void CFgView::OnTranslation()
{
// TODO: Add your command handler code here
CTRANSLATDLG dlg;
int i,j;
C2DGraph my1;
dlg.m_X=30;
dlg.m_Y=30;//构造新的C2DGraph 对象
//将图形变换矩阵清零
for ( i=1;i=3;++i)
{
for ( j=1;j=3;++j)
my1.A1[i][j]=0;
}
//给图形变换矩阵赋值
my1.A1[1][1]=1;
my1.A1[2][2]=1;
my1.A1[3][3]=1;
if(IDOK==dlg.DoModal())
{
//将图形变换矩阵清零
for ( i=1;i=3;++i)
{
for ( j=1;j=3;++j)
my1.A[i][j]=0;
}
//给图形变换矩阵赋值
my1.A[1][1]=1;
my1.A[2][2]=1;
my1.A[3][1]=-dlg.m_X;
my1.A[3][2]=-dlg.m_Y;
my1.A[3][3]=1;
RedrawWindow();
my1. Display (); //
}
}
错切变换
void CFgView::OnCuoqie()
{
// TODO: Add your command handler code here
CCUOQIE dlg;
int i,j;
C2DGraph my1;
dlg.m_X=0;
dlg.m_Y=0;
//将图形变换矩阵清零
for ( i=1;i=3;++i)
{
for ( j=1;j=3;++j)
my1.A1[i][j]=0;
}
//给图形变换矩阵赋值
my1.A1[1][1]=1;
my1.A1[2][2]=1;
my1.A1[3][3]=1;
if(IDOK==dlg.DoModal())
{
//将图形变换矩阵清零
for ( i=1;i=3;++i)
{
for ( j=1;j=3;++j)
my1.A[i][j]=0;
}
//给图形变换矩阵赋值
my1.A[1][1]=1;
my1.A[1][2]=dlg.m_Y;
my1.A[2][1]=dlg.m_X;
my1.A[2][2]=1;
my1.A[3][3]=1;
RedrawWindow();
my1. Display ();
}
}
关于X轴对称矩阵
关于Y轴对称矩阵
关于原点对称矩阵
2、三维投影是将已经在计算机内存储好的一个立体物体通过旋转两次再进行平行投影变换后得到的二维图形,其基本原理和二维图形变换相似,还是将各个坐标点和变换矩阵相乘再显示到屏幕上。
正等侧投影变换矩阵
正二测投影变换矩阵
斜等测投影变换矩阵
【测试范例】
一 测试数据基本背景
平行变换对话框
变换前后
变换前后
变换前后
变换前后
详细代码
void C2DGraph ::ReadWorkpiece()
{
X[1]=-20;Y[1]=20; C[1]=1;
X[2]=-20;Y[2]=80; C[2]=1;
X[3]=-40;Y[3]=60; C[3]=1;
X[4]=-60;Y[4]=80; C[4]=1;
X[5]=-60;Y[5]=20; C[5]=1;
X[6]=-25;Y[6]=20;
您可能关注的文档
- 保护视力作文5篇.doc
- 保护水资源 教案.doc
- 保护我们的牙齿教案.doc
- 保护校园环境卫生从我做起.doc
- 保护性杀菌剂与内吸性杀菌剂的区别.doc
- 保护性约束观察记录单 2.doc
- 保护压板投、退一般原则.doc
- 保护眼睛课后反思.doc
- 保护眼睛主题班会教案汇总.doc
- 保护野生动物建议书(2篇).doc
- 广东省东莞市2024-2025学年八年级上学期生物期中试题(解析版).pdf
- 非遗剪纸文创产品开发经理岗位招聘考试试卷及答案.doc
- 广东省东莞市2024-2025学年高二上学期期末教学质量检查数学试题.pdf
- 体育安全理论课件图片素材.ppt
- 3.1 公民基本权利 课件-2025-2026学年道德与法治八年级下册 统编版 .pptx
- 广东省潮州市湘桥区城南实验中学等校2024-2025学年八年级上学期期中地理试题(解析版).pdf
- 大数据运维工程师岗位招聘考试试卷及答案.doc
- 广东省深圳市福田区八校2026届数学八年级第一学期期末教学质量检测模拟试题含解析.doc
- 广东省潮州市湘桥区城基初级中学2024-2025学年八年级上学期11月期中考试数学试题(解析版).pdf
- 广东省潮州市湘桥区城西中学2024-2025学年八年级上学期期中地理试题(解析版).pdf
最近下载
- 重庆市大渡口区2024-2025学年一年级上册期末考试语文试卷(含答案).pdf VIP
- Tiger_Touch_Manual老虎灯光控制台中文说明书.pdf
- 新人教部编版语文七年级下册《爱莲说》优质ppt课件.pptx VIP
- 2021年儿科下半年考试试题.docx VIP
- PDCA应用--肾病内科.docx
- 2025-2026学年苏少版(新教材)初中美术七年级上册(全册)知识点梳理归纳.docx
- 土地法学-严金明-第2章 土地法基本问题.pptx VIP
- 24J331《地沟及盖板》(替代02J331).pdf VIP
- 土地法学-严金明-第13章 地籍管理法律制度.pptx VIP
- TCI 612-2024 椎管内分娩镇痛实施规范.pdf VIP
原创力文档


文档评论(0)