Стандартная библиотека · 6 из 17
Плазма
«Плазма» — классика демосцены девяностых: экран переливается цветными пятнами, которые текут и не повторяются. Ни случайности, ни сложной физики: несколько синусов от координат и времени, сложенных вместе. Каждый синус — волна, их сумма — пятна, а время сдвигает волны, и пятна плывут.
Что сделать
Посчитайте яркость плазмы в точке (x, y) в момент t: сложите четыре синуса, переведите сумму в число от 0 до 1.
Что приходит
xиy— точка экранаt— время
Что вернуть
Дробное число от 0 до 1.
Допишите функцию plazma в редакторе справа.
Результат верните через return — то, что
напечатано, на проверку не влияет.
с графикой когда тесты пройдут, ответ вашей функции нарисуется · все задачи с графикой
В точке (0, 0) при t = 0: sin(0) + sin(0) + sin(0) + sin(40 / 5) = 0,989…; (0,989 + 4) / 8 = 0,6237….
plazma(0, 0, 0)
0.6236697808279227
s = sin(x / 8 + t) + sin(y / 6 − t) + sin((x + y) / 10 + t / 2)
+ sin(r / 5 − t), где r — расстояние от точки до центра (32, 24): math.hypot(x − 32, y − 24). Каждый синус — от −1 до 1, сумма — от −4 до 4. Ответ — (s + 4) / 8. Синус — math.sin, от радиан, как есть: переводить ничего не нужно.
Обсуждение
Вопросов пока нет.
Войдите, чтобы спросить.