2011-02-10 11 views
2

を使用して円の中心/中央を決定しますが、ActionScriptの3私は、誰かが私を助けることができれば、私はコンパスを使用して、ペンと紙の上にそれを行うことができます思っていた複数のポイント

ようにそれを行うことはできませんタイトルは、本質的に私は半径から複数の点を使って円の中心を見つける必要があると言います。

+0

あなたは半径を知っていますか? – mbeckish

+0

これは、Y軸が反転されていることを除いて、あなたが数学クラスでどのように行うのかとほぼ同じです。 –

+0

悲しいことに、私は高レベルの数学をしなかったし、はい、私は半径を持っています。 – S1syphus

答えて

10

Equation for a Circle from 3 Pointsが必要です。また、Math博士にはsome nice explanationsという質問があります。

を編集しました。これはJavaScript + SVGで実装しました。あなたは私のウェブサイト上でインタラクティブな結果を見ることができます:
http://phrogz.net/SVG/3-point-circle.xhtml

ここに関連するコードです(私は.x.yプロパティとActionScriptでのようにPointクラスを作成しました):

function findCircleCenter(p1,p2,p3){ 
    var d2 = p2.x*p2.x + p2.y*p2.y; 
    var bc = (p1.x*p1.x + p1.y*p1.y - d2)/2; 
    var cd = (d2 - p3.x*p3.x - p3.y*p3.y)/2; 
    var det = (p1.x-p2.x) * (p2.y-p3.y) - (p2.x-p3.x) * (p1.y-p2.y); 
    if (Math.abs(det) > 1e-10) return new Point(
    (bc * (p2.y-p3.y) - cd * (p1.y-p2.y))/det, 
    ((p1.x-p2.x) * cd - (p2.x-p3.x) * bc)/det 
); 
} 

編集2 :楽しみのために、1つの円を定義する3つの点の代わりに、20を定義する約6点はどうですか? :)
http://phrogz.net/SVG/3-point-circle2.xhtml

+0

ありがとう、私はそれを私がgoogledした前にmathforum.orgのものを見た。 – S1syphus

+0

これはおかげで、私は半径と任意の間隔を置いて周りの3つの点を持っています。 – S1syphus

+0

申し訳ありません、ええ、元の投稿を編集して追加します。 – S1syphus

関連する問題