计算机图形学的功能需求,图形学课程设计要求 《计算机图形学》.doc
《计算机图形学》课程设计
一、 设计要求
1. 根据设计任务,编制程序,在机器上调试运行,并通过上机考核。
2. 按照下面的“三、课程设计报告格式”的要求,写出课程设计报告。
3. 课程设计报告在第19周之前交来。
二、 设计任务
1.
1)给定直线的起点坐标为P0(x0,y0)、终点坐标为P1(x1,y1),容易计算出直线斜率k。假设0≤k≤1,则x方向为主位移方向,绘制直线的递推公式为:
,这称为数值微分法(Digital Differential Analyzer,DDA),请编程实现之。提示:DDA算法实质上是对直线斜率进行了四舍五入计算。
2)椭圆的扫描转换。
2.
用鼠标在屏幕上绘制任意顶点数的封闭多边形并填充,填充效果如下图所示。编程要求:⑴多边形的顶点数不受限制;
⑵按下鼠标左键,拖动鼠标绘制多边形,同时按下Shift键可以绘制水平边或垂直边;
⑶单击鼠标右键闭合多边形;
⑷使用边缘填充算法填充多边形。
3
请按照图所示,使用对话框输入直线的起点和终点坐标。在窗口左侧区域绘制输入直线和“窗口”,在窗口右边右侧区域绘制“视区”并输出裁剪结果。这里需要用到窗视变换的公式。请分别用Cohen-Sutherland算法、中点分割裁剪算法和梁友栋-Barsky算法实现。
4
在屏幕上使用鼠标绘制控制多边形,根据控制多边形的阶次绘制Bezier曲线和B样条曲线。
5.
1) 使用VC编程实现,以直角三角形为基础绘制下图所示Sierpinski三角形。
2)以屏幕范围为基础绘制下图所示Sierpinski地毯。
6.
1)给定直线的起点颜色(如红色)和终点颜色(如黑色)不同,请使用中点Bresenham算法绘制任意斜率的颜色渐变直线,效果如图所示。
2)用梁友栋-Barsky算法裁剪线段P1(3,3),P2(-2,-1),裁剪窗口为wxl=0,wxr=2,wyb=0,wyt=2。
7.
边缘填充算法的重要缺点是每一个像素可能被多次访问。为此,在多边形外接矩形的中心设置栅栏,把多边形分成两部分,如图所示。在处理每条扫描线时,只将交点与栅栏间的像素取补。填充效果如图所示。
带栅栏的的多边形图
带栅栏的多边形填充效果图
8.
扫描线种子填充算法是通过扫描线来填充水平像素段,仅将每条扫描线的最右端像素点入栈,可以有效提高算法效率,请编程实现。
9.
1)给定下图所示的四个控制点:P0=(228,456),P1=(294,247),P2=(452,123),P3=(705,197)。分别绘制三次Bezier曲线和三次B样条曲线。
2)使用VC编程,在窗口中一次绘制n=0~5的所有Cantor图
10. 请使用GetCurrentTime()函数读取系统时间,对时钟指针进行反走样,下图的左侧为走样时钟,右侧为反走样时钟。
三、 设计报告格式
1. 封面格式 (题目、姓名、学号、专业、完成日期等)
封面范例:
《计算机图形学》课程设计
题目:
指导老师:
姓 名:
学 号:
院 (系):
专 业:
完成日期: 年 月 日
2. 正文格式
1课题题目介绍
2 整体功能及设计
3 编程实现
4 使用说明
5 结果分析
6 课程设计总结
四、 课程设计考核标准:
通过答辩方式,并结合学生的动手能力,独立分析解决问题的能力和创新精神,总结报告和答辩水平以及学习态度综合考评。
学生的动手能力,创新精神,程序设计的可用性,实用性,通用性,可扩充性(40%)
答辩水平(20%)
总结报告(40%)
8
展开阅读全文
计算机图形学的功能需求,图形学课程设计要求 《计算机图形学》.doc相关推荐
- 计算机辅助设计与制造专业课程,《计算机辅助设计与制造》课程实验指导书
<<计算机辅助设计与制造>课程实验指导书>由会员分享,可在线阅读,更多相关<<计算机辅助设计与制造>课程实验指导书(11页珍藏版)>请在人人文库网上搜索 ...
- 湖南师范大学计算机基础课网络教学,湖南师范大学《计算机基础及应用》课程考核若干规定.doc...
湖南师范大学<计算机基础及应用>课程考核若干规定 窗体顶端 湖南师范大学教师课程教学考核实施办法 (试行) 为进一步规范和改进我校对教师课程教学的考核,加强对教师教学过程的全面监控,确保课 ...
- 江苏大学c语言程序设计,江苏大学201级C语言课程设计要求及题目.doc
江苏大学201级C语言课程设计要求及题目 C语言程序课程设计 C programming curriculum design 课程设计大纲 一.学时与学分 总学时:1.5周 总学分:2 二.课程设计的 ...
- 课程设计用计算机演奏音乐,微机原理课程设计--音乐演奏.doc
微机原理课程设计--音乐演奏 学 院: 计算机科学技术 专 业: 计算机科学与技术(工) 班 级: 计10-1班 姓 名: 学 号: 指导教师: 2013年3月10日 微机原理与汇编语言课程设计任务书 ...
- 计算机绘图千斤顶,AUTO CAD课程设计实验报告.doc
文档介绍: AUTO CAD课程设计实****报告 全套CAD图纸,联系695132052 一.课程设计的目的 综合运用<工程图学>.<计算机绘图>等课程和其他先修课程的知识和 ...
- java-php-python-ssm计算机网络精品课程网站计算机毕业设计
java-php-python-ssm计算机网络精品课程网站计算机毕业设计 java-php-python-ssm计算机网络精品课程网站计算机毕业设计 本源码技术栈: 项目架构:B/S架构 开发语言: ...
- java-php-python-ssm早教课程管理系统计算机毕业设计
java-php-python-ssm早教课程管理系统计算机毕业设计 java-php-python-ssm早教课程管理系统计算机毕业设计 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 ...
- 制作计算机课程的ppt,计算机音乐制作课件复习课程.ppt
计算机音乐制作课件复习课程.ppt 计算机音乐制作;在这里,借用欧美音乐教育体系中的模块化教学思维来进行讲解,即将节奏声部划分为各种样式模块,每个模块都有其一系列的构成规则.在这些规则中,包含了和声学 ...
- 课程设计 计算机公共基础,基于混合教学模式计算机公共基础课的SPOC设计与开发...
1. 引言 随着现代信息技术和教育技术的不断进步,高等教育教学模式不断推陈出新.MOOC (Massive Open Online Course),指大型开放式网络课程,近年来作为在线教育学习的初始形 ...
- 计算机实用知识技能,《计算机实用知识技能》课程论文.docx
. <计算机实用知识技能>课程论文 计算机的发展史与未来计算机 院系名称机械与电信工程学院 姓名赵亚文 学号141608060214 专业电子信息工程 . . 2017 年 5 月 20 ...
最新文章
- 基于MVC4+EasyUI的Web开发框架经验总结(8)--实现Office文档的预览
- 【Windows 逆向】使用 CE 工具挖掘关键数据内存真实地址 ( 逐层分析分析 静态地址 到 动态地址 的寻址 + 偏移 过程 ) ★
- Linux命令【一】基本命令
- abaqus推荐用哪一版本的_ABAQUS推荐资料合集(一)
- 什么图用什么工具画?
- R语言之探索性数据分析篇
- Output Arcade for Mac:集合大量 Loop 素材的素材库插件
- 为Macbook添加自己喜欢的英汉辞典
- 详解蓝牙空中升级(BLE OTA)原理与步骤
- 全球及中国毛巾产品市场盈利前景与供需调查分析报告2022版
- Java_多线程_模拟电影院售票
- 转帖自勉:一个猎头的自述
- 用matlab四边形中心,matlab4
- 如何评价范冰新书《增长黑客》?
- 【解决方案】windows系统部分软件变日文
- 五一假期维修手机感想
- Qualcomm 音频学习一
- 求n以内的最大素数 ← C++
- Jmeter分布式压测介绍、原理及实操(一台master-windows控制机,三台slaves-linux负载机)
- mysql 提升tps_MYSQL的TPS优化
热门文章
- openSUSE 13.1 Nvidia驱动安装
- 详解Android电量优化
- 虚拟跑步刷步软件下载_dvdfab virtual drive win10版|dvdfab virtual drive(虚拟光驱) V1.5.1.1 官方版 下载_当下软件园...
- Wulihub设计文档类在线托管分享平台
- 【PHP版】顺丰下单API 、查询订单API、取消订单API
- 滴滴出行app——网约车出行的背后(上)
- 这份 Alibaba 内部疯传《Java 权威面试指南(阿里版)》堪称精品,面试助你一臂之力,事半功倍
- oracle日文全角变化,日文windows系统 oracle数据库乱码的处理
- Java中List集合的addAll方法的小坑
- 读书:SQL必知必会