Zusammenfassung
Nachdem ich den Mars Exploration Rover betrachtet habe:http://www.thingiverse.com/thing:10057Ich wurde inspiriert, etwas in OpenScad zu tun, was ich schon lange tun wollte.
Dieses Ding ist eine Technik zur Darstellung und Rendering Ihrer Modelle unter Verwendung einiger Arrays und 'Rekursion'.
Es werden nur ein paar Routinen eingeführt, aber mit ihnen kann man im Grunde so etwas wie Folgendes tun:
CSG([OP_UNION, [
[PRIM_CYLINDER, [2,2, 8+15+3], zero(), zero()],
[PRIM_CYLINDER, [4,4, 3], zero(), zero()],
]];
oder, wenn du nur einen einfachen Teil machen willst;
place_prim([PRIM_CYLINDER, [2,2, 8+15+3],zero(), zero()]);
Das ist nicht weltbewegend, aber es ist nur ein weiteres Werkzeug im Arsenal der Textmodellierung. Da die Modelle sowie die Operationen an Teilen einfach als Zahlenarrays dargestellt werden, können Sie Funktionen verwenden, um diese zu generieren, oder Konkatenationen davon.
Es ist ziemlich interessant, dass der Code anfängt, wie LISP oder andere arraybasierte Varianten auszusehen.
Jedenfalls ist es eine weitere Technik.
Die Datei openscad_vm.scad enthält die eigentlichen Gehirne. Es gibt eine Datei 'test_openscad_vm.scad', die einige Testfälle aller Routinen zeigt. Die Datei 'mars_rover_vm.scad' nimmt einige der interessanten Teile aus dem inspirierenden Mars-Rover-Projekt und verwandelt sie in Teile, die für die Verwendung in der openscad VM geeignet sind. Das komplexeste Objekt 'Kamera' zeigt
Anweisungen
1) Laden Sie die Datei openscad_vm.scad in Ihre Arbeitsumgebung herunter.
2) Konstruiere ein Objekt, indem du viele []'s in deinem Code verwendest.
3) Freut euch!
Hinweis: Da diese Version weder Polyeder noch 2D-Primitive unterstützt, ist sie etwas eingeschränkt. Aber diese sind ziemlich einfach hinzuzufügen.
Ein sehr interessanter Nebeneffekt ist, dass du die OpenScad_VM-Repräsentation eines Objekts als Transportmechanismus verwenden kannst!! Diese Erkenntnis setzt sich bei mir durch und vereinfacht mein Leben.
Tags
Source du modèle
