Einfache GIF-Animationen in Grasshopper

Manchmal kann es vorkommen, dass man das Ergebnis seiner Grasshopper-Definition schnell und verständlich vermitteln möchte, ohne erst umständlich Grasshopper nebst Rhino zu öffnen. Ist das Ergebnis ein statischer Zustand, so erschließt sich der klassische Weg, die Definition zu “backen” und mit dem Resultat weiter zu verfahren, z.B. eine 2D-Zeichnung zu exportieren oder es zu rendern. Bei Definitionen, welche eine Bewegung beschreiben, sieht das schon anders aus. Hier möchte man vielleicht nicht nur einzelne Zustände zeigen, sondern am besten die Bewegung im Fluss verständlich machen.

Animated Cropped Eye

Continue reading Einfache GIF-Animationen in Grasshopper

Erste Schritte in Grasshopper

Beim Umsetzen eines Entwurfes in CAD fällt auf, dass das Modell im Computer recht statisch daherkommt. Es ist ein Zustand des Entwurfes, jede mehr oder weniger aufwändig konstruierte Variante ein anderer Zustand der Ursprungsidee. Das CAD-Programm übernimmt dabei die Aufgabe des Werkzeuges zur Kreierung und Abbildung dieser Zustände. Jeder Zustand beruht auf feststehenden Parametern. Zum Beispiel die Länge eines Quaders auf dem Wert 20 mm, seine Breite auf 10 mm und die Höhe auf 4 mm.

Beim sogenannten Computational Design stützt man sich nun auf die Absicht nicht mehr einzelne Zustände zu modellieren, sondern ganze Zustandsräume mit unendlich vielen Zuständen, die nicht über feststehende Werte gebildet werden, sondern durch Algorithmen. Im Falle des Quaderbeispieles könnte man sagen: Die Länge soll einen Wert zwischen 0 und 20 mm besitzen und in seiner Breite soll er genau die Hälfte seiner Länge betragen. Schon hat man einen Raum geschaffen, in dem unendlich viele Quader existieren können, nämlich genau soviele, wie es Zahlen zwischen 0 und 20 gibt.

Prinzip des Zustandsraums

Und genau bei dieser Möglichkeit, ganze Zustandsräume zu erschaffen, setzt das Rhinoceros-Plugin Grasshopper an.
Natürlich bleiben die Möglichkeiten darin nicht nur auf reine Größenangaben beschränkt. Objekte kann man in gegenseitige Abhängigkeiten stellen, zum Beispiel den Quader in Bezug zu einem weiteren Quader und den Abstand Einfluss auf die Höhe beider Objekte nehmen lassen. Je weiter man sie zusammenrückt desto größer oder kleiner werden sie. Auch die Verknüpfung zu anderen Umgebungen ist in Grasshopper gegeben, so wäre es zum Beispiel denkbar – um beim Quader zu bleiben – einen mit Sensor bestückten Arduino auszulesen, die Werte in den Algorithmus aufzunehmen und schon hat man ein generatives CAD-Modell, welches auf Einflüsse der realen Umgebung reagiert. Möglichkeiten gibt es wie immer unendlich viele und das Internet ist voll davon.

Das beste an Grasshopper ist, man muss keine Programmiersprache lernen, die Oberfläche besteht aus rein grafischen Elementen und die Arbeitsprinzipien hat man nach wenigen Minuten verstanden.

Was sind Startpunkte, um sich mit dem Programm vertraut zu machen:

http://www.grasshopper3d.com/
Hier findet man neben dem Download von Grasshopper, welches selber kostenlos ist (und leider bisher nur auf Windows-Systemen läuft), auch Einführungsvideos von David Rutten, der Grasshopper zusammen mit Robert McNeel & Associates entwickelt hat, sowie zahlreiche Links zu Tutorial-Serien anderer Autoren.

http://www.food4rhino.com/
Hier findet man allerhand Add-Ons für Grasshopper, die zum Beispiel die Befehlspalette für Simulation und Animierung oder das Auslesen der seriellen Schnittstelle für die Kommunikation mit einem Arduino erweitern.

http://grasshopperprimer.com/en/index.html
Der Grasshopper Primer ist eine von ModeLab herausgegebene Zusammenfassung und super Einführung in Grasshopper. Man kann ihn sich entweder als PDF herunterladen oder auch online lesen. Dabei gibt es mittlerweile auch eine deutsche Variante.

https://www.youtube.com/channel/UCFwIL20fwOmTUkxJgOPk5Jg
Zum Thema ModeLab auch erwähnenswert ist deren Youtube-Channel. Hier gibts nicht nur eine Einführung zu Grasshopper, sondern auch zu Processing, Python Sripting und anderem.

 

Zum Schluss ein kleiner Appetizer, was Generative Gestaltung als reines Werkzeug an Möglichkeiten eröffnet:

Datenerstellung für den 3D Druck

3-D-DRUCK / VOM RECHNER IN DIE REALITÄT / CHECKLISTE:

Die Grundlage für den 3D-Druck (dem schichtweisen Aufbau von Material nach dem FDM “Fused Deposition Modeling” Verfahren) ist das CAD-Modell, das im 3D-Programm erstellt wird (z.B. Rhinoceros, Alias, Solid, usw.).

Bei der Umsetzung des CAD-Modells in die Realität gibt es einige Dinge zu beachten:

1. Kommunikation

Zu Beginn ist es vorteilhaft, jeden Modellbau vorab kurz mit den Experten zu besprechen, da es für jedes Modell unterschiedlich gute, zeit- und kostenaufwendige Strategien und Ziele gibt.

2. Datenexport: STL (+ IGS)

Das Datenexportformat für den 3-D-Druck ist üblicherweise STL (stereolithography) in mittlerer bis hoher Auflösung (Maßeinheit: mm, siehe unten).

Nach Rücksprache mit den Tutoren können Druckdaten alternativ auch im IGES-Format abgegeben werden, da dies mögliche Korrekturen des Modells erlaubt. Korrekturen von Daten sind (sowohl in Schule als auch Praxis) durchaus üblich.

3. Maßeinheiten in mm angeben

Die Maße des CAD-Modells werden prinzipiell in Millimetern (und nicht Zentimetern oder Metern) angegeben. Dies legt man (bestenfalls) vor dem ersten Modellierungsschritt in der jeweiligen 3D-Software und ggf. noch einmal beim Export in die Druckdatenformate fest.

4. kaputte Körper / Flächennormalen / „doppelte“ Geometrien

Es können prinzipiell nur GESCHLOSSENE VOLUMENMODELLE gedruckt werden! Einzelne Flächen haben kein Volumen und werden daher nicht durch das 3-D-Druck-Programm erkannt. Alle zur Erzeugung des 3-D-Objektes benötigten Hilfskonstruktionen, Hilfsflächen oder Hilfskörper stören den Datenexport des eigentlichen 3-D-Objektes. Daher Hilfsgeometrien NICHT mit exportieren oder vor dem Export löschen, so dass nur die Hülle des 3-D-Objektes übrig bleibt. Soll ein flächiges Objekt gedruckt werden, dann muss es als Volumenmodell von mindestens 1mm Dicke ausgeführt werden!

5. Teilung des Modells wegen Größe oder Hohlräumen

Die maximale Größe von 3-D-gedruckten Modellen hängt vom Bauraum des verwendeten Druckers ab. Bei uns 200x200x250 mm. Größere Modelle werden in Teilstücken ausgedruckt und nach dem Ausdruck zusammengeklebt (z.B. mit Aceton oder Cyanacrylat/Sekundenkleber).

Wichtig: ein Objekt mit Hohlräumen muss dergestalt geteilt (gedruckt) werden, so dass sich seine Hohlräume möglichst nicht mit Stützmaterial füllen. Zumindest muss die Möglichkeit bestehen, sich ergebendes Stützmaterial nach dem Druck herausbrechen zu können!

6. Realistische Erwartungen an Festigkeit, Farbe und Oberfläche

Die Druckerzeugnisse sind NICHT HOMOGEN in Aufbau oder Festigkeit! Der aus dem Extruder austretende ABS-Strang hat eine Materialstärke von 0,3 – 0,4mm und wird schichtweise aufgebaut und verbindet sich dabei mehr oder weniger gut mit der vorherigen Schicht. Durch den vertikalen Aufbau des Druckprozesses ist das Objekt in seiner vertikalen Ausrichtung wesentlich schwächer belastbar als in seiner horizontalen Ausrichtung. Aufgrund seiner Aufbauweise und der Strangstärke sind keine Details im Zehntel- bis 1mm-Bereich oder feine Texturen möglich! Die  Strangstärke und die Art des Druckaufbaus hängt vom verwendeten Drucker ab.

Wir verwenden Druckmaterial überwiegend ABS, gelegentlich auch PLA. Die Material gibt es in grundsätzlich in verschiedenen Farben, Farbwünsche können nur in Ausnahmefällen erfüllt werden da der Materialwechsel zeitaufwändig ist!

Zur Druckabwicklung bitte die Tutoren Ansprechen.

Weitere Schritte in der Druckabwicklung nach Abgabe der Druckdaten…

Nach Übergabe der Druckdaten an die Zuständigen Tutoren werden die Daten im .stl Format in einer Slicersoftware geöffnet und in GCode (d.h. Steuerbefehle für den Drucker umgewandelt).

Im Slicer sind alle technischen Parameter des jeweiligen 3D-Druckers hinterlegt (Bauraumgrösse, Anzahl und Maße der Extruder, Materialeigenschaften, Druckbettparameter, etc.) auf Grundlage dieser Daten und des eingegebenen 3D-Modells errechnet der Slicer ein Schittmodell der Druckpfade und fügt ggf. Stützmaterial ein. Im  Slicer können zusätzliche Materialspezifische Einstellungen, Druckgeschwindigkeit/Präzision und weitere Parameter feinjustiert werden. Aus dem Zusammenspiel aller Slicereinstellungen  in Verbindung mit dem Verwendeten Drucker und der 3D-Daten ergibt sich die finale Qualität des Druckergebnisses.

Wir verwenden als Slicer den KISSlicer und Cura, beide sind für den nichtkommerziellen Gebrauch als kostenlose Downloads verfügbar.