[運算] 怎算出兩條線有沒有交叉?已回收

看板MATLAB作者 (aa)時間15年前 (2011/02/11 10:20), 編輯推噓2(202)
留言4則, 4人參與, 最新討論串1/7 (看更多)
我有點a,b,c,d座標都已知 a=(ax,ay), b=(bx,by), c=(cx,cy), d=(dx,dy), 這四點都在第一象限,不考慮座標等於零的情況 我要怎麼知道a,b連線(稱作M),與c,d連線(稱作N)有沒有交叉? 畫出來雖然一看就知道,但是我必須自動處理大量類似問題。 懇請賜教 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 128.252.15.81 VVVVii:轉錄至看板 Math 02/11 10:20

02/11 10:55, , 1F
先用三點算斜率範圍 再求另一點造成的斜率是否在範圍內
02/11 10:55, 1F

02/11 14:54, , 2F
M,N都是線段,不延長超過端點。
02/11 14:54, 2F

02/12 11:33, , 3F
很好奇你為什麼有這種需求
02/12 11:33, 3F

02/14 02:57, , 4F
google "Bentley-Ottmann algorithm"
02/14 02:57, 4F
文章代碼(AID): #1DL9pjiq (MATLAB)
討論串 (同標題文章)
以下文章回應了本文 (最舊先):
完整討論串 (本文為第 1 之 7 篇):
文章代碼(AID): #1DL9pjiq (MATLAB)