计算机模拟数学实验动画,计算机图形学实验-简单动画的实现、三维图形变换.docx...
安徽大学计算机实验教学中心PAGE
安徽大学计算机实验教学中心
PAGE 1
学号 专业 姓名
实验日期2018.12.11 教师签字 成绩
实验报告
【实验名称】简单动画的实现、三维图形变换
【实验目的】
指定图形运动轨迹,实现物体的移动过程和移动速度控制;
(2) 理解并掌握形体的投影变换的原理;
【实验原理】
1)简单动画的原理:显示一个对象,然后把它抹去,把这个图形进行变换后,再在新位置予以显示.当上述过程重复执行时,在视觉上便产生了运动;了解 getimage函数和 putimage函数、imagesize函数、malloc 函数、 cleardevice函数的使用。
2)绘制一点透视图的变换矩阵:
1 0 0 0
T= 0 1 0 0
0 0 0 1/d
L m n 1+n/d
得变换后的点坐标为:
x’=(x+l)/(d+(n+z)*d)
y’=(y+m)/(d+(n+z)*d)
z’=0
设计思想
图形的移动
分别画出一个六边形和一个三角形,用两个一维数组p和A来存放其各点坐标;运用putimage(x,y,p,op)函数将六边形不断地向三角形平移,直到到达三角形的边界位置为止。
用到的函数如下:
getimage(x1,y1,x2,y2,p);将屏幕左上角(x1,y1),右下角(x2,y2)的矩形区域内的图象存到指针P所指向的内存区域中。putimage(x,y,p,op);将p所指向的内存区域的内容在屏幕上显示,左上角坐标(x,y)。
一点透视
基本步骤如下:
将三维物体平移到适当位置(l,m,n);
令视点在z轴,进行透视变换,变换矩阵如下:
最后,向xOy面作正投影变换,将结果变换到xOy面上。如此构造的一点透视变换矩阵为:
则三维形体中任意一点(x,y,z)的一点透视变换的齐次坐标计算形式为:
[x’,y’,z’,1]=;
【实验内容】
1.图形的移动显示两个图形,然后移动其中一个图形.当被移动的图形超出屏幕范围时,输
出错误信息“Coordinate out of range”并结束。
#define SHOW_CONSOLE
#include
#include
#include
const int size_x=640,size_y=480;
int main()
{
PIMAGE w;
initgraph(size_x, size_y);//打开一个长640像素,宽480像素的窗口
w = newimage();
circle(100,100,50);
getimage(w,50,50,150,150);
for(int i=0;i<=1000;delay_fps(60),i += 1){
if(i > size_x){
outtextxy(210, 210, "Coordinate out of range");
break;
}
cleardevice();
putimage(i,200,w);
circle(100,100,50);
}
getch();//让屏幕暂停一下
closegraph();//关闭绘图窗口
return 0;
}
2.显示一个立方体的一点透视投影图;(用数组存放正方体的各顶点坐标)。
(选)显示一个立方体的两点透视投影图、斜二测图;(用数组存放正方体的各顶点坐标)。
#define SHOW_CONSOLE
#include "graphics.h" // 引用ege图形库
#include
#include
#include
#include
#include
const int size_x=640,size_y=480;
const double eps = 1e-6;
struct Node{
int x,y,z;
//Node(int a,int b,int c){x=a,b=y,c=z;}
};
std::vector co;
void input()
{
int n,x,y,z;
计算机模拟数学实验动画,计算机图形学实验-简单动画的实现、三维图形变换.docx...相关推荐
- 【计算机图形学】小白谈计算机图形学(四)二维三维图形变换—1
小白谈计算机图形学(四)二维三维图形变换-1 窗口与视图 二维图形的几何变换 平移变换 比例变换 旋转变换 二维图形变换的矩阵表示 三种变换 齐次坐标变换 原二维线性变换 齐次坐标法 复合变换 例题: ...
- 计算机图形学直线线型实验报告,计算机图形学实验报告-直线中点bresenham算法的实现资料.doc...
计算机图形学实验报告-直线中点bresenham算法的实现资料.doc (10页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 29.90 积分 计算机图形 ...
- 计算机图形学实验教程,计算机图形学实验
时间:2019-05-12 06:42:24 作者:admin 实验三 MFC画直线 最近自己在学习如何在VC 6.0 开发环境下的使用MFC AppWizard(exe)来绘画一条直线,虽然比较简单 ...
- 计算机图学实验报告,计算机图形学实验报告实验1
计算机图形学实验报告实验1 (9页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 贵州大学实验报告学院:计算机科学与信息专业:计科班级:101 ...
- 图形学(8)二维三维图形变换
本模块内容绝大部分是在慕课上看中国农业大学网客时的笔记,因此算作转载,在此鸣谢赵明.李振波两位老师,感谢他们录制该门课程供大家学习! 在使用计算机处理图像时,我们不可避免对图形的位置.大小.形状等进行 ...
- 计算机图形学真实绘图实验报告,计算机图形学实验报告.doc
文档介绍: 中南大学信息科学与工程学院 实验报告 实 验 名 称 实 验 地 点 科技楼四楼 实 验 日 期 2014年6月 指 导 教 师 学 生 班 级 学 生 姓 名 学 生 学 号 提 交 日 ...
- 计算机图形动画处理实训报告,西安石油大学计算机图形学 实验报告.doc
文档介绍: 西安石油大学计算机图形学_实验报告实验报告 -计算机图形学实验大作业 课程名称计算机图形学 实验名称二维绘图系统与计算机动画 姓名 学号 专业班级 成绩 指导教师爨莹 实验报告 课程名称计 ...
- 吉林大学计算机图形学实验_计算机图形学学习笔记(一):图形学概论
第一章 计算机图形学概论 1.1 全书概述 图形学基本知识 光栅图形学 扫描转换.区域填充.裁减.反走样.消隐 二维.三维图形变换及观察 几何造型 参数曲线曲面基本概念.Bezier曲线曲面.B样条曲 ...
- 深圳大学计算机图形学实验4.1,深圳大学计算机图形学大作业实验报告.doc
深圳大学计算机图形学大作业实验报告 深 圳 大 学 实 验 报 告 实验课程名称: 计算机图形学 实验项目名称: 计算机期末综合大作业 学院: 计算机与软件 专业: 计算机科学与技术 报告人: 班级: ...
最新文章
- shiro的QuickStart
- python django bootstrap_导入 201901
- MyCat分布式数据库集群架构工作笔记0015---高可用_负载均衡_Mycat双主双从读写分离
- Bolt界面引擎 HostWnd的生存周期以及相应的objtree的绑定问题
- yjv是电缆还是电线_yjv电缆中的yjv是什么意思?yjv与yjv22电缆区别有哪些?
- 【Web技术】1477- Tauri:下一代桌面应用开发框架?
- 【MATLAB笔记】对矩阵进行满秩分解
- win10重新安装以太坊mist客户端
- echarts 图例翻页+图例自定义样式
- Centos 7分辨率调整成适应虚拟机屏幕大小
- android的wifi网卡移植详细过程已经通用驱动的问题
- 《仿真使用ARENA软件》
- 2018 ACM/ICPC 北京赛区网络赛 D 80 Days 线段树
- 产品推荐丨边缘视觉处理AI模组
- vue-cli模拟后台数据交互
- 【GAMES101】作业6 加速结构
- 中国移动家庭智能网关超级账号密码
- 中国风清新手绘工作汇报PPT模板
- SQL Server——T-SQL基础技术
- 简评 淮上喜会梁州故人