Я работаю над игрой HTML5. Мне нужно нарисовать линии хвоста в холсте и проверить пересечения в игре, которая является игрой в стиле Трон.
Я фактически использую функцию drawLine()
из JCanvas, но JCanvas не предоставил мне способ проверить пересечение линии, я выкопал в источнике и нашел использование объекта ctx
, и в конце используемой функции я вернул объект, поэтому я могу использовать метод ctx.isPointInPath()
для достижения того, что мне нужно, но не работает, возвращает false
каждый раз...
Я действительно не понимаю, что такое путь - будет ctx.isPointInPath()
возвращать true
только для точек, которые установлены с помощью ctx.moveTo()
после ctx.beginPath()
? Или он вернет true
для всех точек, которые находятся между 2 последовательными ctx.moveTo()
, которые связаны с помощью ctx.lineTo()
?
Что такое ctx.closePath()
?
И в чем разница между:
{
ctx.closePath();
ctx.fill();
ctx.stroke();
}
и
{
ctx.fill();
ctx.stroke();
ctx.closePath();
}