- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机图形学
实验指导手册
学生班级:
学 号:
学生姓名:
计算机与通信工程学院计算机科学与技术系
一、课程简介
《计算机图形学》是计算机科学与技术、信息与计算科学专业学生的专业课。计算机图形学是目前计算机科学中最为活跃、 得到广泛应用的学科之一; 本课程的主要研究内容包括用计算机生成、 处理和显示图形, 用计算机及其图形设备输入、表示、变换、运算和输出图形的基本原理、 算法及系统。 通过本课程的学习,使学生了解图形系统的框架及其涉及的软件、 硬件技术,了解图形学的基本问题,掌握图形学的基本概念、 方法与算法, 并具有相关的编程能力。 强调课堂教学与实验教学并重, 着重培养学生针对现实生活中的常见图形设计和实现算法, 在图形显示设备上画出图形。
二、课程实验目的和要求
实验是教学的一个重要环节, 其目的是掌握计算机图形学中各种常见图形的基本算法及其实现。特别要求直线、二次曲线、自由曲线、区域填充、二维图形裁剪、图形几何变换、自由曲面等基本算法及其实现。
要求:熟悉实验环境,设计与实现直线、二次曲线、自由曲线、区域填充、
二维图形裁剪、图形几何变换、自由曲面等基本算法,并与现有的 CAD 系统
AutoCAD )提供的功能进行类比和分析。对实验中出现的问题能做出正确的判断,并能采取适当的手段加以解决。
三、实验环境
硬件环境: CPU 为 486,内存为 16M 以上 PC 机即可。
软件环境:开发平台为 Windows 或 DOS,开发语言为 C 或 C++或者 OpenGL,
可以使用其它编程语言, 相关知识自学掌握。 每个实验项目对程序设计语言的使
用有不同的要求,注意按要求完成实验。
- 1 -
计算机图形学实验预备知识
一、熟悉 TC 的开发环境及相关的图形函数
原理:
graphics.h 头文件
图形系统的初始化函数 :initgraph(graphdriver,graphmode, “” )
清屏函数: void far cleardevice(void)
恢复显示方式函数: void far closegraph(void)
例: #includegraphics.h
main()
{
int graphdriver=CGA;
int graphmode=CGAC0,x;
initgraph(graphdriver,graphmode, “” );
cleardevice();
for (x=20;x=300;x+=16)
{
putpixel(x,20,1);
putpixel(x+4,20,2);
}
getch();
closegraph();
}
相关图形函数
( 1) putpixel(int x, int y, int color) 表示在指定的 x,y 位置画一点,点
的显示颜色由设置的 color 值决定。
( 2) line (int startx, int starty, int endx, int endy) 函数用当前绘图色
从 startx, starty,到 endx, endy 画一条直线。
( 3) lineto(int x, int y) 函数用当前绘图色从当前位 (cp) 到 x, y 画一条线,
- 2 -
并将 cp 定位在 x,y 处。
( 4) linerel(int deltax, int deltay) 函数从 cp 到定位外划一条线。 Cp 移到
新的定位。
( 5) rectangle(int x1, int y1, int x2, int y2) 该函数将以 (x1,y1) 为左上
角、 (x2,y2) 为右下角画一矩形框。
( 6) arc(int x, int y, int start, int end, int radius) 函数从 start 到
end 画一个弧,以 x, y 为中心, radius 为半径。
( 7)circle(int x, int y, int radius) 函数画一个圆,以 x, y 为中心, radius
为半径,颜色是当前绘图颜色。
( 8) drawpoly(int numpoints, int far *points) 函数用当前绘图软件包画一
个多边形。多边形中的点数等于 numpoints 。由于每个点含有 x 和 y 坐标,所以,
由 points 所指的整形数组必须至少比点数大两倍。在该数组中,每个点由其 x,
y 坐标定义, x 坐标在前。
( 9) fillpoly(int numpoints, int far *points) 函数先用当前绘图软件包画
实体,它含有 x,y 坐标定义的 numpoints 个点。然后用当前填充色和模式填充
该实体。填充模式可通过调用 setf
您可能关注的文档
最近下载
- 高档牛肉生产技术精品.ppt VIP
- 2025年最新人教版七年级(初一)数学上册教学计划及进度表(新课标,新教材).docx
- 执法办案管理中心信息化建设方案(纯方案,117页) .pdf VIP
- 2024江苏省农村信用社联合社招聘科技类(本)10人笔试历年典型考题及考点剖析附带答案详解.docx VIP
- 标准图集-15J403-1 楼梯 栏杆 栏板(一).pdf VIP
- 戚墅堰区幼儿园膳食营养调查分析.doc VIP
- 骨科三基三严考试题.docx VIP
- SY∕T 6662.8-2016 石油天然气工业用非金属复合管 第8部分:陶瓷内衬管及管件.pdf
- 桥面挡砟墙施工方案.pdf VIP
- 复方鼻炎膏说明书.docx VIP
文档评论(0)