Model
Front View:
![image](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F5bf727a4-d1ce-45e4-9ec7-6269ca680e7d%2FUntitled.jpeg?id=9e348117-49c0-4d1d-855a-3f3efbcbc83f&table=block)
Back View:
![image](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2Fa3491817-20c6-41f8-910b-3edc626ee8ee%2FUntitled.jpeg?id=aed2b8e4-894a-4172-b02a-6992c9507417&table=block)
Modeling Approach
The first grouping of code in the grasshopper file defines the points for the arcs based upon the desired structure length. Those points are then used to create the two main arcs of the structure in the second grouping of code. The first arc is replicated to the height of the structure while the second arc is replicated to the roof height. Also, within this grouping the arc bridging the top of the structure is created.
![image](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F80c4236b-cb7a-4870-b5a8-8fa9c8b47bf7%2FUntitled.png?id=1b5334b4-d463-4729-a05a-c18c08e048c9&table=block)
In the next grouping of code, the roof surface is constructed. In this case the roof is constructed to have sinusoidal behavior that can be altered by amplitude or number of waves.
![image](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F1dd356e3-6b44-44e2-8a98-624fd1a050d5%2FUntitled.png?id=e1a3d217-6c04-4ed1-b518-a5cd368a4139&table=block)
![image](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F0c5cd5ff-6434-409c-8b13-e5342f92267b%2FUntitled.png?id=8acaccea-aeb8-4f56-888c-9901e82fd95b&table=block)
The next group of code uses the lofted roof surface to create quadrilateral roof panels and store them as a surface while defining the edges of the panels as pipes.
![image](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2Fbeb5b5f0-7784-453c-9921-c274719d68f8%2FUntitled.png?id=c1d6917e-01a7-4276-b124-623ef422f2de&table=block)
To create the pipe for the arc atop the structure the group of code defines the shape of the pipe as a function of diameter and creates a perp frame that sweeps across the arc.
![image](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F56ae3296-33b3-4641-9603-25faf385b878%2FUntitled.png?id=66736592-243c-4022-9640-3d5019ed985c&table=block)
A similar process is used to create the pipes that support the roof. Before implementing the sweep command, a grid was defined, and the transverse curves were extracted and used as the location for the roof supporting pipes.
![image](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2Fd800db50-bf2e-4ecf-ae60-4a47d5c26eac%2FUntitled.png?id=109f06d3-bff9-453b-9c21-991e63cb2269&table=block)
The following group of code creates the roof pipe along the wall that connects all of the pipes together. This was achieved by using the geometry defined in the roof supporting pipes code block to create the curve that matched the sinusoidal roof behavior. Then using the same process as for the arc atop the structure this pipe was created.
![image](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F44814b8a-55ae-4244-8cf2-e69768684519%2FUntitled.png?id=232c1170-4f3f-4111-9d58-d955292bd9ca&table=block)
To create the diamond wall panels, the group of code merges the base curve and the sinusoidal roof curve. It then lofts as surface between those two curves and divides it into a grid for the placement of the diamond panels.
![image](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F2371abb8-9ebe-416b-9b7a-8ef90af5d7e3%2FUntitled.png?id=f3519185-2bcc-407a-89d8-0fe42f86d4d1&table=block)
Then to create the vertical wall pipes the base curve was merged with the arc atop the structure. These two curves were then divided into segments which created the pipe placement points. A surface was then lofted between these two curves and divided into a grid. The transverse curves are then extracted, and the sweep function was used to create the pipes as a function of diameter.
![image](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2Fd089542e-d6e9-456a-9b6f-7844e5b7f184%2FUntitled.png?id=8c313274-f308-4d01-863d-4b4f1a3465f9&table=block)
Lastly, the group of code the creates the framework on the sides creates the endpoints of the framework. It then creates lines connecting those points and merges them. Just like the other sections the sweep function is implemented to create the pipes as function of pipe diameter.
![image](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F37a510d9-0265-4442-86ce-c73e847a9219%2FUntitled.png?id=b5652035-e329-4488-a0a9-77c1716c6f99&table=block)
Adjustable Parameters
The parameters that can be flexed and dynamically changed in my structure are the structure length and height. Additionally, the roof height can be altered to be angled upwards are downwards. The shape of the roof can also be altered by manipulating the number of sine waves and their amplitude. The number of roof and wall panel points can also be dynamically adjusted. Also, the number of roof and wall pipes can be adjusted. The pipe geometry can also be altered to create thinner or thicker pipes. Lastly, the arcs can be manipulated allowing the curvature of the structure to change.