三角形交集计算
求助:两三角形相交后的最大三角形之顶点计算(如图)△A 交集 △B = △C
研究了几天始终想不出一套公式可用
因为有太多种状况
首先要先判断△B的顶点是否会位于△A内
如果有那是几个顶点位于△A内
如果没有那交集的状况又是如何
画出了几种状况
但就是找不出一个通用的公式可以共享他
不知道是不是我把它给复杂化了
脑袋已经打结了
恳求好心人帮我解开这个结
--------------------编程问答-------------------- --------------------编程问答-------------------- 两个三角形相交不一定是三角形 --------------------编程问答-------------------- 不要求精确的话可以用蒙特卡洛法。 --------------------编程问答-------------------- 在下不才,有以下想法。
1. 一个三角形的每一条边分别于另一个三角形的每一条边找交点。
2. 如果没有焦点或只是边重合,则只有两种情况,不相交或包含。
3. 是否存在一个三角形的顶点在另一个三角形的内部,如果不存在则将交点连以来的区域是交集,否则交点和内部顶点连以来是交集。 --------------------编程问答-------------------- 三角形不是方形,基本的数学概念.两个相交的三角形能够得出无数个包含它们顶点的大三角形.
--------------------编程问答-------------------- 首先我知道三角形相交出来的不会是三角形,也不只一个三角形
但我要求的是最大的三角形
如何找出一个做法是可以通用于任何状况
假设使用者输入△A、△B2的顶点
△A=(Ax1,Ay1)、(Ax2,Ay2)、(Ax3,Ay3)
△B=(Bx1,By1)、(Bx2,By2)、(Bx3,By3)
会自动算出交集的最大三角形△C之顶点
△C=(Cx1,Cy1)、(Cx2,Cy2)、(Cx3,Cy3)
再次感谢各位高手的回复
补充:.NET技术 , VB.NET