![](https://img-blog.csdnimg.cn/20190918140053667.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数学/图像图形学学习
文章平均质量分 61
数学/图像图形学学习
诺谦
热爱生活 活在当下
展开
-
3.qt-图解Weiler-Atherton任意多边形剪裁算法
Weiler-Atherton剪裁算法是一个适用于凸的、凹的和带孔的多边形的裁剪算法。裁剪窗口可以是矩形、任意凸多边形、任意凹多边形。与 Sutherland – Hodgman 多边形裁剪算法不同,该算法能够裁剪凹多边形而不会留下任何残留物。需要注意的是保证两个多边形的端点是顺时针的.当然也可以通过函数进行判断一下,从而进行反转:2.算法图解-简单示例1找到所有交点,下图所示:通过规律可以看出如果主多边形与裁剪多边形有交点,交点成对出现,然后我们可以将相交点规定为进点和出点(enter和ex原创 2022-08-20 01:28:44 · 2298 阅读 · 0 评论 -
2.qt-Cyrus-Beck算法(凸多边形的线裁剪算法-C++实现)
该算法比Cohen-Sutherland算法复杂不少, 它允许对非矩形窗口进行线剪裁。它还消除了Cohen-Sutherland算法中所需的重复计算。4.计算剪裁线向量与所有边缘的法线之间的点积,为正则为入点、否则为出点。3.计算每个边顶点与剪切线的向量与边的法线之间的点积(对于所有边)。5.从每组中选择一个't'值,并将其放入线的参数形式中以计算坐标。1.计算每条边的法线。2.计算剪裁线的向量。原创 2022-08-19 21:24:54 · 1743 阅读 · 2 评论 -
1.图形学-矩形中的线段的裁剪Cohen-Sutherland算法(附带源码)
0 且 code1 & cpde2 = 0,得出线段与界面相交, 则在交点处把线段分为两段。由于G和H在窗口外且与窗口有相交,所以不满足(1)或(2)的条件,然后将交点a处把线段分为两段: Ga、aH、由于Ga在窗口外,则重复执行aH线段处理、直到得出最后为ab线段。(3)若线段不满足(1)或(2)的条件,则在交点处把线段分为两段。(2)若P1,P2在窗口外且无交点,则丢弃该线段。线段的p1(x1,y1)和p2(x2,y2)满足以下要求之一。(1) 若P1,P2完全在窗口内,则显示该线段。原创 2022-08-19 17:16:15 · 2804 阅读 · 0 评论 -
1.余弦定理、两角和公式公式复习
余弦定理复习c^2 = a^2 + b^2 * 2*a*b*两个夹角的cos角度即:推导图如下所示:两角和公式复习参考两角和公式_百度百科公式如下所示:推导图如下所示:根据余弦定理得到(1):然后根据勾股定理得到:所以:然后其实就是勾股定理,就是等于OA^2,由于OA长度为1,所以为1.同理得出也为1.所以得出(2):根据(1)(2)得出:...原创 2022-03-21 01:31:55 · 480 阅读 · 0 评论