本章在直角坐标系下研究平面上的二次曲线与空间中的二次曲面. 没有特别说明, 本章中的坐标系均为直角坐标系.

圆的相关方程

约定 `P = (x,y)`, `P_i = (x_i,y_i)`, `f_i(P) = x^2+y^2+D_i x + E_i y + F_i`, `i = 0,1,2,3`. 圆记为 `C`.

条件 方程
参数方程 `|P_0 P| = r` `{x = x_0 + r cos theta; y = y_0 + r sin theta :}`, `theta in [0,2pi)`
标准方程 `|P_0 P| = r` `(x-x_0)^2 + (y-y_0)^2 = r^2`
一般方程 `D^2+E^2 gt 4 F` `x^2 + y^2 + D x + E y + F = 0`
直径式 `vec(P P_1) * vec(P P_2) = 0` `(x-x_1)(x-x_2)` `+ (y-y_1)(y-y_2) = 0`
不共线三点 不共线的三点 `P_i in C`, `i = 1,2,3` `| x^2+y^2 , x , y , 1; x_1^2+y_1^2 , x_1 , y_1 , 1; x_2^2+y_2^2 , x_2 , y_2 , 1; x_3^2+y_3^2 , x_3 , y_3 , 1; | = 0`
两圆公共弦 两圆 `f_i(P) = 0`, `i = 1, 2` `f_1(P) - f_2(P) = 0`
恒过圆与直线交点 圆 `f(P) = 0`, 直线 `g(P) = 0` `f(P) + lambda g(P) = 0`
恒过两圆交点 两圆 `f_i(P) = 0`, `i = 1,2` `lambda f_1(P) + mu f_2(P) = 0`, `lambda, mu` 不同时为零
到两定点距离之比为定值 两定点 `P_i`, `i = 1,2`, 定值 `lambda gt 0`, `lambda != 1` `(x-x_1)^2 + (y-y_1)^2` `= lambda^2[(x-x_2)^2+(y-y_2)^2]`

点/直线与圆的位置关系

记圆的方程为 `f(P) = (x-x_0)^2+(y-y_0)^2 - r^2 = 0`, 圆心为 `P_0(x_0,y_0)`, 又设 `P_1` 为平面上一点, 则 `f(P_1) = |P_0 P_1|^2 - r^2`. 特别当 `P_1` 在圆外时, `f(P_0)` 等于切线长的平方.

圆锥曲线

平面上到两点距离之和为定值的点的轨迹是椭圆; 到两点距离之差为定值的点的轨迹是双曲线; 到一点和一直线距离相等的点的轨迹是抛物线.

    圆锥曲线的统一定义 平面上到定点的距离与到定直线的距离之比等于定值 `e` 的点的轨迹是圆锥曲线. 这个定点称为焦点, 定直线称为准线, `e` 称为圆锥曲线的离心率.
  1. `e = 0` 时, 轨迹是圆;
  2. `0 lt e lt 1` 时, 是椭圆;
  3. `e = 1` 时, 是抛物线;
  4. `e gt 1` 时, 是双曲线.

抛物线

抛物线的极坐标方程 是 `r = p/(1-cos theta)`, 其中焦点在原点, `p` 是焦点到准线的距离.

设准线为 `x = -p`, 焦点在原点, 则抛物线上一点到原点的距离为 `r`, 到准线距离为 `r cos theta + p`, 令它们相等即得结论.

椭圆的方程

    设 `P(x, y)` 到点 `F_1(-c, 0)` 和点 `F_2(c, 0)` 的距离分别为 `r_1`, `r_2`, 且 `r_1 + r_2 = 2a`, `quad 0 lt c lt a`. 则 `P` 的轨迹为
  1. 极坐标方程 `r_(1,2) = p/(1∓e cos theta_(1,2))`;
  2. 直角坐标方程 `x^2/a^2 + y^2/b^2 = 1`.
  3. 其中, 半短轴 `b = sqrt(a^2-c^2)`, 通径 `p = a - c e = b^2/a`, 离心率 `e = c/a`, 极角 `theta_i` 表示 `r_i` 与 `x` 轴的夹角, `i = 1, 2`.
  1. 由已知 `r_(1,2) = sqrt ((x+-c)^2 + y^2)`, 所以 `r_1^2 - r_2^2 = 4cx`, `quad r_1 - r_2 = (r_1^2 - r_2^2)/(r_1 + r_2)` `= (4 c x)/(2 a) = 2ex`. 由 `r_1 + r_2 = 2 a`, `r_1 - r_2 = 2e x` 解得 `r_(1,2) = a +- e x`. 于是 `r_2 = a - e(x-c) - c e` `= a - c e - e r_2 cos theta_2` `= (a - c e)/(1+e cos theta_2)` `= p/(1+e cos theta_2)`, `r_1` 的方程类似.
  2. 为得到直角坐标方程, 求 `r_1, r_2` 的平方和 `r_1^2 + r_2^2` `= 1/2 [(r_1 - r_2)^2 + (r_1 + r_2)^2]` `= 2(e^2 x^2 + a^2)`. 另一方面, 由 `r_1, r_2` 的表达式直接得到 `r_1^2 + r_2^2 = 2(x^2 + y^2 + c^2)` (上式实际上是三角形的中线长公式), 总之 `x^2 + y^2 + c^2 = e^2 x^2 + a^2`, `x^2 / a^2 + y^2 / b^2 = 1`.

图解椭圆

    设椭圆的方程为 `x^2/a^2 + y^2/b^2 = 1` (`a gt b gt 0`).
  1. `bm (a, b, c)` 半长轴 `OA = a`, 半短轴 `OB = b`, 半焦距 `OF_1 = OF_2 = c`. 以 `(0,b)` 为心, `a` 为半径作圆, 与 `x` 轴的交点就是焦点.
  2. 到原点的距离 离心率 `e = c/a`, 因此 `b^2/a^2 = 1-e^2`. `OP = sqrt(x^2+y^2)` `= sqrt(x^2+b^2(1-x^2/a^2))` `= sqrt(e^2 x^2 + b^2)`, 因此 `OP` 分别在 `x^2 = 0` 和 `x^2 = a^2` 时取得最小值和最大值.
  3. 焦半径 由 `r_1 + r_2 = 2 a`, `r_1 - r_2 = 2 e x` 得 `r_1 = a + ex`, `quad r_2 = a - ex`. 设 `l = a//e`, 则点 `P` 到焦点 `F_2` 与到准线 `x = l` 的距离之比 `r_2/(l-x) = (a-ex)/(a//e - x) = e`.
  4. 焦点三角形 是指两焦半径与焦距围成的三角形. 设两焦半径的夹角为 `theta`, 由 `(r_1+r_2)^2 = (2a)^2` 减去 `r_1^2 + r_2^2 - 2 r_1 r_2 cos theta = (2c)^2` 得 `r_1 r_2 = (2b^2)/(1+cos theta)`. 于是 `S_(P F_1 F_2) = 1/2 r_1 r_2 sin theta` `= b^2 (sin theta)/(1+cos theta)` `= b^2 tan{:theta/2:}`. 由均值不等式, `r_1 r_2 le ((r_1+r_2)/2)^2 = a^2`. 于是 `cos theta = (2b^2)/(r_1 r_2) - 1` `ge 2 b^2/a^2-1` `= 2(1-e^2)-1` `= 1-2e^2`. 当 `r_1 = r_2` 时 `theta` 取得最大值, `S_(P F_1 F_2)` 也取得最大值.

圆锥曲线与直线的位置关系

直线 `A x + B y + C = 0` 与双曲线 `x^2/a^2-y^2/b^2 = 1` 的位置关系. `A^2 a^2 = B^2 b^2` 时, 若 `C = 0` 则无交点, 若 `C != 0` 有一交点. `A^2 a^2 != B^2 b^2` 时, 见下表.

`Delta` `x_1 x_2` `x_1 + x_2` 交点情况
`+` `+` `+` 两交点都在右支
`-` 两交点都在左支
`-` 两支各有一交点
`0` 有一切点
`-` 无交点

已知点 `C` 在椭圆 `x^2/a^2 + y^2/b^2 = 1` 上, 过 `C` 作弦 `C A`, `C B`, 使得 `k_(C A) k_(C B)` 为一常数 `z`. 证明: `z != b^2//a^2` 时, 直线 `AB` 恒过一定点.

    设 `A(x_1,y_1)`, `B(x_2,y_2)`, `C(x_0,y_0)`, 直线 `A B: y = k x + t`. 联立直线与椭圆方程, 利用 Vieta 定理求得 `x_1+x_2`, `y_1+y_2`, `x_1 x_2` 和 `y_1 y_2`. 注意 `C` 在椭圆上, 有 `a^2 y_0^2 + b^2 x_0^2 = a^2 b^2`, 于是 `z = k_(C A) k_(C B)` `= ((y_1-y_0)(y_2-y_0))/((x_1-x_0)(x_2-x_0))` `= (y_1 y_2 - y_0(y_1+y_2) + y_0^2)/(x_1 x_2 - x_0(x_1+x_2) + x_0^2)` `= (b^2(t^2-a^2 k^2) - 2b^2 t y_0 + y_0^2(a^2 k^2+b^2)) / (a^2(t^2-b^2) + 2a^2 t k x_0 + x_0^2(a^2 k^2 + b^2))` `= b^2/a^2 ((t-y_0)^2 -(k x_0^2))/((t+k x_0)^2 - y_0^2)`.
  1. `z != b^2//a^2` 时, 取 `P(x_P,y_P) in l_(A B)`, 上式变形得 `lambda := (b^2 + z a^2)/(b^2 - z a^2)` `= t/(y_0 + k x_0)` `= (y_P - k x_P)/(y_0 + k x_0)`. 其中 `lambda` 为一常数. 当 `x_P = - lambda x_0`, `y_P = lambda y_0`, 上式对任意 `k in RR` 成立, 即直线 `AB` 恒过 `P` 点. 可以看到 `P` 是 `A B` 与直线 `O C'` 的交点, 其中 `C'(-x_0,y_0)`. 特别地, 令 `z = -b^2//a^2`, 则 `lambda = x_P = y_P = 0`, 这时直线 `AB` 恒过原点.
  2. `z = b^2//a^2` 时, `A B || O C'`, 此时定点不存在. (从射影几何的角度看, 此时 `AB` 与 `OC'` 相交于 `OC'` 方向上的无穷远处, 亦可视为一定点)
  3. 最后, 当 `A B` 的斜率不存在时, 容易验证上面的结论仍成立.

二次曲线 (面) 的切线 (面)

圆 `(x-a)^2 + (y-b)^2 = r^2`. 过圆外一点 `P(x_0, y_0)` 引圆的两条切线 `PA, PB`, 切点分别为 `A, B`. 则直线 `AB` 的方程是 `(x-a)(x_0-a) + (y-b)(y_0-b) = r^2`. 特别, 当 `P` 在圆上时, 这个方程就是过 `P` 的圆的切线方程.

记圆心为 `S(a, b)`, 注意 `vec(SA) * vec(AP) = 0`, 有 ` vec(SA) * vec(SP)` `= vec(SA) * (vec(SA) + vec(AP))` `= |vec(SA)|^2 = r^2`. 即 `A(x_A, x_B)` 满足方程 `(x-a)(x_0-a) + (y-b)(y_0-b) = r^2`. 同理 `B` 也满足上述方程. 由 `P` 在圆外知 `x_0-a`, `y_0-b` 不同时为零, 因此上式是一直线方程. 但 `A, B` 都在这一直线上, 所以它是直线 `AB` 的方程. `P` 在圆上时, 同样计算向量内积可以证明上式是过 `P` 点的切线方程.

过椭圆 `x^2/a^2 + y^2/b^2 = 1` 上一点 `P(x_0,y_0)` 的切线方程为 `(x_0 x)/a^2 + (y_0 y)/b^2 = 1`. 注意切线斜率与 `OP` 的斜率乘积等于 `-b^2/a^2 = e^2-1`.

在椭圆方程的两端对 `x` 求导, `(2x)/a^2 + (2y)/b^2 y^' = 0`. 记 `k = y'|_((x_0","y_0)) = -(x_0 b^2)/(y_0 a^2)`, 则切线方程为 `y - y_0 = k(x-x_0)` `= -(x_0 b^2)/(y_0 a^2) (x - x_0)`. 利用等式 `b^2 x_0^2 + a^2 y_0^2 = a^2 b^2` 化简得 `(x_0 x)/a^2 + (y_0 y)/b^2 = 1`. 易知斜率不存在时, `y_0 = 0`, 上式也是椭圆的切线方程.

如利用 `Delta = 0`, 则计算繁琐: 将椭圆方程与过 `(x_0,y_0)` 的直线 `A(x - x_0) + B(y - y_0) = 0` 联立, 令 `Delta = 0` 得 `A^2 a^2 + B^2 b^2 = (A x_0 + B y_0)^2`. `B != 0` 时, 记 `m = A/B`, 解上述二次方程, 注意利用等式 `b^2 x_0^2 + a^2 y_0^2 = a^2 b^2`, 得一对相等实根 `m = (x_0 y_0)/(a^2 - x_0^2)` `= x_0/(a^2 y_0) (a^2 y_0^2)/(a^2 - x_0^2)` `= x_0/(a^2 y_0) (a^2 b^2 - b^2 x_0^2)/(a^2 - x_0^2)` `= (x_0 b^2)/(y_0 a^2)`. 再作类似处理可以得到切线方程.

求椭球面 `x^2 + 2y^2 + 3z^2 = 21` 的过直线 `(6+2t, 3+t, 1/2 -t)` 的切平面的一般方程.

该椭球面在 `(x_0, y_0, z_0)` 处的切平面方程为 `x x_0 + 2y y_0 + 3z z_0 = 21`, 代入点 `(6, 3, 1/2)` 得 `6 x_0 + 6 y_0 + 3/2 z_0 = 21`. 另一方面, 切平面的法向量 `(x_0, 2y_0, 3z_0)` 与直线的方向向量 `(2, 1, -1)` 垂直, 有 `2x_0 + 2y_0 - 3z_0 = 0`. 将所得的两个方程与椭球面的方程联立 (先从两个一次方程中, 将所有变元用同一变元表出, 再代入二次方程中求解) 解得切点坐标 `(1, 2, 2)` 与 `(3, 0, 2)`, 代回切平面方程即可.

求球面 `(x-2)^2 + (y-2)^2 + (z-2)^2 = 1/3` 的过直线 `(1+t, 1+2t, 1+3t)` 的切平面的一般方程.

设切点为 `(x, y, z)`. 用类似上题的方法, 得 `{ (x-2)^2 + (y-2)^2 + (z-2)^2 = 1/3; (x-2) + (y-2) + (z-2) = -1/3; (x-2) + 2(y-2) + 3(z-2) = 0; :}` 作变元替换 `a = x-2`, `b = y-2`, `c = z-2` 后, 解方程组求切点.

只需求过给定直线, 到点 `(2, 2, 2)` 距离为 `1/sqrt(3)` 的平面方程. 将直线方程化为一般式 `{ 2(x-1) = y-1; 3(x-1) = z-1; :}`, `quad` 即 `{ 2x - y - 1 = 0; 3x - z - 2 = 0; :}` 由于平面 `3x - z - 2 = 0` 到点 `(2, 2, 2)` 的距离为 `|3*2 - 2 - 2|/sqrt(3^2 + 1^2) != 1/sqrt(3)`, 不是所求的平面, 故可以设所求平面为 `2x - y - 1 + lambda (3x - z - 2) = 0`, 它到点 `(2, 2, 2)` 的距离的平方等于 `[(2 + 3 lambda) * 2 - 2 - 2 lambda - 1 - 2 lambda]^2 / [(2 + 3 lambda)^2 + 1 + lambda^2] = 1/3`. 解得 `lambda = +-1`, 从而得到所求平面的方程.

二元二次方程及其表示的曲线

令对称矩阵 `bm A = (a_(i j))_(2 xx 2)`. 取 `theta` 使得 `cot 2theta = (a_11-a_22)/(2 a_12)`, 则正交矩阵 `bm T = [cos theta, -sin theta; sin theta, cos theta]` 将 `bm A` 对角化, 即 `bm (T'A T) = (b_(i j))_(2 xx 2)` 为对角矩阵. 其中 `b_11 = a_11 + a_12 tan theta`, `b_22 = a_22 - a_12 tan theta`.

计算知 `b_11 = a_11 cos^2 theta + a_22 sin^2 theta + 2a_12 sin theta cos theta`,
`b_22 = a_11 sin^2 theta + a_22 cos^2 theta - 2a_12 sin theta cos theta`,
`b_12 = b_21 = a_12 cos 2theta - (a_11 - a_22)/2 sin 2theta`.
所以 `b_11 + b_22 = a_11 + a_22`,
`b_11 - b_22` `= (a_11 - a_22) cos 2 theta + 2 a_12 sin 2 theta`.
`cot 2 theta = (a_11 - a_22) / (2a_12)` 时, `b_12 = 0`, 且 `b_11 = 1/2[(b_11+b_22) + (b_11-b_22)]` `= (a_11+a_22)/2 + (a_11-a_22)/2 cos 2 theta` `+ a_12 sin 2 theta` `= a_11 - (a_11-a_22)/2 (1-cos 2theta) + a_12 sin 2theta` `= a_11 + a_12[sin 2theta - cot 2theta(1-cos 2theta)]` `= a_11 + a_12 tan theta`,
`b_22 = b_11 + b_22 - b_11 = a_11 + a_22 - b_11` `= a_22 - a_12 tan theta`.

寻找一个正交变换, 将对称矩阵 `bm A = [2, -1; -1, 2]` 对角化.

令 `|lambda bm E-bm A| = 0`, 即 `(lambda-2)^2 = 1`, 解得特征根 `lambda = 1,3`. 分别解方程组 `{ (1-2) x + 1 y = 0; 1 x + (1-2) y = 0 :}`,
`{ (3-2) x + 1 y = 0; 1 x + (3-2) y = 0 :}`,
得到特征向量 `(1, 1)` 和 `(1, -1)`, 将它们正交单位化 (实际上只需单位化, 因为实对称矩阵的不同特征根对应的特征向量总是正交的) 得到 `bm epsi_1 = (sqrt2/2, sqrt2/2)`, `quad bm epsi_2 = (sqrt2/2, -sqrt2/2)`. 根据特征向量的定义有 `bm (A epsi)_1 = 1 bm epsi_1`, `quad bm (A epsi)_2 = 3 bm epsi_2`, 写成矩阵形式就是 `bm A (bm epsi_1, bm epsi_2) = (bm epsi_1, bm epsi_2) [1, ; , 3]`, 记 `bm T = (bm epsi_1, bm epsi_2)`, `bm D = [1, ; , 3]`, 上式可以写成 `bm (A T) = bm (T D)`. 因为 `bm T` 是正交矩阵, 有 `bm T^-1 = bm T'`, 于是 `bm A = bm (T D T)'`. 如果 `bm x` 是二元列向量, 作变换 `bm x = bm (T y)`, 就可以将二次型旋转到主轴上: `bm x' bm (A x)` ` = (bm y' bm T') (bm (T D T')) (bm (T y))` `= bm y' bm (D y)`.

  1. 将双曲线 `y = 1/x` 化为主轴形式;
  2. 将双曲线 `y = x + 1/x` 化为主轴形式;
  1. 方程化为 `x_1 x_2 = 1`, 将系数矩阵对角化: `[0, 1/2; 1/2, 0] = bm T [1/2, ; ,-1/2] bm T'`, 其中 `bm T = (bm epsi_1, bm epsi_2)`, `bm epsi_1 = 1/sqrt2(1, 1)`, `bm epsi_2 = 1/sqrt2(1,-1)`. 这些信息告诉我们, 只要作变换 `bm x = bm (T y)`, 曲线方程就化为 `y_1^2/2 - y_2^2/2 = 1`.
  2. 方程化为 `x_1^2 - x_1 x_2 = -1`, 系数矩阵对角化得 `[1, -1/2; -1/2, 0] = bm T [(1+sqrt2)/2, ; ,(1-sqrt2)/2] bm T'`, 其中 `bm T = 1/L[1, 1-sqrt2; sqrt2-1, 1]`, `L = sqrt(4-2sqrt2)`. 只要作变换 `bm x = bm (T y)`, 曲线就化为 `(1+sqrt2)/2 y_1^2 + (1-sqrt2)/2 y_2^2 = -1`, `(sqrt2-1)/2 y_2^2 - (sqrt2+1)/2 y_1^2 = 1`.

一般地, 二次型 `A x^2 + B x y + C y^2` 的系数矩阵是 `[A, B/2; B/2, C]`. 二次曲线按特征根的符号分为三类: 两个特征根同号为椭圆型, 异号为双曲型, 有一个特征根等于零为抛物型. 假设 `A gt 0`, 则: `Delta = B^2 - 4 A C lt 0` 时为椭圆型, `Delta lt 0` 时为双曲型, `Delta = 0` 时为抛物型.

    平面直角坐标系 `xOy` 中,
  1. 一线段长为 `l`, 两端点分别在 `x` 轴和 `y` 轴上滑动, 求线段中点 `M` 的轨迹;
  2. 假设同 1. 设线段上一点 `P` 将线段分为长度为 `m, n` 的两段 (靠近 `y` 轴一侧为 `m`, 靠近 `x` 轴一侧为 `n`), 求 `P` 点轨迹;
  3. 假设同 2. 过 `P` 作线段的垂线 `AP = h`, 使得 `A, O` 在线段异侧, 求 `A` 点轨迹.
  1. 因为直角三角形斜边上的中线长等于斜边的一半, 所以 `MO` 为常数, 因此 `M` 轨迹是以 `O` 为心, `l//2` 为半径的圆.
  2. 设 `P` 的坐标为 `(x,y)`. 由相似三角形列出方程 `sqrt(m^2-x^2)/m = y/n`, 化简得 `x^2/m^2 + y^2/n^2 = 1`. 轨迹为椭圆.
  3. 设 `A` 的坐标为 `(x,y)`, 线段与 `x` 轴夹角为 `theta`, 列出参数方程 `x = m cos theta + h sin theta`, `quad y = n sin theta + h cos theta`. 将 `m y - h x = (m n - h^2) sin theta` 代入 `(y - n sin theta)^2 = h^2 cos^2 theta` 得 `(y - n (m y-h x)/(m n-h^2))^2 = h^2 (1-((m y-h x)/(m n-h^2))^2)`, 两边同乘 `(m n-h^2)^2` 并整理得 `(n x-h y)^2 + (m y-h x)^2 = (m n-h^2)^2`. 利用二元二次曲线 `A x^2 + B x y + C y^2 + D x + E y + F = 0` 的判别式 `Delta = B^2 - 4 A C`: `Delta/4 = (m+n)^2 h^2 - (m^2+h^2)(n^2+h^2)` `= -(m n-h^2)^2 lt 0`, 因此轨迹为椭圆.
  1. 求椭圆 `x^2/a^2 + y^2/b^2 = 1` 被直线 `l x + m y = 0` 所截的弦长 `L`.
  2. 求椭球面 `x^2/a^2 + y^2/b^2 + z^2/c^2 = 1` 被平面 `l x + m y + n z = 0` 所截的椭圆的面积 `S`.
  1. 将弦长投影到 `x` 轴, 再利用公式 `L = sqrt(1+k^2)|x_1 - x_2|`. 为此, 先把直线方程代入椭圆方程得到 `x_(1,2) = +- sqrt(1/(1/a^2 + l^2/(m b)^2))`, 于是 `L = 2 sqrt(1+l^2/m^2) |x_1|` `= 2 sqrt((l^2 + m^2)/(m^2/a^2 + l^2/b^2))` `= 2 a b sqrt((l^2+m^2)/((l a)^2 + (m b)^2))`.
  2. [来自 泰勒猫] 将所截的椭圆投影到 `xOy` 平面, 夹角的余弦值是两平面法向量的内积: `cos alpha = ((l, m, n) * (0, 0, 1)) / sqrt(l^2+m^2+n^2) = n/sqrt(l^2+m^2+n^2)`. 下面求投影面积. 投影的椭圆方程是 `x^2/a^2 + y^2/b^2 + (l x + m y)^2/(n c)^2 = 1`, 应用椭圆面积公式 `pi a b`, 或者 `pi/sqrt(lambda_1 lambda_2)`, 其中 `lambda_1, lambda_2` 是椭圆方程的二次项作为二次型的特征值. 例如二次型为 `A x^2 + 2 B xy + C y^2` 时, `lambda_2 lambda_2 = A C - B^2`. 于是投影面积 `S_1 = pi / sqrt((1/a^2 + l^2/(n c)^2)(1/b^2 + m^2/(n c)^2) - (l m)/(n c)^2)` `= pi/sqrt(1/(a b)^2 + m^2/(n a c)^2 + l^2/(n b c)^2)`. `= (pi n a b c)/sqrt((l a)^2 + (m b)^2 + (n c)^2)`. 所以 `S = S_1 // cos alpha = pi a b c sqrt((l^2+m^2+n^2)/((l a)^2 + (m b)^2 + (n c)^2)`.

2. 的另一解法: 由上一种解法我们知道 `S = S_1 // cos alpha`. 变换坐标系 `(x, y, z) mapsto (a x, b y, c z)`, 在新坐标下椭球面变为单位球面, 平面变为 `l a x + m b y + n c z = 0`. 它们的截痕是单位圆, 面积为 `pi`. 在新坐标系下, 把这个单位圆投影到 `xOy` 平面, 面积为 `S_2 = pi n c//sqrt((l a)^2 + (m b)^2 + (n c)^2)`. `S_1` 和 `S_2` 相差一个坐标系的伸缩变换, 有 `S_1 = a b S_2`. 最终 `S = S_1 // cos alpha = a b S_2 // cos alpha`.

高次曲线

三次曲线

叶形线 平面上原点关于抛物线 `y = -ax^2` 在 `x=t` 处的切线 `y + a t^2 = -2a t(x-t)` 的对称点为 `(2at^2)/(1+4a^2 t^2) (2a t, 1)`. 利用 `y = (2at^2)/(1+4a^2 t^2)` 解出 `t^2`, 代入 `x^2` 的表达式, 就可以消去参数 `t`, 得到: `y^3 = x^2(1-2a y)`.

四次曲线

Descartes 卵形线 是平面上到两个焦点距离 `r_1, r_2` 满足 `m r_1 + n r_2 = b` 的点的轨迹.

Cassini 卵形线 是平面上到两个焦点 `(+-c, 0)` 距离之积为定值 `a^2` 的点的轨迹. 当 `a = c` 时, 称为Bernoulli 双纽线. Cassini 卵形线的方程为 `((x-c)^2 + y^2)((x+c)^2+y^2) = a^4`,
或 `(x^2+y^2)^2 - 2c^2(x^2-y^2) = a^4-c^4`,
或 `r^4 - 2c^2 r^2 cos 2 theta = a^4 - c^4`.
特别, 双纽线的极坐标方程为 `r^2 = 2 a^2 cos 2 theta`.

极坐标下的切线方程 曲线 `r(theta)` 在点 `(theta_0, r_0)` 处的切线方程为 `(1/r("d"r)/("d"theta))(theta_0, r_0)` `= (r cos(theta-theta_0)-r_0)/(r sin(theta-theta_0))`. 如果记切线与 `Ox` 轴夹角为 `varphi`, 又有 `1/r("d"r)/("d"theta) = cot(varphi - theta)`.

由于 `dy/dx = "d"/dt (r sin theta) // "d"/dt (r cos theta)` `= (r' sin theta + r theta' cos theta)/(r' cos theta - r theta' sin theta)` `= (("d"r)/("d"theta) sin theta + r cos theta)/(("d"r)/("d"theta) cos theta - r sin theta)`, `("d"r)/("d"theta) = (dy/dx r sin theta + r cos theta)/(dy/dx cos theta - sin theta)`. 如果记 `dy/dx = tan varphi`, 则 `1/r("d"r)/("d"theta)` `= (tan varphi tan theta + 1)/(tan varphi - tan theta)` `= cot(varphi - theta)`. 现在把曲线在直角坐标下的切线方程 `dy/dx(x_0, y_0) = (y-y_0)/(x-x_0)` 代入 `("d"r)/("d"theta)(theta_0, r_0)` `= (r_0 sin theta_0(r sin theta-r_0 sin theta_0) + r_0 cos theta_0(r cos theta - r_0 cos theta_0)) / (cos theta_0 (r sin theta - r_0 sin theta_0) - sin theta_0 (r cos theta - r_0 cos theta_0))` `= (r_0 r cos(theta-theta_0)-r_0^2)/(r sin(theta-theta_0))`. 整理即得结论.

以原点为一个顶点, 三边分别为 `r_0, r_0 + "d"r, r_0"d"theta` 作曲边三角形. 设 `P_0(theta_0, r_0)` 处的切线与 `P_0` 点处向径的垂线夹角为 `alpha`, 则 `(("d"r)/(r "d"theta))(theta_0, r_0) = tan alpha`. 延长向径 `r_0 + "d"r` 与切线交于 `(theta, r)`. 由几何关系又得到 `tan alpha = (r cos(theta-theta_0) - r_0)/(r sin(theta-theta_0))`.