Parametric Design Portfolio

Page 1

Architectural Reflections 1 Performative Parametrics Digital Design Abanoub Reyad - 1743763 January 2020


Grasshopper 01 POINTS, CURVES AND SURFACES When working in grasshopper it is important to understand the difference between ‘rhino space’ and ‘grasshopper space’. I will be starting with points, curves or surfaces which have been drawn in rhino, then I import the curve, point or surface into grasshopper and from there the information will function according to what I have told the software to perform.

Points. There are various ways in which you can import a point into Grasshopper. Here I will illustrate 3 possible ways. 1. I can set a point in Rhino, and then create a point node in Grasshopper. I then right click to set the point enabling the point to be live in Grasshopper.

Vectors, are a quantity having direction as well as magnitude, especially as determining the position of one point in space relative to another.

Vectors do not have an origin and are simply a direction, a number connected into a vector simply just tells the vector how much to move. I had plotted the coordinates using Vector XYZ and the used a point to output a geometry.

Line. The same way a point is inserted in grasshopper, lines too follow a simi-

lar method, right click and select set one line and then draw or select it. Line. I have also used a different type of line, this line allows me to define the beginning and end point. I have connected in the divided point and moved point to connect all the divided points to the moved point.

Divide. This node enables me to divide a curve into as many parts as I like

2. I can also double click in the white space of grasshopper to access the menu bar. I then type in the coordinates of where I want the point to be and the software assumes I want to make a point in this location.

using a number slider.This provides the opportunity to extract points from lines.This could be used for many purposes in the future.

Move. When moving an item I need to tell Grasshopper the direction in

3. I can use a construct point which is a tool that allows me to control where I want the point to sit by using number sliders. This makes the point parametric allowing the points location to change accurately with ease.

which I wish to move.Therefore I choose a plane node, in this case I have chosen the vertical or (z) plane. I then plug in a number slider to determine how much I wish to move it by.

I have also added a small script which enables the canvas colour to change from its original grid to white.

List item. This command is used to choose a particular point within a line

which has been broken down into components, the amount is again decided by a number slider.

Deconstruct. / Deconstruct Vector

Deconstruct used here is the reverse of the step above I used a panel in order to give me a range of values. This method could be useful when working parametrically as it would enable me to produce the values and outcomes that I want. Deconstruct Vector, this is the node which enables you to do the opposite of the above. I have used coordinates in order to identify a range of values, I could then create a point based off of this.

Panels & Sliders Construct Domain. A domain is another word for a range, when construct-

Panels have multiple uses, they can be used similarly to number sliders where the input can change numbers. I can also use these to find out information, for example if I plug a point into a panel it will provide me with the information for that specific panel. Number sliders are often used in Grasshopper and they can be used multiple purposes. Anytime a value is required for example providing a point with a coordinate a number slider can be in-putted to parametrically change the point.

ing a domain Grasshopper asks me to decided on two numbers in which I want as a range. In this example I have chosen a range between 0 and 100.

Amplitude.

Amplitude is the tool which is a command similar to “move”. This enables a vector to be moved a certain range.This can be controlled with a number slider to define the distance. I have used an XY Plane in order to define the direction of the amplification.

Range. The range is like the steps required in order to fulfil the range. In this case I have steps which go up in 5’s.This is because 100/20 is 5.

Experimentation


Grasshopper 01 EXPERIMENTATION FLOOR PLATES I have experimented with the above in an architectural sense. I have started to look at how I could use these nodes as if I were looking at ‘floor plates’. I have used the information above to assist in the outcome below.

Step 02 I then use a list item node to rotate each component separately.The angle has been determined a range component with a domain between 0 and 360 to determine each step.

Step 01 I have used a range and series component to set the amount of polygons I desire to have. I also set the size of it along with using the series to array the polygon vertically.

Step 03 I then used a boundary surface node to give each shape a surface.This enables me to add a gradient node which will colour the final piece.


Grasshopper 02

Curve Degree

Expression

1

1

NURBS CURVES NURBS SURFACES In this lesson we had explored a range of new tools, we looking into how curves work, the difference between polylines and nurbs curves. We also looking into surface building and began exploring a range of methods in building surfaces on Rhino. We then looked into expressions, evaluating curves, surfaces and using the ‘t’ parameter and explored into new territory with the U, V, and W coordinates.

Historic Context

2

2

3

3

On the left a control point curve was used where as on the right an interpolate curve was used. Interpolate curves are curves which pass through points where as control point curves the lines do not pass through the control points.

P2

P2 P3

P1

P4

P1

P1

Figure 01: Rebuilding a historic sailing yacht.

P0

t=0.65

P0

t=0.65

P0

t=0.65

t=0.65

‘t’ Parameters I have set a curve in grasshopper and reparametrized it which gives the value of the cure a value between 0 and 1. This is known as the ‘t’ parameter. This is useful as it can provide me with a percentage on a point within the line telling me how far across I am.

Non Uniform

The portions of the curve which are effected by individual control points are not necessarily uniformly distributed along the curve.

Rational

The pole in each control point can be adjusted

Basis Spline

Define how much each control point influences the curve. Nurbs curves and surfaces are mainly controlled by the number of control points and the curve degree. All nurbs curves and surfaces have control points that act like magnets and define the shape of the curve.

In this example I am illustrating how to evaluate a surface.The surface has been reparametrized in order to create a t parameter between 0 and 1. I continued by plugging in a evaluate surface node, this is after the curves in the U and V directions, the output being the surface. Based on this I plugged in a MD slider.The MD slider is a different type of slider which is used in the U,V,W coordinates. I can then use this to evaluate the surface and find a specific point within the surface.

Expression and Evaluate I have explored a variety of options with expressions. The first expression was used with an evaluate node, by right clicking I was able to manually update the expression enabling the values on the left to add up to the total on the right. On the other variation I used an expression node where I had entered cos(t)*t and sin(t)*t, combining these when creating a point results in beautiful biomimicry forms, by simply changing the step slider I can get multiple variations.

2. Extrude Curve, this node is used to create a straight extrusion between two points, the second point is controlled by a number slider which changes the parameters of the extrusion a unit z node is also used to determine the direction. 3. Boundary Surface, this command simple takes a curve on a planar surface and this will create a basic geometry of the space. 4. Extrude curve along curve. This requires a curve in 2 axis, the curve on the x or y axis will be extruded along that on the z axis. 5. Revolve, this command is useful in creating hollow spaces like cups and vases. This requires two curves to be attached, one is usually straight on the z axis and the other is in the form of the bounds in section, therefore producing a rounded shape.

P2

P3

P0

There are many ways in which I can build surfaces in Rhino, in fact a minimum of 12 ways. I will show the variations and how they can be used for different scenarios. It is also possible to apply and use these in Grasshopper.

1. Sweep 1, this node requires two curves one to determine the sweep line and the other the shape of the sweep taking place.

There are a number of resulting outcomes based on the level of degree in-putted. With the lower the degree resulting in sharp points to level 3 which is what is commonly used in design as it obtains smoother line properties. Here the control points are much more influential to the curve, each point can be adjusted with a bezier control point. These are like handles which can be used to adjust the line.

P1

Evaluating Surfaces

Surface Types

Different Curves and Levels

Lofting was used as a method of drafting before CAD software’s existed, this would be used to create curved lines for streamline technologies including aircraft’s, boats and cars. It was commonly used to build the hull of a boat before the woodworking phase.

Rhino Building Surfaces

6. Patch, this node is useful when creating terrains it takes a range of curves along the z axis and creates a terrain like surface. This has extra inputs which determine slightly different results, for example a boolean toggle is used to decide on whether the patch should be trimmed. 7. Pipe, this node is simply a curve which has been given a radius and extruded. The variant is the thickness of the pipe and they type of cap required to close it. 8. Sweep 2, this requires three types of curves, two curves to define a bounds and central curves creating a pathway through the sweep. 9. Edge Surface, this node uses up to four curves to create a surface. 10. Tween Surface, this is a plug-in called Pufferfish, this node enables the user to find a median between 2 surfaces. A number slider is used to determine at which stage I want the in-between curve, in this instance I have used 0.185 as the control point to determine the outcome of the new surface. 11. Loft, this is a commonly used command in rhino, loft simple extrudes between curves, therefore outputting a surface which is generally straight. However just like in Rhino, Grasshopper uses loft options which can help vary the outcome of the loft. I used two boolean toggles to determine whether the loft should be closed and adjusted. Changing the other numbers changes the type of loft, for example it was previously on tight and can be changed to loose. 12. Network Surface, this is the last node I will be looking at in Grasshopper, I have created two separate curves in the U and V direction, Grasshopper uses these inputs to create a surface.

Area/Bake In order to find the mid point of the surface I can also use an area node which will provide me with the total area of the surface as well as finding me the centre point. In order to obtain something from Grasshopper it involves a process called baking, this takes whatever is in Grasshopper, whether curve, point, surface or brep and converts in to a editable piece in rhino.


Grasshopper 02

Outcomes These drawing are the result of the script below. This expression along with the point charges connected produce very powerful and accurate free flowing forms.

EXPRESSION EXPERIMENTATION This experiment with expressions enables me to look deeper and see what is achievable from these in terms of creating parametric forms. The idea of magnets and attracting have potential to help shows some of the possible results from this study.

Video - Link 02 Expressions This video clip illustrates how changing the point charge number sliders impact the result of the expressions.

Step 03 Script This script shows the steps taken to perform theses complex shapes from expressions.

Step 01 A series component has been inserted, this with the combination of the Cos and Sin expression produces points in a range of arrays depending on the step counter.

Step 02 These components work similarly to magnets, a positive and negative field is inserted and the strength is controlled by a number slider.

A range of components are inserted here to change the aesthetic of the curves. I have added a gradient tool and changed the colour parameters to choose the colours.


Grasshopper 03 DATA TREES & STRUCTURES

Path Mapper

Tree Branch

Grid

Bounding Box

I have used a path mapper to clearly illustrate how a list works when using this tool. I have used (A;B) - (0) to create a tree with both lists combined. The list has also been simplified, you can see by the points list tool that the numbers have continued from one grid to the next.

Tree Branch looks a lot like the List Item option in the Lists part of the Sets Tab. It enables you to extract the data of one or more branches. When a branch is defined the output list will contain only the data of that input branch. If however you define multiple branches, the list will generate new branches where the selected data items are placed on.

Building grids are easy to do in Grasshopper, there are several nodes which do it manually but there are also more labour intensive methods to do it which could in effect give you a more desirable grid. In this example I have used a; radial, hexagonal and triangular grid. The inputs of the grids require a XY plane which is the axis on which the grid sits. I have also in-putted the size of the grid with a number slider.

Bounding boxes have several useful properties, in this case a bounding box ensures the grid is selected right up to its boundary to ensure the best result when mapping it onto a surface. The bounding box has also been flattened to separate the grid into a clear list.

Data trees are essential in the success of getting to know Grasshopper. These are really difficult to comprehend but organising your lists and information by using param viewers and panels are vital. {0;0;0;2}[0]

I have used a tree statistics with a cull Pattern to obtain the tree branch information.

Closest Point

Data Trees Data trees are very complicated in Grasshopper but very powerful in organising ones data within the file. I have used a grid to illustrate how trees generally work.You can see in the second image how data trees are organised. N represents the amount of items in the list. {0;0;0} shows the arrangement of the list.

Closest point is a tool which will identify the two closest points and then I used a line to construct a line between the two points. Likewise the points can be used to draw lines between the longest distances.

{0;0;0;0}[0]

Grafting Tree Grafting a tree has the opposite result, it splits the list and branches 117 times, in this instance N=1. Even though all of the numbers have changed to 0 the same principles apply in finding a specific 0 hence {0;0;0;0}[0]. This is different from shift list which I will get onto later.

Above I have shown how to split the list in two to still giving me the option to separate the lists if I want, in order to do this I had to change the path mapper sequence to (A;B) - (A). {0;1;0} {0;1;1} {0;1;2}

{0;1}

Filter & Type of Grid

{0;0;2} {0;0;1}

Filters can be useful for a variety of reasons, it can provide flexibility in changing the input of the script with ease. In this case I have connected the 3 different grid types I constructed, I aim to project the grid onto the newly acquired surface. The type of grid is a list of the different grids.

{0;0;0}

{0;0}

Data Tree Structure {0;0;0}

{0;0;3}

Merge Merge is a tool which combines the two pieces of information and puts them into one list. This means that the data is under the same branch.

Data Trees Flattening trees, below shows the result of flattening the tree, all of the information is bunched into one branch.

Simplify Tree Above I have created 2 grids and put them into the same tree, you can see as illustrated above that both lists are in the same tree.

I have used this tool in order to map the grid I made onto a new surface. The surface was made using a loft and loft options node. This can be used to map not only grids but many other things, like images etc. I then used the patch command to create the surface from the mapped curves.

Triangular Applying the triangular grid to this surface results in the surface being subdivided into triangular segments.

Shift List Shift list is a useful tool which shifts the list one position by default, I can however use a number slider to shift the list as much as you like. This can be useful when joining curves or making things align accordingly. Shift list option looks a bit like a controlled flatten option. It gives you the possibility to move the data one or more branches lower, or to collapse the data into a single branch similar like the Flatten option however now placed on a single branch.

Map to Surface

Hexagonal Entwine

Likewise applying the hexagonal grid to the surface divides the surface as such.

Entwine is a tool which has what seems to be the same as merge, however entwine splits the data into two different branches.

Radial Using a radial grid array results in a not so satisfying result. There are gaps left in the previously constructed loft.


Grasshopper 04 ATTRACTORS & IMAGE MAPPING

Maths & Physics

Extrude / Gradient

Twist

Grasshopper requires a lot of maths and physics in order to perform powerful functions. In this instance I have used maths to add together all the distances previously obtained. Doing this will combine the distances in a long list.

I used an extrude tool to extrude the grid based on the attractor, I did this by plugging in the remap into the extrude, using it as a reference. I then used a gradient tool to recolour the map based on the height of the extrusions I plugged in the parameter node into the remap numbers.

I have changed the circle to a polygon node and then twisted the geometry, just to explore further the possibilities of how I can manipulate data to create unique forms.

Attractors are commonly used in parametrics, this is because it is possible to generate a gradient effect by simply using a domain, bounds and remap numbers node. It is essential to involve the use of physics and mathematics in order to obtain the best results and have accuracy.

Resulting Attractor Image mapping is also another tool which can be useful in analysing data and site analysis maps I will look into how these can be effective in the world of architecture.

Sort Sort is a useful tool in Grasshopper, I will use it to sort out the smallest distances to the longest distances. This will come in handy when I plug this node into list item.

The outcome of this has lead to the two attractors influencing the shape and arrangement of the circles, the size can be changed by changing the two number sliders liked to the remap number - domain. Moving the attractors produce variable results.

Image Sampling Image sampling node is effective, Grasshopper is able to generate points from the image based on the pixel size of the image. I have added a grid with the size depending on the size of the image, so in this case 100 x 141. I have also used a gradient like leaf to allow grasshopper to identify the different and gradual effect.

List Item What the smallest distance is and what the largest distance is to sort out the data. This node is used to retrieve certain items from a list, in this case I am sorting out the minimum and maximum distances. I have used a reverse node to flip the matrix. I then plug this into a domain to obtain a range.

And, if, or, else. These are all functions we may need our Grasshopper script to apply to. Gate or - This gate operates with the function in this scenario, so if ONE of the x equals to or is less than 10 then the statement stays as true. Both need to be false for the output to show false. Gate and - Both gates need to be under 10 to show true not one or the other like gate or. Dispatch - The expression used here is if x is equal to less than 5 the statement is shown as true and whatever is in list A is outputted. If it becomes more than 5 then the information is outputted in list B.

Human This plug-in in Grasshopper enables, me to change the material properties. I have used the Create Attributes and Create Materials node while plugged into the gradient node to create a unique material. I have also included a bake button to bake the geometry instantly.

Distance Distance measures from this point to the centre of all the points. This node will later be plugged into the remap numbers node, when I insert the domains the distances will be a range depending on the number sliders.

Construct Domain Plug in a minimum and a maximum and the output is the range. This doesn’t necessarily have to be the case a range can be anything which I want to specify. I then plug into the source of my remap numbers node. I then created a second number slider to identify the size of the circles on the remapped target and plugged this into the ‘target’ of the remap numbers.

Remap Take any value and map it from one range to the source and then map it onto a target, the source range is the minimum and maximum of my distances and the target range i’m going to set myself therefore specifying the largest circle in my model and the smallest circle in my model.

Curve Attractor I have now changed the points I used in the example above to a curve which goes through the grid. I changed the domain to a bounds and used curve closest point to plug this into a remap node.

Gates AND, OR, Dispatch

Remap Just like the attractor points I am using a remap node to enable grasshopper to understand it wants to be mapped. The result of the mapping produces a range of circles more dense where it is darker in the image and lighter on the lighter shades of the image.


Grasshopper 04 IMAGE SAMPLING In this example I will demonstrate how to extract a range of components from an image based on the information of the image. Image sampling can be effective in architectural sense, for example a coloured map maybe site analysis could be inserted here and the darker and lighter colours could be used here to reveal different results.

https://www.nbcnews.com/mach/video/the-milky-way-galaxyhas-a-different-shape-than-we-used-to-think-1437771843729

Result In Plan The resemblance between the image on the left and the image above this is clear. The green segment in the middle shows the middle as an example. The contours produced a swirl shape just as the image has.

Triangular Mesh

Contour

Points

Texture

The result of a delaunay mesh when I connect this to the resulting remapping.

Grasshopper mapped the image and generates a sliced form.

Grasshopper also provides me with the points used to generate the contours.

Likewise I applied a gradient tool to illustrate the output more clearly.


3.5

Grasshopper 05 2D & 3D VORONOI / DELAUNAY

Voronoi 2D This is a tool commonly used in Grasshopper it is a simple and effective way to sub divide an area with curves. When two curves meet at the ‘radius’ point they create a straight line. In this instance I have used an attractor point to control on set of the lines. I used an attractor point to control the size of the thickness, I then remapped the 2D voronoi to create a 2D voronoi which has been extruded. 50º

Voronoi and Delaunay are both very powerful tools and they are used often in Grasshopper by visualizers and architects. Delaunay is based on triangulation trying to make equal sized triangles based on the points provided while Voronoi makes circles/ polygons based on its surrounding points and radius.

Graph Mapping

43º

43º

123º

123º

150º 123º

30º

30º

30º 30º

32º 72º 73º

72º 73º 73º

78º

30º

3

2

1

Delaunay is a tool which is used to triangulate a variety of surfaces, curves and points. This tool manages to match up triangles between a range of points and makes them all similarly sized. In the example below I have shown how I used it to create a form which could resemble a markee whereas the structure on the left looks like a structure which could be used in a cold country to see the northern lights.

150º 135º 135º 90º

123º

30º 30º

76º 70º

120º 120º 120º

74º

74º 76º 76º

73º

3.5

The Cull component (Sets/Sequence/Cull Pattern) removes elements in a list using a repeating bit mask. The bit mask is defined as a list of Boolean (true or false) values. The bit mask is repeated until all elements in the data list have been evaluated.

120º

120º 120º 120º

30º

32º

78º

Delaunay

135º 90º

27º

123º 123º

30º

Cull Pattern

150º 43º 87º

27º

123º 123º

1

50º

43º 87º

2

27º 27º

25º

34º 34º

Graph mapping is a tool which provides flexibility in design. From this example I can change the position of points by moving the bezier like points. In the second example I used a graph mapper to control the contour of a 3D shape. I first used a grid and created rectangles based off of this. I then extruded and capped them lastly I had connected the graph mapper tool to generate these forms.

50º

50º

27º 27º

25º

3

76

30º

150º 135º 90º

70º

120º

34º 34º

3.5

3

2

120º 150º 120º 120º 93º 93º 150º 120º 105º 120º 120º 105º

150º 93º 120º

Gate And

115º 115º107º 107º 107º 115º

1

120º 120º 105º

Perform boolean conjunction (AND gate). Both inputs need to be True for the result to be True.

Weaverbird - Picture Frame Weaverbird is a plug-in for Grasshopper similar to Human which I have used in the examples above. Weaverbird’s Picture frame takes the curves within a surface and produces a lattice form. In the example above on the left you can see the form before I plugged in this node whereas on the right the weaverbird plug-in has been performed.

Gate Or Perform boolean disjunction (OR gate). Only a single input has to be True for the result to be True.

Line weights I can use a custom preview light weights node for diagrammatic purposes. I can give geometry a line colour and thickness. This can be useful when trying to highlight certain aspects of a model and when creating diagrams.

Weaverbird - Catmull-Clark Subdivision Catmull-Clarke’s subdivision is used to subdivide the lattice further this outputs a aesthetically pleasing structures. There are a few different method to do this also. I plus in a mesh node following this to output the mesh.


Grasshopper 05 2D & 3D VORONOI I am going to show the difference between 2D and 3D voronoi. The model on the left shows both examples. On the Ground lies the 2D voronoi which has been simply extruded vertically, whereas the 3D voronoi has a far more complex stringy form the voronoi works around making spheres and where two spheres meet it causes a break and straight line is formed.

Voronoi Section This is a section of a mixture of both 2D Voronoi and 3D Voronoi. This complex structure clearly identifies the difference between the two.Voronoi 2D in 3D only displays a flat surfaced structure. On the other hand a 3D Voronoi structure acts like a stringy texture. Taking a mesh box and eventually ending up with a dynamic and complex parametric structure.

3D Voronoi 3D voronoi works by using points in space to create a range of 3D objects. I have done this on a simple box form however it is possible to replicate this on many intricate forms. The form above illustrates the complexity and possibilities of 3D voronoi.

Solid Difference

Seed

This node is used similarly to boolean difference in Rhino. I can subtract one object from another, this node requires two geometries, but they should be both meshes or both polysurfaces for this to work successfully.

The example above can easily be manipulated by controlling the seed node. I can generate an infinite amount of variations by changing the seed node. With the parameters so easily changeable voids can be created to design spaces.


Grasshopper 06 MESHES Meshes can be very difficult to work with as they usually have sub divided surfaces, however with grasshopper the opportunities are enormous and they can produce highly detailed forms.

Subdivision By just using a box I am able to generate a subdivided box which resulted in a very aesthetic box. Meshes are often used in the gaming industry where they can easily generate these building structures.

Triangular Meshing

Weaverbirds Quad Split Subdivision

Deconstruct Mesh

I constructed a mesh using from points and a triangle node I used for the faces, I combined this with a range of colour swatches to generate one triangle mesh. I then arrayed along the centroid and used a polar array to array the form in a circle arrangement.

Another way in subdividing a surface is using this weaverbird node. Quad subdivision divides the surface into polygons which are similarly sized.

This node is used to obtain vertices and faces of a mesh, this is similar to an explode tool on Rhino, but this is more controlled and can provide individual faces obtained from a list.

Catmull-Clarke Subdivision

Mesh Edges

I have generated three simple forms a box, sphere and a cone. I used the subdivision process to allow the meshes to become more detailed, the sphere as it was, was unlike a sphere as the sides were limited however by adding subdivisions it allows the sphere to take shape with a higher level of detail ,as meshes do not work the same way nurbs do.

This node is used to obtain the edges of a mesh, extracting these curves provide the opportunity to give them a colour and line thickness suitable for diagrams.

Construct Mesh Construct mesh is a great node which takes vertices, faces and optional colours, this node is usually used at the beginning of a meshing project, but could be used down the line to extract certain vertices and faces.


Grasshopper 06 MESHES I will look into how I can use attractor points in a mesh to control the subdivided surfaces. I have created a pretzel looking form with windows to show the difference of the attractor.

Weaverbird This Grasshopper plug-in is a great tool for lattice structures. This structure from the inside looks like a twisted structure. This form was also controlled by an attractor point which allows for the lattice to change the shape/size of its windows depending on the placement of the point which is controlling the attractor.

Methodology 1. This Grasshopper plug-in is a great tool for lattice structures. This structure from the inside looks like a twisted structure. This form was also controlled by an attractor point which allows for the lattice to change the shape/size of its windows depending on the placement of the point which is controlling the attractor.


Grasshopper 07 KANGAROO SOLVERS I will be researching how to use solvers. These are really powerful tools which replicate physics, these include thinks like gravity, pressures, foldings, collisions and pulling.

Physics solvers These are clouds of points which are updated over and over again in a cycle, forces that are represented computationally as vectors having direction and magnitude. In each cycle the singular calculates new force vectors, and uses the vectors to update the location of points. Typically this loop continues until the points no longer move or move a small distance in each loop.

Video A clip is available to see how this particular geometry reacted to the physics solver. Link in the email.

Steps

Step 01

Step 02

Step 03

I began with a mesh plane. Which I triangulated to help break up the plane into segments I used an anchor to pin down points and used load in a deconstructed mesh to provide a strength for the physics. I inserted these into the solvers which has a button which restarts the simulation

The first step of this starts similar to the last, I took a mesh plane and used mesh corners to grasp the corners with an anchor.

Lengthline is a new node to Kangaroo 2. Previously known as springs, it serves a similar purpose where the outcome is a spring. These springs are connected to the mesh edges which will control the height in combination with the anchors.

I use entwine which winds the data together but is not the same as merge, with a solver attached to the end of this and when the boolean is set to true the form of these structures build. I have then used the mesh edges from this a decided to pipe them to give a weave effect.


Grasshopper 07 ELASTIC AND PNEUMATIC STRUCTURES I will be exploring solvers further. In order to do this I will look into elastic structures and pneumatic structures. I will delve further into using a range of new nodes to develop my grasshopper skills also.

Inflation Pneumatic structures are commonly used in architecture and grasshopper enables a user to try replicate this. Above are the results of the inflation as I change the pressure node. If I over inflate grasshopper is sends the points flying into space as the geometry would not cope with the amount of pressure. The image below illustrates the box it began with and the final result after inflation.

Video A clip is available to see how this particular geometry reacted to the physics solver. Link in the email.

Step 01 I began with 3 curves of different sizes, I needed to then join the points, in order to do this I need to shift the list in the data to data match.

Step 02

Step 03

After matching and merging the data I used warpweft which outputs curves which join together neatly due to the data matching.

As before with the tensile I used an anchor which are the original divided curves. Then I in-putted this into a solver to get the desired elastic effect.

Step 01

Step 02

I took a mesh box and triangulated the box so when it inflates it can inflate with more accuracy.

The lengthline node together with the pressure allows the box to inflate, there is a number slider to control the pressure, depending on the size of the box.


Grasshopper 08 LOOPS & ANEMONE Loops are a fundamental weapon when dealing with program flow. You’ll want your component to perform a certain action many times over a data-set or to keep on doing something until a condition is met.

Step 01

Step 02

Step 03

Step 04

Step 05

I began with a circle divided into 12 segments. From this I find midpoints and create 12 equal rectangles. I ensure they are all drawn on the XY plane.

I add a loop start and end node in at this point, the end node will not be relevant until the final step but I insert it early to test and for trial and error. I used data matching to select individual points and allow those to repeat in the sequence.

I eventually end up by adding repetitions with the first image but with curves. I then use a rotate 3d and radians node to rotate the rectangles on the Z axis, this is done to the whole sequence.

Now they have all been rotated on the axis I can begin to give them a surface, I then focus on evaluating the surface and controlling the midpoints to allow me to control the depth that is in each individual rectangle.

Now all the data matching has been complete I can add a gradient tool to give the shape a range of colours. I can change the parameters of the depth of the whole object as well as control the depth of each individual rectangle.


Grasshopper 09 GALAPAGOS & LADYBUG

Highest & Lowest Points I would like to find out the highest and lowest point in the example below. I can do this through Galapagos. I have used the Galapagos node and plugged the point number sliders in as the Genome and the fitness into the deconstruct point. Before I simulate this I have an option to pick whether I want the ‘Maximum’ or ‘Minimum’. I have done both to show the results.

Galapagos is used in analysing structures, Galapagos generates hundreds or even thousands of variations on a small or large scale and it will show both the best and worst outcomes in terms of efficiency. Ladybug is another software used to analyse the weather and the structure within this also.

Maximums 17.7

17.4

16.5

14.8

13.9

LadyBug Galapagos can also be used in combination of lady bug, here I have used a EPW file to get weather information in Egypt, by using the Galapagos solver I am able to get the maximum and minimum for the amount of sunlight radiation, red and orange show high levels whereas the blue show the dim areas.

Step 01

Minimum

I have made my shape by using points and applying a nurbs curve to it, this gives me a curve where I can change the degree, I then evaluate this so later I can plug in the Galapagos genome to use this as one of the parameters.

This was the best minimum outcome at 13.4

Step 02 I generated a surface from this a added a series to array the floor-plates vertically, from this I then used this as another parameter for the structure.

Step 03 I then plug in the LadyBug analysis tools and applied the EPW file. I get a note from grasshopper identifying that the sky is being set depending on the location of the file as shown on the left. From this I plug it into a radiation analysis node which enables me to start the solver.

Fitting Many produce designers and architects need to find efficient ways to lie out there work when working with panelling or sheets. On the left I have again used the minimum and maximum to show the most efficient way of fitting in the structure within a sheet which fits perfectly around it.


Grasshopper 10 PAVILION STRATFORD Stratford Olympic Park. I have chosen this to be my site for the my pavilion, there is currently a bridge, which is not fitting to its surrounding, I plan to therefore design my pavilion along this strip.

Stratford Olympic Park The Olympic park is already filled with parametric structures, such as the slide, the West Ham Stadium and the London Aquatics Centre made by Zaha Hadid architects.

Canary Wharf Station Canary Wharf Station, I have looked at this to inspire me in this project. This structure has been used as a bridge for a train station but also obtains some nice walkways for individuals to go through as they walk across the long station.

https://www.instructables.com/id/Origami-Suspension-Lamp/

Step 01

Step 02

Step 03

I needed to research origami and look into what mountain folds and valley folds are. This allowed me to generate this pattern for which I will use to design the structure.

Using a mesh plane with this integrated pattern gives me the opportunity to create these folds. I looked into hinge nodes and used them to help generate these forms these go into a cull pattern which helps to remove elements in a list using a repeating bit mask.

I have also deconstructed the plane to then use the plastic anchor which fixes points when they stop having so much force on them as with all the solvers I have included a button to reset the forms and a boolean toggle to decide when I want the effect to take place. A number slider on the left dictates the amount of the fold.


Grasshopper 10 WEAVERBIRD AND INFLATION I have looked into how I can develop the form further by creating a lattice form inspired by the Canary Wharf Station.

Step 04

Step 05

Step 06

Solvers will not only output a mesh therefore I need to list the mesh with a list item node, following this I used the Weaverbird’s picture frame to generate the lattice shapes as illustrated below.

I then needed to think ahead, if I am planning on inflating this structure then I will need to give the mesh a thickness so the air can flow through. Therefore I have added a mesh thicken node to add some density to the mesh.

Catmull-Clarke’s subdivision is used to subdivide the lattice further this outputs a aesthetically pleasing structure. I then used a stretch node to pull the structure in one direction allowing the structure to fit well over the bridge.

Step 07

Step 08

Step 09

I scaled the structure to the correct size before the inflation process. This is because when the inflation happens to a small structure the pressure becomes too much and messes up the structure’s form.

It was a trial and error procedure to get the correct form with the structure, as you can see it was only through trial and error that I came to obtaining the desired structure. I began by inflating too much

Now I have the desired outcome I can look into putting the structure on site and generating renders.


Grasshopper 10 RENDERING I looked into what materials I could use, Stratford tend to use a white and black colour scheme and they tend to let the nature do all the talking, therefore I plan to show this structure in a chrome which should suit the colour scheme of the park.



Grasshopper Part B DS10 PROJECT 37 DS10 is a very relevant studio to learn about parametric parameters. I will give a quick overview of my project to demonstrate where this exploration task has taken me.

Nelumbo Nucifera

Experiments

Sand Variations

I began this project by looking into a flower of my

Hole Depth & Shape Analysis

I had used the parameters of the lotus plant to explore, how I

choice. I decided to look at the Lotus flower. It has a

could work with the distances between the holes, by draining sand

The Nelumbo Nucifera is a plant which is grown

After I 3D scanned this plant I had 3D printed it and begun to cast the inside of the plant in order to understand the relevance between the size of the hole and the depth of the hole. Unfortunately due to the level of detail on the 3d print it made it incredibly difficult to be left with the negative mould. However 3 managed to survive and I was able to identify the

in four different continents, Asia, Europe, Africa and

level of depth.

lotus.

I looked into the use of balloons. I casted around the balloons to try and understand the concave effect which my holes offer. After I completed this I did realise that the holes here are not too similar with the holes of the plant due to the shape of the blown up balloons.

I poured sand through a variety of holes. I generated these forms

unique geometry and I explored to find consistencies within it. In order to do this I conducted a range of experiments.

through various sized distances I could observe more closely as to how the distance impacts the outcome of the overall form. These distances have been chosen because they are the most and least extremes when comparing the distances hole to hole on the

America. This unique plant is part of the water lily family. The flower takes between 2 and 5 years to fully grow depending on the conditions. Each plant produces seeds from the lotus pod unlike any other water lily. The First Experiment which took place was me looking at all of the flower heads which are sized between 50-60mm. The first immediate and obvious pattern is the gradient which have holes which are small on one side and large on the other. The sections produced from the 3D scanning are very interesting and I will investigate, finding out why it is the way it is. My next experiment explored the similarity in lotus pod head size when the size of the head was over 200mm in circumference. The first immediate observation which differs from experiment 01 was the consistency in the size of the flower head. The sections of this flower show the variation in the depth of the hole. Te larger the hole means the larger the seed which also means the larger the overall depth.

In order to understand this flower better I needed to understand the complexity of the surface of the plant, after 3D scanning the plant I 3D printed the plant on a large scale. Seeing the intricacy of the surface and the arrangement of holes I will now explore into this further, I aim to cast and produce positive and negative forms based from the general arrangement of this plant. On average the largest hole is 3.5 times bigger than the smallest hole. I will use this principle to create a new matrix where I aim to extensively test this array to generate a terrain. Paper is a cheap recyclable material which obtains many ideal properties including its flexibility, tensile and toughness. I had stacked the paper using the form of the backside of the pods, these create unique and exciting forms which open up the doors for development. When the paper was all joined together the strength of the model considering it was made from paper was unexpected.

based off of the plants parameters. I gathered that I needed to learn something from the forms I was getting. I needed to explore a site and so I gathered that I would look into a country with an abundance of sand. For this reason I chose Egypt. Now I knew I was working with sand I needed to understand my parameters so I conducted a study to learn how these intersections work. I gathered that the form always end up the same no matter the time scale of the sand being drained and learnt that it was the intersection of a radius which allow this to happen. This is a method in Grasshopper called Voronoi. Material I wanted to solidify sand sustainably as we all know concrete is far from this. So I looked into a acacia tree which produces a natural adhesive called Gum Arabic. I then used this with a mixture of clay and sand to generate my own material. On the right show some of the results from trying to make my own material. I want to use this is my study of parametric parameters.


Grasshopper Part B

Step 01 I made a diagram to explore this voronoi form and its parameters. After this I looked into surface morphing, this method is used to wrap a geometry around a surface. I generate the voronoi and then get the area and

VORONOI EFFECT

scale the voronoi curves around the centre of each segment.

As previously mentioned my project is about how 2D shapes can manipulate the 3D. For this reason I will begin by using voronoi 2D to generate these forms,

Step 02 I determine the scale amount and create a surface based off of this. The next step is to extrude the surface and give the geometry a bounding box. This ensures the whole geometry is inside the box when I morph the surface. I make the surface and morph the bounding box to generate the forms on the left which could be used as a lattice shelter. 3 2.5

11 Rings

11 Rings

11 Rings 107º 73º

3.5

107º 73º

2

107º 147º

1 1

1.5

Voronoi 01

Voronoi 02

Voronoi 03

Voronoi 04

The first pattern I used was based on my

This form was me trying to understand

This zig-zag arrangement is one I am

This variation was similar to voronoi This abstract form was1 developed

I generated a one random2.66 form

research of the size of the holes and the

what difference the points would make at

looking to explore further as it produces

2.5 02. This enables me to achieve the

using populate 2D. This is an exper-

arrangement of the holes, there are 11

a larger distance, the outcome shows a

holes in the outer ring which is the same

very symmetrical outcome.

a unique arrangement with polygons. I will middle ground between the two. see if I could array this form to generate However this form has a very flat a structure.

structure.

107º 73º

107º 107º 73º 73º

3.5

used for the plant.

107º 73º

Voronoi 05

3

by getting the overall average form 2

Voronoi 06

1.83

of the plant1.5and applying the arrayed imental form and could be used to 3.5 shape to a voronoi form.

produce unlimited variations.

1.83

2.66

3.5


Grasshopper Part B

Step 01

FORM EXPLORATION

make 3 lofts and then I polar array the form around the centre to get the repeated

My next move was to learn from the sand experiments, I realised that one of my experiments naturally produced a column as a result and so I look to use the middle segments of the voronoi in this example to achieve this.

Step 02

I start the base with points and a 2D voronoi, area and scale it from the centroid, I pattern.

I move the central part which I want to be the column to the centre of the z axis. Lastly in order to make the form realistic it needs a thickness, for this reason I have used mesh thicken.


Grasshopper Part B

Step 01

FORM FINDING

troid area and moved in down on the Z axis. From this I continued to list a range of

I generated the 2D voronoi from a range of points, from this I scaled from the cenitems and loft the items. I arrayed those which are the same.

Step 02

I worked the next voronoi form to generate a combined form. I wanted to create a sandwich effect with the voronoi so I created a script to morph this sandwich effect onto the surface.

3 2.5

After the lofting process I mirrored the items to achieve a desired sandwich look. I then used a bounding box and surface morph to morph the geometry along a range of surfaces until the desired surface was achieved.

11 Rings

50º 43º

11 Rings

50º

27º 27º

25º

3.5

11 Rings

43º 87º

27º

123º 123º 123º

30º

2

123º

30º

3.5

3

2

32º

1

76º

3.5

70º

30º 30º 74º

74º 76º 76º

76

30º

70º

3.5

3

2

1

34º 34º

1 3.5

1.5

1.83

3

1

3

2

1

1

1.83

2.66

2.66

2.5 1.5

2

150º 135º 90º 150º

150º 135º 135º 90º

120º 120º 120º 150º 135º 90º

120º

120º

120º 120º 120º

120º 150º 120º 120º 93º 93º 150º 120º 105º 120º 120º 105º

150º 93º 120º

120º 120º 105º

115º 115º107º 107º 107º 115º

3.5

3.5


Grasshopper Part B SHELTER One of the functions of this structure is to act as a shelter as the sun can reach above 40 degrees in summer. The material I am using would be suited to this as the overlapping acts as a support.

Step 01 I created a volume which I wanted to be arrayed throughout the surface. After lofting the arrayed piece I wanted the pieces to become oriented around the edges on the surface. I used rebuild to determine the amount of curves required on the U and V axis.

Step 02 The divided surface gives me control over what is happening when the geometry is oriented over the surface.


Grasshopper Part B DS10 PROJECT 37 My final proposal looks into the events and functions of my project and I aim to provide shelter, storage and allow activities to happen whilst maintaining a minimal space usage.

Step 01

Grid Strategy This is a grid I generated from Voronoi and I will be using this to aid in the circulation of my project.

Once I has determined the activities, functions and dimensions of the spaces required I thought to work with a voronoi grid. I divided a curve and used a less than component to generate a radius around the curve which will act as an attractor later.

Step 02 In doing this I am able to use a curve as a attractor and only obtain geometry within a certain radius of the curve.The Cull pattern allows me to obtain the desired forms.


Grasshopper Part B REMAPPING & DATA MATCHING I will be controlling the heights of the columns in order to manipulate the sun path and allow certain amounts through in a controlled environment.

Step 03 I then move and remap these forms to generate curves which change its height based on the remapping and the domains I have in-putted.

Step 04

Step 05

Step 06

Step 07

Next was to focus on the columns. I wanted the columns to be a have

I needed to get the data to match correctly and therefore put the area

Using a weave tool alongside a circle I am able to generate circles at the

For diagrammatic purposes I was able to edit the colour scheme creating a controlled

a thinner middle in order to have better views. I therefore needed to

through a graft tree providing a uniform list that Grasshopper can

end points and midpoints providing me with a set of curves which I can

environment, I listed the items I wanted to specify and colour and added a gradient tool

generate area from the remap and cull pattern to give me the points are

understand.

loft.

alongside the edited line weights.

various heights and from this generated a curve.

Step 08 With another move component which is joined with the remapping, I use a extrude point node and generate the roof segments of the structure.

Step 09 Another one of the functions I needed was the storage and this is also done through extrusions in the middle sections. This provides the opportunity to deal with various functions, lastly the floors needs an extrusion to work as a base.


Grasshopper Part B LADYBUG ANALYSIS I will be doing some analysis on the environment in Egypt by using Ladybug, this information will assist me with design, orientation and will update me with information concerning wind factors and much more.

Step 01 I decided to work on a segment of the geometry due to the large amount of information Grasshopper will not run the whole object. Therefore I chose a part and will apply this knowledge to the rest of the geometry.

Step 02 After baking the geometry I wanted I did the first step which was to add the ladybug node which confirms ladybug is running. I obtained data from Egypt which is where my site is set to be and did this by downloading the EPW file and connecting that file with a file path node.

Step 03 This information provides me with lots of different data, this includes wind speed, direction, radiation and much more. I now matched the data where necessary so a sun path node was added, which has an analysis period added to determine the time I look to do the analysis.

Step 04

Mesh Result

Mesh Result

I add a boolean toggle to each one I want to run and set it to true, this outputs the coloured

This is a result of the outputted mesh with Sun Radiation. It confirms to

This image is a clear indication that I would achieve what I want by blocking the sun with these structures,

mesh in which there is a key to determine the colour coding. Each EPW file would produce

me that the area below the roofs are considerably cooler than the roof

the blue indicates a cool temperature. Below the results are showing the wind rose and the total radiation

separate results depending on its climate.

itself which is acting as a shelter.

during different months of the year.


Grasshopper Part B RENDERS These are some final images illustrating how the final proposal could look.


Grasshopper Part B RENDERS Aerial views of the structure, take note of the shadows which is accurate to the sun in Egypt. The structure does a great job in keeping out the heat by day allowing other individuals to commence with the site’s functions by day.

Analysis Outcome The resultant geometry has allowed my studio project ‘37’ to develop into a structure which would assist a broken country’s economy. Starting from a flower I have managed to create a unique structure which provides a shelter and enables the functions of the site to work better.This is a structure which has been designed to enable future potential, the voronoi form really enables the opportunity of continuity. I was able to generate a wide range of iterations using voronoi.Voronoi is seen as a easily generated form, however, I have taken it a few steps further to push the limits of what the structure could look like from eye level. From eye level the structure looks like a pathway of inverted and intersected cones, it is only from above where the voronoi effect becomes noticeable. The definition is relatively small and compact which makes the file more manageable for what it is, this took me lots of time to refine the script and left me with something I can understand. I had a hard time when trying to get the data to match, I needed to review what I had previously done to rethink as to why the lofting of the middle columns were not lofting as I look to try and refine my data tree structures further in the future that way when I am trying do achieve a certain outcome I can break down the lists and separate them more easily. I am overwhelmed by the amount I have learnt over the last term, I have managed to generate a wide range of scripts and generate a range of parametric parameters which are difficult to model just using Rhino, I hope to use these skills to develop my future ideas, I look to learn more plug-ins to develop and refine my concepts.


Bibliography https://discourse.mcneel.com/t/lists-matching/94138 - This forum was me getting assistance on data matching/listing. https://discourse.mcneel.com/t/midpoint-of-curves/93941 - Another time I required assistance and asked on the forum. https://www.instructables.com/id/Origami-Suspension-Lamp/ - Research on origami. https://www.youtube.com/watch?v=oKJagvumvCI - Lofting and the history of lofting. https://www.nbcnews.com/mach/video/the-milky-way-galaxy-has-a-differentshape-than-we-used-to-think-1437771843729 - Image used for Galaxy https://discourse.mcneel.com/t/from-folding-origami-to-grasshopper/58856/6 Origami modelling guide https://mostapharoudsari.gitbooks.io/ladybug-primer/text/components/Sunlight_ Hours_Analysis.html - Ladybug primer https://thinkparametric.com/courses/anemone-101-using-loops-in-grasshopper

Performative Parametrics Digital Design Abanoub Reyad - 1743763 January 2020


Fab-lab Banquet

Option 01

KINETIC LANDSCAPE In an eventful week we all learnt we were assigned to create a kinetic landscape. The team consisted of me and Trang-Thuy Dao. We were on the wine team where we worked together to produce a wine fountain. Our specific focus was to design an instrument, therefore we designed an instrument which would collect wine. Having recently been to Bali and Vietnam we were both inspired by the rice fields and wanted to focus on rice wine. We used these landscapes in to assist in the intial design stage. Following this we decided to collaborate with the lighting team as it rains lots in these tropical countries and we wanted the stream of wine to begin from the above acting like the rain.

Option 02

Option 03

Developed Option


Fab-lab Banquet PROCESS

1

Band Saw

2

Laser Cut

4

Adhesive Application

7

Bridges

5

Pillar Drill

8

Disk Sander

Trang and I took it upon ourselves to split the work between us, we set ourselves deadlines to complete the essential courses. After this we were able to begin by building the base.

Band Saw

Pillar Drill

Laser Cut

Bridges

Levelling

Disk Sanding

Applying Adhesive

Assembly

In order to construct the fountain a plan of action was needed for the smooth running of the project. We decided to begin with the base as we needed to purchase a unique drill bit for the glass later, this way the fountain can just slot in later. We began by band sawing the base to achieve the required dimensions of 540x360. We also boxed in the base in order to make it easily transportable. We continued by laser cutting MDF to achieve the desired landscape. We then used 24mm scrap MDF to split the levels. We used a pillar drill to drill through the base for the fountain to slot into later. After the construction of this we needed to build and fit the bridges which would act as a tunnel for the wine to travel through. We used a disk sander to accurately achieve the curvature required. Next was to progress with the fountain. 1. Band Saw 2. Laser Cut 3. Levelling 4. Applying Adhesive 5. Pillar Drill 6. Bridges 6. Disk Sanding 7. Assembly

3

Levelling


Fab-lab Banquet

8

11

14

9

12

14

10

13

PROCESS 2 The following stages were to work on the fountain itself. As we completed the base we needed to work on drilling glass and begin to assemble the final component of the project.

Hack Saw

Assembly

Pillar Drill

Spot Weld

Glass Drilling

Cutting Acetate

Layering Bolts

In order to fix the fountain appropriately I began with a metal strut which ran through the middle of the structure. We used a hacksaw to cut it to length being careful not to damage the thread. We then used a pillar drill to fix the metal strut to a base. The nest step was probably the trickiest part to complete as we needed to drill through glass which is extremely tricky, we took a few attempts to get it right. We used a drill bit and drilled slowly applying water to it at the same time enabling a lubricant. We used bolts to accurately measure out the distances required between each glass bowl. We assembled the bowls and put it in place within the structure. The final step was to create mini cups which the wine would pour into. We used the spot welder to join the copper together and then used acetate origami to create the cup form. 8. Hack Saw 9. Pillar Drill 10. Glass Drilling 11. Layering Bolts 12. Assembly 13. Spot Weld 14. Cutting Acetate


Fab-lab Banquet ANALYSIS Final produce and exploded diagram. The project was successful although we managed to stumble across a few hurdles along the way, it was difficult to collaborate with other members of the team due to absences and a lack of knowing each other, this however provided the opportunity to bond with those in our group and to work as a team. Everyone in the wine team managed to produce a one off piece but the lack of collaboration is really where thee team failed. If I were to complete this task again I would definitely take leadership to enable the teams to work together and produce a final pieces which complement each other. Bridges

Terrain Levels

Base

Bowls Drainage level


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.