H****h 发帖数: 1037 | 1 若两圆不平行,则两圆嵌套的充要条件是:
两圆都与它们所在平面的交线相交,且交点互相错开。
假设圆心,半径,法向量分别为O_i, r_i, n_i,i=1,2。
令l=n_1×n_2,外积,则l平行于两圆所在平面的交线。
令n_3=l/|l|,d=O_1-O_2,则c=(d,n_3)是两圆心在交线上投影点的距离。
设h_i为O_i与交线的距离,可以计算出h_i=|(d,n_i')|/|l|,i'=3-i。
这些算出后,题目就成了平面几何问题了。
令a_i=\sqrt(r_i^2-h_i^2)。只要a_1, a_2和c构成三角形三边长即可。
不知道这个算法的复杂度如何。 |
|