使用符号工具箱,容易导出用于两个边的闭合表格参数解决方案:
信谊XA XB XC XD YA YB YC YD S T
equ1 = (xa; ya) + s * [xb-xa; yb-ya];从[xa,ya]到[xb,yb]
equ2 = (xc; yc) + t * [xd-xc; yd-yc];从[xc,yc]到[xd,yd]的%边缘
索尔=解决(equ1 = = equ2 (s, t));
s = vectorize (sol.s)
t = vectorize (sol.t)
如您所见,这些表达式是非常可向量化的。如果你收集向量xa ya xb yb等等。对于顶点坐标,您可以在一个语句中计算所有边交点的s和t。当然,一个解(s,t)只对应于一个物理交集,如果
,所以你将不得不做一些后处理,放弃非物理解决方案。金宝搏官方网站但这一步也是明显可向量化的。