algorithmic modeling for Rhino

Hi All im trying to bridge two surfaces as per formaularch tutorial but cull index is returning a warning message stating "culling index is out of range"? Also List item says the "supplied index is too high"> i tried to decrease the slider all the way to 1 and still says its too high, warning only goes off at 0 but then my weave cannot obviously pick up any data as its set at 0. gh script included. Also icluded is a pic of desired outcome. 

Any thoughts? Any help will be greatly appreciated. 

Thanks in advance


Views: 4941


Reply to This

Replies to This Discussion

Well... the definition required some fixing in certain areas (mixing onions and tomatoes etc etc).

Here's a 17 minute (and 45 seconds) rework following closely your logic (but I don't agree - see below).

Note: the whole approach is wrong in several points (like the definition of the intermediate profile with a perpendicular plane and/or the way that "connecting" columns are defined, the amount of profiles to loft, the fact that the profiles are rectangular, the critical fact that we are out of espresso blah blah).

Note: spot the way to "align" the Loft profiles (and the false flag in Loft options) for the no-twist loft result - but Grasshopper should provide this ability by default (too many desperate posts for that thing, in fact the most common topic - IMHO). That said who on Earth needs twisted loft results? why?

Note: The ideal way to do this is with TSplines (but the few available components either they don't work(red alert)...or they lost their ability for preview (but can be baked)). Download the TS Beta 4 version to discover why nurbs are dead and meshes are previous century.

NOTE: test surfaces are internalized ... meaning that there's no need for Rhino input stuff

Anyway if that thing is critical for you we could work further this weekend for some "nice" result.

best, Peter


Initial (help) loft was ... well ... twisted business as usual. Now it works.


Hi Peter 

Thanks for the rework. I actually followed a tutorial for the initial attempt from formula arch and appreciate you taking the time to offer more insight into how this could be done. I have been playing around with t-splines pipe and the bridging tool as i get it free as a student from autodesk and couldnt agree more about the advantages of using t-splines. I think you probably know the best way to get the result and doing it in grasshopper would be beneficial to update parameters more easily for me. It would be great to get further insight into how you would approach doing this is the correct way. As we know there effective and less effective ways to perform similar functions. I can ssend you some more info of what im trying to accomplish and greatly appreciate all your help thus far. 


... we can work a bit further on this since ... er ... hmm 2 things happen this very moment that could(?) define new realities in design/engineering (I am engineer with a giant dose of cynicism, mind). These 2 are (a) the advent of large scale 3d printing and (b) the adoption of a totally new way to fabricate carbon fiber items (I mean big things like load bearing structural members - blame Volkswagen and Boeing for that).

For instance and in a very small scale see this CF chair:

Or that:

All these mean that you/we could consider possible to design large scale things (like a "monoblock" modular hangar where the roof is fused with the columns - exactly like the chair as above and/or your initial requirement - minus the ugly basement formation).

In the mean time get the new "divine" version (2 choices : either you or God decides things concerning the "bridges").

Until next update

1. TSplines 3.4. they don't give any preview (and pipe is EXTREMELY slow) whilst 3.5 they turn components red. Karma without any doubt. Beta 4 has more bugs than Madonna had lovers.

2. Choose "God" as the placement mode and observe that the main issue here is to "fuse" properly "bridges" that potentially clash (easy for TSplines).

3. Although random is the new trend in Architecture/Design (but trends come and go) ... controlling randomly AND properly geometry is more fuzzy than it appears on first sight ( for doing something that could(?) stand(?) any future critic, he he).

4. Rhino is actually a surface modeler ... meaning that stuff that CATIA/NX do are rather unthinkable especially concerning the "frozen" state of a polysurface (Smart Surface for those in the Microstation bandwagon). You'll see why I'm saying this when this definition starts to find the right route (for instance filleting complex stitched surfaces etc etc) . On the other hand various Rhino tools are not exposed to GH (VBA/C is needed). 

More this weekend.

My mail is pfotiad0@remove

May the Force (the dark option) be with us, best, Peter 


Ahh yes this definition. I made it so long ago and its biggest flaw is it is too specific (specific in that it only works for an specific set up, when it should cover more cases), generally now I try and make my posted definitions as "general" as possible with the least amount of specific criteria to work. (On my end though it still works pretty well if you know how to manage it). I always mean to update these things but there are two factors that stop me. 

1. GH is always changing so I think I will wait until official GH 1 before diving into them.

2. Work.........

That being said, people should see the blog post and ask questions there as well where I will get notified immediately in email of an asked question.  

Thanks for the inital tutorial Michael I appreciate you making these resources available and ill definitely use the blog if i have questions in the future.

OK friends,

After 4 double espressos (of the finest quality) and 3 cigars (dubious quality) I've changed completely that $@#%$#% definition (not ready yet) having in mind the abysmal dislike of mine as regards hmm... meshes and all things NOT related with nurbs/TSplines.

General strategy: Use the TS pipe on lines defined with start/end points ABOVE and BELOW the top/bottom surface(s), trim the pipes with the surface(s) and/or with some temporary offset surfaces (better) and ... er....hmm...fillet and/or blend the surfaces. Can't be that difficult don't you think so? (it's impossible).

Example attached is a baked thing using TSplines - it's a draft for a false ceiling in some very ugly building of mine. 

But let's focus to things that Rhino can't do first (a good reason to adjust the WHOLE approach when working with GH):

See this? Attached file is imported to Microstation for some tests. It's the fillet command used between the "legs" and the top of the false ceiling. Microstation doesn't care if a thing is a polysurface (smart surface in MS speech) and applies the fillet correctly (2 m radius). But it takes ages for doing it ... meaning that Generative Components is still an option for the very brave ones (what a waste of hope).

Now try to "fuse" this with that with Rhino: It's that polysurface thing again. Observe that there's no chain edges option when selecting surface edges in the fillet command (as it is in the Blend command) ... therefor ...well ... you can't do it (or you can do it the very hard way).

Needless to say that the Blend commend can't do it either since this is not a substitute for the Fillet by any means.

Moral: long is the path (and hilly).

best, Peter



1. Plan A (TSplines route) hits the Wall (that polysurface thing) and appears that it's undo able - see layout2 variation and try to do some "liquid" something out of these (always test what Rhino can do before doing GH things).

2. Plan B (define "paths" - the bridge axis, that is - randomly or user defined, define 3 curves per path, make nurbs - hopefully NOT twisted, create "ellipses" (the tricky part), trim top/bottom nurbs with ellipses, blend this with that and that with this) hits the Wall as well - see layout3 and try ... blah blah .

Moral: either I must start to like meshes (NEVER) or drink some espressos more.

more this weekend, best, Peter



1.Plan A-new : forget all the archaic/ancient stuff , continue hating/detesting/rejecting meshes and rework completely the whole approach (required: TS4 Beta plus the best quality espresso available):

2. Plan B : there's no such thing.

more soon, Peter


Awesome Peter thanks, t-splines 4.0 downloaded and ready to make this work.


...forgot to mention the tricky things (BTW: definition is under rework of Nth time - read 2 below):

1.TS4 has more bugs than Madonna ... blah blah.

2. The classic GH way : fire and forget ...doesn't apply here (in fact it doesn't apply in most AEC related cases) : we need a controlled loop thing (were the stupid part waits the smart part to choose things and/or reject others - that's the computer and you) in order to make a "stepped" evolving solution. This means Anemone/Hoopsnake components that could handle the whole process "interactively" based on gradually evolving/occurring criteria. I'm talking mostly about "Fork" situations that MAY occur - in plain English: columns that "share" the same base/top TS face. Of course N other situations (due to some engineering and/or aesthetics) may happen that prohibit the x "column" formation BUT only because some other columns are already in place. Maybe stuff for Galapagos?

3. This is evident even if this case could be used for non "strict" engineering purposes (like some academic form exploitation and other similar deep space stuff).

4. Αtractors are not available in the TS world (a rather easy/primitive way to influence a given column on a per column basis).

5. The whole process is exponentially heavy for your CPU since from column 1 the top+base+column thing is treated as a single TS.

6. Regardless ..before doing anything ... learn/master how Hoopsnake works and why (the fact that a Greek did that stuff is just collateral damage, he he). Galapagos is not a bad idea to fathom either.

BTW: most unexperienced AEC people believe that 21st century is about BIM (dead before birth). I say that all what should matter is evolving design/solution algorithms.

may the Force (and snakes)...blah blah 


And above all the thing must have some aesthetic value (but in our "liquid architecture" days..hmm... kitsch is the new king).

See this rather unfortunate attempt for something "good" ... only to discover that's uglier than a Skoda - looks like a robo-camel with a spare leg.







  • Add Photos
  • View All

© 2020   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service