与えられた半径Rの球に属する2つの点AとBが与えられます。与えられた点Gまでの距離が最小の中心を持つ球を見つけたいと思います。
ありがとう
必要な点 C は、A、B、および G を含む平面にあります。
AG = G - A;
BG = G - B;
N = cross(AG, BG);
N = N / norm( N ); % the normal to the plane
ここで、この平面で C を解きます。3 つの方程式:
dot((C-G), N)=0;
sqrt(sum(A-C).^2) = R;
sqrt(sum(B-C).^2) = R;
3 つの未知数は C の 3 つの要素です。最終的に 2 つの解が得られるので、G までの距離を計算し、近い方を選択します。
2 点と半径で定義される球の中心は円です。C (円の中心) と G を接続して、円平面に 90° の投影を作成できます。最小距離は、投影が円の接線と 90° 交差する場所です。解決策は 2 つあります。小さい方を取る必要があります。