Sie benötigen dazu lediglich ein Bild, Autodesk Dynamo und Autodesk Revit. Lesen Sie hier, wie Sie Dynamo zur Gestaltung von Oberflächen nutzen können.
Die Idee ist, dass ein beliebiges Bild genutzt wird, um anhand des Farbwertes kreisrunde Löcher verschiedener Durchmesser in ein Panel zu bohren. Aufgrund des dadurch entstandenen Lichtdurchlasses sollte anschließend das Bild schematisch im Panel zu sehen sein.
Zur Erstellung des Skriptes wurden folgende Schritte vollzogen:
1. Das Auslesen des Bildes
Der „File Path“ Block bietet Ihnen die Möglichkeit einen Dateipfad anzugeben, diesen Block können Sie demnach nutzen, um den Pfad zum auszulesenden Bild auszugeben.
Nutzen Sie anschließend den „File.FromReadPath“- und den „Image.ReadFromFile“ Block um das Bild auszulesen.
Mit einem „Watch Image Block“ können Sie sich das Bild anzeigen lassen.
2. Die Analyse des Bildes
a. Das Auslesen der Grundgeometrie des Bildes
Lesen Sie zunächst mit dem Block „Image.Dimensions“ die Höhe und die Breite des Bildes aus. Diese wird später dazu genutzt werden, um zum einen die Größe des Panels zu ermitteln und zum anderen den Farbwert jedes einzelnen Pixels.
Nach Ermittlung der Dimensionierung des Bildes können die ermittelten Werte zur Erstellung eines Punktrasters genutzt werden.
b. Das Auslesen der Farbwerte des Bildes
Mit Hilfe des „Image.Pixels“ Blockes können Sie die Farbwerte jedes Pixels auslesen lassen. Grauwerte können durch einen Durchschnittswert aus dem Rot-, Grün- und Blauanteils des Farbwertes errechnet werden. Die errechneten Farbwerte können zwischen 0 und 255 liegen, da jedoch die Bohrungen keiner sein sollen, bietet sich die Nutzung eines „List.MapRange“ Blockes an. Mit diesem Block kann ein neuer Minimum- und ein neuer Maximumwert festgelegt werden. Die errechneten Farbwerte werden mit den neu festgelegten Werten in Relation gesetzt.
3. Verschiebung und Spiegelung der Geometrie (Optional)
Um im späteren Verlauf besser mit dem ermittelten Festkörper arbeiten zu können, sollten Sie diesen ggf. in den Ursprung verschieben und so Drehen bzw. Spiegel, dass die Ausrichtung passt. Nutzen Sie hierfür den „Geometry.Translate“- , „Geometry.Rotate“- bzw. den „Geometry.Mirror“-Block.
4. Erstellung von Geometrie anhand der analysierten Eigenschaften des Bildes
Erzeugen Sie zunächst Kreise, indem Sie die Punkte des Punktrasters und die errechneten Radien in einen „Circle.ByCenterPointRadius“ Block übergeben. Achten Sie dabei darauf, dass die Listen-Strukturen gleich sind. Passen Sie diese ggf. mittels „List.Flatten“ oder „List.Transpose“ an.
Erzeugen Sie zudem ein Rechteck zur Beschreibung des Panels indem Sie z. B. anhand der Dimensionierung Eckpunkte festlegen und den „Polygon.ByPoints“ Block nutzen.
Erzeugen Sie mit Hilfe des „Solid.BySweep“ Blockes zum einen Quader und zum anderen einen Zylinder bei jedem errechneten Kreis. Achten Sie dabei darauf, dass die errechneten Kreise innerhalb des Rechteckes liegen.
Nutzen Sie anschließend den „Solid.DifferentAll“ Block um die erstellten Festkörper miteinander zu verscheiden. Als Ergebnis erhalten Sie das fertige Panel.
5. Übertragung der Geometrie nach Revit (Optional)
Um die ermittelte Geometrie in Revit nutzen zu können, sollten Sie diese mit den entsprechenden Blöcken nach Revit übertragen. Nutzen Sie hierfür beispielsweise den „ImportInstance.ByGeometry“- oder den „ModelCurve.ByCurve“-Block.
Das Skript sieht am Ende so aus:
Das fertige Panel könnte beispielsweise so aussehen:
Ein weiteres Beispiel sehen Sie im Titelbild.
Hinweise:
Aus bisher ungeklärter Ursache wird die Geometrie mit dem „ImportInstance.ByGeometry“-Block nicht immer ordnungsgemäß nach Revit übertragen. Sollte die Übertragung nicht erfolgreich sein, können Sie sich mit der Übertragung der Modellkurven zumindest teilweise behelfen.
Beachten Sie zudem, dass in Abhängigkeit der Bildgröße die Berechnung mehrere Minuten in Anspruch nehmen kann.
Zudem sollten Sie verlustfreie Bildformate, wie z. B. PNGs, verwenden, da sonst unerwünschte Rauschwerte vorkommen könnten.
Das Skript wurde mit Dynamo 0.8.2. erstellt und sollte möglichst auch mit dieser Version ausgeführt werden.
Möchten Sie das vollständige Dynamo-Skript lesen? Füllen Sie einfach kurz das folgende Formular aus und schon können Sie es downloaden!
PS: Keine Sorge, Sie melden sich nicht für einen Newsletter oder ähnliches an. Es ist ausschließlich für den Dateidownload 🙂