【筆記】 如何求直線交點(詳細揭秘) 計算幾何


這是一篇灌水博客。

定義一條射線有一個起始位置 \(\boldsymbol p\) 和一個方向向量 \(\boldsymbol d\),記作 \(<\boldsymbol p,\boldsymbol d>\)

一條直線就可以表示為這條射線所在的直線。

一條線段也可以用這個形式表示。

一個半平面就可以表示為這條有向直線的左側平面。

那么如何判斷兩條直線的交點呢?

例題一、給定兩直線 \(<\boldsymbol p_1,\boldsymbol d_1>,<\boldsymbol p_2,\boldsymbol d_2>\),求出它們的交點坐標。

一個直觀而又顯而易見的做法是解直線方程——但這太麻煩了。除過來除過去還要特判分母是不是 \(0\)

當初向計算幾何引入向量就是為了避免這些麻煩的,我們不妨用向量來做。

設兩直線分別過 \(AB\)\(CD\),如圖所示:

由於交點 \(E\) 在直線 \(CD\) 上,根據高中數學可以知道,\(\vec {OE}=k \vec{OC}+(1-k) \vec{OD}\)

其中 \(k:1-k=|EC|:|ED|\)

顯然 \(|EC|:|ED|\) 可以看成 \(S_{\triangle ABD}:S_{\triangle ABC}\),於是就做完了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM