A panelized surface with folded elements, resulting in a kinetic or fluttering effect.




Prerequisites


Prerequisite
Surface Panelization
Surface Panelization

How to turn a 3d surface into discrete panels.

Read

Walkthrough


Begin by creating a flat four point surface in Rhinoceros using the srfpt or plane commands. Turn on the control points of the surface and drag two opposite corners downward or upward to produce a hypar. This will be our base surface

Open grasshopper. Reference your surface and plug it into a divide surface component, setting the UVs to an equal integer.

Create a set of quad panels along this surface. Refer to the Surface Panelization process attached at the top of this article. In the above image, we use the C# script, which outputs a polyline.

Get the four corners of each panel from your surface panelization process. We use the Control points component shown above. For surfaces, use the Deconstruct Brep component instead.

The point list is connected to the List Item component, which splits each corner into a separate stream.

Plug the 2nd and 4th streams (i+1 & i+3) into a Move component which will receive a Unit Z vector as its motion input. This will move two of the corners in each panel directly upward.

For each quad panel, we will create two triangular panels using the Construct Mesh component. For each triangle, recombine the streams shown back in order using a merge component, or as shown by holding shift and combining streams in their order (from i to i+3). These are fed into a construct mesh component.

You should now have something like the above. We used preview components from the Human toolkit to visualize the object and its edges in the viewport with color and material.

You can now Bake your panelized structure, or feed it into another process for further articulation.

Congratulations, you've completed this project. Show your friends!