Algorithmic Thinking: Parametric Design

Page 1

Parametric Modelling: Hangshou Stadium http://issuu.com/nmillerarch/docs/hz_tennis_issuu

Algorithmic Thinking:

Parametric Design Task 3 Capstone Project

Group 14 Design Principles and Methods III May 2013

Cardiff University Welsh School of Architecture Arief Afandi Thomas Wakeman Eric Wong


The object of the investigation is to deploy algorithmic techniques to create an outcome which resolves a set of architectural restraints parametrically. The starting point for the investigation stems from the Hangzhou Tennis Center project which uses complex integrated parametric design twinned with Revit modelling to generate an efficient, overlapping structural design for a circular stadium. A similar 3DS max-based system of generating a node path along a spline can be used to specify a progressive number of repeating units along a set shape e.g. a circle. This is simple when using shell-shaped forms which naturally overlap in much the same way as the spine. The challenge is to take any given structural unit, and conversely constrain it to any given path, be it a curved line, an orthogonal boundary e.t.c. To set about achieving this, we decided the best way of allowing any given shape to be efficiently organised as an array along a path would be to orientate it based on its center. e.g. pick an object, pick a path and automatically orientate the object’s center point to the path. Next, you must define the separation between the objects to a degree which prevents overlapping. Firstly, this was achieved by generating a script to define a set displacement between objects which could be manually increased or decreased to achieve a separation between the boundaries of the objects themselves. This has the potential to create extremely efficient parametric solar arrays based on simple architectural forms, which in turn can be generated from a shape as simple as a boundary box or spline. The original concept was to adapt two scripts and use them to generate one parametric scripting tool: the node path script for creating an array of objects along a spline e.g. a circle, and the Function Sculptor script (available: http://www. scriptspot.com/3ds-max/scripts/function-sculptor) (see following page). This would take a spline of objects and mathematically plot them as a graph function, creating forms which follow any mathematical graphing equation entered. However, a simpler and more effective solution was to combine the node path script with a simple ‘deform spline’ utility, which we then combined into the same scripting format, with a set of buttons to automatically generate geometries based on any inputted formula: Ecoscape/Surface displacement sequence on 21/09 between 6.00am and 12.00pm

Parametric Modelling: Hangshou Stadium http://issuu.com/nmillerarch/docs/hz_tennis_issuu

utility deformSpline “Deform Spline” ( button generate_btn “Generate” on generate_btn pressed do ( for s = 1 to (numSplines $) do ( for k = 1 to (numKnots $ s) do ( knt = getKnotPoint $ s k in_vec = getInVec $ s k out_vec = getOutVec $ s k new_z = (knt.x^4 + knt.y^10) (graph function e.g. z=x2+y2) knt.z = in_vec.z = out_vec.z = new_z setInVec $ s k in_vec setOutVec $ s k out_vec setKnotPoint $ s k knt sphere pos:knt radius:0.1 )--end k loop )--end s loop updateshape $ )--end execute )--end script

1 of 5


Original Concept Script: Function Sculptor (available: http://www.scriptspot.com/3ds-max/scripts/function-sculptor) Function Sculptor is a scripted plugin that deforms meshes, polys or splines according to an arbitrary, user-input function. This allows easy creation of an endless variety of smooth, precisely curved surfaces. It also enables the mathematically precise curving of splines for extrusions, path-deforms and lofts.

Editable spline shape with 2 sub-splines, before and after sculpt:

It uses the world-x, y, and z coordinates of points to displace those points in world-z. Maximum and minimum displacement options allow you to control how far points can be displaced in the positive and negative. By default, this plugin appears in the utility panel, but clicking a button brings up a floater window. A function can be applied to a hard or soft selection of vertices within a mesh/poly object, using the window mode.

(Left) Image showing result of running the Function Sculptor scripting tool whilst selecting an editable spline which has been run through the node-path script (task 2)

2 of 5


1) Original 1

2) Original 2

3) Edited script

(Left) final image of graphed spline of overlapping parabolic tiles from new script, showing potential for parametric forms similar in notion to the principles used in the design of the Hangshou Stadium.

Graphing Functions

Periodic pattern of and cosine waves

sine

Source : http://wn.wikipedia.org/ wiki/Sine_wave

2D array of control points follows periodic patterns in both U and V directions

Bezier curve with two control points; right: Bezier curve with eleven control points

3 of 5

Positioning the points along a NURB surface

Distribution the points along a NURB surface


event for ‘pick path and pick object’ button. global selObj= #() enabling user to select any objects

Event to create ‘warning message box’ to notify errors. for example the “please select the path and the node” warning appears if the user

Event to create the add objects button

4 of 5


Event to create the remove object button Original script (1) modified into group and inserted before reset UI rollout

5 of 5


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.