





 
 




 
 


Hi
Since Ingo didn't want to delve deeper into the rabbit hole, I started to
rewrite his Lsystem code to work in POVRay v3.7.
The changes were so many that the code is now quite different from his (except
perhaps the code for the L_Transform macro). The most important change is to use
an array of functions instead of macros chosen with a switch statement.
Here's what I've made so far:
https://github.com/tok/POVRayLsystem
I may a add bit more functionality and some more examples later.

Tor Olav
http://subcube.com
https://github.com/tok
Post a reply to this message


 
 




 
 


"Tor Olav Kristensen" <tor### [at] TOBEREMOVEDgmailcom> wrote:
> Hi
>
> Since Ingo didn't want to delve deeper into the rabbit hole, I started to
> rewrite his Lsystem code to work in POVRay v3.7.
>
> The changes were so many that the code is now quite different from his (except
> perhaps the code for the L_Transform macro). The most important change is to use
> an array of functions instead of macros chosen with a switch statement.
>
> Here's what I've made so far:
> https://github.com/tok/POVRayLsystem
>
> I may a add bit more functionality and some more examples later.
>
> 
> Tor Olav
> http://subcube.com
> https://github.com/tok
Hi TOK,
My Goodness, that's an awsome piece of work and a big THANK YOU for delving into
that rabbit hole.
If it is okay with you I'll provide some more examples as I already collected a
bunch of axioms and rules some of which worked as predicted. Others had to be
adapted (like the one below from P. Bourke,
http://paulbourke.net/fractals/lsys).
Well, it's one my favorite LSystem things  they call it Pythagoras tree  here
at iteration level 9.
Cheers, Droj
Post a reply to this message
Attachments:
Download 'pythagoras_tree.png' (195 KB)
Preview of image 'pythagoras_tree.png'


 
 




 
 


"Droj" <803### [at] drojde> wrote:
> "Tor Olav Kristensen" <tor### [at] TOBEREMOVEDgmailcom> wrote:
> > Hi
> >
> > Since Ingo didn't want to delve deeper into the rabbit hole, I started to
> > rewrite his Lsystem code to work in POVRay v3.7.
> >
> > The changes were so many that the code is now quite different from his (except
> > perhaps the code for the L_Transform macro). The most important change is to use
> > an array of functions instead of macros chosen with a switch statement.
> >
> > Here's what I've made so far:
> > https://github.com/tok/POVRayLsystem
> >
> > I may a add bit more functionality and some more examples later.
> >
> > 
> > Tor Olav
> > http://subcube.com
> > https://github.com/tok
>
> Hi TOK,
>
> My Goodness, that's an awsome piece of work and a big THANK YOU for delving into
> that rabbit hole.
> If it is okay with you I'll provide some more examples as I already collected a
> bunch of axioms and rules some of which worked as predicted. Others had to be
> adapted (like the one below from P. Bourke,
> http://paulbourke.net/fractals/lsys).
>
> Well, it's one my favorite LSystem things  they call it Pythagoras tree  here
> at iteration level 9.
>
> Cheers, Droj
Here is the Povray file
Post a reply to this message
Attachments:
Download 'pythagoras_tree.pov.txt' (3 KB)


 
 




 
 


"Droj" <803### [at] drojde> wrote:
> "Tor Olav Kristensen" <tor### [at] TOBEREMOVEDgmailcom> wrote:
> > Hi
> >
> > Since Ingo didn't want to delve deeper into the rabbit hole, I started to
> > rewrite his Lsystem code to work in POVRay v3.7.
> >
> > The changes were so many that the code is now quite different from his (except
> > perhaps the code for the L_Transform macro). The most important change is to use
> > an array of functions instead of macros chosen with a switch statement.
> >
> > Here's what I've made so far:
> > https://github.com/tok/POVRayLsystem
> >
> > I may a add bit more functionality and some more examples later.
> >
> > 
> > Tor Olav
> > http://subcube.com
> > https://github.com/tok
>
> Hi TOK,
>
> My Goodness, that's an awsome piece of work and a big THANK YOU for delving into
> that rabbit hole.
> If it is okay with you I'll provide some more examples as I already collected a
> bunch of axioms and rules some of which worked as predicted. Others had to be
> adapted (like the one below from P. Bourke,
> http://paulbourke.net/fractals/lsys).
>
> Well, it's one my favorite LSystem things  they call it Pythagoras tree  here
> at iteration level 9.
Thank you Droj. It was an interesting challenge to make this.
That's indeed a nice Lsystem tree. I think I like it more than the one PB made.
Is it this axiom and rule that you had to adapt ?
axiom = FX
X > >[FX]+FX
angle = 40
If so, then I've shown how this can be used without much adaptation in a new
example in the repository.
Please post some more images made with the axioms and rules that you've
collected.

Tor Olav
http://subcube.com
https://github.com/tok
Post a reply to this message


 
 




 
 


"Tor Olav Kristensen" <tor### [at] TOBEREMOVEDgmailcom> wrote:
Hi TOK,
>
> Thank you Droj. It was an interesting challenge to make this.
>
I suppose it was more than one weekend's work.
> That's indeed a nice Lsystem tree. I think I like it more than the one PB made.
>
Thank you so much. Sometimes coding morons like me have their bright moments.
> Is it this axiom and rule that you had to adapt ?
>
> axiom = FX
> X > >[FX]+FX
> angle = 40
>
Yes, this was the one. I had to scratch my head more than once when I used it.
It couldn't be symmetric and an angle of 40 could not be right.
I usually trust PB a lot but I guess something went wrong during publishing...
> If so, then I've shown how this can be used without much adaptation in a new
> example in the repository.
I definitely support the idea. We are still scratching on the surface of what
LSystem is capable of.
But do you think you still have the energy and the time to lift that baby from
2D to 3D?
Think of the 2D Hilbert curve and imagine how it would look in 3D.
I usually say it looks like the mad plummer struck again. But should we get
there I would die happily.
Gilles Tran published something like that but it is more than weird.
>
> Please post some more images made with the axioms and rules that you've
> collected.
>
Of course I will but to be adequate to your examples I have to dig deep, bite my
fingernails and scratch my head a lot more.
Cheers, Droj
Post a reply to this message


 
 




 
 


"Droj" <803### [at] drojde> wrote:
> "Tor Olav Kristensen" <tor### [at] TOBEREMOVEDgmailcom> wrote:
>
> Hi TOK,
> >
> > Thank you Droj. It was an interesting challenge to make this.
> >
>
> I suppose it was more than one weekend's work.
>
> > That's indeed a nice Lsystem tree. I think I like it more than the one PB made.
> >
> Thank you so much. Sometimes coding morons like me have their bright moments.
>
> > Is it this axiom and rule that you had to adapt ?
> >
> > axiom = FX
> > X > >[FX]+FX
> > angle = 40
> >
> Yes, this was the one. I had to scratch my head more than once when I used it.
> It couldn't be symmetric and an angle of 40 could not be right.
> I usually trust PB a lot but I guess something went wrong during publishing...
>
> > If so, then I've shown how this can be used without much adaptation in a new
> > example in the repository.
>
> I definitely support the idea. We are still scratching on the surface of what
> LSystem is capable of.
>
> But do you think you still have the energy and the time to lift that baby from
> 2D to 3D?
> Think of the 2D Hilbert curve and imagine how it would look in 3D.
> I usually say it looks like the mad plummer struck again. But should we get
> there I would die happily.
> Gilles Tran published something like that but it is more than weird.
> >
> > Please post some more images made with the axioms and rules that you've
> > collected.
> >
> Of course I will but to be adequate to your examples I have to dig deep, bite my
> fingernails and scratch my head a lot more.
>
> Cheers, Droj
Here is the Hilbert curve
Post a reply to this message
Attachments:
Download 'hilbert_curve.pov.txt' (3 KB)


 
 




 
 


"Tor Olav Kristensen" <tor### [at] TOBEREMOVEDgmailcom> wrote:
> [...] I started to
> rewrite his Lsystem code to work in POVRay v3.7.
>
I already started wondering about the silence from Norway, but then, as Jack out
of the box, there is beautiful code. Thank you Tor Olav.
ingo
Post a reply to this message


 
 




 
 


"Tor Olav Kristensen" <tor### [at] TOBEREMOVEDgmailcom> wrote:
> Hi
>
> Since Ingo didn't want to delve deeper into the rabbit hole, I started to
> rewrite his Lsystem code to work in POVRay v3.7.
>
> The changes were so many that the code is now quite different from his (except
> perhaps the code for the L_Transform macro). The most important change is to use
> an array of functions instead of macros chosen with a switch statement.
>
> Here's what I've made so far:
> https://github.com/tok/POVRayLsystem
>
> I may a add bit more functionality and some more examples later.
>
> 
> Tor Olav
> http://subcube.com
> https://github.com/tok
Hi Tor,
This is great work!
Przemyslaw Prusinkiewiczs book, "The Algorithmic Beauty of Plants" was one of
the first books I bought on LSystems.
If anyone is interested, you can download the book here:
http://algorithmicbotany.org/papers/abop/abop.pdf
(or buy it from a well known website!)
Thank.
Post a reply to this message


 
 




 
 


"Droj" <803### [at] drojde> wrote:
> >
> > axiom = FX
> > X > >[FX]+FX
> > angle = 40
> >
> Yes, this was the one. I had to scratch my head more than once when I used it.
> It couldn't be symmetric and an angle of 40 could not be right.
> I usually trust PB a lot but I guess something went wrong during publishing...
>
Have to correct myself.
It took some time to figure out how it works but it is symmetric and the angle
is acceptable, too.
But his rule means branches grow (>) with each iteration instead getting smaller
(<).
Cheers, Droj
Post a reply to this message


 
 




 
 


"Droj" <803### [at] drojde> wrote:
> "Tor Olav Kristensen" <tor### [at] TOBEREMOVEDgmailcom> wrote:
>
> Hi TOK,
> >
> > Thank you Droj. It was an interesting challenge to make this.
> >
>
> I suppose it was more than one weekend's work.
>
> > That's indeed a nice Lsystem tree. I think I like it more than the one PB made.
> >
> Thank you so much. Sometimes coding morons like me have their bright moments.
>
> > Is it this axiom and rule that you had to adapt ?
> >
> > axiom = FX
> > X > >[FX]+FX
> > angle = 40
> >
> Yes, this was the one. I had to scratch my head more than once when I used it.
> It couldn't be symmetric and an angle of 40 could not be right.
> I usually trust PB a lot but I guess something went wrong during publishing...
>
> > If so, then I've shown how this can be used without much adaptation in a new
> > example in the repository.
>
> I definitely support the idea. We are still scratching on the surface of what
> LSystem is capable of.
Yes, you are probably right.  But first I'm curious about what has already been
done with Lsystems.
I don't know if this reprint (or new edition ?) "The Fractal Geometry of Nature"
book by Mandelbrot contains any Lsystem images/rules:
https://www.amazon.com/FractalGeometryNatureBenoitMandelbrot/dp/1648370403
If so then I'll have to consider buying it.
> But do you think you still have the energy and the time to lift that baby from
> 2D to 3D?
> Think of the 2D Hilbert curve and imagine how it would look in 3D.
> I usually say it looks like the mad plummer struck again. But should we get
> there I would die happily.
> Gilles Tran published something like that but it is more than weird.
Yes, I remember his crazy plumbing work. Very fascinating. I really miss his
wonderful art in here.
When I replaced macros with functions in my Lsystem library I tried to make it
so that 3D functionality could be added later without much redesign.
But I'm not sure how the rules should work in 3D. Have you seen any such
images with accompanying 3D rules? If so, that would help me understand what is
needed.
> > Please post some more images made with the axioms and rules that you've
> > collected.
> >
> Of course I will but to be adequate to your examples I have to dig deep, bite my
> fingernails and scratch my head a lot more.
No worries. I'll add a Hilbert curve example as you suggested.

Tor Olav
http://subcube.com
https://github.com/tok
Post a reply to this message


 
 




 