计 算 机 图 形 学课 程 实验 报 告 实验题目 自由曲线和曲面的绘制 班 级 计算081 姓 名 杨 恒 学 号 3080811017 指导教师 胡钢 日 期 2011.6.3 西 安 理 工 大 学 理 学 院 应 用 数 学 系 二 零 一一年春季学 期 信息与计算科学专业基础课 Computer Graphics Report Of course experiment -图形学课程实验报告- - 1 - 实验说明 实验目的: 掌握自由曲线和曲面(包括Bezier 曲线、曲面和B 样条曲线、曲面)的生成算法思想,并能上机编程绘制相应的曲线、曲面和利用曲线、曲面进行简单的几何造型设计。 实验地点: 教九楼 401 数学系机房 实验要求(Direction): 1.每个学生单独完成;2.开发语言为 TurboC 或 C++,也可使用其它语言;3.请在自己的实验报告上写明姓名、学号、班级;4.每次交的实验报告内容包括: 题目、试验目的和意义、程序制作步骤、主程序、运行结果图以及参考文件;5. 自己保留一份可执行程序,考试前统一检查和上交。 实验内容 实验题一 1.1 实验题目 上机编写一个能绘制 Bezier 曲线和B 样条曲线的通用程序,并调试成功。具体要求为:(1)用户在运行程序时,可以根据提示信息来决定选择绘制 Bezier 曲线,还是B 样条曲线;(2)两种曲线控制顶点的个数和坐标值要求可以随机输入(即Bezier 曲线和B 样条曲线的次数和位置可以随机输入);(3)当用户输入控制点的坐标位置后,屏幕上生成曲线的同时显 示其特 征 多 边 形;且 在特 征 多 边 形的顶点处 输出 该 顶点坐标;(4)要求在可执行程序后附 上运行结果(两种曲线都 至 少 附 上一个结果图)。 自由曲线和曲面的绘制 实验4 -图形学课程实验报告- - 2 - 1.2 实验目的和意义 掌握Bezier 曲线和B 样条曲线的绘制方法。 1.3 程序制作步骤(包 括 算 法 的 基 本 思 想 、流程图、设计步骤等) 一、基本思想 (1)Bezier 曲线:是由一组折线来定义的,且第一个点和最后一个点在曲线上,第一条和最后一条折线分别表示出曲线在起点和终点处的切线方向。Bezier 曲线通常由(n+1)个顶点定义一个n 次多项式,曲线上各点参数方程式是 P(t) = ∑ Pini=0Bi,n(t) 其中,参数t 的取值范围是[0,1],i 是有序集0~n 中的一个整数值,n 是多项式次数,也是曲线次数,通常由n+1 个顶点确定的曲线为n 次曲线。 Pi是低i 个顶点的坐标值(x 或y),Bi,n(t)是Be...