Рассчитать поворот градиента холстаJquery

Программирование на jquery
Ответить
Anonymous
 Рассчитать поворот градиента холста

Сообщение Anonymous »


Я пытаюсь использовать градиент для заполнения области холста, но мне хотелось бы иметь возможность устанавливать угол градиента.

Я знаю, что это возможно, если использовать разные значения при создании градиента (ctx.createLinearGradient(x1, y1, x2, y2)), как показано здесь:


Изображение


Но я, похоже, не могу разобраться в математических расчетах, необходимых для преобразования угла (радианы) в размер градиента, который даст тот же угол (угол, о котором я говорю, перпендикулярен направлению градиента). , поэтому угол в радианах 0 будет показывать градиент справа)

Коротко говоря, как я могу преобразовать (количество) радиан в форму X по Y?

$(document).ready(function(){ var Canvas = document.getElementById("тест"); var ctx = Canvas.getContext("2d"); угол вар = 0,5; ctx.beginPath(); ctx.moveTo(100, 100); ctx.arc(100, 100, 100, 0, -угол, правда); ctx.lineTo(100, 100); ctx.closePath(); // Преобразуем угол в координаты, чтобы наклонить градус // градиент должен быть перпендикулярен верхнему краю дуги вар град = ctx.createLinearGradient(0, 0, 0, 100); grad.addColorStop(0, "rgba(0,0,0,0)"); grad.addColorStop(1, "rgba(0,0,0,0.8)"); ctx.fillStyle = град; ctx.fill(); })

(Чтобы никто не тратил зря время: я специально не хочу использовать context.rotate() в этом случае)
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Jquery»