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

看板MATLAB作者 (橋)時間15年前 (2011/02/11 21:21), 編輯推噓2(201)
留言3則, 3人參與, 最新討論串2/7 (看更多)
這個問題我之前遇過 後來自己想了一個方法 用三角形的面積判斷 假設AB連 CD連 那 三角形ABC+三角形ABD > 三角形ACD 則表示有相交 反之 三角形ABC+三角形ABD < 三角形ACD 則表示沒有相交 若等於的話表示 剛好碰到 這方法自認為還算單純 ※ 引述《VVVVii (aa)》之銘言: : 我有點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: 220.132.151.18

02/11 21:23, , 1F
巧妙推!
02/11 21:23, 1F

02/11 21:30, , 2F
好像要拿長的當AB才不會有意外
02/11 21:30, 2F

02/12 03:06, , 3F
B--A | 上C下D 這樣也會錯...(如果我沒搞錯的話)
02/12 03:06, 3F
文章代碼(AID): #1DLJVeIa (MATLAB)
討論串 (同標題文章)
文章代碼(AID): #1DLJVeIa (MATLAB)