Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Изображение в окружности (canvas) (https://javascript.ru/forum/misc/69994-izobrazhenie-v-okruzhnosti-canvas.html)

HuHguZ 02.08.2017 01:34

Изображение в окружности (canvas)
 
Здравствуйте, такой вопрос, как мне в качестве заливки окружности на canvas сделать какое-нибудь изображение? При этом окружность может перемещаться по экрану и изменять величину радиуса, изображение тоже должно изменяться. Возможно ли такое? Вот пример кода отрисовки окружности:
ctx.beginPath();
ctx.fillStyle = pl[8];
ctx.fill();
ctx.strokeStyle = pl[9];
ctx.lineWidth = Math.round(0.02 * pl[2]);
ctx.stroke();
ctx.arc(pl[0], pl[1], pl[2], 0, Math.PI * 2, false);
ctx.closePath();

Alexandroppolus 02.08.2017 18:29

варианты:

1) делать обрезку (путь в виде окружности), потом на это дело рисовать картинку - отрисуется только внутри обрезки
ctx.beginPath();
ctx.arc(0, 0, 60, 0, Math.PI * 2, true);
ctx.clip();


2) fillStyle в виде паттерна с картинкой. Потом рисовать закрашенную окружность - будет соответствующая заливка.

рони 02.08.2017 18:47

http://know-online.com/post/canvas-zakruglit-kartinku
живой пример из ссылки выше
http://jsfiddle.net/t2userkq/


Часовой пояс GMT +3, время: 06:28.