Reptorian G'MIC Filters

Looks like I really made a bad mistake on the rep_equi2cube command. I will have to fix the seam issue on the top and bottom faces. I’ll update that. It’s not hard to fix though. I just have to replace y>edge with y>=edge. Or maybe the seam is everywhere, we’ll see what happens from there.

@iarga The upgrade will come without the need to copy and paste from github tommorow. Pull Request been accepted.

@afre I just started using the cli version of gmic, I can see why you prefer it at times. It’s easier to work with much bigger files whereas with it would be a big pain in the arse when using graphic softwares. I tested my rep_equi2cube on a 16k starmap for modding a game to test its real world viability. What I don’t like is having to do n 0,255 or n 0,1 before export :/. I would like to see the numbers. I can do that with error code though.

CLI is easier because you aren’t encumbered by another app’s rules, meaning shorter more concise code.

Sometimes, I wish there was an easier way to browse values. There is display_array but I wish there was an in console method.

BTW, @David_Tschumperle, da behaves kind of oddly compared to when I last checked, which was a long time ago. A Windows problem? I won’t describe it; just take a look.

What is odd with da ? This seems to work fine here.

I just had released Glass Vignette in a pull request. Also, fixed equi2cube.

Can you create an organic fractal generator like Mandebulb 3D or Apophysis
for example

It’s possible, but on the level of those programs, it would take me months to do so. So, probably no. There is Thorn Fractal though.

Something like this ?

http://paulbourke.net/fractals/thorn/

Yes, like that, but extended. Testing → Reptorian → Thorn Fractal / Secant Sea

1 Like

Those look like there were passed through two stages of generators respectively. What I mean by that is that sub-patterns are placed within a master-pattern, like a more sophisticated version of montage. Maybe this is a hint toward a G’MIC filter. :wink:

1 Like

This is very beautiful. I’ve already in for 30 minutes testing every variable. And it’s very fast to compute.

3 Likes

Is it possible to add recursions to some depth on that Thorn Fractal formulas?

That means adding another for loop. Easy, however I may do that at another time. Haven’t slept well for the past 2 days.

Mini exercise, what does this do?

mw=0
mh=0
size1=0
size2=1
nextterm=0
ti=$!
repeat $!
if w#$>>$mw mw={w#$>} fi
if h#$>>$mh mh={h#$>} fi
done
do
if $nextterm $nextterm,$nextterm,1,1,$nextterm fi
size1={$size2}
size2={$nextterm}
nextterm={$size1+$size2}
while !(($nextterm>$mw)&&($nextterm>$mh))
$nextterm,$nextterm,1,1,$nextterm
ci=0
switch=0
do
if $ci%2
if floor($switch/2)%2 rv[$ti,{$ti+1}] fi
a[$ti,{$ti+1}] x
else
if floor($switch/2)%2  rv[$ti,{$ti+1}] fi
a[$ti,{$ti+1}] y
fi
ci+=1
switch+=1
while $!!=$ti+1
k.

How do I execute this ?

Copy and paste to code local or code global.

Golden spiral pattern ?

Yep. It’s based off the idea of Fibonacci Fill for Paint.NET. I extended it to allow to apply the effect to multiple layers and disabling switch cases for a non-spiral version of Fibonacci Fill. As I have made pal command, I can add 200+ palettes to it.

  1. Can you combine Fibonacci recursive pattern with Thorn Fractal ?

  2. Are there any others patterns/fractals like Thorn Fractal ?

  3. Could you remake Gnofract in Gimp? It’s open source http://edyoung.github.io/gnofract4d/

  1. That would take some bit of experimentation and a fair bit of math. A bit beyond what I can do.
  2. Mandelbrot exist in G’MIC. You can also make one of your own.
  3. That would take many months even if it open-source.

By the way, I have made a pull request related to Fibonacci Texture - Fix to Object Size filter ; pal cli fixes, and new Fibonacci gui filter and cli filters #230

1 Like

You said it is easy to add another loop. Fibonacci can be replaced with this special for loop.
Could you try when you have the time with fibonacci loop to add depth in Thorn fractal to see when will be produced?

 public static int fibonacciLoop ( int nthThornFractal ) {
    //use loop
    int previouspreviousNumber, previousNumber = 0, currentNumber = 1;

    for (int i = 1; i < nthThornFractal ; i++) {

        previouspreviousNumber = previousNumber;

        previousNumber = currentNumber;

        currentNumber = previouspreviousNumber + previousNumber;

    }
    return currentNumber;
}