给定条线段四个坐标
scratch吧
全部回复
仅看楼主
level 12
北泽-咲🍥
楼主
给定条线段四个坐标,如何判断两线段是否有交点?
(尽量少的逻辑判断)
2022年11月08日 13点11分
1
吧务
level 15
遧傂鼝
跨立实验
由于线段相交的充要条件是线段1(2)两端点位于线段2(1)两侧,可以使用向量叉乘来判断这一点。
设线段1端点A(x1,y1)、B(x2,y2);线段2端点C(x3,y3)、D(x4,y4)
对于线段1,向量AB和向量AC的外积与向量AB和向量AD的外积同号可以说明AC、AD分别位于AB(线段1)两侧,进一步说明C,D位于线段1两侧。
对线段2重复以上操作,若仍同号,则线段1、2相交
2022年11月08日 13点11分
2
1