当前位置: 首页 > news >正文

解析几何笔记

记号约定:

  • \(\displaystyle {x \brack y}\):向量 \((x, y)\)

1. 直线

一些定义:

  • 方向向量:与直线 \(l\) 平行的向量。
  • 倾斜角:直线 \(l\)\(y\) 轴正方向同向的方向向量,与 \(x\) 轴正方向的夹角。
    • 形式化的,设直线 \(l\) 的方向向量 \(\bold{v}\) 满足 \(\displaystyle \bold{v} \cdot {0 \brack 1} \ge 0\),则 \(l\)倾斜角\(\bold{v}\)\(\displaystyle {1 \brack 0}\) 的夹角。

一些约定:

  • 直线 \(l_1\)\(l_2\) 重合也算做 \(l_1 \parallel l_2\)

1.1 表示方法

1.1.1 斜截式

可以用 \(l : y = kx + b\) 表示一个直线,其中 \(k\) 为该直线的斜率\(b\)截距

容易发现,这种形式不能表示形如 \(x = c\) 的直线,因为此时没有对应的 \(k\)

考虑 \(k\) 的几何意义。我们发现,当 \(x\) 增大 \(h\) 时,\(y\) 增大 \(kh\)。设 \(l\) 的倾斜角为 \(\theta\),画图可得 \(k = \tan(\theta)\)

1.1.2 点斜式

如果已知 \(l\) 的斜率 \(k\),和 \(l\) 上一点 \((x_0, y_0)\),则 \(l : y = kx + (y_0 - kx_0)\)

移项得 \(y - y_0 = k(x - x_0)\)。不要写成 \(\dfrac{y - y_0}{x - x_0} = k\),因为这样会缩小定义域。

容易发现,这种形式不能表示形如 \(x = c\) 的直线,因为此时没有对应的 \(k\)。其实所有用到斜率的表示方法都有这个问题。

1.1.3 两点式

如果已知 \(l\) 上两点 \((x_1, y_1) \neq (x_2, y_2)\),则 \(l : (x_2 - x_1)(y - y_1) = (y_2 - y_1)(x - x_1)\)

其实就是 \((x, y)\)\((x_1, y_1)\) 的斜率和 \((x_2, y_2)\)\((x_1, y_1)\) 的斜率相等。或着也可以想成 \(\displaystyle {x - x_1 \brack y - y_1} = \lambda {x_2 - x_1 \brack y_2 - y_1}\)

有一个特例,如果已知 \(l\) 上两点 \((0, y_0), (x_0, 0)\),则 \(l : x_0 y + y_0 x - x_0 y_0 = 0\)

1.1.4 一般式

这玩意儿用处不大。

可以用 \(ax + by + c = 0\) 描述一个直线(\(a, b\) 不同时为 \(0\)),容易发现该直线的斜率为 \(-\dfrac{a}{b}\)

因为 \(x\) 增加 \(b\) 会让 \(y\) 增加 \(-a\),所以这个直线的方向向量为 \(\displaystyle {b \brack -a}\)\(\displaystyle {-b \brack a}\)

那么这个直线的法向量为 \(\displaystyle {a \brack b}\)\(\displaystyle {-a \brack -b}\)。方法也很简单,把 \(y\) 坐标取相反数后,再和 \(x\) 坐标交换。

证明:复数 \(z\) 逆时针旋转 \(90 \degree\) 后为 \(z {\rm i}\)

\(a + b {\rm i}\) 逆时针旋转 \(90 \degree\) 后为 \((a + b {\rm i}) {\rm i} = -b + a {\rm i}\)

\(\displaystyle {a \brack b}\) 逆时针旋转 \(90 \degree\) 后为 \(\displaystyle {-b \brack a}\)\(\square\)

1.1.5 参数式

如果已知 \(l\) 的倾斜角 \(\theta\)\(l\) 上一点 \((x_0, y_0)\),则:

\[l : \begin{cases}x = x_0 + t \cos(\theta) \\y = y_0 + t \sin(\theta) \end{cases} \]

:在这个式子中把 \(t\)\(\theta\) 交换,就可以得到圆的参数式。直线的是固定角度,圆的是固定长度。

1.2 位置关系

\(l_1 : a_1 x + b_1 y + c_1 = 0\)\(l_2 : a_2 x + b_2 y + c_2 = 0\)

垂直关系

注意到,\(l_1 \perp l_2\) 等价于它们的法向量垂直,即 \(\displaystyle {a_1 \brack b_1} \cdot {a_2 \brack b_2} = 0\),即 \(a_1 a_2 + b_1 b_2 = 0\)。移项可得 \(\left( -\dfrac{a_1}{b_1} \right) \left( -\dfrac{a_2}{b_2} \right) = -1\),即 \(k_{l_1} k_{l_2} = -1\)

平行关系

然后是平行。我们照葫芦画瓢,把 \(l_1 \parallel l_2\) 转换成它们的法向量平行。发现这样并不好做,因为没有简单的确定的条件。

既然几何法走不通,那就考虑代数法。注意到,\(l_1 \parallel l_2\) 等价于方程组 \(a_1 x + b_1 y + c_1 = 0, a_2 x + b_2 y + c_2 = 0\) 无解或有无穷组解。容易发现,充要条件为 \(a_1 b_2 = a_2 b_1\)

移项得 \(a_1 b_2 - a_2 b_1 = 0\),这个形式好熟悉啊。于是我们可以感知出几何法所需要的“简单的确定的条件”:两个法向量围成的三角形面积为 \(0\),即 \(\displaystyle {a_1 \brack b_1} \times {a_2 \brack b_2} = 0\),即 \(a_1 b_2 - a_2 b_1 = 0\)

所以说,共线可以考虑三角形的面积 \(= 0\),垂直可以考虑两向量点乘 \(= 0\)

一般关系

先搞清楚一般在哪?观察前面两个特例,我们发现夹角在改变,所以这里我们探究 \(l_1, l_2\) 的夹角 \(\theta\)\(l_1, l_2\) 的关系。这里令 \(\theta \in [0, \pi / 2]\)

接着用法向量。我们发现,如果选择 \(l_1, l_2\) 合适的法向量 \(\bold{u}, \bold{v}\),则 \(\bold{u}, \bold{v}\) 的夹角 \(= \theta\)

由于我们也不知道什么向量合适,所以先令 \(\displaystyle \bold{u} = {a_1 \brack b_1}, \bold{v} = {a_2 \brack b_2}\)。此时:

\[\cos \langle \bold{u}, \bold{v} \rangle = \dfrac{\bold{u} \cdot \bold{v}}{|\bold{u}| |\bold{v}|} = \dfrac{a_1 a_2 + b_1 b_2}{\sqrt{(a_1^2 + b_1^2)(a_2^2 + b_2^2)}} \]

接下来调整一下结果。因为 \(\cos(\pi - x) = -\cos(x)\),所以:

\[\cos(\theta) = \lvert \cos \langle \bold{u}, \bold{v} \rangle \rvert = \dfrac{|a_1 a_2 + b_1 b_2|}{\sqrt{(a_1^2 + b_1^2)(a_2^2 + b_2^2)}} \]

1.3 数量关系

1.3.1 点与直线

点与直线之间的数量关系也只有距离了。设点 \(A(x_0, y_0)\)\(l : y = kx + b\),我们想求 \(A\)\(l\) 的距离 \(d\)

肯定要做过 \(A\) 的垂线。设 \(l \perp l_{\perp}\)\(B\),且 \(l_{\perp}\)\(A\),则 \(l_{\perp} : y = -\dfrac{1}{k} x + \left( y_0 + \dfrac{x_0}{k} \right)\)。那么 \(B = \left( -\dfrac{bk - k y_0 - x_0}{k^2 + 1}, \dfrac{b + k^2 y_0 + k x_0}{k^2 + 1} \right)\)

那么 \(AB = \sqrt{(x_A - x_B)^2 + (y_A - y_B)^2} = \dfrac{|k x_0 - y_0 + b|}{\sqrt{k^2 + 1}}\)

1.3.2 直线与直线

从距离开始。如果想求 \(l_1, l_2\) 的距离(\(l_1 \parallel l_2\)),那么只需在 \(l_1\) 上取一点,然后使用 1.3.1 的公式即可。

http://www.wxhsa.cn/company.asp?id=3561

相关文章:

  • 基于SOA海鸥优化算法的PID控制器最优控制参数计算matlab仿真
  • 详细介绍:boost::circular_buffer的使用方法简介
  • 基于禁忌搜索算法的TSP问题最优路径搜索matlab仿真
  • PDD9.14 笔试 - 浪矢
  • 增肌,减脂,变瘦的联系和区别
  • (eval):1: _python-argcomplete: function definition file not found
  • 详细介绍:【Spring Boot 报错已解决】Web server failed to start. Port 8080 was already in use.
  • Nordic Neuton.AI 技术优势;
  • channel Sounding 工作流程
  • 基于Zhang-Suen算法的图像细化处理FPGA实现,包含testbench和matlab验证程序
  • channel Sounding RTT和PBR 属性总结
  • 二分查找方法
  • 复制一个数组的方法
  • 判断目标是否在数组里面
  • 选择排序方法
  • ArcGIS Pro 遇到严重的应用程序错误而无法启动 - 教程
  • 第一次作业
  • markdown文件上传到博客园教程
  • 【展厅多媒体】从技术到体验,AR在展厅中的一体化整合 - 指南
  • LilCTF 2025
  • AES算法原理与举例说明
  • ffplay音频重采样 - 教程
  • devexpress gridcontrol表格知识
  • 深入解析:Qt串口通信学习
  • 字符串算法笔记
  • 【光照】Unity[经验模型]和[物理模型]
  • 实用指南:浅聊一下Redisson分布式锁
  • JavaScript起源
  • 9.14做题随记
  • 树-学习笔记