C++判断两条线段是否相交
设线段AB的端点为A(x1,y1)和B(x2,y2),线段CD的端点为C(x3,y3)和D(x4,y4),则有:r1=y3(x4-x1)-y1(x4-x3)+(x1-x3...
设线段AB的端点为A(x1,y1)和B(x2,y2),线段CD的端点为C(x3,y3)和D(x4,y4),则有:
r1=y3(x4-x1)-y1(x4-x3)+(x1-x3)(y4-y3)
r2=(y2-y1)(x4-x3)-(x2-x1)(y4-y3)
r=r1/r2
t=(x1-x3+r(x2-x1))/(x4-x3)
感觉是数学没学好,这些公式都什么意思啊?麻烦哪位解释下!!! 展开
r1=y3(x4-x1)-y1(x4-x3)+(x1-x3)(y4-y3)
r2=(y2-y1)(x4-x3)-(x2-x1)(y4-y3)
r=r1/r2
t=(x1-x3+r(x2-x1))/(x4-x3)
感觉是数学没学好,这些公式都什么意思啊?麻烦哪位解释下!!! 展开
3个回答
展开全部
这些式子都对吗,求线段相交,就不是看AB两点是不是在直线CD的两边,CD两点是不是在AB的两边吗,要使在两边,不就是把A、B坐标代入直线CD方程,求出左边的值然后乘起来,小于0就是跨两边,大于0就是同边。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
判断两直线是否相交,你就判断两直线方程是否有公共解
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询