**The definitions demonstrate how to create 3D Branching Structures using Rabbit. How to control parameters: angle, thickness, length.**

More about Branching Structures: http://algorithmicbotany.org/papers/abop/abop-ch1.pdf

The meanings of the symbols:

Fmove forward at distanceL(Step Length) and draw a line

fmove forward at distanceL(Step Length) without drawing a line

+turn leftA(Default Angle) degrees

–turn rightA(Default Angle) degrees

\roll leftA(Default Angle) degrees

/roll rightA(Default Angle) degrees

^pitch upA(Default Angle) degrees

&pitch downA(Default Angle) degrees

|turn around 180 degrees

Jinsert point at this position

“multiply current length bydL(Length Scale)

!multiply current thickness bydT(Thickness Scale)

[start a branch(push turtle state)

]end a branch(pop turtle state)

A/B/C/D..placeholders, used to nest other symbols

Get 3D Branching Structures #1 Get 3D Branching Structures #2

what is denoted by these symbols:

1. “!”

2.”

We’ve updated the information above to answer your question.

Regards

thanks a lot!!!!

Hi morphocode, i just trying to make 3d branching with your tutorial, which can growth in the direction of sunpath. but i’m confused to locate orientation input parameter in turtle. Are growth process step can manage by timed? Can you explain me?

Here the attachment file : http://www.grasshopper3d.com/forum/topics/rabbit-orientation-growth

Hi yaser,

You can’t control the growth of the L-System using a vector. The turtle is unaware of external vectors during the interpretation of the L-System symbols. You can specify initial position and orientation but after that the Turtle will move according to the growth rules. If you want to make the L-system grow in some direction, you need to experiment with the production rules and the angle increment.

probably Galapagos can be helpful in this case…

Best Regards,

Morphocode

hello,

thanks for a great release. what’s is the string for multiply current angle by dA? thanks.

tuan

Hi there,

the symbol is ; but it’s not implemented in this version of Rabbit.

If you want to vary with the angle, you can use a smaller angle.. say ’15’ and then use a single or multiple rotation commands depending on whether you need to turn 15,30,45,… degrees.

Regards

Hi there. Thanks for creating this and for updating it! I’ve been trying to use the tube settings in Rabbit to create scaled tubes along a 2d branching structure. However, I’ve been having trouble making the profile curve rotate to the “edge line” at the start point of the “edge line” rather than at its end point. Because of this, the loft is uneven. Is there a way within the turtle to alter this? I’m happy to post images if necessary. Thanks so much!!

Hi there,

In this tutorial, Axiom and production code is exactly the same for each example, still the outputs are different. Could you please explain me what am I missing here? Moreover, it might be slightly dumb question, what are the parameters to generate any production rule?

Hi Agneesh,

The axiom and production rules are different for the different samples. Just have a closer look.

This paper is really useful and should help you understanding the basic concepts: http://algorithmicbotany.org/papers/abop/abop-ch1.pdf

Regards

Greta, Kiril

@dasha please, provide an image describing the problem so that we can help you out

Hello

I’m working with Rabbit L-Systems to create a branching structure. I want to vary the thickness of the limbs as the structure grows, such that it is thickest at the base (just like the pink coloured structure on Morphocde’s Rabbit’s download page)

When i use simple series + scale, i do not get the desired output (see attached). I have tried grafting and flattening the output before applying scaling.

However, it seems to be more complex than that. If I’m not mistaken, this may be achieved by taming the data structure. I’m not a pro at it. Can some-1 help me please?

Thank you,

aB

Have you tried: http://morphocode.com/download/MORPHOCODE-rabbit-lsystem-branching-structures-3d-tubes.gh ?

Thank you so much. That helped a lot.

One more query, I’m sure it is easier said than done. Is it possible to limit the branching to only one at a time ie. avoiding a split into three branches from a single point?

cheers

aB

Hi,

Probably you can use multiple placeholders: A, B, C and define different production rules for each of them so that only A and B produce splitting of the branches, while C defines other behavior(ie. does not split the branch).

In this scenario a timed parametric L-System would be helpful, but Rabbit 0.3 does not support this type of systems yet.

Cheers

I’m trying to download the 3D branching structures 1 and 2. The main pages are hieroglyphics and codes, and they are not working. Whats going on?

Hi,

I’m trying to use this to model mangrove roots, can you offer any help with this?

Thanks

Tom

Are stochastic grammars supported in this? Or possible through some sort of work around?

no, at this time Rabbit does not support stochastic l-systems.

great work

there seems to be a symbol missing for “roll left A(Default Angle) degrees”

yep, we’ve missed it.

Please, try the backslash – \

Hi!

I’m currently using your Rabbit program on grasshopper for building a tree and I would need your help concerning two problems I’ve encountered.

The main parameters of the tree are:

axiom: F

rule 1: F=F[!”+//F] F[!”-//F]

angle increment “A” for the turtle = 37.5

1) I’m trying to build a dichotomous tree (2 branches per generation) that has an angle of 37.5° between two branches but an angle between two generation of 90°. Basically, I couldn’t set 2 different angles for the turtle.

I’ve tried to disconnect the “Angle increment” from the turtle and wright “rule1″ as F=F[!”+(37.5)/(90)F] [!”-(37.5)/(90)F] but it doesn’t work… Any ideas?

2) I’ve been trying to build the tree with “n”= 23 (number of generations or rewriting) but it seems that the program fails to do so. I’m using a quite powerful computer with a lot of memory so I don’t understand. How could I overcome this problem?

Cheers,

Jean

can the ca run in 3d?

What is the symbol for angle scale (dA)? I would like to reduce my angle with each generation.

Please, have a look at the comment above: https://morphocode.com/3d-branching-structures-with-rabbit/#comment-16418

Is it possible to use Rabbit to model a drooping tree like a Weeping Willow using the 3d Branches GH file? So far I have been unable to simulate the organic/catenary nature of a Willow tree’s branch structure.

It should be possible to simulate something like a Weeping Willow. Probably, you will have to increase the number of iterations and play with the angle. Here you can see some 2d examples and use them as a starting point: https://morphocode.com/2d-branching-structures-with-rabbit/. Maybe you can build a model in 2D and then translate it into 3D.

Regards