algorithmic modeling for Rhino

This is the script of Daniel Abalde's Peacock tapered offset post, here:

Views: 38472

Reply to This

Replies to This Discussion

Here is a marching cubes Cocoon plugin version:

Alas, there's only control over metaline strength over its length, not actual radius, so the effect is a bit limited in tapering.



In 2D using a tool to analyse topology of lines network and aslo calculating radius of branches. The root is the point closest to a defined point. The root radius is always given a value of 1. The power is used to calculate radius of branch see §3.5

r^n parent = r^n child1 +r^n child2  (n=3)

The tool for generation mesh is mine and is also here :


A 3D version:


works well..!!! thanks :)

Control point curves, eh? I have to flatten the Cocoon input for them to merge:

The swerving of the overlapping shortest path curves from the single core origin point to each outermost point affords more tapering thickness!

I'm thinking of overlapping several starting point versions with the same other points, to achieve cross-linked 3D trusses.


Looks like you need to water those curves!

Here is a script to calculate radius of branch considering that all end of branch have the same size and parents branch radius is calculated depending on a power law.



Very cool. Thank you for posting this.

I am now puzzling over how to do an in-fill of the smaller veins that one would find in a leaf, which brings us back to an essentially 2-d discussion. This algorithm works well for the larger veins; would it be reasonable to use either a single, weighted veroni, or perhaps a dual population Veroni, for the  smaller veins? or, third option, use your same algorithm, but starting with small radii, originating at the end nodes of the large veins?

Hi Laurent,

I would really like to be able to model a tree structure like this and understand the process of the scripting for it. Would you be able to point me in the direction of any resources that would help me to do this?

Thank you very much for your help,


Hello Sean,

The ressource is here.The first idea came from Igor

After that look at the script above ""

First you have to generate a volume where your tree is. I didn't put it in the script. But it is just a revolution. 

Populate this volume with points. As populate populate the volume, you have to choose if inside or outside.

Select a point for your trunk and make paths (end to trunk)

Create some paths for the leaves using proximity 3D

Use Shortest Walk, don't whorry of the error, its works with. 

After that I bake may lines in order to make some improvement, a vertical trunk ...

I use my script to calculate branch radius ...






  • Add Photos
  • View All

© 2017   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service