summaryrefslogtreecommitdiff
path: root/graphics.c
diff options
context:
space:
mode:
Diffstat (limited to 'graphics.c')
-rw-r--r--graphics.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/graphics.c b/graphics.c
index 72089fc..d42e104 100644
--- a/graphics.c
+++ b/graphics.c
@@ -62,12 +62,17 @@ main() {
u32 sizeCallbacks = sizeof(callbacks) / sizeof(*callbacks);
TransformCenter img1 = { .centerX = width / 8, .centerY = height * 3/5 },
- img2 = { .centerX = height * 3/5, .centerY = width / 8 };
+ img2 = { .centerX = height / 8, .centerY = width / 8 };
TransformRotate r1 = { .angle = M_PI / 8 }, r2 = { .angle = M_PI * 2 };
+
+ Circle c1 = { .radius = 50, .color = 0x00FFFFFF, }, c2 = { .radius = 50, .color = 0xFFFFFFFF, };
+
const FrameCallback* frameCallbacks[] = {
- Draw_setup((Draw){
- .callbacks = (const PixelCallback**)callbacks, .sizeCallbacks = sizeCallbacks,
+ Interpolate_setup((Interpolate){
+ .startValue = &c1, .endValue = &c2,
+ .value = callbacks[8]->callback_self,
+ .interpolate = (f_interpolate)Interpolate_Circle,
}),
FrameRange_setup((FrameRange){
.startFrame = 25, .endFrame = 125,
@@ -86,6 +91,10 @@ main() {
.value = callbacks[4]->callback_self,
.interpolate = (f_interpolate)Interpolate_TransformRotate,
}),
+ NULL,
+ Draw_setup((Draw){
+ .callbacks = (const PixelCallback**)callbacks, .sizeCallbacks = sizeCallbacks,
+ }),
};
u32 sizeFrameCallbacks = sizeof(frameCallbacks) / sizeof(*frameCallbacks);