Darren Wong

One WTC Revit Geometry (Part 1, left) and custom-designed Dynamo Geometry (Part 2, right)
One WTC Revit Geometry (Part 1, left) and custom-designed Dynamo Geometry (Part 2, right)

Part 1

image

For Part 1, I used the base Revit conceptual mass of One WTC. To customize the parameterization of the mass, I adjusted the formula under family types, such that ‘Tower Base 2’ becomes as a function of ‘Tower Height’ [Tower Base 2 = Tower Height / 3]. The project location was set to San Francisco as well.

image

On Dynamo, I selected the building form and selected ‘Tower Height’ as the input parameter while ‘Gross Floor Area’, ‘Gross Surface Area’ and ‘Gross Volume’ are the output parameters. The range of test values for tower height (ft) is 600, 610, 620, 630, 640, and 650, which falls within the maximum tower height of 750 ft.

image
image

The custom node works by identifying input and output parameter names in the Revit element, testing an input value, and reporting an output value. I edited the custom node to include a third input-output parameter.

image

The List.Map node iteratively evaluates the range of test values. The outputs generated were then exported to an Excel document (results below). The gross floor area falls within the required range of 1,200,000 to 1,500,000 SF.

Summary Table (Part 1) - Flexing Tower Height
Summary Table (Part 1) - Flexing Tower Height

Part 2

For Part 2, I designed my own building form on Dynamo. This was done by defining the base, middle and top profiles with the following parameters: base radius, middle radius, middle rotation, top radius, top rotation, number of polygon sides, and story height. I fixed the top curve height as twice of middle curve height in the node logic. Solid and wall surfaces were then lofted from the profiles. The building form can be found at the top of this journal (right).

image
image

The above logic was integrated into a new custom node that is able to evaluate multiple inputs.

image
image

The other half of the custom node evaluated the floor area by intersecting rectangular surfaces (at intervals depending on the total height and story height) on XY planes with the wall surfaces, and aggregated them to find the gross floor area. The gross surface area and gross volume were then calculated using the Surface.area and Solid.volume nodes on the lofts, and then reported as the output parameters.

image
image

Input variables were then connected to the custom node. In this case, I set the base radius, middle radius, middle rotation, top radius, number of building sides, and story height as constants. However, these parameters can be adjusted with the number sliders. I chose to flex two input parameters: tower height and top rotation.

image

The output were grouped into a data table and exported to an Excel document (below). I highlighted certain cells in red as the gross floor area fell outside the acceptable range of 1,200,000 to 1,500,000 SF.

Summary Table (Part 2) - Flexing Top Rotation and Tower Height
Summary Table (Part 2) - Flexing Top Rotation and Tower Height