From 7570d149c9f737846673ca06a22517b35f52ba38 Mon Sep 17 00:00:00 2001 From: namark <namark@disroot.org> Date: Mon, 27 Jul 2020 04:48:51 +0400 Subject: [PATCH] Various motion demo. --- various_motion.cpp | 50 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 various_motion.cpp diff --git a/various_motion.cpp b/various_motion.cpp new file mode 100644 index 0000000..daa5a89 --- /dev/null +++ b/various_motion.cpp @@ -0,0 +1,50 @@ +#include "common/sketchbook.hpp" + +using quadratic_motion = motion<float, quadratic_curve>; + +float block = 0; +auto diagonal_back_and_forth = symphony( + quadratic_motion{0,1, 500ms}, + quadratic_motion{1,0, 500ms} +); + +float2 block2 = float2::zero(); +auto square_around = symphony( + quadratic_motion{0,1, 500ms}, + quadratic_motion{0,1, 500ms}, + quadratic_motion{1,0, 500ms}, + quadratic_motion{1,0, 500ms} +); + +void start(Program& program) +{ + program.draw_loop = [](auto frame, auto delta) + { + + frame.begin_sketch() + .rectangle(rect{ frame.size }) + .fill(0xffffff_rgb) + ; + + frame.begin_sketch() + .rectangle(rect{ frame.size/100, float2::one(10) + block*20 }) + .fill(0x0_rgb) + ; + + frame.begin_sketch() + .rectangle(rect{ frame.size/100, float2::one(10) + float2::j(30) + block2*20 }) + .fill(0x0_rgb) + ; + + loop(block, diagonal_back_and_forth, delta); + loop(std::forward_as_tuple( + block2.x(), + block2.y(), + block2.x(), + block2.y() + ), + square_around, delta + ); + + }; +} -- GitLab