Ethan Sun

Number of units: 2

The inspiration for this simplistic yet elegant design is the sail of a boat, which combines curves and straight lines neatly. Looking from the plan view, one can only see straight lines, resembling the shape of a pentagon, while looking from the elevation, the rim and the supporting arch are both curves, giving the structure a sleek outline.

The only curved member in this structure is the supporting arch, and all other members are straight, making it a cost-effective design which can be the blueprint for many use-cases, typically as a bus stop. I believe the practicality of such designs to be very important, as the budget for such public infrastructure projects are often limited.

image
image
image
image
image

The main logic of the script is first defining a controlling geometry, and then creating four groups that define and create the ribs, girder, panels, and support respectively.

image

For the controlling geometry group, the slider Length is used to change the overall length of the structure. Other sliders can be used to control the height and width of the controlling geometries in the structure. A total of six points form the basis of the controlling geometry — start, mid, and end points on each side.

For the side of the support, two straight lines join the points to point the first control line. For the side of the rim, two straight lines and also a NURBS is created. The NURBS is used to define the z coordinates of the rim side control curve, while the straight lines define the x and y coordinates.

image

When defining the ribs, a slider called Number of panels, longitudinal is used to control the desired number of ribs perpendicular to the control lines on each half. Using Curve.PointAtParameter, points are created at the desired intervals, and the pairs are then connected by a straight line to form the ribs of the structure. This is done by using adaptive components in Revit called 2pt tubes, which are defined by the pairs of points.

image

For the girders, the list of controlling points on each side is first shifted using List.RestOfItems. The shifted list is then joined to original list, transposed, and the last item that joins to null is removed. The pairs of points can now be used to connect the points on the curve using straight 2pt tubes.

image

For the panels, a slider called Number of panels, transverse is used to control the desired number of panels to generate on the transverse side. The rib lines are then divided to form a grid of points, which is inputted to the Quad Points from Rectangular Grid node to form a list of items that contains the four points needed to define a panel. This list is then used to create panels in Revit using 4pt adaptive panels.

image

Finally, the support system is created. This is simply two straight lines (columns) at the end and a NURBS that join the bottom of the columns to the mid point on the support-side control line. The 2pt tube is used to create the columns in Revit and the 3pt tube is used to create the arch.

image