tryng to really glitch my picz

This commit is contained in:
le vieux
2020-11-10 03:58:18 +01:00
parent 905c61628f
commit e7c726320a
6 changed files with 99 additions and 10 deletions

View File

@@ -14,6 +14,7 @@
#include "../floatimg.h"
#include "glitches.h"
#include "crapulator.h"
// XXX #include "fonctions.h"
@@ -24,7 +25,7 @@ int convert_to_gray; /* needed by fonctions.c */
/* -------------------------------------------------------------- */
int interpolator(char *pattern, char *outdir, int Nsteps)
{
FloatImg A, B, Out, *pFirst, *pSecond, *pTmp;
FloatImg A, B, Out, *pFirst, *pSecond;
glob_t globbuf;
int foo, idx, ipng, w, h, step;
int iarray[3];
@@ -51,15 +52,13 @@ fimg_create(&A, w, h, 3); pFirst = &A;
fimg_create(&B, w, h, 3); pSecond = &B;
fimg_create(&Out, w, h, 3);
pTmp = NULL;
ipng = 0;
for (idx=0; idx<globbuf.gl_pathc; idx++) {
cptr = globbuf.gl_pathv[idx];
/* read the next file in B */
fprintf(stderr, "loading %s\n", cptr);
fprintf(stderr, "loading %s\r", cptr);
foo = fimg_load_from_dump(cptr, &B);
if (foo) {
fprintf(stderr, "load #%d from dump -> %d\n", idx, foo);
@@ -68,7 +67,7 @@ for (idx=0; idx<globbuf.gl_pathc; idx++) {
/* here, we can insert the input filter */
/* OK try it ... */
foo = crapulator(&B, 8, 1.0);
foo = crapulator(&B, 0, 256.7);
if (foo) {
fprintf(stderr, "crapulator failure %d\n", foo);
exit(1);
@@ -79,6 +78,7 @@ for (idx=0; idx<globbuf.gl_pathc; idx++) {
fimg_interpolate(pSecond, pFirst, &Out, coef);
/* here we can insert the output filter */
kill_a_few_lines(&Out, 3.14159, 500);
sprintf(line, "%s/%05d.png", outdir, ipng);
foo = fimg_save_as_png(&Out, line, 0);
@@ -106,15 +106,35 @@ fprintf(stderr, "generated %d png files\n", ipng);
return 0;
}
/* -------------------------------------------------------------- */
void help(void)
{
puts("\tINTERPOLATOR\noptions:");
/* may be we can make options incoherent, like
* the options of 'fonderie' software ?
*/
exit(0);
}
/* -------------------------------------------------------------- */
int main (int argc, char *argv[])
{
int foo;
int nbrsteps = 9;
int opt;
fprintf(stderr, "*** %s : compiled by tTh, %s %s\n", __FILE__,
__DATE__, __TIME__);
fimg_print_version(2);
while ((opt = getopt(argc, argv, "v")) != -1) {
switch(opt) {
case 'v': verbosity++; break;
}
}
/* TO BE CONTINUED *****/
if (4 != argc) {
fprintf(stderr, "args: <in globpattern> <out dir> <nbrsteep>\n");
exit(1);
@@ -124,7 +144,7 @@ nbrsteps = atoi(argv[3]);
foo = interpolator(argv[1], argv[2], nbrsteps);
fprintf(stderr, "interpolator -> %d\n", foo);
fprintf(stderr, "interpolator give a %d score\n", foo);
return 0;
}