福建农林大学计算机与信息学院
实验报告
20##年 11 月19 日
实验项目列表
福建农林大学计算机与信息学院实验报告
实验名称:直线段的生成
一、 实验目的和要求:
1. 理解各种画线算法的原理,并主要掌握DDA算法,中点画线算法,Bresenham算法。
2.能够根据画线算法的原理编写出相应的画线算法(这里列出两种算法),并能正确的显示出所要画的线段。
二.实验内容和原理:
1.DDA 算法:
1)原理:直接利用计算x轴上的增量或y轴的增量的线段扫描转换算法。
2)内容:1若线段的斜率m的绝对值小于等于1,则在单位x间隔()取样,计算每个y的值,即
2若线段的斜率m的绝对值大于1,则在单位y间隔(=1)取样,计算每个x的值,即
2. Bresenham算法:
1)原理:利用线段上的点和上下相邻像素点间距离的对比来选择合适的像素点。
2)内容:1定义线段上的某一点到下像素点的距离为的d1,到上像素点的距离为d2,定义 ,并求出的值
…… …… 余下全文
实验目的
1、通过实验,进一步理解和掌握DDA和Bresenham算法;
2、掌握以上算法生成直线段的基本过程;
3、通过编程,会在TC环境下完成用DDA或中点算法实现直线段的绘制。
实验环境
计算机、Turbo C或其他C语言程序设计环境
实验学时
2学时,必做实验。
实验内容
用DDA算法或Besenham算法实现斜率k在0和1之间的直线段的绘制。
实验步骤
1、算法、原理清晰,有详细的设计步骤;
2、依据算法、步骤或程序流程图,用C语言编写源程序;
3、编辑源程序并进行调试;
4、进行运行测试,并结合情况进行调整;
5、对运行结果进行保存与分析;
6、把源程序以文件的形式提交;
7、按格式书写实验报告。
实验代码:DDA:
# include <graphics.h>
# include <math.h>
void DDALine(int x0,int y0,int x1,int y1,int color)
{
int dx,dy,epsl,k;
…… …… 余下全文
一、教学目标
通过本章的学习,使学生能够了解计算机图形学的基本概念、研究内容;当前的发展概况;本门课程的特点和应用。
二、教学要求
1. 了解计算机图形学的概念和研究内容;
2. 了解本门课程的发展概况。
三、教学内容提要
1. 计算机图形学的研究内容
2. 计算机图形学发展概况
3. 计算机图形学特点和应用
4. 计算机图形学当前研究的课题
5. 计算机图形生成和输出的流水线
四、教学重点、难点及解决方法
本章将主要围绕计算机图形学的基本概念进行介绍,介绍研究内容;当前的发展概况;本门课程的特点和应用等等。
五、课时安排
2学时
六、教学设备
多媒体
七、检测教学目标实现程度的具体措施和要求
通过课堂提问的方式来检测学生对基本概念的掌握程度。
八、教学内容
1.1 计算机图形学的研究内容
…… …… 余下全文
河南理工大学测绘学院
《计算机图形学》实验报告
学号
姓名
成绩
评语:
交报告日期: 20##年 6 月 25 日
实验项目一:图形学光栅化算法验证实验
实验日期:2012 年6 月 5日
一、实验目的:
1、加强对直线、圆的光栅化算法的理解。工程中的绘图函数不允许使用微软MFC类库CDC类提供的方法,必须使用图形学教材上的光栅化算法。
2、掌握基本图形系统交互设计方法。
3、熟悉windows程序的基本消息处理。
二、你认为实验中的较好的设计或代码:
…… …… 余下全文
班级:10计科 姓名:敖智挺 学号:201030457117
实验一 直线生成与二次曲线拟合
实验内容:
应用 Bresenham画线算法实现一程序,完成直线生成。
实验目的:
1. 了解掌握VC下2D图元的扫描转换原理及VC实现;
2. 掌握图元属性原理及VC编程实现方法;
3. 掌握图元区域填充原理及模式,并验证实现相应的图元填充算法。
实验源代码:
#include<math.h>
#include <graphics.h>
#include <conio.h>
main()
{
int driver=DETECT;
int mode;
int x1,y1,x2,y2;
initgraph(&driver,&mode,"");
x1=100;y1=200;x2=400;y2=300;
bsrline(x1,y1,x2,y2,4);
getch();
closegraph();
…… …… 余下全文
《计算机图形学》实验报告
实验名称:区域填充算法和裁剪算法
一.实验目的及要求
1. 掌握区域填充的基本算法原理;
2. 会使用字符的图形输出。
3. 实践与巩固区域填充的基本生成算法。
4. 掌握这些算法的原理及实现;
二.理论基础
1. 了解光栅图形显示器的特点;
2. 熟悉C环境下图形程序的绘图方法;
3. 对多边形的扫描线、边标志及扫描线种子填充算法有一定的了解;
4. 对计算机绘图的原理有一定的认识。
三.算法设计与分析
1)扫描线算法
充分利用了扫描线连贯性原理,避免了针对于象素点的逐点判别,有效地选择象素点来进行多边形的填充。
扫描线算法的基本思想:
对给定的多边形,用一组水平(垂直)的扫描线进行扫描,对每一条扫描线均可求出与多边形边的交点;这些交点将扫描线分割成落在多边形内部和落在多边形外部的线段,二者相间排列;将落在多边形内部的扫描线段上的所有象素点赋以给定的色彩值。
算法求解:
对于一条扫描线的处理 ,可以分为四个步骤:
(1)求交点:首先求出扫描线与多边形各边的交点
…… …… 余下全文