80
2015 SEMESTER 1 STUDIO AIR STUDIO 9 |TUTOR : ALESSANDRO LIUTI

A I R : ALGORITHMIC SKETCH

Embed Size (px)

DESCRIPTION

exploration of Grasshopper plug-in on Rhinoceros5.0 Air, University of Melbourne (Bachelor of Environments) Semester 1/2015 Tutors : Alessandro Liuti

Citation preview

Page 1: A I R : ALGORITHMIC SKETCH

2015 SEMESTER 1 STUDIO AIRSTUDIO 9 |TUTOR : ALESSANDRO LIUTI

Page 2: A I R : ALGORITHMIC SKETCH
Page 3: A I R : ALGORITHMIC SKETCH

W E E K 0 1

W E E K 0 2

W E E K 0 3

W E E K 0 4

W E E K 0 5

N T W

F I N A L

05

17

29

47

61

67

75

Page 4: A I R : ALGORITHMIC SKETCH

4

Page 5: A I R : ALGORITHMIC SKETCH

5

W E E K O N E

Page 6: A I R : ALGORITHMIC SKETCH

6

W E E K O N E | FIVE STRATEGIES TO CREATE A PARAMETRIC VASE

Using a circle as a base form and a rail curve, railsweep command is used to form the structure. A sectional curve generated by 6 vertices hence play the role to then create 5 different ge-ometries of the resulted parametric vase. Face boundary is used to cap the base of the vase.

STRATEGY 1

Page 7: A I R : ALGORITHMIC SKETCH

7

Page 8: A I R : ALGORITHMIC SKETCH

8

W E E K O N E | FIVE STRATEGIES TO CREATE A PARAMETRIC VASE

Page 9: A I R : ALGORITHMIC SKETCH

9

This strategy implements the concept of boolean. A sur-face is resulted from solid difference between two geom-etries - sphere and extruded polygon. A variety of struc-tures are formed with the adjustment of radius and base plane of the shapes. The bottom is capped with planar surface command.

STRATEGY 2

Page 10: A I R : ALGORITHMIC SKETCH

10

W E E K O N E | FIVE STRATEGIES TO CREATE A PARAMETRIC VASE

Page 11: A I R : ALGORITHMIC SKETCH

11

A polygon in which its radius could be altered serves as the base of the vase. With transformations such as mov-ing its z-axis and scaling its radius, two other polygons are created. These three polygons are translated as curves and then lofted. The resulted surface is thus off-set outwards to create thickness of the vase. The base is patched with planar surface command. With the con-cept of boolean, the top is capped with solid difference command between the inner and outer lofted surfaces.

STRATEGY 3

Page 12: A I R : ALGORITHMIC SKETCH

12

W E E K O N E | FIVE STRATEGIES TO CREATE A PARAMETRIC VASE

Page 13: A I R : ALGORITHMIC SKETCH

13

A polygon as a base is created with variable inputs of segments, radius and fillet. A planar surface is then cre-ated as the bottom of the vase. Two variable polygons are formed; lofted together with the first polygon base. Rotation angles are implemented before surface is loft-ed. Lastly, pipe command is carried out for the top poly-gon; outlining a curved and smooth cap for the top of the vase.

STRATEGY 4

Page 14: A I R : ALGORITHMIC SKETCH

14

Similar strategy with polygon as the base form, unit z com-mand is used instead for direct moving of polygon along the z-axis. Transformation such as rotation and scaling is applied once again, with base being capped with pla-nar surface and main structure being formed via lofting command. An addition of extrusion command is utilised to explore the effect on its top area of surface.

STRATEGY 5

W E E K O N E | FIVE STRATEGIES TO CREATE A PARAMETRIC VASE

Page 15: A I R : ALGORITHMIC SKETCH

15

Page 16: A I R : ALGORITHMIC SKETCH

16

Page 17: A I R : ALGORITHMIC SKETCH

17

W E E K T W O

Page 18: A I R : ALGORITHMIC SKETCH

18

W E E K T W O | DEVELOPMENT OF AN INSTALLATION/PAVILION (FREEFORM SURFACE) FOR MERRI CREEK

With two base curves, catenary is used to form the sec-tion profiles. The loft is the challenge in this algorithm as it tends to have entangled flipping. Profiles are again examined carefully with checking the points on curves. Reason for entangled flipping is due to a chaos in orders of points. This is when a lists operations comes in handy to investigate where are the points that need to be split.

SECTION PROFILE

Page 19: A I R : ALGORITHMIC SKETCH

19

W E E K T W O | DEVELOPMENT OF AN INSTALLATION/PAVILION (FREEFORM SURFACE) FOR MERRI CREEK

Page 20: A I R : ALGORITHMIC SKETCH

20

W E E K T W O | MATERIAL TECHNIQUE ON FREEFORM SURFACE

A plug-in for grasshopper, this tool is used to create a mesh from the outcome from section profiling. Edges and thickness of the frame could be varied. Consider-ation of a possible issue of surface frame that intersects is important here.

WEAVERBIRD TOOL ALGORITHM.

WEAVERBIRD TOOL

Page 21: A I R : ALGORITHMIC SKETCH

21

WEAVERBIRD TOOL ALGORITHM.

This method is based on extruding offsetting curves. The intersections between brep obtained from offsetting curves and that from previous lofted section profile is then used to split surfaces with the exploded extruded curves. This result in layers of surfaces that stands perpen-dicular from the base form, having driftwood effect.

DRIFTWOOD ALGORITHM.

DRIFTWOOD

Page 22: A I R : ALGORITHMIC SKETCH

22

This is actually another method of forming a freeform sur-face. Polyline command is used to flatten and panel the surface in order to be buildable.

INTERPOLATE CURVE

W E E K T W O | VIDEO TUTORIAL - CURVE MENU

Page 23: A I R : ALGORITHMIC SKETCH

23

INTERPOLATED CURVE .

TRANSLATED CURVE TO POLYILINES.

Page 24: A I R : ALGORITHMIC SKETCH

24

W E E K T W O | DATA TREE MANAGEMENT

From Grasshoper Primer, data tree is a hierarchical struc-ture for storing data in nested list. Data tress are created when a component is structured to take in data set and output multiple sets of data.

From the sample I examine, the open curve listed as in-put A has 11 points whereas the closed curve has 10.

Longest list would result in all points to be definitely con-nected to the points on other line, despite there is no equal points on both curves. This algorithm keeps con-necting inputs until all streams run dry.(EG.1-1,2-2, 3-3...10-10, 11-10)

Shortest list is a connection of inputs one-on-one until one of the streams run dry.(EG. 1-1, 2-2, 3-3...10-10, 11-N/A)

Cross reference hence is a result of something interesting and complex. This algorithm makes all possible connec-tions between points.(EG. 1-1,1-2,1-3...1-10,1-11; 2-1,2-2...2-10,2-11)

DATA TREE 1

LONGEST LIST. SHORTEST LIST.

Page 25: A I R : ALGORITHMIC SKETCH

25

SHORTEST LIST. CROSS REFERENCE .

Page 26: A I R : ALGORITHMIC SKETCH

26

LONGEST LIST.TWO CURVES.

W E E K T W O | DATA TREE MANAGEMENT

Applying the same concept, this is to further explore what patterns could be obtain from the lists via two rath-er more complex curves.

DATA TREE 2

Page 27: A I R : ALGORITHMIC SKETCH

27

LONGEST LIST. SHORTEST LIST. CROSS REFERENCE.

Page 28: A I R : ALGORITHMIC SKETCH

28

Page 29: A I R : ALGORITHMIC SKETCH

29

W E E K T H R E E

Page 30: A I R : ALGORITHMIC SKETCH

30

W E E K T H R E E | CULL/LIST ITEM FROM A GRID/CONNECT POINTS

“Divide surface” into grid points is useful in order to formu-late a pattern on it. With that, “cull pattern” generates a formula of points with a culling pattern that could be de-cided by toggles. Using cross referencing between initial points from surface and that from culled list, a symmetric and interesting pattern is formed.

SURFACE GRID

Page 31: A I R : ALGORITHMIC SKETCH

31

Page 32: A I R : ALGORITHMIC SKETCH

32

A square grid is generated and culled with a cull pattern decided by toggles again. However, this time, an explo-ration on culled list of points on grid is cross referenced with a geometry created in Rhino. Again, the geometry is to be surface divided in order to generate points on surface.

GRID DATA

W E E K T H R E E | CULL/LIST ITEM FROM A GRID/CONNECT POINTS

Page 33: A I R : ALGORITHMIC SKETCH

33

Page 34: A I R : ALGORITHMIC SKETCH

34

For this, a radial grid is generated. By cross referencing with its points itself, a pattern is formed.

This is important in order to understand the differences between this radial grid data with the next radial grid data that is flattened.

RADIAL GRID DATA 1

W E E K T H R E E | LIST ITEM FROM A GRID/CONNECT POINTS

Page 35: A I R : ALGORITHMIC SKETCH

35

Page 36: A I R : ALGORITHMIC SKETCH

36

W E E K T H R E E | LIST ITEM FROM A GRID/CONNECT POINTS/FLATTEN TREE

Exactly the same algorithm as Radial Grid Data 1, a much more complex pattern is formed when the points on grid is flattened.

This flattened grid data illlustrate that the points on grid are now a continous connection.

RADIAL GRID DATA 2

Page 37: A I R : ALGORITHMIC SKETCH

37

Page 38: A I R : ALGORITHMIC SKETCH

38

A cross-referenced lines are connected via a surface and square grid. Like previous experimentation, the sur-face (a geometry formed in Rhino) is surface divided. Points on square grid is culled with a cull pattern gener-ated by toggles and flattened to ensure that points are a continuous connection.

SURFACE GRID

W E E K T H R E E | CULL/LIST ITEM FROM A GRID/CONNECT POINTS/FLATTEN TREE

Page 39: A I R : ALGORITHMIC SKETCH

39

W E E K T H R E E | CULL/LIST ITEM FROM A GRID/CONNECT POINTS/FLATTEN TREE

Page 40: A I R : ALGORITHMIC SKETCH

40

With a square grid, points are now translated into an im-age. With this, image recognise the points by its value of grayscale.

With an algorithm of circle connected from the grid points, the value of grayscale from the image then trans-lates the value of radius in each circles.

(EG. 1 is white & 0 is black, range in between would be the gradient of gray/black).

The multiple option allows the circles to be connected into more circles to generate a much more detailed pat-tern. Again, applying the cull list, this time, a “larger than x-value” input is connected to generate a cull pattern. This means circles that has radius larger than x would “dis-appear”.

This method is useful as it could associate image with points, for instance, taking a response to translate into data,

IMAGE SAMPLING

W E E K T H R E E | IMAGE SAMPLING TO MODULATE CIRCLES/CURVES ON A GRID

Page 41: A I R : ALGORITHMIC SKETCH

41

W E E K T H R E E | IMAGE SAMPLING TO MODULATE CIRCLES/CURVES ON A GRID

Page 42: A I R : ALGORITHMIC SKETCH

42

With a surface that is divided and flatten into continous connection of points, a cull pattern is inserted to gener-ated a culled list of points. This points are than connect-ed to form voronois. In order to randomly allocate points that scatters around the surface, jitter is used. This list of random connection of points are than unioned to form a voronoi-patterned surface.

VORONOI - UNIFORM

W E E K T H R E E | VIDEO TUTORIAL - PATTERNING LIST

Page 43: A I R : ALGORITHMIC SKETCH

43

W E E K T H R E E | VIDEO TUTORIAL - PATTERNING LIST

Page 44: A I R : ALGORITHMIC SKETCH

44

A square surface generated in grasshopper using x-axis and y-axis points, pop2D is used to generate a random allocation of points on surface. This is then again culled in order to create more arbitrary location of points. This list of points are then voronoi-ed.

The voronoi is offseted to create thicker lines of voronois. With a slight extrusion from this voronoi, they are then capped and resulted in this honeycomb-like pattern.

VORONOI - IRREGULAR

W E E K T H R E E | VORONOI/CULL/LIST ITEM

Page 45: A I R : ALGORITHMIC SKETCH

45

W E E K T H R E E | VORONOI/CULL/LIST ITEM

Page 46: A I R : ALGORITHMIC SKETCH

46

Page 47: A I R : ALGORITHMIC SKETCH

47

W E E K F O U R

Page 48: A I R : ALGORITHMIC SKETCH

48

W E E K F O U R | DEVELOP SURFACE FROM MATHEMATICAL FUNCTION

It is important to realise that functions could produce primitives.

With an idea of creating a pattern similar to Nautilus shell, the functions that create spiral effects are hence explored. This is done by lofting two primitives that have a certain z-axis distance with another primitive from an expression that acts as a base point of attraction.

EXPRESSION 1

Page 49: A I R : ALGORITHMIC SKETCH

49

Page 50: A I R : ALGORITHMIC SKETCH

50

W E E K F O U R | DEVELOP SURFACE FROM MATHEMATICAL FUNCTION

From several trials on creating expressions, I realised it is important to input an expression that Grasshopper un-derstands, (i.e. accuracy of symbols is crucial to avoid syntax errors).

Again, this algorithm sketch illustrate the definition of series of points that could be used to generate a primi-tive from functions.

EXPRESSION 2

Page 51: A I R : ALGORITHMIC SKETCH

51

Page 52: A I R : ALGORITHMIC SKETCH

52

W E E K F O U R | DEVELOP SURFACE FROM MATHEMATICAL FUNCTION (IF)

Rather similar formula for the algorithm, an if function is in-put to generate a pattern list of points to create a curve.

This function of ‘if’ clause could be used to cull a list of pattern that then could be further developed into inter-esting surfaces and spatial organisation of points.

‘IF’ CONDITION

Page 53: A I R : ALGORITHMIC SKETCH

53

Page 54: A I R : ALGORITHMIC SKETCH

54

W E E K F O U R | GENERATE PATTERN FROM MATHEMATICAL FUNCTION

A play of transformations such as scaling, rotation and mirror are done to a series of points that are generated again, from mathematical functions.

It is important to note that in order to perform multiplica-tions (or any other kinds of mathematical operators) , the definition of graft tree is ought to be input. The results of transformation are then flattened to create a continuous series of points. These points are then set in lists to create a final pattern from intersecting lines via the points.

EXPRESSION 1

Page 55: A I R : ALGORITHMIC SKETCH

55

Page 56: A I R : ALGORITHMIC SKETCH

56

W E E K F O U R | GENERATE PATTERN FROM MATHEMATICAL FUNCTION

With similar algorithmic commands used for EXPRESSION 1, the function input is altered.

Voronoi is then added to the curves to generate a rather random sequence of circles from few points through a cull pattern.

EXPRESSION 2

Page 57: A I R : ALGORITHMIC SKETCH

57

Page 58: A I R : ALGORITHMIC SKETCH

58

W E E K F O U R | GENERATE PATTERN FROM MATHEMATICAL FUNCTION (IF)

Charged points are added, creating a magnetic field which would further affect the points from the mathe-matical expression.

‘IF’ CONDITION

Page 59: A I R : ALGORITHMIC SKETCH

59

W E E K F O U R | GENERATE PATTERN FROM MATHEMATICAL FUNCTION (IF)

Page 60: A I R : ALGORITHMIC SKETCH

60

Page 61: A I R : ALGORITHMIC SKETCH

61

W E E K F I V E

Page 62: A I R : ALGORITHMIC SKETCH

62

W E E K F I V E | GRAPH CONTROLLER - XY PLANE

Extrapolating the structural behavior and overall princi-ples of spider webs, a pattern is created on the x-y plane with Graph Controllers. It is then relaxed with Kangaroo, a plug-in for physics simulation. It is important to note that as a graph mapper is inserted as an input to manipulate the radius distances between circles, alteration to the domain is done at graph mapper, not the initial domain input. Points should also be flatten in order to create a continuous connection for further Voronoi components.

The exploration of further complicated spider web pat-tern is restrained. This is because errors would occur when these segments are translated into springs. However, through this task, it is realised that Kangaroo could relax a pattern through unary force and spring.

SPIDER WEB - XY

Page 63: A I R : ALGORITHMIC SKETCH

63

W E E K F I V E | GRAPH CONTROLLER - XY PLANE

Page 64: A I R : ALGORITHMIC SKETCH

64

W E E K F I V E | GRAPH CONTROLLER - YZ PLANE

Similar strategy as the previous sketch, this time, a spider web pattern is created on the YZ plane. This is done by rotating the plane. The same Z-unit vector is input as the unary force to retain its form of stretching downwards due to gravity.

SPIDER WEB -YZ

Page 65: A I R : ALGORITHMIC SKETCH

65

W E E K F I V E | GRAPH CONTROLLER - YZ PLANE

Page 66: A I R : ALGORITHMIC SKETCH

66

Page 67: A I R : ALGORITHMIC SKETCH

67

N O N - T E A C H I N G W E E K

Page 68: A I R : ALGORITHMIC SKETCH

68

N T W | FABRICATION

UNROLL BREP

Unrolling polysurface for fabrication is useful in having an outcome of flat surface on xy-plane. As seen in this example, there are overlapping surfaces after using this definition. Hence, ex-ploding them to individual surface (bottom right) is the optimum way to be printed and cut for model making consideration.

Page 69: A I R : ALGORITHMIC SKETCH

69

N T W | FABRICATION

Page 70: A I R : ALGORITHMIC SKETCH

70

N T W | FABRICATION

MAKING TABS

Making tabs to an already unrolled surface allow the joining of surfaces for model mak-ing easier. Red curves hence represent folded edges where lasercut/card cutter would only cut with less force. Black curves hence would be fully cut through.

Page 71: A I R : ALGORITHMIC SKETCH

71

N T W | FABRICATION

Page 72: A I R : ALGORITHMIC SKETCH

72

N T W | FABRICATION

WAFFLE GRID TYPE 2 FOR SOLID GEOMETRIES

Waffle Grid is useful to be explored for fabrica-tion related to structure and geometries that emphasise on contour design.

Page 73: A I R : ALGORITHMIC SKETCH

73

N T W | FABRICATION

Page 74: A I R : ALGORITHMIC SKETCH

74

Page 75: A I R : ALGORITHMIC SKETCH

75

F I N A L D E S I G N P R O P O S A L

Page 76: A I R : ALGORITHMIC SKETCH

76

SURFACE PATCH MESH SURFACE

FORM FINDING

From the final form boundary through merging all functional zones, surface patch is done before meshing the surface. The mesh is then refined with triangular mesh for even distributed mesh pattern. The mesh is inflated with several constrain points and curves with the aid of Kangaroo physics simulation and Smartform. This is the process when only 3-dimension form emerged. Structural feasibility and its functional purpose are considered in this form finding process.

Page 77: A I R : ALGORITHMIC SKETCH

77

MESH SURFACE TRIANGULATE MESH FORM FINDING

Page 78: A I R : ALGORITHMIC SKETCH

78

FORM FINDING

SPHERE PACKING

Spheres are packed in a delaunay format to minimize gaps among the spheres. Kangaroo physics simulation is used to pack the spheres together. Sphere packing would prevent overlapping of spheres that are formed from the mesh previously.

*note: there are errors in the definition below because the mesh is supposed to connect to the mesh formed in Smartform previously.

Page 79: A I R : ALGORITHMIC SKETCH

79

SPHERE PACKING

Page 80: A I R : ALGORITHMIC SKETCH