Concept Development
Pseudo Code :
The “Swarm Behaviour” in order to reach this sort of behaviours by using looping or recursive system. The first thing is how we can control the” Agents “? and how we can develop this behaviour to be compatible with different iterations in one transformation function for one loop.
-We can illustrate the “Agents” is the initial geometry that is “point”, “Vector”, and line that is going to make sort of transformation function around specific geometry as guide or path.so, the looping system has the ability to record this transformation with different iterations numbers.

-So, as you can see in this diagram there are three points that are moving around geometry based on three types of Vectors
random vectors, “slide vector” and “stick to geometry” vector. I will illustrate a bit about “boids library” and the recursive
system components. So, Basically, these vectors have some specific details different from the regular vector which is consist
of two terms magnitude and direction.so, the difference you can control  these vectors to do any kind of transformation
around specific geometry, you can consider as a path for your transformation, and looping components as you can see in the
 last script diagram showing the points as initial geometry to start the growth of the lines or any kind of geometry controlled
by these vectors.


Base Geometry ( Column Iterations)

Iteration  50, Iteration  100, Iteration 150, Iteration 200, Iteration 250,Iteration300,

Iteration 350, Iteration 400
Base Geometry (Roof Iterations)


Iteration 25

Iteration 50

Iteration 100

Iteration 150

Iteration 200
Constrained Geometry  Iterations


-Finally, you can see here another kind of geometry based on branching 2d system repeating the same bifurcation points, but with different length.

Thank You