Обсуждение статьи "Торговые инструменты на MQL5 (Часть 29): Пошаговая анимация кривой-бабочки на Canvas"

 

Опубликована статья Торговые инструменты на MQL5 (Часть 29): Пошаговая анимация кривой-бабочки на Canvas:

В этой статье мы расширим нашу программу анимации кривой-бабочки, включив в нее четырехэтапный конвейер анимации: последовательное рисование кривых, плавное проявление заливки крыльев, детализированный рендеринг тела и непрерывный полет. Мы реализуем управляемую таймером машину состояний, четыре осциллятора для взмахов крыльев, вертикального покачивания, горизонтального раскачивания и наклона, а также неоновое свечение по контурам крыльев и циклическую смену цвета в зависимости от оттенка. Вы узнаете, как структурировать эти эффекты на холсте (canvas) MetaTrader 5 для обеспечения четкого и контролируемого воспроизведения.

Анимация разворачивается в четыре последовательных этапа: контур кривой постепенно формируется путем изменения параметра t от нуля до 12π; затем происходит плавное проявление заливки крыльев от прозрачности до полной непрозрачности; далее плавно появляются детали поверхности и тело; и, наконец, бабочка переходит в непрерывный полет. Каждый этап управляется миллисекундным таймером, который на каждом тике увеличивает соответствующую переменную состояния и передает управление следующему этапу после завершения.

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

Во время полета мы создаем неоновое свечение, рисуя несколько полупрозрачных смещенных линий вокруг каждого контура крыла. Мы также циклически меняем цвет крыльев в каждом фрейме, преобразуя цвета в модели HSV, изменяя оттенок и преобразуя обратно. Это создаёт эффект пульсации крыльев во время полёта бабочки. Мы реализуем все это поверх существующего конвейера рендеринга с суперсэмплированием, полностью управляемого обработчиком событий таймера. Наглядное представление результата приведено ниже.

BUTTERFLY CURVE ANIMATION ROADMAP


Автор: Allan Munene Mutiiria

 
Отличная работа! Так держать!