Метад closePath

Метад closePath аўтаматычна замыкае фігуру, намаляваную з дапамогай метаду lineTo, малюючы пры гэтым прамую лінію з канцавой кропкі у пачатковую. Калі фігура ўжо была закрыта ці з'яўляецца проста кропкай, то метад нічога не робіць.

Сінтаксіс

javascriptкантэкст.closePath();

Прыклад

Для пачатку намалюем дзве лініі, не замыкаючы іх праз closePath:

html<canvas id="canvas" width="200" height="200" style="background: #f4f4f4;"></canvas>
javascriptlet canvas = document.querySelector('#canvas');
let ctx = canvas.getContext('2d');

ctx.beginPath();
ctx.moveTo(50, 50);
ctx.lineTo(100, 100);
ctx.lineTo(150, 50);
ctx.stroke();

Результат:

Прыклад

А цяпер замкнём гэтыя дзве лініі ў фігуру праз closePath, атрымаўшы тым самым трохвугольнік:

html<canvas id="canvas" width="200" height="200" style="background: #f4f4f4;"></canvas>
javascriptlet canvas = document.querySelector('#canvas');
let ctx = canvas.getContext('2d');

ctx.beginPath();
ctx.moveTo(50, 50);
ctx.lineTo(100, 100);
ctx.lineTo(150, 50);
ctx.closePath(); // замыкаем лініі ў фігуру
ctx.stroke();

Результат:

Прыклад

Давайце намалюем квадрацік, замест апошняй лініі замкнуўшы фігуру праз closePath:

html<canvas id="canvas" width="200" height="200" style="background: #f4f4f4;"></canvas>
javascriptlet canvas = document.querySelector('#canvas');
let ctx = canvas.getContext('2d');

ctx.beginPath();
ctx.moveTo(50, 50);
ctx.lineTo(150, 50);
ctx.lineTo(150, 150);
ctx.lineTo(50, 150);
ctx.closePath(); // замыкаем лініі ў фігуру
ctx.stroke();

Результат:

Глядзіце таксама

  • метад fill,
    які зафарбоўвае фігуру зададзеным колерам