本文主要是介绍计算机图形学(六)多边形裁剪Sutherland-Hodgeman算法讲解与源代码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
因为最近CSDN上传资源出现问题,无法上传,等可以上传之后再给出下载地址。
源码下载:点我下载
首先讲一下算法的原理:
Sutherland-Hodgeman算法:
基本思想是一次用窗口的一条边裁剪多边形。
考虑窗口的一条边以及延长线构成的裁剪线,该线把平面分成两个部分:可见一侧;不可见一侧。
多边形的各条边的两端点S、P。它们与裁剪线的位置关系只有四种,
如图:
S、P与裁剪线的位置关系 对于情况(1)仅输出顶点P;情况(2)输出0个顶点;情况(3)输出线段SP与裁剪线的交点I;情况(4)输出线段SP与裁剪线的交点I和终点P
上述算法仅用一条裁剪边对多边形进行裁剪,得到一个顶点序列,作为下一条裁剪边处理过程的输入。
对于每一条裁剪边,只是判断点在窗口哪一侧改变求线段SP与裁剪边的交点的算法。
算法的实现过程还是比较复杂的。
代码过程:
这篇关于计算机图形学(六)多边形裁剪Sutherland-Hodgeman算法讲解与源代码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!