• 大小: 0.21M
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-03-27
  • 语言: 其他
  • 标签: 其他  

资源简介


实验四 编程实现Cohen-Sutherland线段裁剪算法或者Sutherland-Hodgman多边形裁剪算法 对各种情况进行测试,验证算法实现的完整性

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 

using namespace std;

struct Point
{
    double xy;
    int code;
} firstPolygon[4]p1[8]p2[8]p3[8]p4[8]polygon[4];

int firstnum=4p1n=0p2n=0p3n=0p4n=0;
double xminxmaxyminymax;

//编码
int encode(double xdouble y)
{
    //  0  0  0  0
    // 上 下 右 左
    int code=0;
    if(x        code+=1;
    if(x>polygon[2].x)//xmax
        code+=2;
    if(y        code+=4;
    if(y>polygon[2].y)//ymax
        code+=8;
    return code;
}

void init()
{
    glClearColor(0000.0);//清除当前所有颜色
    glMatrixMode(GL_PROJECTION);//投影模型
    gluOrtho2D(05000500);//二维投影,参数越大,直线越小
    polygon[0].x=200polygon[0].y=200;//裁剪窗口
    polygon[1].x=300polygon[1].y=200;
    polygon[2].x=300polygon[2].y=300;
    polygon[3].x=200polygon[3].y=300;
    xmin=polygon[0].xymin=polygon[0].y;
    xmax=polygon[2].xymax=polygon[2].y;
    firstPoly

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     979283  2014-12-18 16:58  Sutherland_Hodgman\bin\Debug\Sutherland_Hodgman.exe

     文件       6783  2014-12-18 16:58  Sutherland_Hodgman\main.cpp

     文件      23059  2014-12-18 16:58  Sutherland_Hodgman\obj\Debug\main.o

     文件       1552  2014-12-18 15:40  Sutherland_Hodgman\Sutherland_Hodgman.cbp

     文件       5731  2014-12-18 16:32  Sutherland_Hodgman\Sutherland_Hodgman.depend

     文件        667  2014-12-18 16:59  Sutherland_Hodgman\Sutherland_Hodgman.layout

     目录          0  2014-12-20 12:50  Sutherland_Hodgman\bin\Debug

     目录          0  2014-12-20 12:50  Sutherland_Hodgman\obj\Debug

     目录          0  2014-12-20 12:50  Sutherland_Hodgman\bin

     目录          0  2014-12-20 12:50  Sutherland_Hodgman\obj

     目录          0  2014-12-20 12:50  Sutherland_Hodgman

----------- ---------  ---------- -----  ----

              1017075                    11


评论

共有 条评论