【笔记】 如何求直线交点(详细揭秘) 计算几何


这是一篇灌水博客。

定义一条射线有一个起始位置 \(\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