Jun Li

Figure 1: Twisting Tower
Figure 1: Twisting Tower

Part 1:

image

First I selected Parametric Tower - Twisting Rounded Triangular Mass as my tower element, then I edited the family type to set mid-rotation = 0.5*Top rotation and Mid Height = 0.5*Top Height as shown in Figure 2, so the middle rotation and height will always be half of the top ones. Since a higher floor area will have a higher price, I set the top radius relatively small compared to the base radius.

Figure 3
Figure 3

In Dynamo, I first select the tower as the model element, and I decided to flex the top height ranging from 550 to 670. The Output parameters were set to be floor area, surface area, and volume of the tower as shown in Figure 3.

Figure 4
Figure 4
Figure 5
Figure 5

Next, I modified the custom node from the class example by adding one more output parameter (Gross Volume), the detail of the custom node is shown in Figure 5.

Figure 6
Figure 6

The input values were then mapped to calculate the floor area, surface area, and gross volume as shown in Figure 6. Then I created and transposed a list to include all the outputs.

Figure 7
Figure 7

As shown in Figure 7, the outputs were then exported to an excel file, and the details of the outputs are shown in Figure 8.

Figure 8
Figure 8

Part 2:

Figure 9
Figure 9
Figure 10
Figure 10

In part 2, I created a twisting towel element in Revit. First I created a mass element containing a triangle with a half ellipse as shown in Figure 10, then I used the sample twisting towel profile and replace the original base, middle, and top mass element with my own element.

Figure 11
Figure 11

Similar to Part 1, I set the mid-rotation and mid-height equal to half of top-rotation and top height, respectively.

Figure 12
Figure 12

In Dynamo, I decided to set the top height and top rotation as my two input isntance parameters. The top heights ranged from 110 to 150, and the top rotations ranged from 220 to 260 degrees.

Figure 13
Figure 13

Next, I combined and cartesian-product of the two input values, and the list was then flattened as a whole set of lists as shown in Figure 13.

Figure 14
Figure 14
Figure 15
Figure 15
Figure 16
Figure 16

After setting up the input values, I modified the custom node from the class example by adding one more output result (Gross Volume), the details of the modified parts are shown in Figures 15 and 16. Then the input values were mapped to calculate the surface area, floor area, and volume of the tower as shown in Figure 14.

Figure 17
Figure 17
Figure 18
Figure 18

The Outputs were then exported to an excel file, the details of the output values are shown in Figure 18.