《计算机图形学》实验报告《实验名称》直线段裁剪姓名 学号 专业 班级 天津大学计算机科学与技术学院一、实验目得熟练掌握 C o hen—Sutherland 直线裁剪算法,并编程实现二、实验内容(1) 裁剪窗口为矩形窗口,且矩形边与坐标轴平行,长宽自己定。(2) 待裁剪线段端点坐标自己定;裁剪线段涵盖完全可见、不完全可见、完全不可见类型。 (3) 要求显示待裁剪线段并用不同颜色标示出裁剪结果。实现方法:一般情况下,需要推断一条直线就是全部可见,全部不可见,部分裁剪(一段裁剪),全部裁剪(两端裁剪).通过把裁剪区域分成许多部分,然后给每一段被裁剪得线段得两端分配一位代码,通过少量if语句与一个case语句就可以推断出具体情况。伪代码如下:#define CL IP_CODE_C ﻩ0 x 0000#d e fine CLIP_C O DE_N ﻩ0 x0 008#defi ne CLIP_CO D E_S 0x0004#de f ine CLIP_CO D E_E 0 x0 0 02#defin e CLI P_CODE_W 0x0 0 01#d e fine CLI P_C OD E_N E ﻩ0 x000a#d e f i n e C LIP_CODE_SE ﻩ0 x000 6#d e f i ne C L I P_C ODE_NW ﻩ0 x0 009#define C LI P_CODE_S W ﻩ0 x000 5实验步骤:1)生成裁剪窗口,窗口由直线 xl=250,xr=8 5 0,yb=250,yt=4502)绘制直线段3)编写 Cohen—S u the r la n d 直线裁剪算法,对直线段进行裁剪编码定义规则:第一位 C1:若端点位于窗口之左侧,即 X