Walk in the Park:
Screenshot:

Modeling Approach:
First, I created a grid of 200’ by 200’ with variable grid spacing using a number slider. I used Point.ByCoordinates and Cross Lacing to create the grid of points and then flattened the list of points. Then I created a Cuboid at each of the grid points with the width and length being equal to the grid spacing, so the cuboids did not overlap. Next, I had to create a way to vary the height and then plug the height back into the Cuboid element. To do this, I first created an attractor point that could move anywhere in the created grid and that the sine wave would start from. From there, I computed the height of each cuboid based on a sine wave function where I could vary the wave amplitude and number of waves. Then, I plugged that height back into the cuboid element. The last step was to shift the z-values of each of the cubes by half of its height to ensure that the base of each cuboid was level with one another.
Eliminate the Echo:
Screenshots:


*Upside-down picture so you can see the pattern better
Modeling Approach:
The modeling approach for Eliminate the Echo was quite similar to Walk in the Park despite it being in a different program. The first step was to create a rectangular grid of cylinder elements at the ceiling level. To do this, I first created an XY-plane and then shifted its height to the ceiling level of 12 feet. I then created a rectangular grid whose extent and spacing size could be modulated with a slider. A cylinder was then placed at each grid point, and the radius was set to half of the grid size to ensure there was no overlapping. The second step was to create an attractor point that the sine wave would start from and that could be moved to any point in the grid. The third step was to set the height of each cylinder according to a sine wave. First, I computed the cylinder height using a sine function. This process first took the distance from the cylinder to the attractor point, number of waves (could be modulated), and the max distance a cylinder could be from the attractor point to remap the distance. Then, I created a sin function where the amplitude and base height of each sine wave could be modulated. Lastly, the height had to be multiplied by -1 so the cylinders dropped down from the ceiling and then that value scaled the original cylinder’s height.
Happy Facade:
Screenshot:

Modeling Approach:
Since we were given the starter code for this part of the assignment, the first step of my modeling approach was to add the attractor logic. To do this, I calculated the distance of each hole to each attractor point and then figured out which attractor point was closer using the Min function. Then, I used a code block to enter a formula that computes the desired diameter of each hole based on how close it is to the nearest attractor point. The number of waves and amplitude used number sliders so they could be modulated. Then, I created a watch function to ensure everything was working properly and then connected my work into the existing code. Finally, I played around with the code until I found a pattern that I found aesthetically pleasing.