js实现随机数

行走使徒 2016-03-10 11:18:16
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>circle</title>
</head>
<script type="text/javascript">
// javapig draw circle

function pig(id) {
var canvas = document.getElementById(id);
if(canvas.getContext){
var ctx = canvas.getContext("2d");
ctx.strokeStyle = "#000";
var circle = {
x : 200,
y : 200,
r : 1
//最小圆的半径
};
// 画5个圆圈
ctx.beginPath();
ctx.arc(circle.x, circle.y, circle.r, 0, Math.PI * 2, true);
ctx.stroke();

ctx.beginPath();
ctx.arc(circle.x, circle.y, circle.r+30, 0, Math.PI * 2, true);
ctx.stroke();

ctx.beginPath();
ctx.arc(circle.x, circle.y, circle.r+60, 0, Math.PI * 2, true);
ctx.stroke();

ctx.beginPath();
ctx.arc(circle.x, circle.y, circle.r+100, 0, Math.PI * 2, true);
ctx.stroke();

ctx.beginPath();
ctx.arc(circle.x, circle.y, circle.r+140, 0, Math.PI * 2, true);
ctx.stroke();


ctx.lineTo(bp,ep);

ctx.closePath();

ctx.stroke();

}

}


</script>
<body bgcolor="" onLoad="pig('y')">
<canvas style="background:#FFF" height="400" width="400" id="y"></canvas>

</body>
</html>

想在这样一个圆环里随机出现一些点那个函数怎么用的求赐教
...全文
95 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
functionsub 2016-03-10
  • 打赏
  • 举报
回复
- -上面边间判断跟2点距离算法有点问题,换下面这样
        var isIn = false;
        var rx, ry , distance;
        while(!isIn){
            rx = 60 + parseInt(Math.random() * 280)
            ry = 60 + parseInt(Math.random() * 280);
            distance = Math.sqrt((rx - 200) * (rx - 200)  + (ry - 200) * (ry - 200));
            if(distance < 140){
                isIn = true;
            }
        }
        console.log(rx,ry)
functionsub 2016-03-10
  • 打赏
  • 举报
回复
var isIn = false; // 是否在圆内变量,默认false
var rx, ry , distance; // 随机点坐标rx,ry,随机点与圆心的距离
while(!isIn){
    // 看图上,中心点在(200,200)处,最大半径又为140,故而rx,ry取值范围应该是在60 - 340 之间
    rx = parseInt(60 + Math.random() * 340); // 生成随机rx
    ry = parseInt(60 + Math.random() * 340); // 生成随机ry
    distance = Math.sqrt(rx * rx  + ry * ry); // 计算点与圆心的距离
    if(distance < 140){ // 如果距离小于140
        isIn = true; // 更改此变量,并退出while循环
    }
}
console.log(rx,ry)

87,902

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧