CanvasRenderingContext2D.isPointInPath()

CanvasRenderingContext2D.isPointInPath() - чи знаходиться точка у контурі.

Синтаксис:

ctx.isPointInPath( x, y );

Параметри:

ctx - об'єкт CanvasRenderingContext2D.

x - координати осі X.

y - координати ось Y.

Опис:

isPointInPath() метод об'єкту CanvasRenderingContext2D який перевіряє чи знаходиться вказана точка всередині поточного контора полотна canvas. Повертає логічне значення: true або false.

Приклад:

Ваш браузер не підтримує canvas. var canvas= document.getElementById("canvas"); crt = canvas.getContext("2d"); crt.rect(20,20,100,120); var b = crt.isPointInPath(26, 26); alert(b); // true alert( crt.isPointInPath(5, 2) ); //false var canvas= document.getElementById("canvas"); crt = canvas.getContext("2d"); crt.beginPath(); crt.moveTo(20,20); crt.lineTo(40, 20); crt.lineTo(40, 40); crt.lineTo(20, 40); crt.closePath(); var b = crt.isPointInPath(26, 26); alert(b); // true

Приклад різниці між isPointInPath і isPointInStroke:

Ваш браузер не підтримує canvas

var canvas= document.getElementById("myCanvas"); crt = canvas.getContext("2d"); canvas.onclick=function(e){ document.getElementById("test").innerHTML="<b>isPointInPath("+e.offsetX+", "+e.offsetY+")</b> = "+crt.isPointInPath(e.offsetX, e.offsetY) + " <b>isPointInStroke("+e.offsetX+", "+e.offsetY+")</b> = "+crt.isPointInStroke(e.offsetX, e.offsetY); } crt.strokeStyle="red"; crt.rect(25, 25, canvas.width-50, canvas.height-50); crt.stroke();