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

这是一篇灌水博客。

定义一条射线有一个起始位置 p 和一个方向向量 d,记作 <p,d>

一条直线就可以表示为这条射线所在的直线。

一条线段也可以用这个形式表示。

一个半平面就可以表示为这条有向直线的左侧平面。

那么如何判断两条直线的交点呢?

例题一、给定两直线 <p1,d1>,<p2,d2>,求出它们的交点坐标。

一个直观而又显而易见的做法是解直线方程——但这太麻烦了。除过来除过去还要特判分母是不是 0

当初向计算几何引入向量就是为了避免这些麻烦的,我们不妨用向量来做。

设两直线分别过 ABCD,如图所示:

由于交点 E 在直线 CD 上,根据高中数学可以知道,OE=kOC+(1k)OD

其中 k:1k=|EC|:|ED|

显然 |EC|:|ED| 可以看成 SABD:SABC,于是就做完了。

posted @   Imakf  阅读(4756)  评论(3编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话
点击右上角即可分享
微信分享提示