AAD_Algorithms Aided Design
Algorithmic design is not simply the use of computer to design architecture and objects. Algorithms allow designers to overcome the limitations of traditional CAD software and 3D modelers, reaching a level of complexity and control which is beyond the human manual ability. Algorithms-Aided Design presents design methods based on the use of Grasshopperά a visual algorithm editor tightly integrated with Rhinocerosά the 3D modeling software by McNeel & Associates allowing users to explore accurate freeform shapes. The book provides computational techniques to develop and control complex geometries, covering parametric modeling, digital fabrication techniques, form-finding strategies, environmental analysis and structural optimization. It also features case studies and contributions by researchers and designers from world's most influential universities and leading architecture firms.
- Grasshopper environment and plug-in software
- Parametric modeling and advanced data management
- NURBS curves and surfaces
- Meshes and Subdivision Surfaces
- Digital fabrication techniques
- Form-finding strategies
- Particle-spring systems
- Topology Optimization
- Evolutionary solvers
- Environment-informed design
Foreword by Fulvio Wirz (Zaha Hadid Architects)
Introduction; AAD Algorithms-Aided Design from traditional drawings to the parametric diagram; An Additive Process; From conventional drawing to the analogue (smart) apparatus; Parameters: from additive to associative logic; Algorithmic modeling; The parametric diagram as a smart medium
1_Algorithmic modeling with Grasshopper; 1.1 Prerequisites and installation; 1.2 Grasshopper user interface; 1.2.1 Component tabs; 1.2.2 Working area: canvas; 1.3 Components and data; 1.3.1 Local setting of data; 1.3.2 Wired connection; 1.3.3 Warning and errors; 1.3.4 Setting from Rhino; 1.4 Save and bake; 1.5 Display and control; 1.6 Grasshopper flow; 1.7 Basic concepts and operations.
2_data | how to manage data in Grasshopper; 2.1 Filters; 2.1.1 List Item: select one item from a list; 2.1.2 Cull Index: select all data except one item; 2.1.3 Cull Pattern: select items using a repeating model; 2.1.4 Shift List: offset Data in a list; 2.1.5 Split List/List Length; 2.1.6 Reverse List; 2.2 Numerical sequences; 2.2.1 Series; 2.2.2 Data Matching; 2.2.3 Repeat Data; 2.2.4 Random/Construct Domain; 2.2.5 Range; 2.3 Mathematical Functions; 2.3.1 Functions of one variable; 2.3.2 Functions of two variables; 2.4 Conditions; 2.4.1 Logical operators/Boolean values; 2.4.2 Conditional: If/Then; 2.4.3 Other operators: Contains; 2.5 Remapping numbers/Attractors; 2.5.1 Attractors.
3_control | curves and surfaces in Grasshopper; 3.1 NURBS curves; 3.2 Parametric representation of a curve; 3.3 Analysis of curves in Grasshopper; 3.3.1 Finding points on a curve: Evaluate Curve component; 3.3.2 Inverting direction: Flip Curve component; 3.3.3 Finding points on a curve: World to Local conversion; 3.3.4 Finding points on a curve: Point on Curve component; 3.3.5 Finding points on a curve: Evaluate Length component; 3.3.6 Dividing a curve: Divide Curve component; 3.3.7 Dividing a curve: Divide Length component; 3.3.8 Dividing a curve: Divide Distance component; 3.3.9 Dividing a curve: Contour component; 3.3.10 Splitting a Curve: Shatter component; 3.4 Notion of Curvature for planar curves; 3.5 Parametric representation of a surface; 3.6 Surface creation; 3.7 Analysis of surfaces using Grasshopper; 3.7.1 Finding points on a surface: Evaluate Surface component; 3.7.2 Finding points on a surface: World to Local conversion; 3.7.3. Inverting direction: Reverse Surface Direction component; 3.7.4 Extracting Isocurves: Isocurve component; 3.7.5 Dividing a surface: Divide Surface component; 3.7.6 Splitting a surface: Isotrim component; 3.7.7 Strategy: uneven splitting; 3.7.8 Decomposing a surface: Deconstruct Brep component; 3.7.9 Splitting a surface using generic curves: Surface Split component; 3.7.10 Diagrid; 3.7.11 space frame; 3.7.12 Grid of equidistant points on a generic surface: the Chebyshev net method; 3.8 Notion of Curvature for surfaces; 3.8.1 Gaussian Curvature/developable surfaces; 3.8.2 Sign of Gaussian Curvature; 3.8.3 Mean Curvature; 3.8.4 Strategy: developable test; 3.8.5 curvature pattern
4_transformations; 4.1 Vectors; 4.2 Euclidean transformations; 4.2.1 Translations: Move component; 4.2.2 Rotations: Rotate and Rotate Axis; 4.2.3 Orient component; 4.3 Affine transformations; 4.3.1 Scale component: uniform scaling; 4.3.2 Graph Mapper component; 4.3.3 Image Sampler component; 4.4 Other transformations: Box Morph; 4.4.1 Paneling.
5_skins | advanced data management; 5.1 Manipulating the Data Tree; 5.1.1 Flatten Tree; 5.1.2 Unflatten Tree; 5.1.3 Graft Tree; 5.1.4 Flip Matrix; 5.2 Skins; 5.2.1 Rectangular based pattern; 5.2.2 Hexagonal based pattern; 5.2.3 Further study: responsive facade (Aedas ADIC headquarter); 5.2.4 Weaving; 5.3 Sorting strategies using Data Tree
6_smoothness; 6.1 NURBS and Polygon Meshes; 6.2 Polygon meshes_6.2.1 Geometry and topology; 6.3 Creating meshes in Grasshopper; 6.3.1 Creating meshes by topology; 6.3.2 Creating meshes by triangulation: Delaunay algorithm; 6.3.3 Creating meshes by a NURBS to mesh conversion; 6.4 SubD in Grasshopper: Weaverbird plug-in; 6.5 Subdivision of triangular meshes: Loop algorithm; 6.6 Subdivision of quadrangular meshes: Catmull-Clark algorithm6.6.1 Voronoi skin; 6.6.2 Fading pattern; 6.6.3 Strategy: cull adjacent faces. Digital informing creativity by Ludovico Lombardi (Zaha Hadid Architects).
7_loops; 7.1 Loops in Grasshopper: HoopSnake component; 7.2 Fractals; 7.2.1 Serpentine Pavilion iteration; 7.2.2 Tridimensional fractals; 7.3 Loops in Grasshopper: Loop component (text by Antonio Turiello).
8_digital fabrication | make ideas come true; 8.1 Fabrication Techniques; 8.1.1 Bidimensional cutting; 8.1.2 Subtractive techniques; 8.1.3 Additive techniques; 8.2 Modeling Printable Objects; 8.2.1 Main characteristics of a printable object; 8.2.2 Parametric modeling of a freeform vase; 8.3 Modeling objects for cutting based operations; 8.3.1 Sectioning and waffling; 8.4 NU:S Installation (text by Antonella Buono); 8.5 Large-scale objects. Over the material, Past the Digital: Back to Cities by Stefano Andreani (Harvard University)
(Digital) Form-finding by Alberto Pugnale (University of Melbourne).
9_digital simulation | particle-spring systems; 9.1 Kangaroo plug-in; 9.2 Kangaroo workflow; 9.3 Cable simulation; 9.3.1 Continuity; 9.4 Elastic behavior: Hookes law; 9.5 Catenary simulation; 9.6 Membrane simulation; 9.7 Shell behavior. Form as Unknown ֠Computational Methodology and Material Form Generation in the AA Rome Visiting School Workshops by Lawrence Friesen and Lorenzo Vianello.
10_evolutive structures | topology optimization (text by Davide Lombardi); 10.1 Shape Optimization; 10.2 Topology; 10.3 Topology optimization; 10.4 Works; 10.4.1 Akutagawa office building; 10.4.2 TAV station in Florence; 10.4.3 Qatar Education City; 10.4.4 Radiolaria; 10.5 Examples; 10.6 Optimization: finding solutions with Grasshopper; 10.6.1 Optimization problems; 10.2 Exact solvers: Goat plug-in; 10.6.3 Evolutionary solvers: Galapagos.
11_environmental analysis (text by Maurizio Degni); 11.1 Tools; 11.2 GECO and Ecotect; 11.2.1 Interface; 11.2.2 Link and export; 11.2.3 Analysis grid and mesh analysis; 11.2.4 Calculations; 11.2.5 Feedback/import; 11.3 About GECOӳ components _11.4 Solar diagram and shadows_11.4.1 Responsive skin; 11.5 Exporting geometries and importing data; 11.5.1 Exporting geometries from Grasshopper to Ecotect; 11.5.2 Importing data from Ecotect; 11.6 Insolation analysis; 11.6.1 Positioning of photovoltaic panels; 11.7 Analysis Grids; 11.8 Light Control; 11.8.1 Visual comfort of a room; 11.8.2 GECO + Galapagos, visual comfort optimization.
Afterword_Post Digital Strategies Pragmatic computation in Grasshopper by Brian Vesely
I am City, we are City by Francesco Lipari (OFL Architecture)
Parametric Urbanism: a New Frontier for Smart Cities by Paolo Fusero, Lorenzo Massimiano, Arturo Tedeschi, Sara Lepidi
Tools and methods for parametric urbanism by Andrea Galli (Carlo ratti Associati)
Playful computation How Grasshopper3D & its Plugins increased my creativity with five project examples by Arthur Mamou Mani (Mamou-Mani Architects)
Decoded QR list