您的位置:首页 > Web前端 > JavaScript

JavaScript计算N个点均匀排列成圆的各个点坐标

2015-08-04 00:00 806 查看
这个方法可以用来支持圆形菜单布局等类似需求:

/**
* 计算N个点均匀排列成圆的各个点坐标
* @param nodeSize 参与排列成圆的元素个数
* @param center 圆的中心点坐标 {x:, y:}
* @param radius 圆的半径
* @return 各个元素的坐标:[{x:, y:}, {x:, y:}, ...]
*/
function calcCircularLayout(nodeSize, center, radius) {
var i, _i, _layouts = [];
for(i = _i = 0; _i < nodeSize; i = ++_i) {
var x = center.x + radius * Math.sin(2 * Math.PI * i / nodeSize),
y = center.y + radius * Math.cos(2 * Math.PI * i / nodeSize);

_layouts.push({'x': x, 'y': y});
}

return _layouts;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: