Release of G'MIC 3.1

David_Tschumperle, could you add more shapes and parameters to Fractalize filter in next GMIC ?

I got a error now:

[gmic] *** Error in ./rep_stitch/*substitute/ *** Unknown command or filename '11--1'.

Relevant part of code:

+rep_find_nonduplicate_angles ${11--1} => rad_ang

Isn’t this suppose to work? I have ${m--n} everywhere in my .gmic file, so they did work before.

It is supposed to work if you have more than 10 parameters set when calling the command.

Oh. Is there like a way to set default arguments for ${11–1}, but if you only have $11, it only takes $11? I think I’ll try that in a minute.

Ah yes, got it:

if narg(${11--1})
 angs_args=${11--1}
else
 angs_args=0,60,120
fi

Sorry for the noise.

I you have exactly 11 parameters, then ${11--1} and $11 are equivalent.

Noted. One last thing, is there a way to make this more random? I want to set seed directly per different values, and return the first number of seed.

$ 16,16,1,1,srand(y*w+x);u(0,100);

It looks well, not random as of now:

image

  16,16,1,1,srand(y*w+x+100*u);u(0,100);

although setting a different random seed at each pixel is probably not a good idea, after all.

All in all, it’s a small matter - but maybe there are these sequences of mysterious numbers to be removed?

  • 2022/04/26: Release of version 3.1.0
3 Likes

I am going to be super confused by all the great changes when I get back from my hiatus from filter making and testing. :slight_smile:

Now that I’m able to use 3.1 from the GUI side of things, I have found a first error.

$ sp cat echo ${rep_test\ 96}

Error Message: [gmic] *** Error in ./*substitute/rep_test/ (file 'C:\Users\User\AppData\Roaming\user.gmic', line #1170) *** Command 'if': Invalid argument '39,61,61,39,112,100,110,95,112,97,108&&whd#-1>96': Unrecognized item '39,61,61,39,112,100,110,95,112,97,108' in expression '39,61,61,39,112,100,110,95,112,97,108&&whd#-1>96'.
[gmic] Command 'if' has the following description:

rep_test:
format_choice=${arg\ $1+1,gpl,pdn_pal,jasc}
use_pdn:='$format_choice'=='pdn_pal'

if $use_pdn&&whd#-1>96 u pdn_mode
else u non_pdn_mode
fi

This used to work by the way. Can be fixed easily though by wrapping with [].

I see the problem. I’ll fix it for 3.1.1.
Workaround : Add parentheses around:

use_pdn:=('$format_choice'=='pdn_pal')

Should be fixed with: