【问题标题】:Generate random boxes without overlapping. Javascript生成不重叠的随机框。 Javascript
【发布时间】:2016-03-10 12:55:30
【问题描述】:

我使用这个随机函数来生成顶部和左侧的位置。 我如何生成数字,使框不相互重叠。

this.posX = Math.floor((Math.random() * 850) + 1);
this.posY = Math.floor((Math.random() * 450) + 1);

小提琴: http://jsfiddle.net/ftw68b6f/2/

【问题讨论】:

标签: javascript random overlap


【解决方案1】:

您最初无法阻止它们重叠,但是您可以添加一个 while 循环来检查当前选择的位置是否与任何其他框重叠,如果是,请选择一个新的随机位置。

如果您使用此选项,您必须注意,当屏幕变满时,循环需要的时间越来越长,如果没有更多的框适合,可能会无限长。

【讨论】:

    猜你喜欢
    • 2017-06-19
    • 1970-01-01
    • 2020-03-05
    • 2012-06-01
    • 2019-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-20
    相关资源
    最近更新 更多