|
|
608c44 |
|
|
|
608c44 |
#include <math.h></math.h>
|
|
|
608c44 |
#include <ctype.h></ctype.h>
|
|
|
608c44 |
#include <stdio.h></stdio.h>
|
|
|
608c44 |
#include <stdlib.h></stdlib.h>
|
|
|
608c44 |
#include <string.h></string.h>
|
|
|
608c44 |
|
|
|
608c44 |
#include <helianthus.h></helianthus.h>
|
|
|
608c44 |
|
|
|
608c44 |
|
|
|
608c44 |
#include "arg.inc.c"
|
|
|
608c44 |
#include "img.inc.c"
|
|
|
608c44 |
#include "img.ldr.inc.c"
|
|
|
608c44 |
#include "filter.base.inc.c"
|
|
|
608c44 |
#include "filter.matrix.inc.c"
|
|
|
608c44 |
#include "filter.blend.inc.c"
|
|
|
608c44 |
#include "filter.curve.inc.c"
|
|
|
608c44 |
#include "filter.noise.inc.c"
|
|
|
608c44 |
#include "filter.blur.inc.c"
|
|
|
608c44 |
#include "filter.wind.inc.c"
|
|
|
608c44 |
#include "filter.icy.inc.c"
|
|
|
608c44 |
|
|
|
608c44 |
|
|
|
608c44 |
|
|
|
608c44 |
Animation anim;
|
|
|
608c44 |
char *argvv[] = {"-i", "data/input/text.png", "-o", "data/output/icy-text.png", "-s", "4" };
|
|
|
608c44 |
char **argv;
|
|
|
608c44 |
int argc;
|
|
|
608c44 |
|
|
|
608c44 |
|
|
|
608c44 |
void generate() {
|
|
|
608c44 |
if (anim) {
|
|
|
608c44 |
animationDestroy(anim);
|
|
|
608c44 |
anim = NULL;
|
|
|
608c44 |
}
|
|
|
608c44 |
Img img = {};
|
|
|
608c44 |
if (icyGenerate(&img, argc, argv)) {
|
|
|
608c44 |
unsigned char *data = imgToInt(&img);
|
|
|
608c44 |
anim = createAnimationFromImage(img.w, img.h, data, FALSE);
|
|
|
608c44 |
free(data);
|
|
|
608c44 |
if (img.w < 512) {
|
|
|
608c44 |
windowSetWidth(img.w);
|
|
|
608c44 |
windowSetHeight(img.h);
|
|
|
608c44 |
}
|
|
|
608c44 |
imgDestroy(&img);
|
|
|
608c44 |
}
|
|
|
608c44 |
}
|
|
|
608c44 |
|
|
|
608c44 |
|
|
|
608c44 |
void init() {
|
|
|
608c44 |
background(COLOR_BLACK);
|
|
|
608c44 |
generate();
|
|
|
608c44 |
}
|
|
|
608c44 |
|
|
|
608c44 |
|
|
|
608c44 |
void draw() {
|
|
|
608c44 |
if (keyWentDown("space")) generate();
|
|
|
608c44 |
noStroke();
|
|
|
608c44 |
rectTextured(anim, 0, 0, windowGetWidth(), windowGetHeight());
|
|
|
608c44 |
}
|
|
|
608c44 |
|
|
|
608c44 |
|
|
|
608c44 |
int main(int largc, char **largv) {
|
|
|
608c44 |
if (largc > 1) {
|
|
|
608c44 |
argc = largc - 1;
|
|
|
608c44 |
argv = largv + 1;
|
|
|
608c44 |
} else {
|
|
|
608c44 |
argc = sizeof(argvv)/sizeof(*argvv);
|
|
|
608c44 |
argv = argvv;
|
|
|
608c44 |
}
|
|
|
608c44 |
windowSetInit(&init);
|
|
|
608c44 |
windowSetDraw(&draw);
|
|
|
608c44 |
windowRun();
|
|
|
608c44 |
return 0;
|
|
|
608c44 |
}
|
|
|
608c44 |
|