Workflow: Creating free form theater curtain Using Dynamo and Revit 2016

Today we will see how to use the conceptual design in Dynamo to create a Free Form Theater Curtain.
The curtain is a surface which is lofted from several lines. Each line is the connection of two points the one at the bottom and the one at the top.
The points at the bottom are following the Sin wave shape at elevation zero, while the top points are following a straight line at height 1000.
By changing the slider you can control the amplitude of the sin wave hence the deformation of the curtain.
To implement the workflow we need the following Nodes:
  • 4 x Number
  • Range
  • Integer Slider
  • Math.Sin
  • Math.RadiansToDegrees
  • 2 x Points.ByCoordinates
  • Line.ByStartPointEndPoint
  • Surface.ByLoft
  • ImportInstance.ByGeometries

From the the “Range” Node we can get a set of points which will be incorporated to represent the start and end points. As the end points are composing a straight line we will use them as they are. But the start points are composing a Sin wave shaped curve so we need to convert their Y values first to degrees and hence use them as values to the angle input in the “Math.Sin” Node.

Once we got the set of start points and end points we will use the “Line.ByStartPointEndPoints” Node to create the lines which will be used to create the surface.

The “Surface.ByLoft” Node will create the surface based on the supplied lines by lofting. Final step is to import the geometry into Revit and this is done by using the “ImportInstance.ByGeometries” Node.Free Form Curtain example

The dynamo workflow can be downloaded from here


One thought on “Workflow: Creating free form theater curtain Using Dynamo and Revit 2016

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.