Curved Glass Facade Regular Ribbon shape

Hello everyone, would love to learn from you to find out the best ways to parametrically model such semicircular facade, in which the radius can be set and the length of the panel as well from a given surface. To be able to follow the curve of any surface. In this case a detailed channels will need to be added to each of the panels, not sure if that will be needed within the script or after the fact.

My initial though was to extract the curve of the surface and subdivide it into points, that will be used to interpolate the curve. However if the amount of points will need to change it becomes more complex.

As the cylindrical elements are likely to be all the same size, a simple solution is to “divide distance” your path curve using the end-to-end distance of your module.


modules placement.gh (10.1 KB)

“Divide Distance” component create a sequence of points along your curve that have always the same chord distance.


Similar but different approach would be putting the circles center at the found points, but then it would require to cut glass cylinder each with different size, a mess.


For more granular control of the joining elements between the modules, you could use kangaroo…

thanks a lot. I appreciate it very much, will try it out! I also tried to create a wave that is a little more curtain like rather than cylindrical. not sure if its working.

Creating a wave that way would result in a single curved object.
Do you need that, or something modular, repeating a given element?

I agree with you. Id rather it be modular definitely.

I would like to know how I would go about dividing the curve in a repeating chord sequence, so like little ball, big ball, little ball, big ball, little ball…

See this How to divide the curve by the varying distance? - #18 by magicteddy
also read the whole thread, Nautilus plugin, etc..

Fantastic link. I like the suggestion of using Dash Pattern, though this will only work for 2 sizes… which would be perfect for the problem here if it worked with chord length.

Interesting component, I’ve never used it!
Anyway, Dash Pattern use curve length, not chord distance…

Actually! You could use it for more than just two sizes. You can weave the “Dash” and “Gap” outputs, and ignore the dash/gap designation.


I never even knew magicteddy and I miss him. Going to bookmark that page.