This 3d form is generated from the following grasshopper script, which itself is a thing of beauty I think:
The only geometry in rhino is a point, which defines the centre point of the first circle, which is then copied up on the z axis. Both circles are then divided into a series of points, the top one rotated, lines drawn between the points and then all lines are lofted to make a surface…. for the rest you can try to interpret the grasshopper flow chart (which I have annotated to make sense of).
Grasshopper is essentially a graphical interface to rhinoscript, which is based on Microsoft’s VBScript language. For examples of rhinoscript’s use within architecture, check out Marc Fornes’s blog theverymany.net or go to Bedford Square in London to see the DRL TEN Pavilion winner outside the AA by lan Dempsey and Alvin Huang
Here is the grasshopper wrm file if you want to play about with it.