安徽大学计算机实验教学中心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

    小白谈计算机图形学(四)二维三维图形变换-1 窗口与视图 二维图形的几何变换 平移变换 比例变换 旋转变换 二维图形变换的矩阵表示 三种变换 齐次坐标变换 原二维线性变换 齐次坐标法 复合变换 例题: ...

  2. 计算机图形学直线线型实验报告,计算机图形学实验报告-直线中点bresenham算法的实现资料.doc...

    计算机图形学实验报告-直线中点bresenham算法的实现资料.doc (10页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 29.90 积分 计算机图形 ...

  3. 计算机图形学实验教程,计算机图形学实验

    时间:2019-05-12 06:42:24 作者:admin 实验三 MFC画直线 最近自己在学习如何在VC 6.0 开发环境下的使用MFC AppWizard(exe)来绘画一条直线,虽然比较简单 ...

  4. 计算机图学实验报告,计算机图形学实验报告实验1

    计算机图形学实验报告实验1 (9页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 贵州大学实验报告学院:计算机科学与信息专业:计科班级:101 ...

  5. 图形学(8)二维三维图形变换

    本模块内容绝大部分是在慕课上看中国农业大学网客时的笔记,因此算作转载,在此鸣谢赵明.李振波两位老师,感谢他们录制该门课程供大家学习! 在使用计算机处理图像时,我们不可避免对图形的位置.大小.形状等进行 ...

  6. 计算机图形学真实绘图实验报告,计算机图形学实验报告.doc

    文档介绍: 中南大学信息科学与工程学院 实验报告 实 验 名 称 实 验 地 点 科技楼四楼 实 验 日 期 2014年6月 指 导 教 师 学 生 班 级 学 生 姓 名 学 生 学 号 提 交 日 ...

  7. 计算机图形动画处理实训报告,西安石油大学计算机图形学 实验报告.doc

    文档介绍: 西安石油大学计算机图形学_实验报告实验报告 -计算机图形学实验大作业 课程名称计算机图形学 实验名称二维绘图系统与计算机动画 姓名 学号 专业班级 成绩 指导教师爨莹 实验报告 课程名称计 ...

  8. 吉林大学计算机图形学实验_计算机图形学学习笔记(一):图形学概论

    第一章 计算机图形学概论 1.1 全书概述 图形学基本知识 光栅图形学 扫描转换.区域填充.裁减.反走样.消隐 二维.三维图形变换及观察 几何造型 参数曲线曲面基本概念.Bezier曲线曲面.B样条曲 ...

  9. 深圳大学计算机图形学实验4.1,深圳大学计算机图形学大作业实验报告.doc

    深圳大学计算机图形学大作业实验报告 深 圳 大 学 实 验 报 告 实验课程名称: 计算机图形学 实验项目名称: 计算机期末综合大作业 学院: 计算机与软件 专业: 计算机科学与技术 报告人: 班级: ...

最新文章

  1. shiro的QuickStart
  2. python django bootstrap_导入 201901
  3. MyCat分布式数据库集群架构工作笔记0015---高可用_负载均衡_Mycat双主双从读写分离
  4. Bolt界面引擎 HostWnd的生存周期以及相应的objtree的绑定问题
  5. yjv是电缆还是电线_yjv电缆中的yjv是什么意思?yjv与yjv22电缆区别有哪些?
  6. 【Web技术】1477- Tauri:下一代桌面应用开发框架?
  7. 【MATLAB笔记】对矩阵进行满秩分解
  8. win10重新安装以太坊mist客户端
  9. echarts 图例翻页+图例自定义样式
  10. Centos 7分辨率调整成适应虚拟机屏幕大小
  11. android的wifi网卡移植详细过程已经通用驱动的问题
  12. 《仿真使用ARENA软件》
  13. 2018 ACM/ICPC 北京赛区网络赛 D 80 Days 线段树
  14. 产品推荐丨边缘视觉处理AI模组
  15. vue-cli模拟后台数据交互
  16. 【GAMES101】作业6 加速结构
  17. 中国移动家庭智能网关超级账号密码
  18. 中国风清新手绘工作汇报PPT模板
  19. SQL Server——T-SQL基础技术
  20. 简评 淮上喜会梁州故人

热门文章

  1. pythoncookie自动模拟登录_用Python模拟技巧带你实现自动抽屉登录自动点赞
  2. 重磅!“东方理工大学”来了!
  3. 一位女博士五年的艰难毕业历程
  4. “堂堂985博士,要去高职了,天空是灰暗的!!!”
  5. 马斯克直聘AI人才:高中毕没毕业无所谓,但是编程能力得过
  6. pb 打印html页面,用PB开发WEB应用
  7. python 实现 CRC 冗余码的方法
  8. 二叉查找树 java代码实现
  9. 【转载】ssdb安装部署
  10. HUE Load Balancer 启动失败