algorithmic modeling for Rhino

twisted lamp with variable rotation in different elevations

hi, i don't know what to do with this definition, i can't make the exact variable twisting along that cylindrical geometry.there's an image file and definition attached.

please help me with this lampshade design. 

thank you all in advance.

Views: 1677


Replies to This Discussion

Check attached. It works either using a curve or a line (as the "spine"). The radii of the circles (for Loft) can be either steady or random.The deformation can be linear or "progressive" according to some sin value. You can control the start/end index of the deformation (where it starts/ends, that is). The exterior profile curve is either an interpolated curve or a control points curve (use rather this option). At the final phase it can thicken the BrepFaces (due to Sweep2) at once in both sides yielding a closed polysurface (very slow: blame Rhino).

All decisions with regard the workflow are in red groups.

Shown the freaky option (using a curve):

The thickened rids (slow):


And a result using a line (as spine), random radii (Loft) and enable thicken.

Thank you a lot peter for your great help,

it's a cool definition but it's got c# script for sine values. is there any way that i could get them without c# script? because i don't know anything about c# scripting......

Hmm ... I confess that components are not (at all) my forte.

Here's a small challenge for you:

Given a data tree of points (derived from dividing a surface) how we can "insert" circles (or modified points as in the def provided already) with a "growing index" manner? Replace the circles with points (moved using the corresponding vectors and some amplitude) and you have half of what the C# does (actually a "bit" less ... since it makes some checks more to keep things under control). For the other half (sin distortion) I'll provide a similar example soon.

Doing the same with relative items is far more elegant but potentially confusing for a novice.


And a distortion using a graphical way.

The challenge for you is to control what happens if the rows, columns (i.e. branches and items) and the "growing" indices (concerning an item per branch for modification) mismatch.

The other challenge: what is required in order to greatly simplify the definition? (hint: use the split List more productively)


hi peter,

is that what you were expecting in the first challenge?

if it's true i'll tell you about something after that!!!!!!!


Hmm ... maybe some espressos more?

Points free as a bird (they shouldn't - see mapper):

Mysterious stuff (same graph mapper as above):

What does this rebellious point over there?

he, he

sorry there was a mistake.......


Still is.

So for you, C# code is useless?  I've tried to explain that to Peter for years.

Either he doesn't understand or he has a hidden agenda.


Hope it is of some help to achieve your goal. Best.


hi mr. Hyungsoo,

thank you for your precious help. i'm trying to find out about the definition and learn it. 

that twisting with sine values are very interesting for me as a newbie in grasshopper......

thank you again sir..... 






  • Add Photos
  • View All

© 2021   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service