Introduction to Grasshopper Videos by David Rutten.
Wondering how to get started with Grasshopper? Look no further. Spend an some time with the creator of Grasshopper, David Rutten, to learn the
ay how many valid permutations exist.
But allow me to guesstimate a number for 20 components (no more, no less). Here are my starting assumptions:
Let's say the average input and output parameter count of any component is 2. So we have 20 components, each with 2 inputs and 2 outputs.
There are roughly 35 types of parameter, so the odds of connecting two parameters at random that have the same type are roughly 3%. However there are many conversions defined and often you want a parameter of type A to seed a parameter of type B. So let's say that 10% of random connections are in fact valid. (This assumption ignores the obvious fact that certain parameters (number, point, vector) are far more common than others, so the odds of connecting identical types are actually much higher than 3%)
Now even when data can be shared between two parameters, that doesn't mean that hooking them up will result in a valid operation (let's ignore for the time being that the far majority of combinations that are valid are also bullshit). So let's say that even when we manage to pick two parameters that can communicate, the odds of us ending up with a valid component combo are still only 1 in 2.
We will limit ourselves to only single connections between parameters. At no point will a single parameter seed more than one recipient and at no point will any parameter have more than one source. We do allow for parameters which do not share or receive data.
So let's start by creating the total number of permutations that are possible simply by positioning all 20 components from left to right. This is important because we're not allowed to make wires go from right to left. The left most component can be any one of 20. So we have 20 possible permutations for the first one. Then for each of those we have 19 options to fill the second-left-most slot. 20×19×18×17×...×3×2×1 = 20! ~2.5×1018.
We can now start drawing wires from the output of component #1 to the inputs of any of the other components. We can choose to share no outputs, output #1, output #2 or both with any of the downstream components (19 of them, with two inputs each). That's 2×(19×2) + (19×2)×(19×2-1) ~ 1500 possible connections we can make for the outputs of the first component. The second component is very similar, but it only has 18 possible targets and some of the inputs will already have been used. So now we have 2×(18×2-1) + (18×2-1)×(18×2-1) ~1300. If we very roughly (not to mention very incorrectly, but I'm too tired to do the math properly) extrapolate to the other 18 components where the number of possible connections decreases in a similar fashion thoughout, we end up with a total number of 1500×1300×1140×1007×891×789×697×...×83×51×24×1 which is roughly 6.5×1050. However note that only 10% of these wires connect compatible parameters and only 50% of those will connect compatible components. So the number of valid connections we can make is roughly 3×1049.
All we have to do now is multiply the total number of valid connection per permutation with the total number of possible permutations; 20! × 3×1049 which comes to 7×1067 or 72 unvigintillion as Wolfram|Alpha tells me.
Impressive as these numbers sound, remember that by far the most of these permutations result in utter nonsense. Nonsense that produces a result, but not a meaningful one.
EDIT: This computation is way off, see this response for an improved estimate.
--
David Rutten
david@mcneel.com
Poprad, Slovakia…
Added by David Rutten at 12:06pm on March 15, 2013
te some cut sheets, but not to optmize material, rather define some cut lines. Everything that I am cutting is made of planar wood elements, but there are very specific geometries (mostly straight lines) and I have to put tolerances and radiasas at the corners in order to cut on the cnc mill. Spending time to figure out how to automate is necessary, but I am stuck!
One thing the definition is doing is taking my brep modeled components in rhino and makking them into 2d close curves and laying them side by side. It works...not ideal as its not layed out in a sheet, but that is not the most important part.
Another particular problem is that you will see some notches in the curves, which other pieces will slip into, so different slots need different specific offsets (making them larger) as a toelrance to allow for material play. This I don't even know how to set up so maybe it will just have to wait.
THE MAIN QUESTION, and super important would be, LIFESAVER:
At all 'inward' corners...which I think will always mean concave corners (most are 90 degrees, but are within to sides, instead of a corner sticking out). I'm sure its obviousy, but the reason being the outward corners a circular dril bit can cut, but inward ones need an arc profile extended beyond where the corner of the other piece will fit into. The drill bit i am using is 6mm, so 6mm diamters arcs is what i'm working with.
I have managed to put such an arc at every vertices of each cut piece. The problem being some stick outward isntead of cutting into the piece. So each one needs to be orieneted correctly. Ideally they would also only draw into inward corners, but I can always delete them out. I think maybe I am missing a more logical mathematical way of defining?
For these geometries it is not very important which side the half circle arc in on in the inward corners, but I also have some geometries that I will have to control where the circles face according to the rest of the cut piece.
The cutouts in the middle of the pieces that are curves do not need such corners obviously.
The picture is an example drawn
I hope this isn't too specific and long. in general though automating fabrication, and controling pracitcal math and orientation problems like this is itnersting to me!
THANKS…
tema della modellazione parametrica con Grasshopper. Questa plug-in di Rhino consente di progettare, confrontandosi con un contesto evolutivo, attraverso la comprensione e l'utilizzo di parametri e componenti che influenzano la rappresentazione e la rendono dinamica componendo algoritmi. Nel corso verranno introdotte le nozioni base di Grasshopper approfondendo le metodologie della progettazione parametrica e le tecniche di modellazione algoritmica per la generazione di forme complesse.
Le informazioni teoriche saranno fornite in maniera accelerata ma organica e contestuale agli argomenti elencati. Per massimizzare i risultati, le lezioni saranno accompagnate da piccole esercitazioni pratiche.Argomenti trattati:- Introduzione alla progettazione parametrica: teoria, esempi, casi studio- Grasshopper: concetti base, logica algoritmica, interfaccia grafica- Nozioni fondamentali: componenti, connessioni, data flow- Funzioni matematiche e logiche, serie, gestione dei dati- Analisi e definizione di curve e superfici- Definizione di griglie e pattern complessi- Trasformazioni geometriche, paneling- Attrattori, image sampler- Data tree: gestione di dati complessiStrutturaIl corso ha una durata di 16 ore programmate nell'arco di 2 giornate con i seguenti orari: i giorni 10/11 e 11/11 dalle 10,00 alle 19,00 con pausa pranzo di un'ora.
PrerequisitiPer affrontare il corso è richiesta una conoscenza di base del software Rhino attraverso esperienze teoriche e pratiche. I partecipanti dovranno venire muniti di proprio laptop e con software Rhinoceros 5 o Rhinocero 4 perfettamente funzionanti.Alla fine del corso, verrà rilasciato l’attestato di partecipazione ad un corso qualificato certificato dalla McNeel, valido anche per l’ottenimento di crediti formativi universitari.
…
, presso la sede Manens-Tifs, nei giorni 26,27 e 28 maggio 2016.
Il comfort visivo e la gestione dell’illuminazione naturale in relazione al risparmio energetico diventano sempre più rilevanti per una progettazione innovativa degli edifici. Ad esempio, il nuovo protocollo LEED 4 riconosce crediti per le simulazioni di daylighting e conferma l’importanza degli aspetti progettuali per “collegare gli occupanti con lo spazio esterno, rinforzare i ritmi circadiani, ridurre i consumi di energia elettrica per l’illuminazione artificiale con l’introduzione della luce naturale negli spazi”. Senza strumenti software per la simulazione della luce non è possibile ottenere risultati di qualità. Radiance è un software validato, utilizzato sia a livello di ricerca che dai progettisti ed è tra i più accurati per la simulazione professionale della luce naturale e artificiale. Non ha limiti di complessità geometrica ed è adatto a essere integrato in altri software di calcolo e interfacce grafiche. Queste ultime facilitano le procedure di programmazione. Le principali e più versatili saranno oggetto del corso (DIVA4Rhino e Ladybug+ Honeybee, plug-in per Grasshopper e Rhinoceros 3D).
Il corso è rivolto a progettisti e ricercatori che vogliano acquisire strumenti pratici per la simulazione con Radiance al fine di mettere a punto e verificare le soluzioni più adatte alle proprie esigenze. Sono previste lezioni di teoria e pratica con esempi ed esercitazioni volte a coprire in modo dimostrativo ed interattivo i concetti trattati.
Le domande di iscrizione devono essere presentate entro il 12 maggio 2016.
La brochure con i contenuti del corso e tutte le informazioni sono disponibili su questo link
Il corso è sponsorizzato da Pellinindustrie.…
la plug-in Grasshopper. L'utilizzo dei due software permette di esprimere al massimo le qualità e le potenzialità della modellazione Nurbs e Mesh attraverso l'esplicitazione di algoritmi compositivi. Il corso introdurrà alle strategie di disegno digitale finalizzate alla progettazione di forme complesse utilizzando un caso studio proprio del mondo dell’architettura. Si affronterà l'intero processo di modellazione, partendo dal disegno di una superficie complessa; su questa verranno applicati algoritmi generativi per la tassellazione e la riduzione della complessità in elementi ottimizzati per la produzione. Una delle finalità del corso è quindi l’ideazione di superfici complesse, approfondendo metodi di fabbricazione digitale.
Il metodo del corso è basato sulla risoluzione di un esercizio step-by-step accompagnato da approfondimenti teorici che porteranno il partecipante all'autonomia nell'utilizzo di Rhinoceros e Grasshopper. Durante il percorso verranno illustrati applicativi avanzati del software per la pannellizzazione delle superfici (Paneling-Tools). Con il processo illustrato nel corso si vuole rendere il lavoro del progettista più facile grazie alla riduzione dei tempi che portano dal disegno dell’idea, alla costruzione delle forme.
Nella prima parte del corso verranno illustrati metodi avanzati di generazione delle superdici per una modellazione controllata delle FREE FORM. per arrivare a questa condizione sarà necessario approfondire i concetti di spazio parametrico monodimensionale (per la trasformazione lungo le curve) e spazio parametrico bidimensionale (per la trasformazione lungo le superfici).
Nella seconda parte del corso si insegneranno i metodi di esplicitazione degli algoritmi, applicati ad esercizi base utili alla comprensione di Grasshopper; poi la plug-in verrà specializzata affrontando editing, trasformazioni complesse e il problema della tassellazione delle superfici.Buona parte del tempo sarà dedicato alla costruzione di geometrie responsive e alla gestione del flusso dati per l'ottimizzazione del lavoro.…
ucation Research Group in Urban Building Services at the Technical School of Architecture of Madrid (ETSAM), Spain.
The aim of the Research is to generate a digital support for sketching urban and architecture net systems and its interrelationships between them for academic researches.
IE Group Members:
-Sergio del Castillo Tello (Doctor No, Lead Programmer)
-Pablo Gómez Rodríguez (Programmer)
-Prof. Miguel Angel Gálvez
(Architect ETSAM, Building Services Department)
-Manuel Rodríguez Pérez
(Architect ETSAM, Building Services Department)
-Prof. Jose Tovar Larrucea
(Architect ETSAM, Building Services Department, Professor Ad Honorem)
The development of this tools, which are in its very early stage, is planned to take part within the Innovative Group Education research program; We expect to share the results with the community through this group as we achieve them, in case that some of you are interested, or if just want to get involved somehow. Cheers!
…
Added by Doctor No at 4:24am on September 30, 2013
try now to integrate Geco in an interdisciplinary architectural engineering studio: hoping we can show you some nice applications of your tool, I'll keep you update and sending now details by e-mail. Here the file (very welcome to be shared). It most probably contais trivial errors by me, thanks for helping and giving some tip! Gr. Michela
FILE:
Ok, right, I see the outputs update correctly. Origin of problems must be in some different mistake I do:
- Incident radiation: I am not sure I understand what is going on: why I get so many 'not a number' ? (The Galapagos report is full of NaNs).
Bio-Diversity: 0.887 Genome[0], Fitness=NaN, Genes [89% · 44%] { Record: Too many fitness values supplied } ...
Genome[7], Fitness=NaN, Genes [74%] { Record: No fitness value was supplied } ....
Genome[9], Fitness=NaN, Genes [37% · 11%] { Record: Genome was mutated to avoid collision Record: Too many fitness values supplied }
- Daylight calculations: the geometry accumulates withouth deleting the previous models. As a consequance, results almost do not change after few varations (so, outputs get updated but do not vary). In current daylight definition: the first object being imported is the one where the grid has to fit; its setting makes it cancelling all the other objects during import. All the others, do not delete anything when imported. When running loops (manual or GA) that vary parameters, the entire geometry do not get cancelled - so I guess the loop does not pass back by the cancelling step, but imports only the geometry which has been varied by the parameters using the setting of that import component only? I will then try again by changing the order of the operations, but if you have specfic tips, let me know.
THANKS!
…
next level.
This Parametric Design course will provide the participants with the necessary knowledge and ability to use Grasshopper, a free visual programming plugin in Rhinoceros; you will be guided through a series of hands-on exercises that highlight NURBS modeling and its concepts. We will introduce Grasshopper as a graphical algorithm editor tightly integrated with Rhino’s 3D modeling tools. You will also learn how Rhino is used to render models for visualization, translate 3D models for prototyping, and export 3D models into 2D CAD or graphics programs.
English is the course main language.
Location: Düsseldorf city center
Registration and buying Tickets
www.digitalparametrics.eventbrite.de
Course Calendar:
4 Days 6 hours each
Total duration 24h
2 weekends
Date:
Sat. 17 - Sun. 18 June
Sat. 24 - Sun. 25 June
10:00 - 17:00
Getting Started in Rhino. 2 days (17 - 18 June)
Getting Started in Grasshopper. 2 days (24 - 25 June)
-----------------------------------------------------------------------
Participants will be given a certificate of participation at the end of the course.
-----------------------------------------------------------------------
Course fees:
Professionals: 600€ (excl. MwSt.) Students: 500€ (excl. MwSt.) Students need to provide: Copy of current student ID or proof of student enrollment at University/School.
Group discounts:
Group of 3 professionals: 3x500 = 1500€ (excl. MwSt.)
Group of 3 Students: 3x400 = 1200€ (excl. MwSt.)
Participants are kindly asked to bring their own laptops and have pre-installed Rhino + Grasshopper.
Useful Resources:
Rhinoceros Installation (90 days full version trial available): http://www.rhino3d.com/download
Rhinoceros for Mac (includes Grasshopper) http://www.rhino3d.com/download/rhino-for-mac/5/wip
Grasshopper Free Installation: http://www.grasshopper3d.com/page/download-1
Grasshopper Free Plugins: http://www.food4rhino.com/app/lunchbox http://www.giuliopiacentino.com/weaverbird
Main Tutor:
Rihan
M.A. Dipl.Ing. Architect
Architect at RKW Architektur + Düsseldorf
For any questions about the course, please email: info@immersive-studio.com…
ll geometry.
The difference with programs like Inventor is that they are made for production, regardless of the fabrication method. I won't go into detail about that, and instead focus on the modeling process.
In this little model, the starting point actually is a bit obvious, the foundation.
The only contents in the 3dm file are 27 lines. These indicate the location of each footing, and the direction of the tilt of each column. Everything else is defined in GH with the use of numbers as input parameters.
Needless to say, instead of those lines you could obviously generate lines and control the number of columns and panels, hence establish their layout, with any algorithmic or non-algorithmic criteria you please. That marks a major difference between GH and Inventor.
You can generate geometry with Inventor via scripting/customization (beyond iLogic), with transient graphics for visual feedback similar to GH's red-default previews. However Inventor's modeling functions are not set to input and output data trees. I won't go into detail on that, but suffice to say that the data tree associativity of GH was for me the first major difference I noticed. I've used other apps with node diagram interfaces like digital fusion for non-linear video editing since the late 90's, so the canvas did not call my attention when I first started using GH.
Anyways, here's a screen capture of the foundational lines:
In the first group of components, the centerlines of the rear columns are modeled:
And the locations in elevation for connection points are set. Those elevations were just numbers I copied from Excel, but you can obviously control that any way you please. I was just trying to model this quickly.
The same was done for the rear columns:
The above, believe it or not, took me the first 5 hours to get.
Here's a screen capture of what the model and definition looked like after 4 hours, not much:
If you're interested, next post I can get into the sketching part you mentioned, which is a bit cumbersome with GH, but not really.
I wouldn't say that using GH to do this little model was cumbersome, it just needed some thinking at the beginning. You do similar initial thinking when working with a feature-based modeler.…
Added by Santiago Diaz at 12:44am on February 24, 2011