Skip to content

ValeryCrane/canvas-animation-app

Repository files navigation

canvas-animation-app

Приложение в рамках совревнования Yandex Cup 2024

Привожу список реализованных функций, а далее рассказываю о каждой подробно

Состояние реализации функций:

Основные функции

  • Рисование при помощи карандаша
  • Стирание при помощи ластика
  • Выбор цвета из палитры
  • Удаление текущего кадра
  • Добавление нового кадра
  • Проигрывание и остановка анимации

Дополнительные функции

  • Генерация N случайных кадров
  • Панель с раскадровкой для навигации по анимации
  • Дублирование текущего кадра
  • Удаление всех кадров сразу
  • Настройка скорости воспроизведения анимации
  • Экспорт анимации в GIF с возможностью поделиться
  • Выбор кастомного цвета рисования из RGB палитры
  • Инструменты для рисования геометрических фигур (есть возможность рисовать прямоугольники, эллипсы и линии, но нет возможности их редактировать: изменять размер или поворачивать)
  • Изменение толщины карандаша и ластика
  • Реализация стека действий для многократной отмены или возврата
  • Увеличение холста при помощи pinch-to-zoom
  • Иконка приложения
  • Полноценная поддержка светлой и темной тем

Реализованные функции

Рисование при помощи карандаша, стирание при помощи ластика, выбор цвета из палитры

Если в нижней панели выбрать карандаш и водить пальцем по экрану - будет отрисовываться путь карандаша. Если выбрать ластик – можно стересть рисунок. Реализована маленькая и расширенная палитры по макетам

Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-11-05.at.01.11.06.mp4

Добавление нового кадра и удаление текущего

По тапу на кнопки в верхней панели можно создать новый кадр или удалить текущий (который сейчас демонстируется). Если остался один кадр, то удалить его не выйдет

Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-11-05.at.01.14.45.mp4

Проигрывание и остановка анимации

При помощи кнопок плей и пауза можно запускать и останавливать анимацию. Во время проигрывания иструменты редактирования кадров недоступны

Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-11-05.at.01.17.22.mp4

Генерация N случайных кадров

По лонгтапу на кнопку добавления кадра можно перейти к меню генерации случайных кадров. Я генерирую случайной перемещение проекции трехмерного куба. Миллион кадров занимает примерно 1.5 ГБ

Simulator+Screen+Recording+-+iPhone+15+Pro+-+2024-11-05+at+01.20.28.mp4

Панель с раскадровкой для навигации по анимации

Можно открыть по тапу на кнопку в верхней панели. Из панели с раскадровкой можно перейти к любому интересующему кадру и отредактировать его

Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-11-05.at.01.27.31.mp4

Дублирование текущего кадра

По лонгтапу на кнопку добавления кадра можно открыть меню с возможностью подублировать текущий кадр и поставить его в конце анимации. После дублирования происходит переход к созданному кадру

Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-11-05.at.01.42.01.mp4

Удаление всех кадров сразу

По лонгтапу на кнопку удаления кадра можно открыть меню с возможностью удалить все кадры сразу. После удаления появляется единственный пустой кадр

Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-11-05.at.01.42.34.mp4

Настройка скорости воспроизведения анимации

По лонгтапу на кнопку воспроизведения можно перейти к меню изменения скорости анимации в FPS (кадры в секунду). Доступны значения от 5 до 60. По нажатию на галочку значение применится, как для анимации, так и для генерируемых GIF файлов

Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-11-05.at.01.43.11.mp4

Экспорт анимации в GIF с возможностью поделиться

В правом нижнем углу находится кнопка поделиться, которая запускает процесс генерации GIF файла, а по завершению открывает экран шеринга. Файлы рамером до 1000 кадров генерируются достаточно быстро. Если больше – нужно подождать

Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-11-05.at.01.43.39.mp4

Выбор кастомного цвета рисования из RGB палитры

По второму тапу на палитру цветов будет открыта RGB палитра. По нажатию на галочку цвет будет выбран

Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-11-05.at.01.44.18.mp4

Инструменты для рисования геометрических фигур

Реализованы три фигуры: прямоугольник, эллипс и линия. Выбрать можно в нижней панели. Но после рисования редактировать их нельзя, только отменить действие

Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-11-05.at.01.44.45.mp4

Изменение толщины карандаша и ластика

По тапу на кисточку в нижней панели можно изменить толщину карандаша и ластика

Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-11-05.at.01.46.00.mp4

Реализация стека действий для многократной отмены или возврата

Кнопки в правом верхнем углу позволяют отменять или возвращать действия редактирования холста

Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-11-05.at.01.45.39.mp4

Иконка приложения

Screenshot 2024-11-05 at 01 39 15

Полноценная поддержка светлой и темной тем

Приложение полноценно поддерживает светлую и темную темы simulator_screenshot_9CCB57B9-A4BF-47E5-B1A1-2EDFAE3D2870 simulator_screenshot_590DAB2F-3B83-4706-BCCF-9131C57BF87B

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages