1

固定距離で 2 つの円を配置する必要がある HTML5 キャンバス テストの設計に取り組んでいますが、テストが完了するたびに場所がランダム化されます。私の計画は、円の 1 つを事前設定された場所に保持し、他の円のランダムな場所を見つけることです。

他の円の中心の可能な位置として、特定のポイントから特定の距離にあるポイントのリストを見つけたいと思います。基本的に、指定された点を中心とし、指定された距離を半径とする円の円周上の点。すでにこれを行っているjqueryまたはjavascriptの数学関数はありますか、それとも以下の距離公式方程式を解く方法を見つけなければなりませんか?

距離式

4

1 に答える 1

3

固定円 (x 0 ,y 0 ) の中心が与えられると、(x 0 , y 0 )から距離rの均一に分布するランダムな円の中心の式は次のようになります。

(x 0 + r * cosθ,y 0 + r * sinθ)

ここで、θ は [0,2π) にわたって一様に分布しています。ランダムな角度を作成するのに 1 行のコードが必要であり、それらの計算を実行するのに 1 行のコードが必要です。これはなんと 2 行のコードです... もちろん、この数式は (x 0 ,y 0 ) を修正する必要がないことにすぐに気付くでしょう。そのため、その位置をランダム化する 3 行目のコードを簡単に追加できます。繰り返しごとにランダムポイントを計算します。

高次元 (N 球面上の均一な点) に一般化する場合、極座標はあまり役に立ちません。5 行のコードで実装できる簡単な方法があります。http://mathworld.wolfram.com/SpherePointPicking.htmlを参照してください。

于 2013-02-10T21:32:36.387 に答える