Updated Algorithmic Sketchbook

Page 1

AIR ALGORITHMIC SKETCHBOOK

AMANDA DO TRAN 586541



CONTENTS WEEK 1: LOFTING CURVES

4

TRIANGULATION ALGORITHMS

6

WEEK 2: FUNDAMENTALS OF VECTOR GEOMETRY

8

CREATING ARCS

10

TRANSFORMING MENU

12

SURFACE GEOMETRIES

15

SURFACE GEOMETRIES - EXPLORATIONS

17

REPRESENTING DATA

18

WEEK 3: CREATING A GRIDSHELL

23

CREATING A GRIDSHELL - EXPLORATIONS

27

PATTERNING LISTS

28


WEEK 1:

LOFTING CURVES The first week’s online tutorials focussed on familiarising us with the interface of Rhino’s node-based algorithm editor Grasshopper. The editing plugin allows users to define logical relationships between multiple design parameters that define a parametric model. A model wherein the parts of its design relate and change in a coordinate way, as defined by various parameters and dependencies set by the designer. Where only ‘one-level’ of history can captured using the ‘Record History’ tool in Rhino, Grasshopper was created to allow users to retain and use history of parametrics in design projects. Hence, each state of a surface is the bi-product of the changes caused to the algorithm. Our first task was to loft several of curves using Grasshopper and create a series of interesting surface explorations.

4

Above: The main definition used to generate lofted surfaces iterations.

Above and Below: Moving control points in Rhino to investigate differentiated geometry.


Above and Below: Exploring new relationships between geometries, investigate differentiated geometry, and capturing differentiated models through baking in grasshopper back into Rhino.

5


WEEK 1:

TRIANGULATION ALGORITHMS The week’s videos also explored the use of triangulated algorithms in generating interesting 2-dimensional and 3-dimensional patterns. Unlike organised grid systems, explorations of hexagonal grids with equilateral triangle grids through the ‘Delaunay Edges’ and ‘Voronoi’ components can generate patterns with great orgnic qualities.

Below: The ‘MetaBall’ component was used to generate circular cell-like patterns within the organic grid. The threshold was manipulated using a number slider.

6


Above: Points created within a simple box using ‘Pop3D’ component were used to generate 3-dimensional cell patterns within the geometry through ‘Voronoi3D’. Altering the density of points and deleting various cells created many interesting iterations.

Above: ‘OcTree’ components used to generate boxes based on surface’s populated point grid. Varying of grid density generates different results which are then baked and further manipulated.

7


WEEK 2:

FUNDAMENTALS OF VECTOR GEOMETRY Week two introduced us to more transformations, sections and more complex geomeries in Grasshopper, as well as methods of computational modelling through the use of vectors. Vectors define a direction and a magnitiude in a Grasshopper definition, and are useful for applying transformations on objects, such as translation, scaling and rotation.

Above: The Grasshopper definition of a simple vector in space - essentially the ‘base’ definition to all vectors. Below: Plane created based on a vector definition.

8


Above: Definition used in adding two vectors to create a ‘head-to-tail’ vector. Highlighted is the simpler approach to doing so. Below: Vectors mentioned with ‘head-to-tail’ vector, highlighted.

9


WEEK 2:

CREATING ARCS Through the ‘DivideCurve’ and ‘Arc’ building components of Grasshopper’s curve menu, you are able to create arcs from a series of grid points upon a surface. These arcs can then be used as references for further geometrical development. Two curves are referenced into Grasshopper by ‘setting’ them into two ‘Curve’ components. The ‘Divide’ function is then used to divide generate the control points along each curve, and through the ‘Arc’ function, arcs are formed to run through and connect each of the start points those to the end points. By ‘Flipping’ the arcs and putting them through ‘InterpolateCurves’, arcs are created along both the length and width of the surface, to generate a point grid system.

Upper Right: Inital arcs created from dividing referenced curves using ‘DivideCurve’ Middle Right: Intersecting grid system created from interpolating the surface’s arcs and flipped arcs

Right: ‘Geodesic Curve’ component used, creating curves between two points on the surface, that is the shortest path possible between them.

10


Above: Definition from which the following explorations were created.

Above: Explorations with ‘Polylines’ component. Connects points on an arc with straight polylines to simplying the geometry and enable ease of fabrication.

Left: Definition from which geodesic arcs were generated.

11


WEEK 2:

TRANSFORMING MENU The transform menu of Grasshopper proved to be a powerful tool digital geometry manipulation, due to its ability to create variations of great extents in the most efficient of definitions. Elements such as site contours can hence be generated and represented in plane to allow physical fabrication.

Above: Surface contours projected onto XY-plane using ‘Project’ component. Above Right: Projected contours lofted relative to surface to create contour planes.

Right: Contour planes layed our and oriented to allow fabrication.

12


Above: Definition used in the generation of the lofted contours below, in which contours are generated for a lofted surface using the ‘ContourSrf’ function. Adjustments to the offset distance using a number slider allows variations in the contour density.

Above: Lofted surface contours, with variations in density as determined by offset distance slider and other manipulations.

Above: Contour Plane Definition The surface contours are horizontally projected down onto the XY-plane using the ‘Project’ component and setting the XY-plane as the base plane. The projected contours are then lofted relative to the surface to create a series of contour planes, which are then oriented through ‘Orient’ to remove overlapping and ready for FabLab.

13


14

Above: Surface with generated box grids through the ‘Sbox’ function

Above: Surface boxes acts as panel on which patterns are projected

Above: ‘Sbox’ height increased to allow a sharper and more defined pattern

Above: Projected pattern


WEEK 2:

SURFACE GEOMETRY

Patterns can be projected onto surfaces through the use of surface box grids, or the ‘SBox’ component. ‘SBox’ projects box grids onto the surface of a curve using its grid points. These boxes then act as panels on which patterns can be generated. Its height can be manipulated using a number slider to create highter or flatter patterns.

Above: Definition from which surface pattern is created

Above: Triangular mesh used in ‘Morph’ to create surface pattern

A mesh is set as the base to the ‘Morph’ function, with the box grids as its threshold to project a pattern onto the surface, within the box grids.

Above: Mesh applied into box grids using ‘Morph’ to generate triangular patterns onto the surface

Above: Final baked result of projected triangular pattern.

15


Above: Further explorations of geometry projections on surfaces with variations in Grasshopper definition and mesh settings.

16


WEEK 2:

SURFACE GEOMETRY - EXPLORATIONS

17


WEEK2:

REPRESENTING DATA In relation to the week’s topics of geometry transformations and surface projections, we were to select a data set of our choice and creatively represent it in a visual manner. I chose to have fun with it and visualised a set of fun data from three variables and represent them as a set of points in Grasshopper. The three variable were: x - Number of assignments due within that week y - Hours of sleep that night z - ‘Happiness’ scale of 1-10 the next day A surface was created based on the points through inputting them into ‘SrfGrid’.

Above: Surface based on data points created from inputting points into ‘SrfGrid’

The surface is then plugged into the ‘SBox’ component to generate a series of box grids, on which a mesh pattern is then applied through the ‘Morph’ tool to generate an interesting visual representation of the initial data.

Above: Mesh in which morphed pattern is based upon

18

Above and right onwards: Final baked result of data representation


Above: Surface box grid from ‘Sbox’, with exaggerated height to create a sharp pattern

Above: Projected pattern through ‘Morph’

19


20


WEEK2:

REPRESENTING DATA

Below: Grasshopper Definition of Data Representation

21


Three curves divided into their controls points through ‘DivideCrv’

Above: Arcs created from exploded data branches

Three curves are divided into its control points, and the ‘Tree Explode’ function is applied to ‘explode’ each point into their respective lists of co-ordinates. Each co-ordinate is then plugged into ‘Arc’ and rebuilt to create a complex intersecting grid system through the curves. ‘Shift’ is later used to offset the grids that allows the creation of a more dynamic system. Where there was an issue of lofted surface not joining together, as outputs are polysurfaces and not a single continuous surface , curvs were rebuilt via the ‘ReBuild’ component. A continuos lofted surface is then achieved. A geodesic created from

22

surface is the resulting

finally points.


WEEK 3:

CREATING A GRIDSHELL

Arcs flipped and an offset value applied to create diagonal grid

Above and Below: Arcs offsetted to create potential architectural structure

23


3. Points exploded into separate ‘branches’ of points (it’s co-ordinates) through ‘Explode Tree’ 1. Three curves drawn in Rhino that are to be lofted and developed in Grasshopper

2. Curves divided into its controls points through ‘DivideCrv’

24


WEEK 3:

CREATING A GRIDSHELL

Below: Grasshopper Definition of Gridshell Generation

4. Arcs created from exploded point branches and rebuilt to ensure smooth continuous lofted surface

Lastly, geodesic surface created based on points and arcs

5 Offset applied to arcs through ‘Shift” to create diagonal effect

25


Above: Further explorations of gridshell generation with different surfaces

26


WEEK 3:

CREATING A GRIDSHELL - EXPLORATIONS

27


WEEK 3:

PATTERNING LISTS Patterning lists is a great way to create patterns beyond the simple repition of shapes, but enable the generation of organic systems. Using the ‘Cull’ component of Grasshopper, a sequence of numbers is created to represent the sequence in the list of ‘Cull’. This sequence is then shuffled around so that instead of cells being orderly organised as 0, 1, 2, 3, they will now be randomised into something like 25, 44, 13, 0. This shuffilng can be created using the ‘series’ components where you alter the coutning series, or through the ‘Jitter’ function which automatticaly shuffles the list of values.

Below: Grid created through the 2-dimensional population of a rectangular boundary and cells achieved through ‘Cull’ and ‘Voronoi’.

28


Above: ‘Cull’ and ‘Voronoi’ settings adjusted to create variation in cell density and tesselation

Below: Offset and manipulated ordering of grid points to create further cell interations of greater definition

29


WEEK 3:

PATTERNING LISTS Below: Grasshopper Definition of Patterning List

1. Surface divided into its control points

2. Points then flattned and put into ‘Cull’ component to create cell patterns within grid

4. ‘Voronoi’ component creates further pattern variations

3. Alternating True/ False inputs set as ‘Cull’ parameters to allow organic cell interations

30


5. ‘Jitter’ component ensures cells’ inputs are shuffled and randomised

6. After great explorations of other various components, the cells are offsetted to create one last iteration and introduce greater definition to the final pattern.

31


WEEK 4:

1. Lesson 8: Phyllotaxis and Expression Sequence Manipulation - In addition to creating and navigating through lists, frequently, we want to recognize the data contained in a list - not only sometimes we have to create and navigate, we want to reorganise the data --> ‘cull pattern’ component being one tool to do this Boolean property of a statement being either true or false. - e.g. ‘true’ to put certain lines/points/ texts on, ‘false’ to turn them off etc. :D List Culling - when we actually want to remove a specific item or list by using a repeating pattern - so easy when we begin to use a pattern such as ‘false, false, true..’ through the use of panels and plugging them into ‘cull pattern’ --> you can see your actual pattern Gates objects

and found

Dispatching in ‘Lists’

-

both dropdown



Fractal Tetrahedral How expressions can be used to generate an equilateral tetrahedron, and triangulate with a fractal process in order to reverseengineer the Morning Line project First step, generated a polygon with 3 sides.



Fractal Tetrahedral



WEEK 5:

1. Evaluating Fields In this tutorial, we focussed on how Grasshopper’s ‘Fields’ component can produce geometry which are similar to biothing and organisms seen in nature. Positive point charges components --> to create curved division components to produce points within space, through which push lines through the field --> these lines will begin to describe structural members within the geometry - moving points/making it 3-dimensional and instantly adds more complexity to the organisation/system - generating different patterns of point charges, looking at positive and negative point charges - looking at what we can do with polyline objects --> continue to generate interesting curvature geometries from what was a 2-dimensional diagram.



WEEK 5:

1. Evaluating Fields



2. Graphing Section Profiles ‘Graph Mapper’ - plug in any value and it computes any y value for that function, at the particular value, and outputs the result. By default, the output is scaled between 0 and 1. works in parameter space - created a range of values between 0 and 1that correspond to each point along curve, using ‘Range’ component.



WEEK 6:

2. Tree Dimension and Menu Grasshopper allows you to operate on many surfaces simultaneously - really useful when doing things like: - have a single surface/data tree of points, and want to find average of all these points --> flatten all into single list, use average component and find average of them all. Relative Item - create a grid with points on a surface, in this case a sphere and paramteric limits are explored.









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.