Smart Geometry 2011: Development of Parametric Rig



Day One at SG 2011, Copenhagen was a productive day. I am a part of the Responsive Acoustic Surfaces cluster.

We began with a series of introduction lectures from Mark and Jane which introduced the background to the project, essentially identifying the opportunity for further research into the acoustical properties of doubly ruled surfaces. This research was introduced in response to the feedback being received from the Sagrada Familia regarding the positive acoustic behaviour leading to the hypothesis that the complex surface detail may lead to sound scattering, essentially reducing the effect of echo’s in the space. From my understanding, plaster is typically a hard material that reflects sounds readily. The task of this workshop would be to explore the possibilities of introducing variation into a flat surface in an attempt to understand if this contributes positively to the sound scattering – something that is quite difficult to measure typically.

We were then introduced to the sound testing equipment by Tobias which in turn partly setup the strategy for how we were to proceed with the workshop. We have access to an acoustical chamber that will measure the scattering coefficient of sound through a series of calculations. The type of analysis for sound scattering is quite limited in comparison with those available for absorption. With this in mind, we were set the task of designing options to test in this chamber.

This led onto the start of the design process. We were introduced by Alex to the software we would be using. Basically we combined the Open Cascade geometry library with QT interface tools through the C++ programming language. Open Cascade allows the construction of complex geometry and calculates intersections and booleans very accurately. We were provided a template that allowed an initial experimentation into setting out a grid of hyperboloid revolutions onto a surface. The controls allowed the manipulation of spacing, count and angles. These were linked into an attractor which allowed to distribute variable parameters across the surface.

As with any parametric setup, the constraints and relationships allow you to manipulate the design which allows flexibility, however it is also constraining and forces the designer into a certain mode of operation. Part of the workshop is focused around exploring the software interface and allowing the construction of new parametric rigs to control the surface apertures.

An initial way to modify the parametric structure would involve modifying the positions of the hyperbolas. The demo rig sets up a grid topology and instantiates geometry based on that. I attempted to modify this system in two ways:

  • The first approach was to open up a new method that would allow the placement of points on the surface via UV coordinates rather than a grid. Essentially this would open the option to construct grids or point placement through various algorithms rather than be limited to a grid. I constructed a test rig that would divide the surface evenly in one direction with a variable division in the other direction. This sets up a grid that has a variety of bands. The spacing could be used to determine the radius of the hyperbolas and hence add banding variation into the wall apertures.
  • The second approach was to control the radius variation graphically rather than algorithmically. This idea was suggested by Ralf and involved reading the gray values from an image and encoding that into values. Basically this allows the control of the system to be understood graphically through the construction of grayscale maps. This makes it quite easy to gradient patterns and even combine multiple logics through layering up logics in photoshop.

The final development was a technical improvement on the code. Basically the original demo code would generate the complex hyperbola surfaces when any slider was moved. As the model became more detailed, this would create a strain on the computer and often crash. In order to resolve this, I developed a method that would only display a graphical representation of the surface (a basic circle with a changing radius) that would indicate the behaviour of the system. The system can then be explored and a search for a solution is not limited to computational power. Once the solution is determined, this can then be exported into the IGES format which is then taken into Digital Project for further refinement.

The refinement in Digital Project involves thickening each surface and splitting it with its neighbour. This is completed using a macro developed by Alex and allows for the quick propogation of booleans to construct a solid ready for 3D Printing. The model is then split into four quadrants to meet the manufacturing limits of the 3D Printer.

~ by admin on March 29, 2011.