计算机图形学计算题目参考答案_精品文档文档格式.doc

上传人:b****1 文档编号:13152019 上传时间:2022-10-06 格式:DOC 页数:12 大小:302.50KB
下载 相关 举报
计算机图形学计算题目参考答案_精品文档文档格式.doc_第1页
第1页 / 共12页
计算机图形学计算题目参考答案_精品文档文档格式.doc_第2页
第2页 / 共12页
计算机图形学计算题目参考答案_精品文档文档格式.doc_第3页
第3页 / 共12页
计算机图形学计算题目参考答案_精品文档文档格式.doc_第4页
第4页 / 共12页
计算机图形学计算题目参考答案_精品文档文档格式.doc_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

计算机图形学计算题目参考答案_精品文档文档格式.doc

《计算机图形学计算题目参考答案_精品文档文档格式.doc》由会员分享,可在线阅读,更多相关《计算机图形学计算题目参考答案_精品文档文档格式.doc(12页珍藏版)》请在冰豆网上搜索。

计算机图形学计算题目参考答案_精品文档文档格式.doc

3.已知空间中一条线段的两个顶点为d1(5.0f,3.0f,-2.0f)d2(6.0f,4.0f,-2.0f)计算出其绕(y=3,z=0)的轴旋转90°

后再缩小0.5倍后的新的线段的两个顶点坐标,要求写出每一个计算后得到的新矩阵。

平移矩阵= 缩放矩阵=

旋转矩阵绕x轴=绕y轴=

绕z轴=

缩小0.5矩阵A=沿Y轴平移3矩阵B=

绕X旋转90度矩阵C=沿Y轴平移-3矩阵D=

上面每个矩阵1分

AxB=AxBxC=

M=AxBxCxD=(乘的顺序正确2分,结果正确2分)

d1转换后=Mxd1=(2.5f,2.5f,0.0f)

d2转换后=Mxd2=(3.0f,2.5f,0.5f)(公式正确1分,结果正确1分)

4.分别使用数值微分法(DDA算法)、中点画线法和Bresenham算法计算出P0(1,1)和P1(3,6)之间扫描过的点。

中点画线法

Bresenham算法

数值微分法(DDA算法)

斜率由于斜率大于1增量

(2分)

y

int(x+0.5)

x+0.5

1

2

1.4+0.5

3

1.8+0.5

4

2.2+0.5

5

2.6+0.5

6

3.0+0.5

(标题正确2分,下面每行1分)

中点画线法

斜率由于斜率大于1

(2分)

x

d

2*a

-3

2*(a+b)

-1

(标题没分,写公式占4分错1个扣1分,错1个值扣1分最多扣4分;

没写公式错1个值扣1分扣满8分)

Bresenham算法

斜率由于斜率大于1

e

-5

5.使用中点画圆算法计算出以点(4,6)为圆心,半径为8的圆的1/8圆弧点坐标。

中点画圆法

x+4

y+6

8

-7

2x+3

14

-4

2(x-y)+5

7

-6

13

9

12

(标题没分,写公式占5分错1个扣1分,错1个值扣1分最多扣5分;

没写公式错1个值扣1分扣满10分)

6.使用Bresenham椭圆算法计算出以点(3,5)为圆心,半径a=7,b=4的椭圆的1/4圆弧点的坐标。

e<

0时

e>

=0时

x+3

y+5

-327

-311

-279

-215

-199

-55

-87

169

-188

-131

-12

221

49

-110

240

10

289

338

7.已知如下多边形,使用扫描线算法求出该多边形的活化边表。

(结果保存小数点后1位)

扫描线:

Y=1:

->

Y=2:

Y=3:

Y=4:

Y=5:

错一个节点扣1分,顺序写错每个节点扣0.5分,扫描线顺序也可以从5-1

8.已知种子填充四连通递归算法函数如下:

voidfloodfill4(intx,inty,CColoroldColor,CColornewColor)

{

CClientDCdc(this);

if(dc.GetPixel()==oldColor)

{

dc.SetPixel(x,y,newColor);

floodfill4(x-1,y,oldColor,newColor);

floodfill4(x+1,y,oldColor,newColor);

floodfill4(x,y+1,oldColor,newColor);

floodfill4(x,y-1,oldColor,newColor);

}

根据以上函数写出以下图形区域填充算法的过程:

为边界,为起始点

 

102

101

77

78

79

80

81

99

100

76

75

84

83

82

98

97

96

74

73

85

86

72

71

87

21

70

69

11

20

19

18

68

15

16

17

67

24

23

22

66

25

26

27

65

30

29

28

64

31

32

33

62

63

36

35

34

61

60

59

37

38

39

55

56

57

58

42

41

40

54

53

52

51

43

44

45

46

47

48

50

95

94

93

92

91

90

89

88

每10个序号1分,中间一个点序号写错后面所有序号都不得分

9.已知直线段的两点(-200,-100)和(700,600)分别使用Cohen-Sutherland和梁友栋-BarSky算法计算对于区域(0,0,500,600)裁剪后的直线段,要求写出计算过程。

Cohen-Sutherland算法给定公式:

左交点:

右交点:

下交点:

上交点:

裁剪顺序为上下右左,区域编码如下:

1001

1000

0001

0101

0000

0100

1010

0010

0110

令x1=-200y1=-100x2=700y2=600

(x1,y1)点的code1=0101(x2,y2)点的code2=0010(1分)

∵(code1!

=0||code2!

=0)&

&

code1&

code2==0

∴进行裁剪

上边code1&

1000=0不裁剪cdoe2&

1000=0不裁剪(1分)

下边code1&

0100!

=0进行裁剪

y1=0,x1=≈-71

(x1,y1)点的code1=0001

code2&

0100=0不裁剪(2分)

右边code1&

0010=0不裁剪

0010!

x2=500,y2=≈444

(x2,y2)点的code2=0000(2分)

左边code1&

0001!

x1=0,y2=≈56

(x1,y1)点的code1=0000(2分)

裁剪后的线段为(0,56)(500,444)

梁友栋-BarSky算法给定公式:

令x1=-200y1=-100x2=700y2=600u1=0,u2=1(1分)

p1=-900q1=-200u=2/9∵p1<

0u>

u1成立∴u1=2/9u2=1(2分)

p2=900q2=700u=7/9∵p2>

0u<

u2成立∴u1=2/9u2=7/9(2分)

p3=-700q3=-100u=1/9∵p3<

u1不成立∴u1=2/9u2=7/9(2分)

p4=700q4=700u=1∵p4>

u2不成立∴u1=2/9u2=7/9(2分)

裁剪后的点为(x1+u1(x2-x1),y1+u1(y2-y1))≈(0,56)

(x1+u2(x2-x1),y1+u2(y2-y1))≈(500,444)(1分)

10.已知如下多边形进行区域裁剪,若安装p1-p6顺序遍历多边形的各条边,按顺序写出该多边形裁剪的处理线段及保留的顶点。

处理线段P1P2

输出AB(1分)

处理线段P2P3

输出CP3(1分)

处理线段P3P4

输出D(2分)

处理线段P4P5

输出EP5(1分)

处理线段P5P6

输出F(2分)

处理线段P6P7

输出GP7(1分)

处理线段P7P1

输出H(2分)

11.已知空间中一点

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 成考

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1