Лето на море

В данной работе реализована анимация кораблика, качающегося на волнах, облаков, плывущих по небу, и светящегося солнышка.

Создание фигур:

  • Небо и вода рисуются прямоугольниками, которые заполняют соответствующие части холста.
  • Солнце рисуется как круг с помощью функции arc. Лучи солнца создаются линиями, которые исходят из центра круга.
  • Облака состоят из нескольких кругов, которые рисуются рядом друг с другом, создавая форму облака.
  • Кораблик состоит из нескольких многоугольников, каждый из которых рисуется с помощью набора точек.

Анимация объектов:

  • Кораблик движется по синусоидальной траектории, изменяя свои координаты по горизонтали и вертикали. Это создает эффект плавания.
  • Облака перемещаются по горизонтали. Когда облако выходит за пределы холста, оно возвращается на другую сторону.
  • Лучи солнца изменяют свою длину, создавая эффект мерцания. Это достигается изменением переменной, отвечающей за длину лучей.

Функции:

  • drawBackground: Рисует фон, включая небо и воду.
  • drawSun: Рисует солнце и его лучи.
  • drawClouds: Рисует облака.
  • drawObject: Рисует кораблик.
  • animate: Основная функция анимации, которая обновляет положение объектов и перерисовывает их на холсте.
  • startAnimation и stopAnimation: Управляют запуском и остановкой анимации.