ALGORITHMIC SKETCHBOOK
Natalie Keynton 615887
ALGORITHMIC SKETCHBOOK Natalie Keynton 615887
2
Algorithmic Sketchbook
CONTENTS 4
Week 1
8
Week 2
12
Week 3
16
Week 4
18
Week 5
22
Case Study 1
26
Week 6
28
Week 7
30
Case Study 2
32
Week 8
36
Final Project - The Sailing Bridge
38
Grasshopper file
Algorithmic Sketchbook
3
Natalie Keynton 615887
WEEK 1
Lofting sea sponges
I used ‘Biarc’ curves to create different shaped tubes and baked each of them into Rhino after modifying the two original curves slightly to give different shapes. Then in Rhino I manipulated them into a formation which I then placed on a base to finish off the composition.
l wanted to try the ‘pipe’ component for making surfaces. At first I had trouble creating arcs. But by using another curve that acted as the midpoint for the arc the lines became straight but curved. With this surfacing method I tried capping the pipe in different ways. At first I was unable to create the elements by creating closed curved and offsetting them to loft from the original curve. To solve this I offset all the curves from a base one and then lofted all the offset curves. Then I baked the geometry, copied it and joined them together using the ‘Boolean Curve’ command.
4
Algorithmic Sketchbook
Week 1
Voronoi
When experimenting with the ‘Voronoi’ component I started by changing the slider values for number of points in populate geometry and the radius of the cells. Then I created a 3D box and deleted some of the cells once the geometry was baked into Rhino.
Metaball
Once again I changed the number of points in the populate geometry component and also the threshold in the metaball component. Doing this I discovered that a larger threshold number made the circles smaller. This may be useful later in Part B of the journal.
Algorithmic Sketchbook
5
Natalie Keynton 615887
OcTree
I took one of my lofted sea sponge arms and attempted to create a mesh geometry from points on the lofted surface. I used the ‘OcTree’ component to generate the boxes, changed the values, joined the breps and used them to create a mesh.
The two attempts below are when I tried to use the Smooth mesh component. It did not work as well as I had hoped and I obtained the final image by ‘skipping the naked edges’.
6
Algorithmic Sketchbook
Week 1
Delaunay triangulation
I found this component particularly interesting and look forward to using it to create topographic representations in my final project.
Algorithmic Sketchbook
7
Natalie Keynton 615887
WEEK 2
Recreating Nature
Below is my first attempt at re-orientating a geometry to a surface. Here I took the curve I made when exploring geodesic curves and reorientated some geometry to it to mimic a shell. To do this I used the Surface Box and Box Morph which were new to me.
To recreate the lizard skin I used the technique shown in the Transform Menu video which uses the Contour Component along with Project.
Lofted Curves
Lofted Geodesic Curves
Divide Surface
Deconstruct Point
Surface Box Contour Truncated pyramid Divide Curve Box Morph Construct plane
Truncated cone
Orient
8
Algorithmic Sketchbook
In order to immitate the irregular bark I oriented the rectangular geometry to the surface and also used the scale NU component and attractor points to try and give the geometry some irregularity.
Week 2
Mesh Geometry I created a series of boxes in Rhino and referenced them into Grasshopper. From there I created a mesh. Here I found that the Weld Verticies component fixed the issue I had last week when trying to create smooth boxes to approximate the sea sponge. I experimented with the inputs for the Smooth Mesh component.
Geodesic curves Detailing Planar Joints I found this technique useful and can see how it will be beneficial when it comes to fabricating models, however I am not yet sure how to create circles so that the offset does not cut all the way through to the centre because this makes the notched circle impractical as a joining element. Hopefully this will be covered in later tutorials.
I included several steps of the process but still wonder how the final image on the right can act as a connecting piece when it is not in one piece itself. Is there a way to change this?
Algorithmic Sketchbook
9
Natalie Keynton 615887
Contouring The image on the left deomonstrates contouring using the contour component. The one on the right however shows a method of contouring which uses the Brep Brep Intersect component to use curved surfaces to intersect another geometry. The split surface component was then used in conjunction with the shift list component to select only parts of the contoured surface.
Curve Intersection Menu - creating joint details Below I take the grid shell pattern and follow create a joint that uses circular disks and pins
10
Algorithmic Sketchbook
the to
steps hold
in the
the video to strips together.
Week 2
Sphere Project I recreated the Sphere Project video but used a rectangular box as my base geometry. I could not restrict the intersecting rectangles to the bounding box of the original. In the second image I tried substituting the 3pt Rectangle for a surface created using 4 points. To make this work I had to ensure the seed value of the jitter created 4 lists.
AA Driftwood Surfaces I created a circular geometry in Rhino and referenced it into Grasshopper. I used the Smooth Mesh component before following the video. I offset a circle to create the contour lines but struggled to make them into surfaces. This was due to being unable to transfer the Mesh to a Brep.
Brep from Rhino
Weld Mesh
Mesh Smooth Offset, Extruded Circle
Mesh/Mesh Intersect
Surface Split
Algorithmic Sketchbook
11
Natalie Keynton 615887
WEEK 3
Recreating Nature
Gridshells Above I tried playing with the grid shell video. Initially I ordered my circle geometry the wrong way and then spent a while trying to figure out why it wasn’t forming an arc in the direction I wanted. The Explode Tree component helped me figure this out though.
12
Algorithmic Sketchbook
Mapping Voronoi cells onto the Gridshell geometry.
I had very little success when using the Pull Point command. As you can see here it only translated onto a small proportion of the bottom half of the geometry. I’m not quite sure why.
I had more success with the Map Surface Component which you can see above. I couldn’t however then loft these cells.
Algorithmic Sketchbook
13
Natalie Keynton 615887
Cull Pattern Below I use cull pattern to remove points that form Voronoi cells. This creates different patterns.
Partition List This component acts to subdivide bigger lists so that they can be broken up and used in other components.
14
Algorithmic Sketchbook
Jitter This allows compoenets
you are
to shuffle the ordering used below to alter
ot items in the pattern
a list. Several of the list on the left hand page.
Algorithmic Sketchbook
15
Natalie Keynton 615887
WEEK 4
Attractor points, field charges and image sampling
Attractor Points I created a basic hexagonal grid and used the distance between one attractor point and the circle centers to create the circle geometry on the surface. At first I did not include the remap component, but once I included this the circles became more distinguishable. To find the source domain you need the ‘bounds’ component. The ‘domain’ component allows you input exact values of a desired domain. This was also used in the production of these geometry. In the final one (left) I have projected the pattern onto a curve overhead.
16
Algorithmic Sketchbook
Fractal Tectrahedra I followed the Aranda Lasch tutorial video in order to create the geometries below. I learnt several new components along the way such as the ‘cap’ component which closes meshes and the ‘deconstruct brep’ component which I can imagine being useful later to drag out the verticies and faces of a geometry.
Algorithmic Sketchbook
17
Natalie Keynton 615887
WEEK 5
Recreating Nature
Evaluating fields The series of four vertical images shows experimentation with point charges in a merged field.
18
Algorithmic Sketchbook
Exporting to illustrator Until now I have exported Rhino files using the -ViewCaptureToFile command to save to .png and then placed directly into InDesign. This week I tried using Illustrator and the actions function to speed up this process. However this created
odd results and I have chosen to continue exporting files in the old way. While the image to the right is interesting, I think that the simple line work is better for more of the images.
Graphing section profiles In the images directly below I tried a different pattern of curves imported from Rhino before adding the Spin Force component to the definition and finally using field lines rather than points. Then using the graph mapper component I altered the lines to give them a 3D shape.
Algorithmic Sketchbook
19
Natalie Keynton 615887
Rendering From here I used the pipe component to generate a mesh that I imported to Rhino and applied the Flamingo rendering tool.
Image Sampling On the left I alter the radius of the circles in my image sampling definition. I have also attempted to play with the expressions used to generate the size of the circles. The image below takes the outputs from the first half of the definition and uses an expression with the Tan function to loft between two curves to create th cones. They are however quite close together and to fix this I would attempt altering the grid UV inputs to distance the grid points from each other.
20
Algorithmic Sketchbook
Graph Mapper Using Graph Mapper, I manipulated the basic circle geometry to create different patterns. I also altered the domain and boundary of the Voronoi component to produce some of the these results. I tried different Cull Patterns and only allowed the circles to output odd numbers.
Algorithmic Sketchbook
21
Natalie Keynton 615887
CASE STUDY 1
Trying to understand the algorithm
In an attempt to comprehend the complex algorithm I attempted to reverse engineer it myself using the provided definition as a basis. I struggled immensely with this, but found it increased my understanding of the components and how they operated together. I
couldn’t
get
the
spacing
right
I tried playing with the expressions which alter the distance between the repeated the geometry as well as shifting the points in the hexagonal grid that I moved. I still couldn’t get it to work though!
I kept trying to hexagonal grids in
alter the spacing of the my own recreated definitions
Then I realised component that
that
I had missed the flipped the matrix.
Then I tried to make the grids match each other but couldn’t figure out why there were multiple lines in some places and not in others
22
Algorithmic Sketchbook
These two next images are me trying to play around with the original definition. I realised that by changing the expression that controlled the original spacing of the pattern I could alter how they were positioned. First of all I managed to separate them into rows. Then into their original blocks of 6 that formed the repeated pattern. It was then that I realised that the form was not random but created by using the interior points of the 6 hexagons to generate the odd shaped hexagons. By leaving the outer hexagonal lines unchanged the pattern was sure to fit together smoothly. After realising this I went back to my new definition and began to play around with altering the internal points only and was then able to successfully create a similar grid to the original! Whoo!
Algorithmic Sketchbook
23
Natalie Keynton 615887
CASE STUDY 1
Begining to manipulate the algorithm
Adding without
the offset changing
Changing
component to the definition the default parameters.
the
offset
values
Making the offsets smooth - i.e. changing the ‘‘C’ value
And after adding all the changes and final components it still doesn’’t look like the original definition - and I am not sure why...oh well. Now it’’s time to play around with the original.
Once
24
Algorithmic Sketchbook
more
mine
with
sharp
corners
Algorithmic Sketchbook
25
Natalie Keynton 615887
WEEK 6
Controlling Data Structures
Relative item By using the ‘relative item’ component different patterns were generated using points on the divided surface of the sphere. This appears to work in a similar way to the ‘path mapper’ component and generated similar results. Note: when using panels to input ‘O’ value for ‘relative item’ remember to unselect ‘multiline data’.
26
Algorithmic Sketchbook
Continuing Fractals I enjoyed learning how the ‘seed’ value to control the jitter component and the ‘Bezier Span’ component. However I struggled with the scripting component of the video and got lost very easily.
Algorithmic Sketchbook
27
Natalie Keynton 615887
WEEK 7
Clusters and Iteration
Clusters From this week’s videos I the easy repetition and
28
Algorithmic Sketchbook
found then
the tutorial on clusters particularly useful manipulation of a repeated part of
as a
it allows definition.
Algorithmic Sketchbook
29
Natalie Keynton 615887
CASE STUDY 2
Rebuilding the definition
Attempt 1 I tried several methods when reverse engineering in order to experiment. I detail and outline a few of them below.
Using ‘move away from’ in order to get some movement in the lines to generate patterns.
Attempt 2 Trying to use a grid, and alter the grid points and use these to control the nurbs curves.
Attempt 3 I tried experimenting with fields in order to shift lines through points, however I was unsucessful in achieving this.
Attempt 4 - final attempt In the end I set the control lines as very curved lines to minimize the need to use another component to alter the control points of the curves.
30
Algorithmic Sketchbook
This was the final design that I reverse engineered which combined Attempt 4 with a loft.
Algorithmic Sketchbook
31
Natalie Keynton 615887
WEEK 8
Extending the framework: Kangaroo Physics Plugin
Kangaroo Physics It shoudl be noted that Kangaroo cannot be used to accurately predict marterial performance as it operates based on a simplified version of the stresses found in the real world.
Springs from line Important to remember that if you are using a Polyline you must explode it into straight linear segments before running simulations. Also, if the Kangaroo component goes red, try resetting the simulation using the toggle component. You must use linear inputs.
Experimenting with changing the ‘rest length’ value at moving the geometry in the Z direction based
32
Algorithmic Sketchbook
of on
definition below. Looking also the Unitary Force component.
Meshes I tried recreating a similar mesh as in the demonstration video however found that I could not get it to work as well. I think this is due to the way I created my original mesh (in Rhino) which was not recommended and I later ran into problems when trying to alter the anchor points.
Algorithmic Sketchbook
33
Natalie Keynton 615887
Fabric-Like Meshes I found this worked much better. I can see the potential for using this in other projects. Please note: I have included many illustrations of Grasshopper screen grabs for my own future reference.
34
Algorithmic Sketchbook
Algorithmic Sketchbook
35
Natalie Keynton 615887
DEFINITIONAL DOCUMENTATION
Create Poles
Create Floats
Create Sails
Grid
Create the same way as the poles, changing radius and height.
Divide pole ‘line’ into 2 segments
Duplicate point in Z direction
Line
Extract individual points from divide
Use these points to create surface using four points.
Pipe along curve Then use Kangaroo to apply forces to these meshes. 36
Algorithmic Sketchbook
Create Ropes
Create Ties
Use points extracted to create sails.
Build geometry in Rhino
Final Model
Connect using line.
Pipe along line to give thickness.
Algorithmic Sketchbook
37
Natalie Keynton 615887
GRASSHOPPER FILE
Creating the poles and floats
38
Algorithmic Sketchbook
Creating the ropes
Algorithmic Sketchbook
39
Natalie Keynton 615887
Generating the meshes
40
Algorithmic Sketchbook
Algorithmic Sketchbook
41