Галактика
Опубликовано 31 октября, 2024 - 12:44 пользователем Савинцев Александр
Отрисовка демосцены происходит в функции play().
Точки распределены с помощью параметрическоко уравнения окружности в виде спирали,коэффициент t при cos() задает ширину, а коэффициент t/4 при sin() задает высоту, если добавить к коэффициентам С, то спираль будет отдалятся от центра. Количество точек зависит от шага t, t меняется в промежутке от минимального размера спирали до максимального по ширине.
Переменная С задает скорость вращения и нужна для работы анимации.
C+=0.005; for(let t = 50; t < W/2; t+=0.2){ ctx.fillStyle = 'red'; ctx.beginPath(); let x = t*Math.cos(t*t+C); let y = t/4*Math.sin(t*t+C); ctx.arc(x+W/2, y+H/2, 1, 0, 2*Math.PI); ctx.fill(); }