实验1 直线段的扫描转换
实验类型:设计性
实验类别:专业实验
实验目的
1. 通过实验,进一步理解直线段扫描转换的DDA算法、中点bresenham算法及bresenham算法的基本原理;
2. 掌握以上算法生成直线段的基本过程;
3. 通过编程,会在C/C++环境下完成用DDA算法、中点bresenham算法及bresenham算法对任意直线段的扫描转换。
实验设备及实验环境
计算机(每人一台)
VC++6.0或其他C/C++语言程序设计环境
实验学时:2学时
实验内容
用DDA算法中点bresenham算法及bresenham算法实现任意给定两点的直线段的绘制(直线宽度和线型可自定)。
实验步骤:
1、 复习有关算法的基本原理,明确实验目的和要求;
2、 依据算法思想,绘制程序流程图;
3、 设计程序界面,要求操作方便;
4、 用C/C++语言编写源程序并调试、执行;
5、 分析实验结果
6、 对程序设计过程中出现的问题进行分析与总结;
7、 打印源程序或把源程序以文件的形式提交;
8、 按格式要求完成实验报告。
实验报告要求:
1、 各种算法的基本原理;
2、 各算法的流程图
3、 实验结果及分析(比较三种算法的特点,界面插图并注明实验条件)
4、 实验总结(含问题分析及解决方法)
实验2 圆的扫描转换
实验类型:设计性
实验类别:专业实验
实验目的
1、 通过实验,进一步理解和掌握中点bresenham画圆算法的基本原理;
2、 掌握以上算法生成圆和圆弧的基本过程;
3、 掌握在C/C++环境下完成用中点bresenham算法圆或圆弧的绘制方法。
实验设备及实验环境
计算机(每人一台)
VC++6.0或其他C/C++语言程序设计环境
实验学时:2学时
实验内容
用中点(Besenham)算法实现圆或圆弧的绘制。
实验步骤
1. 复习有关圆的生成算法,明确实验目的和要求;
2. 依据算法思想,绘制程序流程图(注意圆弧生成时的输入条件);
3. 设计程序界面,要求操作方便;
4. 用C/C++语言编写源程序并调试、执行;
5. 分析实验结果
6. 对程序设计过程中出现的问题进行分析与总结;
7. 打印源程序或把源程序以文件的形式提交;
8. 按格式要求完成实验报告。
实验报告要求:
1. 分析算法的工作原理;
2. 画出算法的流程图
3. 实验结果及分析(比较圆与圆弧生成算法的不同)
4. 实验总结(含问题分析及解决方法)
实验3 多边形的区域填充
学时:2
实验类型:设计性
实验类别:专业实验
实验目的
1. 通过实验,进一步理解和掌握几种常用多边形填充算法的基本原理
2. 掌握多边形区域填充算法的基本过程
3. 掌握在C/C++环境下用多边形填充算法编程实现指定多边形的填充。
实验设备及实验环境
计算机(每人一台)
VC++6.0或其他C/C++语言程序设计环境
实验学时:2学时
实验内容
用种子填充算法和扫描线填充算法等任意两种算法实现指定多边形的区域填充。
实验步骤
1. 复习有关算法,明确实验目的和要求;
2. 依据算法思想,绘制程序流程图(指定填充多边形);
3. 设计程序界面,要求操作方便;
4. 用C/C++语言编写源程序并调试、执行(最好能用动画显示填充过程);
5. 分析实验结果
6. 对程序设计过程中出现的问题进行分析与总结;
7. 打印源程序或把源程序以文件的形式提交;
8. 按格式要求完成实验报告。
实验报告要求:
1. 分析算法的工作原理;
2. 画出算法的流程图
3. 实验结果及分析(比较两种算法的不同)
4. 实验总结(含问题分析及解决方法)
1