web-dev-qa-db-ja.com

円のエッジの周りの座標をプロットしようとしています

プログラムで円の周りの座標をプロットしようとしています。ここでは、私が何を求めているかを示すためにハードコードされています。

http://jsfiddle.net/jE26S/1/

var iteration = 4;
var left = [94,200,104,-6];
var top = [-6,94,200,94];    

for(var i=0; i<iteration; i++){

    $("#center").append("<div class='point' style='left:"+left[i]+"px;top:"+top[i]+"px'></div>");    

}

数学は間違いなく私の強みではありません。

私は人々を大きな円の周りに立っている小さな円として表現する必要があります。ただし、人の数はランダムであり、全員が等距離である必要があります。中心点から作業すべきかどうかわかりません。

15
user1503606

仮定して (x0, y0)は円の中心であり、rは半径です:

var items = 4;
for(var i = 0; i < items; i++) {

    var x = x0 + r * Math.cos(2 * Math.PI * i / items);
    var y = y0 + r * Math.sin(2 * Math.PI * i / items);   
    $("#center").append("<div class='point' style='left:"+ x +"px;top:"+ y +"px'></div>");    

}
32
John Ledbetter