不切边简单,但想半天,也没想出怎样便捷的检测出重合,请问有什么思路?

来源:4-1 画一片星空

jamesdu

2015-02-06 20:59

貌似这样就可以不切边了

var x = Math.random() * (canvas.width - r * 2) + r;

var y = Math.random() * (canvas.height - r * 2) + r;

但是想了半天,也没想到怎样检测重合,想到一种最笨的思路,就是类似在2048里一样,建一个二维数组,用canvas.width,canvas.height,然后所有的像素点都设成0,生成一个x和y,这一片就改成1,然后下一个就检测,如果x,y的区域内有是1的,就重新生成,没有就继续for,貌似好笨。

写回答 关注

1回答

  • Q版的我
    2015-12-16 15:08:32

    我的想法是判断两个点之间的距离是否少于两个五角星大圆半径,若少于则证明重合

Canvas绘图详解

Canvas系列教程第二课,详解Canvas各接口,让同学彻底掌握Canvas绘图

73021 学习 · 441 问题

查看课程

相似问题