BOSL2: diff() – Löcher und Aussparungen
Du kennst bereits difference() aus Kombination von Objekten. Dabei ist die Reihenfolge entscheidend: Das erste Objekt bleibt, alle weiteren werden abgezogen. Das kann bei komplexen Modellen schnell unübersichtlich werden.
BOSL2 bietet eine einfachere Alternative: diff(). Dabei markierst du Objekte mit Tags (Etiketten), die bestimmen, ob ein Objekt hinzugefügt oder entfernt wird.
Syntax
diff() {
Grundkörper();
tag("remove") Abzugskörper();
}
Das Tag "remove" markiert ein Objekt zum Abziehen. Die Reihenfolge im Block spielt keine Rolle mehr.
Vergleich: difference() vs. diff()
▶Binärdateien
Erstelle mit diff() einen Quader mit drei Löchern: je eines von oben, von vorne und von der Seite.
▶Binärdateien
Kombination mit position()
diff() und position() lassen sich kombinieren – so kannst du Aussparungen präzise platzieren:
▶Binärdateien
Modelliere eine einfache Dose (Zylinder) mit einem Deckel (flacher Quader mit Loch in der Mitte). Nutze diff() für das Loch im Deckel.