Andrea Villate Vargas w1461073 DIGITAL REPRESENTATION PORTFOLIO University of Westminster, Department of Architecture MArch 2014-2015: Semester 1 Group A - Digital Craft Module 4ARC654 January 5, 2015
S. Integration - Weaving Patterns
[4ARC654] Digital Representation _ GROUP A Digital Craft
00:/ CYCLE STAGES THREE PHASES
CYCLE A _ Model Parameters (MP)
A
The first stage sets up the parameters of the parametric model, and the logic that will drive further explorations.
CYCLE B _ Fabrication Strategies (FS)
B CYCLE C _ Generative Techniques (GT) This stage is about exploring the different ways the material parameters can be driven and the setting up of logical relationships within the digital model that allow for the highest level of control over the result of the generative modelling. This stage will overlap with the feedback of information from the physical model of the previous stage, models made during the previous stage will be looked at to highlight failures and successes.
Andrea Villate w1461073
The second stage is about translating the digital information into a language ready for a rapid prototyping process. This stage will include strategies for managing large numbers of components and assemblies.
C
2
[4ARC654] Digital Representation _ GROUP A Digital Craft
00:/ INTRODUCTION TO RHINO _ REAL GEOMETRY POINTS
A point is a 2D object that represents a list of values called a co-ordinate. The values in the list correspond with the number of dimensions of the space it resides in. The space can be one, two or three-dimensional.
CURVES
SURFACES
A curve is a set of points that form a line as a result of a mathematical expression. Curves are classified as follows:
A surface is any face that is formed of an actual mathematical expression. Surfaces are classified as follows:
Point are not visible in the render/shaded mode.
• Primitive Curves: Simple curves defined by user. • NURBS Curves: Rational curves formed as a result of shape blending using control points manipulated by user. • PolyCurves: Curves made up of a collection of different types of curves.
• Primitive Surfaces: Simple surfaces defined by user. • NURBS Surfaces: Rational surfaces formed as a result of shape blending using control points manipulated by user. • PolySurfaces: Surfaces made up of a collection of different types of surfaces.
R1 _ one-dimensional
Primitive Curves
Primitive Surfaces
R2 _ two-dimensional
NURBS Curves
NURBS Surfaces
Points can be useful to point out locations in models or act as reference points for other types of geometry.
MESHES
A mesh is a collection of surfaces used to create detailed geometry.
VIRTUAL CONSTRUCTION GEOMETRY
Vectors and planes are parameters used to construct models in 3D world space. Vectors A vector is a set of instructions for moving from one point to another in three dimensions.
R3 _ three-dimensional
PolyCurves
PolySurfaces Planes A coordinate system in three dimensions set up by user defined parametric equations
Andrea Villate w1461073
3
[4ARC654] Digital Representation _ GROUP A Digital Craft
00:/ BASIC MODELLING & FABRICATION STRATEGIES Draw NURBS curve
Mirror curve
Make curve 3D
Loft curve
Prepare for laser-cutting
Laser-cutting
Bend to achieve curvature
Stick with glue
Andrea Villate w1461073
ArrayPolar
Define PARENT & CHILD layers
UnrollSrf
Hold together with tape whilst drying
4
[4ARC654] Digital Representation _ GROUP A Digital Craft
00:/ FABRICATION & ANALYSIS
Testing different configurations brought forward challenges that can be encountered during the modelling process and preparation for laser-cutting:
1
1. Parent and child layers can be used to allow child geometry to respond to changes in parent geometry thus improving work-flow. Child geometry has to be created using ‘record history’ to make this possible. 2. Intersections during polar array can result in the creation of small loose parts when unrolling surfaces. Therefore, intersections need to be corrected before the curves are made into a 3D form. 3. Unrolling 3D surfaces into 2D surfaces allows for the creation of highly accurate geometry that can be laser-cut. The unrolled surfaces cannot be laser-cut directly, their borders have to be extracted and labels have to be edited. The geometry has to be laid out so that it matches the respective colours of the laser-cuter for cutting and etching.
2 2
3
3
3
The unrolling and laser-cutting fabrication strategy is very accurate. However, challenges can be encountered during the making process: 1. While the pieces produced by the laser-cutting process are very accurate, folding is problematic lengthy and somewhat of guessing game. Score lines would make the process much faster and effective. 2. Materiality is a big factor in the accuracy of the folding, Thin card is easy to fold and mistakes are not very visible. Thicker card produced a more sturdy form but folding lines can be very visible and are not aesthetically pleasing. 3. Due to the intersections created during the polar array command the base of the object ended up having a series of holes making the object unstable. 4. The faces with the numbers on need to face inward when gluing to produce a visibly pleasing objects. However, this means that burn marks from the laser-cutting process become clearly visible. Andrea Villate w1461073
4 2
3
1
5
[4ARC654] Digital Representation _ GROUP A Digital Craft
01:/ PARAMETRIC MODELLING IN GRASSHOPPER BASIC MODEL: ONE SYMMETRY
Polar Array command
Resulting surface
Parameters: Adjustable parameters (including the input curve) determine the output of the Polar Array. Organising loft curves: Organised curves for individual surface lofting. The geometry (as a list) is grafted and simplified before it is merged and lofted.
ADVANCED MODEL: TWO SYMMETRY Additional Mirror command
Parameters
Same as above
Organising loft curves: Curves organised into the correct sequence. The same parameters are used for two different Polar Array components. Resulting lists are weaved for lofting.
KEY TERMS / FURTHER RESEARCH • List: Grasshopper uses, in contrast to a programming environment, no object names to define an object. Object or objects are placed in a list. The different lists of data are organized in a data tree structure where every branch and data content of the branch have an index number. • Simplify: Used to get rid of any overlapping by shared branches . The result is a simplified data tree structure. • Graft: Used to restructure the data tree structure by adding a branch to each data item First the original data branch structure is deleted and then the data items in the root of the tree will each be placed onto a new branch. This can be useful for creating a branch structure which is similar to another data tree. Andrea Villate w1461073
A B C
6
[4ARC654] Digital Representation _ GROUP A Digital Craft
01:/ DIGITAL TESTS & ANALYSIS POLAR ARRAY & SCALE TRANSFORMATION
Advanced model _ Two symmetry
Scaling the mirrored Polar Array creates a geometry that almost looks organic, like a flower. Playing with the reference point used for defining the centre of scaling allows for non-uniform scaling and a more organic, less symmetrical, form that can be easily edited. The way the definition is set up in Step 4 creates many intersections between surfaces, while these can be laser cut and slits can be added for fabrication, the definition bellow generates a similar shape with no intersections which would be easier to manage when making. Original Curve
Scale command
Edited Curve
Number slider to set scale
Point for non-uniform scaling
Move point in x, y or z axis Andrea Villate w1461073
7
[4ARC654] Digital Representation _ GROUP A Digital Craft
01:/ DIGITAL TESTS & ANALYSIS MIRROR & MOVE TRANSFORMATION
Move command & xyz vector
Moving the curve, in the xyz axis, before the Polar Array command runs generates a geometry that looks more organic than the original. Playing with the number sliders used to define the x, y or/and z forces that define the movement vector makes the geometry less symmetrical and changes the shape drastically. Similarly to the previous test the definition set up in Step 5 creates many intersections between surfaces. By reorganizing the list before lofting no intersections are created allowing making to be a quick process. Original Curve
Number slider to set x value
Edited Curve
Number slider to set y value
Number slider to set z value
Edit xyz values Andrea Villate w1461073
8
[4ARC654] Digital Representation _ GROUP A Digital Craft
02:/ MATERIAL COMPUTATION INTERNAL STRUCTURE
ALTERNATIVE _ Internal Framework (Horizontal): One set of UV curves is extracted to use as internal structure for the form. The flip command reorganises the points list and allows the Interpolate Curve command to create curves through a set of points in a horizontal manner thus generating horizontal ribs instead of the vertical ribs below.
Lesson 01 Definition: Basic parametric modelling using Mirror and Polar Array transformations. The resulting geometry of the loft is a BREP. Errors can be resolved by de-constructing the BREP and retrieving a specific surface from the list to allow the definition from this point forward to affect a single surface.
Analysis Grid: A UV grid is extracted from the surface in order to analyse its curvature. The number slider dictates the number of divisions on the surface. The lower the number on the slider the higher the number of divisions on the surface. More divisions generate more points to be analysed by the curvature command. Internal Framework (Vertical): One set of UV curves is extracted to use as internal structure for the form. Vectors are used to extrude the curves in the xy plane and create internal ribs. The depth of the ribs can be changed with the amplitude number slider.
Surface retrieved from BREP
UV grid, number slider: 1
UV grid, number slider: 6
Internal framework curves
Internal framework ribs, amplitude: 3
Internal framework ribs, amplitude: 1
KEY TERMS / FURTHER RESEARCH • Developable Surface: A surface that can be flattened onto a single plane without distortion, and as such is created in the physical world by transforming sheet material through folding, bending, rolling, cutting and / or gluing. • Curvature: The amount by which a geometric surface deviates from being flat / straight, and is defined as the reciprocal of the radius of the circle at any point (P) on the surface. As such, the tighter the curve, the smaller the circle (C) and the higher the magnitude of the curvature. Andrea Villate w1461073
A B C
9
[4ARC654] Digital Representation _ GROUP A Digital Craft
02:/ MATERIAL COMPUTATION SCORE LINES
1*
1*
Problem with the structure of the data coming into and going out of the surface curvature analysis component. To solve the problem the surface data coming in has to be cross referenced with the points that are set for evaluation.
Lesson 01 Definition (Parametric Modelling): Basic parametric modelling and retrieved surface from de-constructed BREP.
Analysis Grid: A UV grid is extracted from the surface in order to analyse its curvature. The number slider dictates the number of divisions on the surface. The lower the number on the slider the higher the number of divisions on the surface. More divisions generate more points to be analysed by the curvature command.
Surface retrieved from BREP
UV grid, number slider: 6
Interpolated curves from UV grid, number slider: 1
Curvature Analysis: Finding and using surface curvatures to drive a pattern logic on the surface. 0 values in the V Curvature panel prove that the surface is a developable surface. By modelling a developable surface from a single curve and computing its curvature at set intervals to generate a 3D model areas of higher stress can be identified making the process of making more accurate and effective.
Curvature > 0.051
Curvature > 0.012
Curvature > 0.038
KEY TERMS / FURTHER RESEARCH • Logic Gates: A set of components that implement a boolean function by performing a logical operation on one or more logical inputs to produce a single logical output. The data for these components is in the form ‘true/false’ Cull is used above to carry out this process and generate only the curves that meet the desired curvature value • Pattern Masks: A pattern mask is the process of masking a piece of data following a user-defined pattern. This can include the removing, duplication or rearranging of specific data entries so that the data taken forward into the rest of the definition is relative to what is needed or the format that it is needed in. Andrea Villate w1461073
10
02:/ FABRICATION & ANALYSIS
[4ARC654] Digital Representation _ GROUP A Digital Craft
FABRICATION WITH INTERNAL STRUCTURE Unrolled 3D model
Bending test: Paper vs. card ribs
Labelled ribs
Bending test: Paper vs. card parts with score lines
Structural test
Andrea Villate w1461073
11
[4ARC654] Digital Representation _ GROUP A Digital Craft
02:/ FABRICATION & ANALYSIS FABRICATION WITH SCORE LINES Unrolled 3D model
Bending test
Structural test
FABRICATION WITH INTER STRUCTURE ANALYSIS
FABRICATION WITH SCORE LINES ANALYSIS
Both paper and card ribs were printed for testing purposes, the paper ribs were difficult to handle and bent easily, this made the card ribs the preferred choice for fabrication. Paper and card parts with score lines were also tested against each other, since the paper parts had no score lines their bending was hard to control unlike the card parts, however, it was easier to control the form of the paper parts when sticking the internal ribs onto them since the card parts were too stiff, this made the paper parts the preferred choice. In the end only three ribs were used per part as it became apparent that these were enough to shape the paper parts. Once the six parts had their corresponding ribs it was fairly easy to stick them together using glue. The structural test shows that having a combination of ribs made from a strong material and parts from a flexible material can create a very strong structure that is simple to put together.
The first step was to test the limits of the material when bending. The score lines directed the bending of the parts, however, the card did not withstand the bending and it snapped during the test. This allowed me to understand the limits of the material to be able to bend the rest of the parts effectively. Once all the parts were bent they were put together, this process was very lengthy since not all score lines needed to bend the parts were generated in grasshopper to achieve an exact shape. The material did not make the process any easier since it was not flexible enough to achieve the curvatures generated in grasshopper, tape was used to hold the form together whilst the glue was drying, The structural test shows that the form is not very strong and the different parts come apart from each other quite easily. In conclusion the internal structure method is more effective, score lines can be added to aid bending although they are not necessary.
Andrea Villate w1461073
12
[4ARC654] Digital Representation _ GROUP A Digital Craft
02:/ FURTHER RESEARCH _ DATA TREES GRASSHOPPER & LISTS
Grasshopper uses no object names to define an object, this is what makes it fundamentally different from a traditional modelling environment. In Grasshopper object or objects are placed in a list. The different lists of data are organized in a data tree structure where every branch and data content of the branch has an index number. Accessing objects is therefore more problematic then in a scripting environment. Grasshopper has various tools to remedy this problem. These tools support the editing and selecting the content of the lists and editing the data tree structure. Knowledge of these techniques are essential for the effective use of Grasshopper.
DATA TREE STRUCTURE
A data tree stores and organises data in branches hierarchically. The nature of the data varies from surfaces to curves, points etc... Data is defined by an index number rather than a name and it can only be accessed through a list and defined or recognized by an index number. The data list is stored on a branch of the data tree. The interaction of data will only take place if the data lists are at the same level of the data tree or trees. This means that to effectively access the data in a data tree structure you will have to know how the data has to be accessed and the tree structure can be manipulated. Data from the same level , say {0;0;1} , {0,0,2} or {0;1;3} can interact with each other when the correct component is used. Like the Line component which needs more than 1 input stream. However the data of different level branches cannot interact. If we have a data structure where one set of data is placed on the {0;0;1} branch and the other on the {0;1} branch they cannot be used together because the data is not on the same branch level. The problem with this system is therefore the need to be able to manipulate where the data is stored in the data tree structure so that the data from different data trees can interact.
HOW TREE DATA IS HANDLED IN COMPONENTS
Trees are used by components in two basic ways. Components can either work on sets of items (called branches), or combine items from multiple inputs. Components working on branches from a single input Here the component will work only with the data on the same branch within the same tree. For example a Polyline uses the data of series of points on a single branch to define the polyline. So from the content of a branch a polyline is generated and therefore for each branch 1 polyline. Another example is the Loft component. It also uses only 1 channel for curve input. The same functional combination of data can be obtained with two or more data trees by connecting the different data trees to the same input channel. The trees are merged and the data is placed on similar branches. In the example two data trees with each 100 branches containing each 1 curve of data are merged into a single tree with 100 branches and 2 curves on each branch. Because there are now two curves on a branch the loft will be based on these two curves. This will repeat itself over the rest of the 99 branches.
In the example we can see a difference of the amount of points on the branch of one input and the amount of the other branch of input. In one tree structure the amount of points defined on a branch is 4 in the other tree structure 2. Grasshopper will generate in this case a line from one point of the 4 from one list to the 2 on the other list. It will then generate a line from the second point of the 4 to the 2 in the other list, and so on. If all the four points are calculated , Grasshopper switches to a new branch and start calculating the lines between the four point and the two points on the other list. The lines therefore have a similar end point per branch. The way the lists are combined is depending on which option is selected in the option menu of the component.
If however the data structure is not similar because there are additional branches in one list, the data won’t be combined and handled as separate lists. So getting the data on the right level of branches can be one prerequisite of a successful merger of data.
TREE EDITING
To use multiple data lists effectively it is necessary to make sure that the data is at the same branch level on the different trees. If this is not the case you will have to edit the tree structure. There are a wide range of options for editing data trees
Components using multiple inputs The line component needs 2 points. If a data tree structure is offered as data input for 1 of the two points the content of each point on the Andrea Villate w1461073
branch is seen as a separate input. This point will interact with a point of the same branch in the other data tree. The fundamental difference with the first option is that you always need two inputs and therefore two data structures which will interact on the same branch level.
• Flatten: Branch information is deleted thus putting all the data together in the root of the tree. It a drastic option and often forms the basis for restructuring the data tree from scratch. • Graft: A branch is added to each data item. Grafting is often used in combination with the Flatten Tree option. First the original data branch structure is deleted and then the data items in the root of the tree will each be placed onto a new branch. • Simplify: Overlapping hared branches are removed resulting in a simplified data tree structure. 13
[4ARC654] Digital Representation _ GROUP A Digital Craft
02:/ FURTHER RESEARCH _ DATA TREES • Flip Matrix: Useful when there is a grid of points divided in an equal set of branches and items on each branch. For example there are 10 branches {0;0;0} etc... and on each branch there are 10 data items (n10). A polyline through each 10 items of each branch will generate 10 polylines. However when we flip the matrix a polyline is generated between each first item on each branch and then the second on each branch resulting in a set of crosswise angled lines with the first set. • Shift Paths: Similar to 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. • Clean Tree: Used for cleaning up complex data structures. When invalid or non information is entered in a list it might lead to instability or failure of the network. When a formula fails resulting in a null output. Clean Tree will remove that data from the list. • Path Mapper: The branch structure is reorganized by renaming the original path of the branches and indexed data to a new target path. There are various options available for generating a new path. The input is defined by the branch location and the item index. The syntax for this input is branch = { 0;0;0} for example and item = (10) combined {0;0;0}(10). Item 10 on branch 0;0;0. If we want to place all the data of various branches , say 10 branches {0;0;0},{0;0;1} at the same level onto 1 branch which is defined by the user we can for example place at the source {0;0;0} and at the target {0;0;0;0} . The result is that all the data items are placed on the {0;0;0;0} branch. If we, however, want only the branch names to be changed and the data items remain on the branches we can use an option called Path_index this will give you the option of extracting the amount of branches from the source and translate the same amount to the target branches. In this case the whole structure with items and branches is moved to the target branches. This manipulation of the items of the branch is also possible when we want to have all the first items of all the branches on a single branch. Say you want to generate a line between all the first items of a branch. In this case we can use the Path_index on the source {0;0;0}(path_index) and target {0;0;0;path_index}. The path_index generates the numbers from 0 to 9 The items are selected with index 0 on all the branches and placed on a target branch {0;0;0;0} Path_count can be used to make a link between the number of items or branches and the index number of the target branch. For example when the source branch is defined as {0;0;0} and the target branch as {0;0;0;path_count} the final branch name will be in our case {0;0;0;10} because there are ten branches in our example. A similar option is available with the Item_count option. This will define a number based on the amount of items in a branch. Andrea Villate w1461073
one level behind me” So if the notation for a specific item is: {0;1;4} (3) then the relative item will be found at: {0;1;5}(2) unless there is no {5} and wrap is set to true, in which case the item will be found at: {0;1;0}(2). List A retrieves the elements of the original list that will be affected by Offset input whilst List B outputs the offset data.
ADVANCED TREE EDITING
• Stream filter: Switching between two or more lists by simply selecting the wanted list by its input number. • Stream Gate: Similar to Stream Filter. Used only for one input list. An index number defines to which output channel the list is gated. • Tree Branch: Enables you to extract the data of one or more branches. When 1 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. • Tree Item: Similar to Tree Branch but differs as an extra input option is available for selecting specific items on the branch of the data tree.
• Explode Tree: Similar to the Flatten but it creates a list of every branch instead of putting all the information of all the branches in 1 list. You have to define how many lists you want to generate. If you have 10 branches with each 10 data items you will have to use the Output Manager of the Explode Tree component. Right click on the Explode Tree component and select the option of Output manager. In this menu you can add additional output lists. • Merge: Merges data of similar branches of different trees into the same branches in a single tree. This can be done for not only two but also for multiple trees. • Relative Item: - Extracts two lists from a single list. The output of the component is dictated by the Relative Offset input. The offset has two components. Relative Tree items are specified using offsets in the data path and item index notation. For example, a setting of {0;0;+1}(-1) means “get the item in the next branch that is 14
[4ARC654] Digital Representation _ GROUP A Digital Craft
03:/ GENERATIVE DESIGN GENERATIVE DEFINITION Child Curves & Frames: Frames (planes) are defined by a points generated by dividing the child curves, the frames orient themselves relative to the points. The frame is used to orient polar points according to the curvature of the child curves
Curve Divisions & Deconstruct Point: Divide is used to generate points from the child curves, the points are deconstructed to find their z coordinate values. Z values are used to define the magnitude of the number remapping to create variations by height along the model.
Polar Point: Points are defined by polar coordinates. A variable set of parameters is set up to be used as inputs. Remapped numbers from the revolution angle and depth domains are used as rotation angles and radii respectively.
Target Domain (Revolution Angle): A total revolution angle is defined to be used as input for the Domain command, a number slider is used to define the start of the domain. The domain defines all the possible input values for the Remapping command.
Cluster Output
Interpolated Curve: Polar points are used to reconstruct the curves Remapping Domains: Number values are remapped from the revolution angle and depth domains to another domain of numbers. The remapping is relative; if a value is 0.25 within a domain of 0 to 1, when you remap it to a domain of 0 to 20 it will become 4. The remapping allows the parameters for the polar point component to vary according to the height of the model.
Target Domain (Depth): The depth of the Remapped points in relation to their corresponding frames and divisions point is defined by the Domain command.
Child curves
Curve divisions
Frames
Polar points resulting from remapping
Interpolated curves
Cluster output
KEY TERMS / FURTHER RESEARCH • Generative design: Generative design is a design method in which the output – image, sound, architectural models, animation – is generated by a set of rules or an Algorithm, normally by using a computer program. Most generative design is based on parametric modelling. • Numeric domains: The set of all possible input values which produce a valid output from a particular function. It is the set of all real numbers for which a function is mathematically defined. Andrea Villate w1461073
A B C
15
[4ARC654] Digital Representation _ GROUP A Digital Craft
03:/ GENERATIVE DESIGN SCORE LINES & INTERNAL STRUCTURE Lesson 3 Definition (Generative Definition Cluster): The definition set out in the previous page uses algorithms structured as not- linear systems for endless unique and un-repeatable results performed by an idea code. The number sliders act as inputs and allow editing of the resulting surfaces.
Lesson 02 Definition (Score Lines): Finding and using surface curvatures to drive a pattern definition on the surface. By modelling a developable surface from a single curve and computing its curvature at set intervals to generate a 3D model areas of higher stress can be identified making the process of making more accurate and effective. Values other than 0 in the V Curvature panel prove that the surfaces are not developable surfaces. 1*
Values in the V Curvature panel show that the surfaces are not developable. Finding the average allows surfaces to be edited in order to achieve an average V curvature value as close to 0 as possible to minimize distortion when unrolling for printing.
1*
Lesson 01 Definition (Parametric Modelling): Basic parametric modelling and retrieved surface from de-constructed BREP
Lesson 02 Definition: Grid definition duplicated to allow different surface divisions for the internal framework and curvature analysis for score lines. Lesson 02 Definition (Internal Framework (Vertical)): One set of UV curves is extracted to use as internal structure for the form. Vectors are used to extrude the curves in the xy plane and create internal ribs. The depth of the ribs can be changed with the amplitude number slider.
Lofted surface no generative definition
Lofted surface with generative definition
Inputs changed to minimize distortion
Surface retrieved from BREP
Interpolated curves from UV grid, number slider: 1
Score lines, curvature > 0.150
Internal framework ribs
KEY TERMS / FURTHER RESEARCH • Polar coordinates: The fixed point (analogous to the origin of a Cartesian system) is called the pole, and the ray from the pole in the fixed direction is the polar axis. The distance from the pole is called the radial coordinate or radius, and the angle is the angular coordinate, polar angle, or azimuth. • Clusters: a series of commands grouped together with an output that responds to changeable inputs Useful for large grasshopper files. Andrea Villate w1461073
16
[4ARC654] Digital Representation _ GROUP A Digital Craft
03:/ FABRICATION & ANALYSIS FABRICATION WITH RIBS & SCORE LINES Baked model from grasshopper
Laser cut pieces
Three parts put together with tape
Model with final score lines
Ribs
Unrolled model
Labelled ribs
Two parts put together with tape
Final model
Final top view
Final file for laser cutting
FABRICATION ANALYSIS Following the previous fabrication test it was concluded that the internal structure method is more effective than the score lines method thus the aim was to make the object using flexible paper parts with score lines and card ribs. However, the ribs were not used as they did not aid the shaping of the paper parts and provided no structural support as they had to be bent - the image above shows the curvature of the ribs. Putting the pieces together carefully generated the shape desired with aid of the score lines, tape had to be used instead of glue as the model had to be handled a lot which stopped the glue from drying. In conclusion there is not optimum fabrication technique, it varies according the desired shape; In the previous attempt the internal structure technique was more effective, this time it was the score lines technique, this shows that a making test should be carried out every time to reach an effective fabrication method for the final piece.
Andrea Villate w1461073
17
[4ARC654] Digital Representation _ GROUP A Digital Craft
03:/ FURTHER RESEARCH _ SELF-SIMILARITY SELF-SIMILARITY
FRACTAL
In mathematics, a self-similar object is exactly or approximately similar to a part of itself (i.e. the whole has the same shape as one or more of the parts). Many objects in the real world, such as coastlines, are statistically self-similar: parts of them show the same statistical properties at many scales. Self-similarity is a typical property of fractals. Scale invariance is an exact form of self-similarity where at any magnification there is a smaller piece of the object that is similar to the whole. For instance, a side of the Koch snowflake is both symmetrical and scale-invariant; it can be continually magnified 3x without changing shape.
A fractal is a natural phenomenon or a mathematical set that exhibits a repeating pattern that displays at every scale. If the replication is exactly the same at every scale, it is called a self-similar pattern. An example of this is the Menger Sponge. Fractals can also be nearly the same at different levels. Fractals also includes the idea of a detailed pattern that repeats itself. Fractals are different from other geometric figures because of the way in which they scale. Doubling the edge lengths of a polygon multiplies its area by four, which is two (the ratio of the new to the old side length) raised to the power of two (the dimension of the space the polygon resides in).
30%
30%
90%
Andrea Villate w1461073
270%
50%
175%
18
[4ARC654] Digital Representation _ GROUP A Digital Craft
04:/ FORM FINDING WITH PHYSICAL SIMULATIONS BASIC MODEL _ SPRING FRAME
Points & Curves: Rhino Points are curved are referenced
Physics Simulation: This component runs the simulation, based on the forces, geometry and settings inputs. The simulation is achieved through a number of iterations balancing all the forces until an equilibrium or chaos is achieved. The output holds the curves that represent the geometry outcome of the simulation.
Segmentation: Initial curves referenced from Rhino are broken we into segments, so that they can be deformed in the Kangaroo physics simulation. The more segments per edge the longer the simulation takes as more segments are affected by it. Springs from Lines: The basic forces for the simulation are set up, converting all the segments into line springs to create the behaviour in the simulation of a network of springs being deformed by the forces applied. The length of the segments is multiplied by varying values (number slider) to achieve a desired rest length.
3D frame
Anchor points
Edge segmentation
Physics simulation
Spring rent length: segments length x 0.500
Spring rent length: segments length x 0.800
Chaos _ Segments x -2.000
KEY TERMS / FURTHER RESEARCH • Computational physics simulation: A simulation that uses numerical analysis to solve problems in physics for which a quantitative theory already exists. Historically, computational physics was the first application of modern computers in science, and is now a subset of computational science. Andrea Villate w1461073
A B C
19
[4ARC654] Digital Representation _ GROUP A Digital Craft
04:/ FORM FINDING WITH PHYSICAL SIMULATIONS CATENARY STRUCTURES
Unary Force: This is a force acting on each point in the simulation, i.e. gravity
Points & Curves
Physics Simulation: Catenary curves are generated by the simulation. Segmentation
Springs from Lines
3D frame
Basic Kangaroo physics simulation
Basic Kangaroo & unary force: catenary curves
Catenary edges 2D frame
Basic Kangaroo physics simulation
Basic Kangaroo & positive unary force
Basic Kangaroo & negative unary force
KEY TERMS / FURTHER RESEARCH • Catenary structures: In physics and geometry, a catenary structure is the curve that an idealized hanging chain or cable assumes under its own weight when supported only at its ends. The curve has a U-like shape, superficially similar in appearance to a parabola, but it is not a parabola: it is a (scaled, rotated) graph of the hyperbolic cosine. A catenary curve follows line of structural thrust in an arch. By flipping hanging chain curve, we are able to use the natural lines of forces to shape the material in the optimal way to deal with those forces. Andrea Villate w1461073
20
[4ARC654] Digital Representation _ GROUP A Digital Craft
04:/ FORM FINDING WITH PHYSICAL SIMULATIONS ATTRACTION / REPULSION Points & Curves
Springs from Lines
Physics Simulation Segmentation
Attraction/ Repulsion: This set of forces creates an attraction or repulsion force between each point in the simulation based on how far it is away from another point.
Edges
Anchor points
Edge segmentation
Basic Kangaroo physics simulation
Strength: 17, cutoff: 50
Strength: 500, cutoff: 100
Chaos _ Strength: 800, cut-off: 100
KEY TERMS / FURTHER RESEARCH • Form finding: The task to find the shape of equilibrium with respect to given surface stress state σ and natural (in terms of edge forces) or geometrical (e.g. clamped edges) boundary conditions. Additional loading, as e.g. internal pressure (cushions), has to be considered, too. Considering the non-linear kinematics of large deflections the equilibrium condition in the deformed, current configuration equilibrium is defined by the principle of virtual work. Andrea Villate w1461073
21
[4ARC654] Digital Representation _ GROUP A Digital Craft
04:/ DIGITAL TESTS & ANALYSIS HEXAGONAL GRID
These tests focus on the physical form-finding techniques for design that were pioneered by architects/engineers such as Frei Otto and Antoni Gaudi. They made use of the catenary curve principle discovered by Robert Hooke: When a flexible chain hangs freely its elements are in pure tension, and when this form is flipped vertically it produces a form of pure compression, which is ideal for constructing masonry arches, an idea which can be extended to chain nets and stone vaults. The test apply gravity forces to 2D grids generated in grasshopper, the aim is to tests grids other than the square grid shown above.
Mesh: A mesh is generated from the simulation result. The end points from the resulting curves are extracted to generate the mesh.
Hexagonal Grid: A gird is produced with number sliders as inputs.
Hexagonal grid Andrea Villate w1461073
Anchor points
Curves after simulation, positive unary forces
Negative unary force
Mesh generated from catenary curves
Side view of mesh 22
[4ARC654] Digital Representation _ GROUP A Digital Craft
04:/ DIGITAL TESTS & ANALYSIS TRIANGULAR & RADIAL GRID
1*
Triangular Grid: A gird is produced with number sliders as inputs.
Simulation does not reach equilibrium therefore it does not stop, inputs were altered to try to reach equilibrium but it was impossible meaning that the root problem is the grid generated in grasshopper. A radial grid created in Rhino might react differently. These tests show that Grasshopper grids react differently than Rhino grids to Kangaroo forces.
Radial Grid: A gird is produced with number sliders as inputs.
1*
Triangular grid
4 anchor points
Curves after simulation, positive unary forces
Hexagonal grid
Central anchor point
Curves after simulation, positive unary forces
Negative unary force
Mesh generated from catenary curves
Side view of mesh
Negative unary force
Mesh generated from catenary curves
Side view of mesh
Andrea Villate w1461073
23
[4ARC654] Digital Representation _ GROUP A Digital Craft
05:/ MATERIAL OPTIMISATION THROUGH STRESS ANALYSIS STRESS BASED MATERIAL DEPOSITION
Lesson 4 Definition: Basic form finding with physics simulation. Springs from Lines: All curves resulting from Simulation A are changed into springs to create the behaviour in Simulation B of a network of springs being deformed by the structure’s self weight.
New Anchor Points: New Rhino points on the bottom of the frame are referenced to stop the simulation from running endlessly.
Self-Weight: A unary force based on how large the structure is can be calculated to simulate its self weight using Kangaroo.
3D frame
Form resulting from basic physics simulation (A)
Physics simulation B based on self-weight
Calculate Stress: The lengths of corresponding parts of the structure from Simulation A and Simulation B are compared in order to find how much the structure deforms under simulated loading.
Stress Analysis Visualised using gradient command .
Physics Simulation B: The simulation runs based on the forces, geometry and settings inputs. The simulation is solved through a number of iterations balancing all the forces until an equilibrium or chaos is reached.
Exoskeleton based on stress analysis
Stress analysis visualised
Stress based material deposition: Values from the stress analysis are used to create an 'exoskeleton' model of the structure, placing material based on magnitude of stress value.
Baked exoskeleton
Rendered exoskeleton
KEY TERMS / FURTHER RESEARCH • Topology optimization: A mathematical approach that optimises material layout within a given design space, for a given set of loads and boundary conditions such that the resulting layout meets a prescribed set of performance targets. Topology optimisation is used at the concept level of the design process to arrive at a conceptual design proposal that is then fine tuned for performance and manufacturability. This replaces time consuming and costly design iterations and hence reduces design development time and overall cost while improving design performance. Andrea Villate w1461073
A B C
24
05:/ MATERIAL OPTIMISATION THROUGH STRESS ANALYSIS
[4ARC654] Digital Representation _ GROUP A Digital Craft
3D PRINTING INITIAL 3D PRINTING WORKFLOW Following the baking of the grasshopper exoskeleton into Rhino the resulting mesh has to be checked for errors and naked edges which can result in failures during 3D printing. The mesh was checked using the Mesh Repair Wizard in Rhino, then the file was saved as an STL file which can be read by the MakerBot and its Desktop software. The STL file was adjusted in the MakerBot software and saved into an USB to use with the Makerbot. Supports had to be included throughout as there was a lot of sections which were floating (not on the printing bed or on previous layering). Printing failed as there was a lot of dripping.
FINAL 3D PRINTING WORKFLOW After analysing the failed attempt it was deduced that printing the long way up was the cause of the failure rather than the thin frame. To solve this I cut the frame in half in Rhino to give it a larger base for 3D printing. The two separate elements can be stuck together once printed.
Andrea Villate w1461073
25
[4ARC654] Digital Representation _ GROUP A Digital Craft
05:/ DIGITAL TESTS & ANALYSIS HEXAGONAL GRID
1*
Exoskeleton command generates an error therefore a mesh cannot be created for 3D printing. However, the gradient command illustrates the stress analysis.
Stress Analysis Visualised using gradient command .
Lesson 4 Definition: Basic form finding with physics simulation.
Springs from Lines New Anchor Points
1*
Calculate Stress
Self-Weight
Physics Simulation B Stress based material deposition
Hexagonal grid & anchor points
Form resulting from basic physics simulation (A)
Physics simulation B based on self-weight
Physics simulation B based on self-weight
Physics simulation B based on self-weight
Physics simulation B based on self-weight
Stress analysis visualised
KEY TERMS / FURTHER RESEARCH • Discretisation: The process of transferring continuous models and equations into discrete counterparts. In architecture the approximation of continuous double- curved surfaces by discrete planar meshes has been a topic of great interest, since the fabrication of shapes consisting solely of flat panels is far less costly than the production of curved building elements. The most straightforward way to transform a continuous surface into flat panels is to approximate the surface with a triangle mesh. • Bone structures: Bones in the skeleton are not all solid. The outside cortical bone is solid bone with only a few small canals. The insides of the bone contain trabecular bone which is like scaffolding or a honey-comb. Andrea Villate w1461073
26
[4ARC654] Digital Representation _ GROUP A Digital Craft
05:/ DIGITAL TESTS & ANALYSIS TRIANGULAR GRID
ANALYSIS Following the first attempt to 3D print it became apparent that printing exoskeleton meshes can be challenging; thorough checks of the meshes generated in grasshopper have to be carried out as well as print tests at a small scale. Using grasshopper generated grids for the tests was a mistake as they produced errors that stopped me from being able to generate meshes for 3D printing.
Stress Analysis Visualised using gradient command .
Lesson 4 Definition: Basic form finding with physics simulation.
Springs from Lines New Anchor Points
Calculate Stress Self-Weight 1*
Physics Simulation B
Exoskeleton command generates an error therefore a mesh cannot be created for 3D printing. However, the gradient command illustrates the stress analysis.
Triangular grid & anchor points
Form resulting from basic physics simulation (A)
1*
Physics simulation B based on self-weight
Physics simulation B based on self-weight
Physics simulation B based on self-weight
Stress based material deposition
Physics simulation B based on self-weight
Stress analysis visualised
KEY TERMS / FURTHER RESEARCH • Finite Element Model: The finite element method (FEM) is the dominant discretization technique in structural mechanics. The basic concept is the subdivision of a mathematical model into disjoint (non-overlapping) components of simple geometry called finite elements or elements for short.. The response of each element is expressed in terms of a finite number of degrees of freedom characterized as the value of an unknown function, or functions, at a set of nodal points. Andrea Villate w1461073
27
05:/ FURTHER RESEARCH _ SOFT KILL OPTIMISATION
[4ARC654] Digital Representation _ GROUP A Digital Craft
SOFT KILL OPTION In the creation of any type of structure, there is an energy cost required to produce and maintain the materials that make up that structure. In the natural world, energy costs can mean the difference between surviving and not surviving for a given biology. Therefore, it is advantageous for a given biology to reduce the amount of material used in its structure. In order to accomplish this reduction of material, structures in nature tend to be evolved to grow into forms that distribute stresses across their shape as uniformly as possible. Not only does this optimization strategy drive the location/distribution of material in order to create an efficient structure, but it also drives changes in a materials’ properties across a structure. According to AskNature.org, trees and bones achieve an even distribution of mechanical tension through the efficient use of material and adaptive structural design, optimizing strength, resilience, and material for a wide variety of load conditions. For example, to distribute stress uniformly, trees add wood to points of greatest mechanical load, while bones go a step further, removing material where it is not needed, lightweighting their structure for their dynamic workloads. At the scale of the cell, trees arrange fibers in the direction of the flow of force, or principal stress trajectories, to minimize shear stress. The idea of evolutionary optimization in architectural structures has been made available by many different software programs. Most of the experimentation so far has been in the realm of truss or floor/column optimization. Recently, several designers have began to rethink how structure might create enclosures for humans. In a recently published project, Soft Kill Design’s protohouse explores how a house may one day be 3D-printed. There design uses evolutionary structural optimization and structure is printed along the force flow lines in the structure. The designers have stated that the design is meant as a provocation but its formal qualities do bring forth some important issues about ESO.
In 1992, Claus Mattheck published a paper proposing a means of simulating the manner in which nature optimizes structure. Starting with an initial conditions defining object shape and material, support points and forces are then applied to the object. Over the course of multiple evolutions, finite element analysis (FEA) is used to calcuate young’s modulus of elasticity at each element within the object, the method removes elements that are under little or no strain until the remaining material left is under load. Termed “Soft Kill Option” by Mattheck or Evolutionary Structural Optimization (ESO), this method of using FEA to optimize a given shape has been used in several industries over the last twenty years. Designer Joris Laarman created a line of furniture using ESO. Not only do these structural designs reduce material but one could argue there is a beauty in the elegantly curved shapes that result from the process. Andrea Villate w1461073
It is important for designers to understand that there is no such thing as “optimal”. The term relies on defining what parameters one is measuring. Using a measure of young’s modulus at each element, as is common in ESO programs, will result in structures that are generally lighter per their ability to withstand forces. However, replicating the range of all forces that may apply to an object is not how ESO methods are designed. There may be certain loads or forces that cannot be anticipated in the optimization process. In the case of the Protohouse, Soft Kill designers applied ESO methods to a starting object that represented an entire house. The result is a series of ‘living’ spaces that are very cave like in nature. As designers continue to explore the possibilities of ESO, it will be critical that they remain designers in their use of ESO methods, using it when and where needed and being able to add in the design vision not supplied by structural optimization. 28
[4ARC654] Digital Representation _ GROUP A Digital Craft
06:/ 3D WEAVING PATTERNS
Logic Variation: Basic weaving with a twist
SETTING UP 3D WEAVING PATTERNS
Divide points: Points are created and used to define the weaving pattern. The points must correspond with the number of notches in the ribs for the weaving to be achievable. Separate Curves into Two Lists: Arrayed curves are separated into two lists, to apply a pattern that alternates the weave between ribs. A boolean pattern is used to divide the list of curves into two lists. By grafting both the boolean pattern and the list of curves, the original structure of the list is retained.
Merge Paths: The separated lists are merged together, the paths are automatically arranged in the order of the original curve list.
Main Parameters: Centralised parameters used for all the weaving variations on the base definitions.
Reverse Point List: Points in the lists of one separated data streams are reversed. This introduces the twist in the weaving pattern. Create Polyline: From the points that define the weaving pattern 3D polylines are created.
Logic Variation: Advanced weaving
Import Main Parameters: The main parameters are used for all the experiments thus they are organized as above and connected wirelessly. Repeat First Point: First point in each list in one of the data streams is duplicated until the list reaches its original length. This generates a pattern where only one notch on every other rib is used.
Rhino profile curve, centre point and robot arm
Polar array from profile curve
Basic weaving
Weaving with a twist
Advanced weaving
Rib from original profile curve
KEY TERMS / FURTHER RESEARCH • Carbon Fibre Loom: Lexus has developed a 360-degree loom used to weave strands of CFRP (carbon fibre reinforced plastic) into three-dimensional shapes. • 3D Weaving: 3D-Weaving is a whole new concept in weaving and it cannot be performed with existing traditional methods and machines. It interlaces a multiple layer warp with multiple horizontal wefts and multiple vertical wefts producing directly shell, solid and tubular types of fully interlaced 3D fabrics with countless cross-sectional profiles. Andrea Villate w1461073
Polar array from rib A B C
29
[4ARC654] Digital Representation _ GROUP A Digital Craft
06:/ 3D WEAVING PATTERNS SETTING UP 3D WEAVING PATTERNS _ RIBS
Divide Curve: Divide the profile curve into twice as many points. (Formula in input N is "x/2")
Join Curves together to make notched rib: The original curve is offset, the end of the resulting curve and the new notched curve are joint to form a notched rib shape.
Notched rib polar array: polar command array produces the six ribs needed for the frame.
Find Perpendicular Vectors at points on curve: Perpendicular vector to the points on the curve are extracted, the points are then moved away from the curve by a set amount in the vector’s direction.
Rhino profile curve, centre point and robot arm
Polar array from profile curve
Basic weaving
Weaving with a twist
Advanced weaving
Rib from original profile curve
Polar array from rib
KEY TERMS / FURTHER RESEARCH • Warp and Weft: In weaving, the warp is the set of lengthwise yarns that are held in tension on a frame or loom. The yarn that is inserted over-and-under the warp threads is called the weft, woof, or filler. • Textile Architecture: Is the use of textile in construction. Modern architecture has rediscovered the principle of the tent as an architectural form and taken its development further – not just for temporary structures but also for permanent buildings. Andrea Villate w1461073
30
[4ARC654] Digital Representation _ GROUP A Digital Craft
06:/ DIGITAL TESTS & ANALYSIS WEAVING PATTER TESTS
Repeat First Point: First point in each list in one of the data streams is duplicated until the list reaches its original length. This generates a pattern where only one notch on every other rib is used. The divided list is reversed to achieve the weaving pattern seen below.
Basic weaving
Basic weaving top view
Advanced weaving
Advanced weaving top view
Advanced weaving reversed
Advanced weaving reversed top view
KEY TERMS / FURTHER RESEARCH • Chitin Structure: Chitin is a derivative of glucose which is embedded in a protein matrix that makes up the complex layers of a lobster’s exoskeleton and provide with load-bearing efficiency. ICD and ITKE carried out research on the chitin structure and used it as a base for the structure of the Research Pavilion which is a woven structure fabricated with a robot arm. Andrea Villate w1461073
31
06:/ TESTS & ANALYSIS
[4ARC654] Digital Representation _ GROUP A Digital Craft
WEAVING FRAME
INITIAL FRAME DESIGN
FINAL FRAME DESIGN
The profile curve was edited in order to test the limits of the fabrication method and come up with a more attractive weaved structure as a result. The size of the robot arm was taken into account when drawing the profile curve in order to avoid collisions during fabrication. However, after analysing the laser cut frame it became clear that some problems would arise during fabrication; the size of the end effector was not taken into account so collisions would happen and also the robot arm would not be able to weave the lower part of the frame.
Studying the first frame allowed us to come up with more effective design. The ribs generated in grasshopper were baked into Rhino and a 3D model was produced. The 3D model was then unrolled to produce 2D profiles for laser cutting. The design of the frame allows for it to de de-constructed easily thus producing a free standing weaved structure, to achieve this the woven form had to be hardened with glue and the wooden frame coated with a thin layer of resin.
Andrea Villate w1461073
32
06:/ TESTS & ANALYSIS
[4ARC654] Digital Representation _ GROUP A Digital Craft
END DEFECTOR DESIGN
INITIAL FRICTION REEL DESIGN (Individual contribution)
FINAL FRICTION REEL DESIGN (Individual contribution)
A friction reel is needed to stop the robot arm from snapping the string during the weaving process. The spool seen above was picked by the team due to its size, it fits perfectly in the end effector, However, its size meant that the friction reel had to be only 8mm in diameter making it a challenge to produce. The design incorporates small flaps at one end to create friction. During the 3D printing process it became clear that due to the size of the reel it was impossible to 3D print the flaps, they were too small and the printing process failed various times, the fact that the flaps were only at one end also caused problems as there was a lot of dripping during printing stopping the flaps from taking shape.
After studying the failed reel it was decided that the best way for the flaps to print would be to extend the along the whole length of the reel but this failed as well when 3D printing. After evaluating other options it was decided that the best way to create friction would be to use the rough materiality crated by the 3D printing rather than flaps. The layering done during 3D printing crates a very rough surface which might provide enough friction for the string not to snap. Due to the small size of the reel this seems to be the best options thus far, tests will need to be conducted before the final weaving process is carried out to avoid failures during fabrication.
Andrea Villate w1461073
33
07:/ CHOREOGRAPHIC TOOLPATHS FOR ROBOTIC MANUFACTURE
[4ARC654] Digital Representation _ GROUP A Digital Craft
ROBOTIC CHOREOGRAPHY L6 Main Parameters
Robot Choreography Definition
Rib Profile Definition
Collision Testing
3D Weave Definition
Rib profile
Optional rib notches for greater grip
Numbers illustrating notch order for fabrication
Adjusted weaving for fabrication
End effector to be referenced to arm
KEY TERMS / FURTHER RESEARCH • Robotic choreography: A number of computer programmes exist that make it possible to generate robot code that simulates a robot’s kinematics. Using these a robot can be programmed to move in a dance like fashion following a prescribed set of movements (choreography). • Robotic architecture: Architecture that is built using the aid of a robot for fabrication, using robots allows for the creation of architecture that would otherwise be impossible to construct. Andrea Villate w1461073
Robot simulation to avoid collisions A B C
34
[4ARC654] Digital Representation _ GROUP A Digital Craft
07:/ CHOREOGRAPHIC TOOLPATHS FOR ROBOTIC MANUFACTURE ROBOTIC CHOREOGRAPHY _ GROUP DEFINITION Definition produced by the group
Individual contribution: finalizing the basic definition before the HAL section was developed by other team members
Adjust Curvature of Rib Notches: Curvature of notches is adjusted to gain more grip.
Orientation Surface: Create a surface to orient the tool perpendicular to the ribs. This is done to avoid collisions between tool and ribs.
Optional Plane Rotation: Tweak to rotate plane a specified number of degrees from perpendicular
Joined Polyline: The points that define the weaving patter are joined to into a single continuous toolpath.
Toolpath Planes: Planes for orienting the robotic arm and tool. HAL will interpolate through these when it creates the robot instructions
Offset Tool Plane: Offset tool plane by height of tool.
KEY TERMS • Heuristics: Experience-based techniques for problem solving, learning, and discovery that find a solution which is not guaranteed to be optimal, but good enough for a given set of goals. • Minibuilders: Small robots printing big structures. A research by Institute for Advanced Architecture of Catalonia focused on the future of robotic construction. Andrea Villate w1461073
35
07:/ CHOREOGRAPHIC TOOLPATHS FOR ROBOTIC MANUFACTURE
[4ARC654] Digital Representation _ GROUP A Digital Craft
FINAL FRAME
Individual contribution: Laser cutting and putting together final frame
Andrea Villate w1461073
36
07:/ CHOREOGRAPHIC TOOLPATHS FOR ROBOTIC MANUFACTURE
[4ARC654] Digital Representation _ GROUP A Digital Craft
WEAVING FABRICATION ANALYSIS The manual weaving process revealed that the weaving will need to be repeated many times to create a free standing structure. The frame works well and is fairly easy to take apart. The notches provide enough grip so no alteration is needed. The friction reel has to be tested with the robot arm to finalize its dsign.
Andrea Villate w1461073
37
[4ARC654] Digital Representation _ GROUP A Digital Craft
STUDIO INTEGRATION _ DS14 DS 14 _ DECORATED SILENCE: ORNAMENT AFTER POSTMODERNISM
OUR ETHOS...
For us Drawing is the primary site of architecture We believe Architecture begins and ends with the language of line All other issues that demand our attention Are of minor relevance
THIS YEAR’S THEMES...
Andrea Villate w1461073
38
[4ARC654] Digital Representation _ GROUP A Digital Craft
STUDIO INTEGRATION _ DS14 PROJECT THREE _ TILES
The unit focuses on designing using 2D drawn methods rather than 3D computer programmes thus going back to the roots of the architectural profession, this has made integration between studio work and DigiRep very challenging. However, Grasshopper and Rhino have been used to aid fabrication of the final models for projects three and four. PROJECT NAME: LIGHT TILE The first 4 weeks of the term were spent experimenting, in drawn form, on how to move beyond mere function and decadent expression, so as to find a third condition, simply ornament after postmodernism. My project focused on the use of light as a form of modern decoration, light is very powerful as it can change a space drastically and give it a meaning ranging from religious to aesthetic. Initial drawn experiments led to the design of a floor/wall tile and the production of a series of ten prototype physical tiles at a 1:1 scale. A Rhino model was created and then unrolled, using the UnrollSrf command, to crate a kit of parts that were then laser cut. For the laser cutting process files had to be created for each part due to their varying materiality and quantity (two extra sets were laser cut to account for damage during fabrication). Laser cutting made the fabrication process very efficient and precise.
Drawn tile design
Base of tile with opening for light
Supports for mirror edges
Central pattern generator
Mirror edges
Transparent top
Laser cutting parts created using UnrollSrf
Final tile
Andrea Villate w1461073
39
STUDIO INTEGRATION _ DS14
[4ARC654] Digital Representation _ GROUP A Digital Craft
PROJECT FOUR _ INSTALLATION
PROJECT NAME: DISTORTED HAPPINESS The last part of the term was spent designing, constructing and installing a small installation to promote awareness of the issue of slavery in the United Kingdom. My take on the theme was to highlight two key concepts that make slavery a part modern society. 1. Slavery is part of the human condition: As humans we are all flawed and capable of sin; according to Aristotle’ theory of natural slavery some of us are born to serve and others to rule. 2. Inequality: Modern society has convinced us that happiness is achieved through material gains thus driving us to care about possessions and social status rather than helping others and achieving an equal society. By combining the two concepts the aim was to create an object which would promote awareness of our misguided search for material happiness and how this is exacerbating our capability to ignore people in need. Since the only way to eradicate slavery is for people like us to promote awareness and contribute financially to the cause, slavery is not going to cease to exist, we would rather use our money to buy objects that will make us part of a social group than to free a slave. The form of the installation developed from the classic children’s toy, the spinning top. The ideas was to use a shape that most adults remember nostalgically as a pure element of happiness and most children of this age will not recognize. The toy has a trapped clown in a web, the clown represents the two sides of happiness and the net consumerism.
Andrea Villate w1461073
40
[4ARC654] Digital Representation _ GROUP A Digital Craft
STUDIO INTEGRATION _ DS14 TESTING WEAVING PATTERNS 1
Curve 1
Curve 2
Polar Array curve 2
Dispatch & Divide curve 2
Curve 1 & 2 lists merged
Resulting weaving pattern
Top view
Side view
Main Parameters: Centralised parameters used for all weaving tests. Final profile curve is made up of two curves of different sizes which need to have the same number of divisions thus they need to be treated separately and referenced from Rhino as Crv 1 and Crv 2. Divide points: Points are created and used to define the weaving pattern.
Merge Lists: Lists from Crv 1 and Crv 2 are merged into two lists to create continuous lists for each rib. One list is reversed to achieve the twist needed for the weaving.
Create Polyline: From the points that define the weaving pattern 3D polylines are created.
Merge Paths: The separated lists are merged together, the paths are automatically arranged in the order of the original curve list.
Import Main Parameters: The main parameters are used for all the experiments thus they are organized as above and connected wirelessly.
Separate Curves into Two Lists: Arrayed curves are separated into two lists, to apply a pattern that alternates the weave between ribs. A boolean pattern is used to divide the list of curves into two lists. By grafting both the boolean pattern and the list of curves, the original structure of the lists is retained.
Andrea Villate w1461073
41
[4ARC654] Digital Representation _ GROUP A Digital Craft
STUDIO INTEGRATION _ DS14 TESTING WEAVING PATTERNS 2
Curve 1 Polar Array
Curve 2 Polar Array
Extracting items with number slider
Extracted top and bottom points
Curve 1 & 2 lists merged
Resulting weaving pattern
Top view
Side view
Main Parameters: Centralised parameters used for all weaving tests. Final profile curve is made up of two curves of different sizes which need to have the same number of divisions thus they need to be treated separately and referenced from Rhino as Crv 1 and Crv 2. Divide points: Points are created and used to define the weaving pattern. Repeat Point: First point in each list in one of the data streams is duplicated until the list reaches its original length. This generates a pattern where only one point on every other rib is used. In set 2 a specific item has to be extracted using a number slider to achieve the same result as in set 1
Merge Paths: The separated lists are merged together, the paths are automatically arranged in the order of the original curve list.
Merge Lists: Lists from Crv 1 and Crv 2 are merged into two lists to create continuous lists for each rib.
Import Main Parameters: The main parameters are used for all the experiments thus they are organized as above and connected wirelessly.
Separate Curves into Two Lists: Arrayed curves are separated into two lists, to apply a pattern that alternates the weave between ribs. A boolean pattern is used to divide the list of curves into two lists. By grafting both the boolean pattern and the list of curves, the original structure of the lists is retained.
Andrea Villate w1461073
Create Polyline: From the points that define the weaving pattern 3D polylines are created.
42
[4ARC654] Digital Representation _ GROUP A Digital Craft
STUDIO INTEGRATION _ DS14 TESTING WEAVING PATTERNS 3
Curve 1 & 2 lists merged after double Dispatch
Curve 1 & 2 lists merged after double Dispatch
Resulting weaving pattern from set 1
Top view set 1
Resulting weaving pattern from set 2
Set 1 & 2 joined into 1 weaving pattern
Top view
Side view
Main Parameters: Centralised parameters used for all weaving tests. Final profile curve is made up of two curves of different sizes which need to have the same number of divisions thus they need to be treated separately and referenced from Rhino as Crv 1 and Crv 2. Divide points: Points are created and used to define the weaving pattern.
Merge Lists: Lists from Crv 1 and Crv 2 are merged into two lists to create continuous lists for each rib. One list is reversed to achieve the twist needed for the weaving.
Import Main Parameters: The main parameters are used for all the experiments thus they are organized as above and connected wirelessly.
Separate Curves into Four Lists: Arrayed curves are separated into four lists, to apply a pattern that alternates the weave between ribs and create a pattern that skips every other rib. A boolean pattern is used to divide the list of curves into two lists. Partition is used to get rid of branches with no items, this allows for Dispatch to be used again to generate four lists.
Merge Paths: The separated lists are merged together, the paths are automatically arranged in the order of the original curve list.
Create Polyline: From the points that define the weaving pattern 3D polylines are created from Sets 1 & 2.
Andrea Villate w1461073
43
[4ARC654] Digital Representation _ GROUP A Digital Craft
STUDIO INTEGRATION _ DS14 WEAVING PATTERNS AND RIBS
Exoskeleton: The polylines generated are used to created an exoskeleton with an adjustable thickness which can be baked and rendered.
Main Parameters
Joined Polyline: The points that define the weaving patter are joined to into a single continuous toolpath.
Polar Array: Resulting surface is arrayed for baking into Rhino
Offset: Frames (planes) are defined by a points generated by dividing the profile curve, the frames orient themselves relative to the points. The frames are used to orient the offset, a slider is used as the offset distance input.
Final profile curve
Plane along curve using PFrame
Offset of profile curve
Surface resulting from original curve and ofset
Rib polar array
Weave pattern test 1
Weave pattern test 2
Weave pattern test 3
Andrea Villate w1461073
44
[4ARC654] Digital Representation _ GROUP A Digital Craft
STUDIO INTEGRATION _ DS14 DESIGN AND FABRICATION PROCESS
The weaving tests generated using grasshopper were incredibly helpful during the design process, different configurations were easily explored without the need for manual tests which can be very time consuming. The resulting weaving pattern from test 3 was selected for the final design as it made the strongest visual impact. Generating then weaving pattern in Grasshopper allowed for the production a very detailed model in Rhino without the need for much Rhino modelling. The Rhino model was unrolled, using UnrollSrf, to crate a template which was used to cut pieces manually in the workshop. The pieces were fairly accurate which made making process fast an effective. The weaving was done manually as well but it followed the pattern generated in Grasshopper.
Initial handmade maquette with rough weaving pattern
Andrea Villate w1461073
Rendered weaving test 3, produced in Grasshopper
Frame & weaving test 3 developed in Rhino for unrolling
Final installation, handmade using template generated with UnrollSrf command
45
BIBLIOGRAPHY
[4ARC654] Digital Representation _ GROUP A Digital Craft
BOOKS: Adriaenssens, P. et al. (2014) Shell Structures for Architecture: Form Finding and Optimization. London: Routledge.
ARTICLES: Devaney, L.. (1995) Self-similarity. [online] Boston University Arts & Sciences Mathematics & Statistics. Available from: <http://math.bu.edu/DYSYS/chaos-game/node5.html> [Accessed 16 December 2014]. joha0203 (2012). Soft Kill Option. [online] Material Strategies: Innovative Applications in Architecture. Available from: <https:// arch5541.wordpress.com/2012/11/30/soft-kill-option/> [Accessed 20 December 2014]. TOI-Pedia (2013). Grasshopper Data Tree Editing. [online] TOI-Pedia. Available from: <http://wiki.bk.tudelft.nl/toi-pedia/ Grasshopper_Data_Tree_Editing> [Accessed 19 December 2014].
PDFs: T. Fischer. et al. (2012) Ornamental Discretisation of Free-form Surfaces. [online] CAADRIA. Available from: <http:// cumincad.architexturez.net/system/files/pdf/caadria2012_102.content.pdf> [Accessed 20 December 2014]. University of California, Berkeley (n.d.) Introduction to Finite Element Modeling. [online] University of California, Berkeley. Available from: <http://www.me.berkeley.edu/~lwlin/me128/FEMNotes.pdf> [Accessed 19 December 2014].
Andrea Villate w1461073
46