JS Canvas - Проблема с отрисовкой

{   function create (){
    let x = 50,
    y = 100;

for (let i = 0; i < num; i++) {

    if (i === num / 2) {
        x = 0;
        y = 200;
        console.log("Привет")
    } // условие на будущее, в случаи увеличения количества елементов;



    block[i] = {
        "number": random(13), /// 12 блоков с рандомным числом.
        "x": x += 10,
        "y": y,
    }


}


ctx.fillStyle = "silver";
ctx.fillRect(block[2].x, block[2].y, block[2].x, block[2].y);

 } 

Когда координаты первой точки и последней одинаковы создает квадрат, хотя я ожидаю пустоту.

Почему?

введите сюда описание изображения


Ответы (2 шт):

Автор решения: Locker

Третье и четвертое значение передает размеры а не координаты последней точки

→ Ссылка
Автор решения: Leonid

Метод CanvasRenderingContext2D.fillRect() принимает четыре параметра:

x - координаты начальной точки по оси X

y - координаты начальной точки по оси Y

width - ширина прямоугольника (может быть отрицательной или 0)

height - высота прямоугольника (может быть отрицательной или 0)

То есть в вашем случае выражение должно выглядеть следующим образом:

ctx.fillRect(block[2].x, block[2].y, 0, 0);

CanvasRenderingContext2D.fillRect()

→ Ссылка