Рандомная генерация квадратов в canvas

277
29 декабря 2017, 02:12

Есть функция, которая генерирует квадрат рандомного размера не больше 40px в рандомном месте, не выходя за границы canvas:
1. Как сделать минимальный размер квадрата? Рандомно от 20 до 40.
2. При генерации 20 квадратов как сделать, чтобы они не появлялись друг в друге? Желательно с минимальным отступом.

function drawSquare(canvas, context){
  var canvas = document.getElementById('canvas');
  var context = canvas.getContext("2d");
  var w = Math.floor(Math.random() * 40);
  var x = Math.floor(Math.random() * canvas.width);
  var y = Math.floor(Math.random() * canvas.height);
  context.fillStyle = "lightblue";
  context.fillRect(x,y,w,w);
}
for (var squares = 0; squares < 20; squares++) {
      drawSquare(canvas, context);
}
READ ALSO
Как убрать абсолютно все ссылки из строки?

Как убрать абсолютно все ссылки из строки?

Как убрать абсолютно все ссылки из строки? Делаю бота для ВК в связи со слабой защитойСтраницу постоянно блокируют

180
Как найти элемент на странице с определенным атрибутом зная только атрибут?

Как найти элемент на странице с определенным атрибутом зная только атрибут?

Дамы и господа, допустим есть некий элемент на странице и он нам не известен

275
удаление элемента выпадающего списка jquery

удаление элемента выпадающего списка jquery

Бьюсь лбом об стену уже не первый часСпасите пожалуйста мою психику!

164