2011-06-01 46 views

回答

0

由兩點和半徑定義的球體的中心是一個圓。您可以連接C(圓的中心)和G,並在圓平面上創建90°投影。最小距離是投影與圓切線相交90°的位置。有兩種解決方案。你必須採取較小的一個。

0

你想要的C點是在包含A,B,和G平面您計算

AG = G - A; 
BG = G - B; 
N = cross(AG, BG); 
N = N/norm(N); % the normal to the plane 

現在你在這個平面上解決了對C。三個方程:

dot((C-G), N)=0; 
sqrt(sum(A-C).^2) = R; 
sqrt(sum(B-C).^2) = R; 

三個未知數是C的三個要素了兩種解決方案中結束,所以計算至G的距離,並挑選接近一個。