プロが教える店舗&オフィスのセキュリティ対策術

2次元で、3点(X1,Y1), (X2,Y2), (X3,Y3) が既知のとき、
これらの点を通る円の曲率の求め方を教えて頂けないでしょうか?また、3次元で4点がわかっている時の求め方も教えて頂けないでしょうか?

A 回答 (4件)

2次元の場合の曲率ρは,3点A(X1,Y1),B(X2,Y2),C(X3,Y3)で作られる三角形の外接円の半径Rの逆数を求めればいいので,正弦定理より,


ρ=1/R=2sinA/|BC|
を利用して求めるといいでしょう.ここでsinAの値を求めるにはいくつかやり方があるかと思いますが,ここでは簡単に2次元ベクトルの外積を利用して,
|AB↑×AC↑|=|AB||AC|sinA
から求めてみます.左辺は
AB↑×AC↑=(OB↑-OA↑)×(OC↑-OA↑)=OA↑×OB↑+OB↑×OC↑+OC↑×OA↑
と変形できますので,曲率ρは,
ρ=2|AB↑×AC↑|/|AB||AC||BC|=2|OA↑×OB↑+OB↑×OC↑+OC↑×OA↑|/|AB||BC||CA|
と表すことができます.ここで具体的に座標の値を入れてあげると,
OA↑×OB↑=X1Y2-X2Y1
|AB|=√((X1-X2)^2+(Y1-Y2)^2)
より,最終的に
ρ=2|X1Y2-X2Y1+X2Y3-X3Y2+X3Y1-X1Y3|/√[((X1-X2)^2+(Y1-Y2)^2)((X2-X3)^2+(Y2-Y3)^2)((X3-X1)^2+(Y3-Y1)^2)]
となります.

3次元になると,一般化の計算は何か上手い方法を見つけないと大変でしょうね.^^
    • good
    • 2

No.1です。



辺々引くことによって2乗の項が消えますので、そんなに大変ではないと思いますが。(辺々引くことによって2乗の項を消すのが、シンプルにするテクニックと言えるのかも知れません。)

例:3点が、(1,2),(3,7),(5,4)のとき

(1-p)^2+(2-q)^2=r^2…(1)
(3-p)^2+(7-q)^2=r^2…(2)
(5-p)^2+(4-q)^2=r^2…(3)

(1)→p^2-2p+q^2-4q+5=r^2……(4)
(2)→p^2-6p+q^2-14q+58=r^2…(5)
(3)→p^2-10p+q^2-8q+41=r^2…(6)

(4)-(5)より、4p+10q-53=0…(7)
(5)-(6)より、4p-6q+17=0……(8)

(7)-(8)より、16q-70=0
よって、q=35/8
(以下、例えば(7)によりpを求め、次に例えば(4)によりrを求めればよい。そして、1/rが曲率。)
    • good
    • 0

ベクトルで計算してみては?


最初の3点をp1,p2,p3とするならば、
p1,p2の中点をm1、p2,p3の中点をm2とし、
中点m1,m2を通り、
そのベクトル→p1p2 →p2p3に垂直な線上に円の中心があります。
よって二つの直線の交点に円の中心点が存在します。


同様に三次元空間では二点の中点を通る二点のベクトルを法線とする面上に球面の中心がありますので、平行でない3つの面から中心点を求めることができます。
    • good
    • 0

円の曲率ですか?


円の曲率は半径の逆数ですので、要するにその3点を通る円の半径が判ればいいです。

例えば、円の方程式を(x-p)^2+(y-q)^2=r^2とでも置いて(中心が(p,q)、半径がrということ)、xとyにそれぞれ(X1,Y1),(X2,Y2),(X3,Y3)を代入して、p,q,rの連立方程式を解けばよいのでは。

この回答への補足

その方法でやったのですが、検算しても、どうも間違っているようです。なにか、計算をシンプルにするようなテクニックなどはありますか?
また、3次元の曲面に適用する際も単純な方法だと計算がかなり大変です。。。何か良い方法、アドバイスお願いできないでしょうか?

補足日時:2005/04/19 15:06
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています