Dynamo basiert auf einer visuellen Programmiersprache. Im Unterschied zur normalen Programmiersprache werden hier keine Befehle in Form von Quellcode erstellt, sondern Blöcke visuell miteinander verbunden. Durch das Verbinden einer steigenden Anzahl von Blöcken entstehen immer komplexere Programme. Diese Blöcke werden mithilfe von Drähten miteinander verknüpft, welche gleichzeitig das interagieren der einzelnen Blöcke ermöglichen und zum anderen den logischen Ablauf des visuellen Programms festlegen. Die Anatomie eines Blocks ist in den meisten Fällen durch fünf Merkmale gekennzeichnet.
Nummer | Name | Funktion |
---|---|---|
1 | Name | Dieser Bereich betitelt den Block. Category.Name-Benennungskonvention. |
2 | Hauptbereich | Der hellgraue Bereich ist der Hauptkörper des Blocks. Durch einen Rechtsklick werden alle möglichen Optionen für den Block angezeigt. |
3 | Anschlüsse (Input / Output) | Diese Bereiche dienen als Rezeptoren für Drähte und ermöglichen es, dass Blöcke miteinander verknüpfbar sind. Sie liefern Informationen für die gegebenen Daten, sowie die Ergebnisse von Blockaktionen. |
4 | Symbol „Vergitterung“ | Stellt eine Replikationsanleitung dar. Wird dazu verwendet um die Werte, welche ein Block ausgibt, einzusehen. |
5 | Vorgabewert | Diese Werte sind standardmäßig im Input (Eingabeanschluss) hinterlegt und können nach Bedarf ausgeschaltet werden. |
Die Eingaben und Ausgaben für Blöcke werden als Anschlüsse bezeichnet. Sie fungieren als Kontakte für Drähte. Daten gelangen über die Anschlüsse auf der linken Seite in die Blöcke und strömen, nachdem der entsprechende Vorgang ausgeführt wurde, auf der rechten Seite wieder aus den Blöcken hinaus. Anschlüsse erwarten Daten eines bestimmten Typs. Das Verbinden einer Zahl wie 2,75 mit den Anschlüssen eines Point.ByCoordinates-Blocks führt beispielsweise dazu, dass ein Punkt erfolgreich erstellt wird. Wenn jedoch „Rot“ an denselben Anschluss geliefert wird, tritt ein Fehler auf.
Mit einem Doppelklick der linken Maustaste kann ein einfacher Code Block erstellt werden. In diesen kann man Text, Zahlen, Funktionen, Gleichungen, Variablen, uvm. definieren. Die andere Option ist es in der Bibliothek nach bestimmten Blöcken zu suchen. Die Bibliothek kann auf der linken Seite in Dynamo aufgerufen werden. Dort sind alle Blöcke hierarchisch organisiert. Das Suchen in den Strukturen kann manchmal umständlich wirken. Die zweite Option ist es per rechte Maustaste doppelt in den Arbeitsbereich zu klicken. Es öffnet sich die Suchfunktion in der Bibliothek. Durch ein flexibles Framework, über welches die Blöcke organisiert werden, kann die Suchfunktion die am ehesten zutreffenden Blöcke vorschlagen und anschließend in den Arbeitsbereich laden.
Drähte verbinden Blöcke miteinander um Beziehungen zu erstellen und den Ablauf eines visuellen Programms festzulegen. Die Verbindungen kann man sich wie elektrische Drähte vorstellen, die Datenimpulse von einem Objekt zum nächsten transportieren. […] Drähte verbindenden Ausgabeanschluss eines Blocks mit dem Eingabeschluss eines anderen Blocks. Diese Direktionalität legt den Datenfluss im visuellen Programm fest. Sie können die Blöcke zwar wie gewünscht im Arbeitsbereich anordnen. Da sich die Ausgabeanschlüsse jedoch auf der rechten Seite der Blöcke und die Eingabeanschlüsse auf der linken Seite befinden, wird der Programmablauf allgemein als von links nach rechts betrachtet.
Ein Draht wird wie folgt erstellt.
Nummer | Name |
---|---|
1 | Durch Linksklick auf den Output des Code Blocks, wird ein Draht iniziiert. |
2 | Draht besteht jetzt zwischen Mauszeiger und Output. |
3 | Duch klicken der linke Maustaste auf den Input des Point.ByCoordinates Blocks wurde ein Draht zwischen Blöcken erfolgreich erstellt. |
4 | Verbinden der anderen Blöcke wie dargestellt. Es entsteht ein kleines visuelles Skript für die Erstellung einer Linie zwischen Punkt(0/0/0) und Punkt(5/5/0). |
Weiter zu Beispielprojekte