- 1、本文档共45页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
typedef struct{ float x,y; }Vertex; typedef Vertex Edge[2]; typedef Vertex Vertexarray[MAX];/*MAX允许的多边形最大顶点个数 void Intersect(Vertex *s, Vertex *p, Edge clipBoundary, Vertex *I) { if(clipBoundary[0].y==clipBoundary[1].y)//表示水平裁剪窗边 { I-y=clipBoundary[0].y; I-x=s-x+(clipBoundary[0].y-s-y)*(p-x-s-x)/(p-y-s-y); } else //表示垂直裁剪窗边 { I-x=clipboundary[0].x; I-y=s-y+(clipBoundary[0].x-s-x)*(p-y-s-y)/(p-x-s-x); } } 算法程序 算法程序 boolean Inside (Vertex * textVertex, Edge clipBoundary) { if(clipBoundary[1].xclipBoundary[0].x) //裁剪边为窗口下边 { if(testVertex-y=clipBoundary[0].y) return TRUE ; } else if( clipBoundary[1].x clipBoundary[0].x) //裁剪边为窗口上边 { if( testVertex-y = clipBoundary[0].y) return TRUE ; } else if(clipBoundary[1].y clipBoundary[0].y) //裁剪边为窗口右边 { if(testVertex-x = clipBoundary[0].x) return TRUE ; } else if(clipBoundary[1].y clipBoundary[0].y) //裁剪边为窗口左边 { if(testVertex-x = clipBoundary[0].x) return TRUE ; } return FALSE ; } void Output(Vertex *newVertex, int *outLength, VertexArray outVertexArray) { outVertexArray [* outLength].x = newVertex-x ; outVertexArray [* outLength].y = newVertex-y ; (*outLength)++ ; } 下面程序中,inVertexarray输入多边形项点数组;outVertexArray输出多边形顶点数组;clipBoundary一条裁剪边。 Void SutherlandHodgmanPolygonClip( int inLength, VertexArray inVertexarray, int *outLength, VertexArray outVertexArray, Edge clipBoundary) { vertex *s, *p, i ; int j; *outLength = 0 ; s = (inVertexArray[inLength-1]) ; 算法程序 for( j=0; jinLength; j++) { p = (inVertexArray[j]) ; if( Inside(p, clipBoundary )) { if( Inside( s, clipBoundary))
您可能关注的文档
- 10-《论语》十二章--人教新版七年级语文上册探究.ppt
- 27.乌塔探究.ppt
- 27。乌塔探究.ppt
- 27__乌塔探究.ppt
- 27《蒙娜丽莎之约》探究.ppt
- 10《信客》B探究.ppt
- 27《乌塔》25号探究.ppt
- 27《乌塔》教学探究.ppt
- 27《乌塔》课件探究.ppt
- 27《乌塔》课堂演示探究.ppt
- 新高考生物二轮复习讲练测第6讲 遗传的分子基础(检测) (原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第3讲 酶和ATP(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第9讲 神经调节与体液调节(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第8讲 生物的变异、育种与进化(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(检测)(原卷版).docx
文档评论(0)