用c语言计算正四棱锥的体积,《计算机图形学》习题与解答.doc

《计算机图形学》习题与解答

《计算机图形学》习题与解答1. 试描述所熟悉的计算机图形系统的硬软件环境。计算机图形系统是计算机硬件、图形输入输出设备、计算机系统软件和图形软件的集合。例如:计算机硬件采用PC、操作系统采用windows2000,图形输入设备有键盘、鼠标、光笔、触摸屏等,图形输出设备有CRT、LCD等,安装3D MAX图形软件。

2. 计算机图形系统与一般的计算机系统最主要的差别是什么?

3. 图形硬件设备主要包括哪些?请按类别举出典型的物理设备?图形输入设备:鼠标、光笔、触摸屏和坐标数字化仪,以及图形扫描仪等。图形显示设备:CRT、液晶显示器(LCD)等。图形绘制设备:打印机、绘图仪等。 图形处理器:GPU(图形处理单元)、图形加速卡等等。

4. 为什么要制定图形软件标准?可分为哪两类?为了提高计算机图形软件、计算机图形的应用软件以及相关软件的编程人员在不同计算机和图形设备之间的可移植性。图形软件标准通常是指图形系统及其相关应用系统中各界面之间进行数据传送和通信的接口标准,另外还有供图形应用程序调用的子程序功能及其格式标准。

5. 请列举出当前已成为国际标准的几种图形软件标准,并简述其主要功能。(1)CGI(Computer Graphics Interface),它所提供的主要功能集包括控制功能集、独立于设备的图形对象输出功能集、图段功能集、输入和应答功能集以及产生、修改、检索和显示以像素数据形式存储的光栅功能集。(2)GKS(Graphcis Kernel System),提供了应用程序和图形输入输出设备之间的接口,包括一系列交互和非交互式图形设备的全部图形处理功能。主要功能如下:控制功能、输入输出功能、变换功能、图段功能、询问功能等。

6. 试列举计算机图形学的三个应用实例。(1) CAD/CAM(2) VISC(3) VR.

1. 在图形设备上如何输出一个点?为输出一条任意斜率的直线,一般受到哪些因素影响?若图形设备是光栅图形显示器,光栅图形显示器可以看作是一个像素的矩阵,光栅图形显示器上的点是像素点的集合。 在光栅图形显示器上输出一条任意斜率的直线,主要受到以下因素的影响:(1)光栅图形显示器的分辨率;(2)线宽、线型;(3)直线的扫描转换的算法。

2. 为什么说直线生成算法是二维图形生成技术的基础?

3. 对于Bresenham直线生成算法,如何利用对称性通过判别误差变量同时从直线两端向直线中心画直线?又如何消除可能产生的误差?

4. 在显示屏上产生具有三根针的时针图,并且使它成为一个真正的会走的时针。5. 修正正文中给出的画圆Bresenham算法,使之能产生椭圆。假设椭圆中心在坐标原点,椭圆的长短轴分别是Ra和Rb。以第一象限为例,取(0,Rb)为起点,按顺时针方向生成椭圆。下一象素的取法只有三种可能的选择:

6. 将画圆的Bresenham算法扩大,使之能画一个实心圆。即圆内是一种不同于背景色的灰度。7. 利用画圆(或画椭圆)命令写一个程序能产生馅饼图。输入此程序的数据是馅饼中每个扇型的百分比。每个部分的名称,馅饼图的名称。这些名称应显示在馅饼图外适当位置上。8. 试说明Bresenham直线算法对于下列两种情况仍能用判别变量p的符号正确地选择下一点的坐标值的理由。设当前被选点是(x,y),而实际直线在x+1处的交点不是落在y和y+1之间,而是:(a) 落在y和y-1之间,例如从(0,0)到(7,2)的直线在点(2,1)后的点;(b) 落在y+1和y+2之间。例如从(0,0)到(7,5)的直线在点(2,1)后的点。

bmax=max(yi-kxi) bmin=min(yi-kxi)

影线总数为 n=(bmax- bmin)/ (b

(2)影线与轮廓线求交点

从第一条影线开始,顺次取一条影线,

求出它与轮廓边的交点,方法是判断

该影线的截距是否落在轮廓边所对应

的截距区间内。具体算法步骤如下:

若影线的截距b没有落入当前这条轮廓边

两端点(pi,pi+1)所对应的截距(bi, bi+1)

范围之内,则说明影线与该轮廓边不相

交,则顺次取下一条边。否则,转下一

步求交运算。

交点坐标为

交点排序并绘制影线

将原始交点按x坐标递增顺序排序,然后按奇偶规则连线,绘出分段影线。

奇异点处理

当角点处的两条轮廓边位于影线的两侧时,应该算一个交点。

当角点处的两条轮廓边位于影线的同侧时,最好不计交点,或者算两个交点。

(5) 面向程序实现的算法描述

影线填充算法的步骤如下:

根据填充区域的数据和绘制影线的角度和间距,计算绘制影线的范围和影线的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值