Metodas closePath

Metodas closePath automatiškai uždarą figūrą, nupieštą naudojant metodą lineTo, piešiant tuo pačiu tiesią liniją iš galinio taško į pradinį. Jei figūra jau buvo uždaryta arba yra tik taškas, tai metodas nieko nedaro.

Sintaksė

javascriptkontekstas.closePath();

Pavyzdys

Pirmiausia nupieškime dvi linijas, neuždarydami jų per 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();

Результат:

Pavyzdys

O dabar uždarykime šias dvi linijas į figūrą per closePath, taip gaudami trikampį:

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(); // uždarome linijas į figūrą
ctx.stroke();

Результат:

Pavyzdys

Nupieškime kvadratuką, vietoj paskutinės linijos uždarydami figūrą per 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(); // uždarome linijas į figūrą
ctx.stroke();

Результат:

Taip pat žiūrėkite

  • metodas fill,
    kuris užpildo figūrą nurodyta spalva