计算机图形学课程设计题目,计算机图形学课程设计报告-20210707023153.pdf-原创力文档...

计算机图形学

课程设计报告

题 目: 三维线段的端点编码裁剪及显示

专业班级: 信计 1101班

时 间: 2014 年 1 月 2 日

计算机图形学课程设计报告

一、所选题目

三维线段的端点编码裁剪算法及显示

二、题目要求

对于三维线段,裁剪体为长方体,应用端点编码裁剪算法对线段进行裁剪,

做 XOY 平面的平行投影,要求分别绘制裁剪体、带裁剪线段和裁剪后线段。

三、小组成员及具体分工

薛小娜(组长):算法设计,编译

杨 益:算法分析

张龙娟:完善程序

程军强:报告总结

四、任务分析

本题主要包括两个任务:

(1)长方体及三维线段的显示流程; (2)三维线段的端点编码裁剪算法。

任务( 1)中,包括长方体的定义:三维点结构(齐次坐标,结构中应有

x, y, z, w 分量);面结构,其实为面的外环,即构成该面的顶点序列(逆时针顺

序);三维线段的两个端点;三维几何变换;平行投影变换;窗口 -视区变换;

任务( 2)中,长方体的六个边界定义,三维点的端点编码,三维线段端点

编码裁剪算法

五、核心算法描述

1.裁剪矩形的实现

对于裁剪矩形,可在头文件里定义三维点齐次结构 HOMOCOORD ,三维齐

次结构中有 x,y,z,w 四个分量,分别对应矩形的八个顶点的三维坐标 x,y,z 及其次

坐标 w=1 。定义面结构 PLANE ,面结构中包含该面的四个顶点(逆时针顺序) 。

通过这两个结构可以将实现裁剪矩形顶点的保存。

再定义 PLANE 结构,该结构包含 x,y ,分别用来存储三维坐标转换为二维

坐标后的顶点信息。

2.三维直线的端点编码裁剪算法

⑴ 编码规则:

根据直线的任一端点 P(x,y,z)相对于窗口的位置,可以赋予一组 6 位二进制

区域编码 RC=C C C C C C ,从右到左依次代表左,右,下,上,后,前。

6 5 4 3 2 1

为了保证窗口内直线线段端点编码 RC 的 6 位二进制区域码全部为零, 每位

二进制区域编码编码规则如下:

第一位 C :若端点位于窗口之后侧,则 C =1,否则 C =0;

1 1 1

第一位 C :若端点位于窗口之前侧,则 C =1,否则 C =0 ;

2 2 2

第一位 C :若端点位于窗口之左侧,则 C =1,否则 C =0 ;

3 3 3

第一位 C4 :若端点位于窗口之右侧,则 C4 =1,否则 C4 =0 ;

第一位 C :若端点位于窗口之下侧,则 C =1,否则 C =0 ;

5 5 5

第一位 C :若端点位于窗口之上侧,则 C =1,否则 C =0 ;

6 6 6

⑵裁剪算法:

① 首先需要计算三维直线的俩个端点的编码;并且假设初始化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值