アプリ版:「スタンプのみでお礼する」機能のリリースについて

3次元座標において3つの球の球面上の点が交差する
座標(x,y,z)を求める。
球1中心座標(x1,y1,z1)半径R1
球2中心座標(x2,y2,z2)半径R2
球3中心座標(x3,y3,z3)半径R3
球の方程式は以下になります。
(x-x1)X(x-x1)+(y-y1)X(y-y1)+(z-z1)X(z-z1)=R1XR1
(x-x2)X(x-x2)+(y-y2)X(y-y2)+(z-z2)X(z-z2)=R2XR2
(x-x3)X(x-x3)+(y-y3)X(y-y3)+(z-z3)X(z-z3)=R3XR3
これはもう地道に解くしかないのでしょうか?平面を使うのだとか
現実世界でアドバイスをもらったのですが一向に解けません…
よろしくお願いいたします。

A 回答 (1件)

(x-x1)^2+(y-y1)^2+(z-z1)^2=R1^2 (1)


(x-x2)^2+(y-y2)^2+(z-z2)^2=R2^2 (2)
(x-x3)^2+(y-y3)^2+(z-z3)^2=R3^2 (3)
(1)-(2)より
-2(x1-x2)x+x1^2-x2^2-2(y1-y2)y+y1^2-y2^2-2(z1-z2)z+z1^2-z2^2=R1^2-R2^2  (4)

a3=-2(x1-x2), b3=-2(y1-y2), c3=-2(z1-z2),
p3=R1^2-R2^2+x2^2-x1^2+y2^2-y1^2+z2^2-z1^2
とおくと(4)は
a3x+b3y+c3z=p3 (5)

(2)、(3)から同様に
a1x+b1y+c1z=p1 (6)

(3)、(1)から同様に
a2x+b2y+c2z=p2 (7)


平面の方程式(5)から(7)を連立してとけばよい。



大事なことはこんなことを手計算でやってもただ面倒なだけです。
しかしプログラム化すれば十分楽しめます。
    • good
    • 0
この回答へのお礼

うおぉお!

ありがとうございます!
すごく助かりました!

お礼日時:2010/08/06 10:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!