Part Slice/de

Beschreibung
Werkzeug zum Teilen von Formen durch Überschneidung mit anderen Formen. Für eine Box und eine Ebene wird beispielsweise ein Verbund aus zwei Körpern erstellt.



(Auf dem Bild oben wurden die Stücke anschließend manuell auseinandergeschoben, um das Schneiden zu verdeutlichen.)

Es gibt zwei Befehle, um eine Form zu schneiden: Slice to compound und Slice apart. Beide erstellen eine parametrische Slice-Funktion, mit der die aufgeschnittenen Teile in einen Verbund gebracht werden, aber "Slice apart" verteilt den resultierenden Verbund in separate Objekte. "Slice to compound" ist vollständig parametrisch und verursacht keine Probleme, wenn sich die Anzahl der Teile ändert. "Slice apart" aktualisiert die Anzahl der Objekte nicht, wenn sich die Anzahl der Teile ändert.

Die Ausgabeform nimmt den gleichen Raum wie das Original ein. Es ist jedoch dort geteilt, wo es sich mit der anderen Form schneidet. Die getrennten Teile werden in einen Verbund (oder Compsolid) eingefügt, sodass das Objekt scheinbar in einem Stück verbleibt. Sie müssen den Verbund verteilen (explodieren), um die einzelnen Teile zu erhalten. Wenn Sie auf die einzelnen Teile parametrisch zugreifen möchten, können Sie Part CompoundFilter für diesen Zweck verwenden. Für einen schnellen, nicht parametrischen Zugriff verwenden Sie Draft Downgrade.

Das Tool verfügt über drei Modi: "Standard", "Split" und "CompSolid".

"Standard" und "Split" unterscheiden sich durch die Wirkung des Werkzeugs auf Liniezüge (wires), Hüllen (shells) und Compsolids: Bei "Split" werden diese getrennt; wenn "Standard", werden sie zusammengehalten (zusätzliche Segmente entstehen).

Die Compounding-Struktur in den Modi "Standard" und "Split" folgt der Compounding-Struktur der zu schneidenden Form.

Im "CompSolid"-Modus ist die Ausgabe ein Compsolid (oder eines Compsolids-Verbunds, wenn die resultierenden Festkörper mehr als eine Insel der Verbundenheit bilden). Compsolid ist ein Satz von Körpern, die durch Flächen verbunden sind; sie sind mit Volumenkörpern verwandt wie Linienzüge mit Kanten und Hüllen mit Flächen. Der Name ist wahrscheinlich eine verkürzter Ausdruck für "composite solid".

Die Gesamtaktion des Werkzeugs ist sehr ähnlich Part BooleanFragments, mit der Ausnahme, dass nur die Teile der ersten Form im Ergebnis enthalten sind.

Verwendung
Die Reihenfolge der Auswahl ist wichtig. Compounds mit Überschneidungen sind nicht zulässig (Überschneidungen können manchmal berücksichtigt werden, indem der Verbund durch BooleanFragments geleitet wird).
 * 1) Wählen Sie zuerst das zu schneidende Objekt und dann einige Objekte aus, mit denen geschnitten werden soll.
 * 1) Rufen Sie den Part Slice-Befehl auf.


 * 1) Hinweis: Die zu schneidenden Objekte müssen das zu schneidende Objekt vollständig trennen. Daher kann ein Würfel nicht mit einem Draht geschnitten werden, sondern beispielsweise mit einer Ebene, die aus einem extrudierten Linienzug stammt.

Ein parametrisches Slice-Objekt wird erstellt. Die Originalobjekte werden ausgeblendet und das Ergebnis des Schnitts wird in der 3D-Ansicht angezeigt.

Baumstruktur von Slice Apart
Mit dem Befehl Slice Apart wird mehr als nur das in Scheiben geschnittene Objekt erstellt. Im folgenden Beispiel wird ein Würfel von einer Fläche geschnitten.

Das Slice wird erstellt, und für jedes Stück wird ein Part CompoundFilter erstellt. Das gleiche Slice wird also mehrmals unter jedem CompoundFilter angezeigt. Alle diese CompoundFilters sind in einem Verbund vereint.



Eigenschaften

 * : Zu schneidendes Objekt.
 * : Liste der schneidenden Objekte. (bis v0.17.8053 wird diese Eigenschaft nicht im Eigenschaftseditor angezeigt und ist nur via Python-Script zugänglich).
 * : "Standard", "Split" oder "CompSolid". "Split" ist Vorgabe. Standard und Split unterscheiden sich durch die Aktion des Werkzeugs bei Aggregationstypen: Wenn Split, werden diese getrennt, andernfalls werden sie zusammengehalten (zusätzliche Segmente erhalten).
 * : Wert für "Unschärfe". Dies ist eine zusätzliche Toleranz, die bei der Suche nach Schnittpunkten angewendet wird, zusätzlich zu den in den Eingabeformen gespeicherten Toleranzen.

̈# Noteː Properties are accessible on the slices inner object, not on the result level.

Beispiel: Erstellen eines Puzzle

 * 1) Wechseln Sie zum Sketch-Arbeitsbereich, erstellen Sie eine neue Skizze. Zeichnen Sie ein Rechteck, das die Gesamtform des Puzzles darstellt. Schließen Sie die Skizze.
 * 1) Wechseln Sie zum Part-Arbeitsbereich. Wählen Sie die Skizze aus und wählen Sie Formteil → Erstelle Fläche anhand von Kantenzügen (im Menü).
 * 1) Wechseln Sie zum Sketch-Arbeitsbereich, erstellen Sie eine neue Skizze auf derselben Ebene. Zeichnen Sie mit dem Polylinien-Werkzeug die Linien, welche das Puzzle in Stücke aufteilen sollen.
 * 1) Wechseln Sie zur Part-Arbeitsbereich. Wählen Sie die Splitterskizze (Puzzleverlauf) aus und wenden Sie Part Boolean Fragmente an. Dadurch werden Scheitelpunkte eingefügt, an denen sich die Linien der Splitterskizze kreuzen. Sie sind für den nächsten Arbeitsschritt unabdingbar.
 * 1) Wählen Sie die rechteckige Fläche und alle Fragmente der Splitterskizze aus und wenden Sie Formteil → Split → Slice to Compound an.
 * 1) Verwenden Sie Formteil → Compound → Verbundteile extrahieren auf der aufgeschnittenen Fläche, um den von Part Slice hergestellten Verbund in einzelne Teile zu zerlegen.

Die Schritte 5 und 6 sind in Formteil → Split → SliceApart zusammengefaßt.

Scriptgesteuert
Dieses Werkzeug kann in Makros ebenso wie aus der Python-Konsole heraus durch folgende Funktion angesprochen werden: BOPTools.SplitFeatures.makeSlice(name)


 * Erstellt eine leere Slice-Funktion. Die Eigenschaften 'Base' und 'Tools' müssen anschließend explizit vergeben werden.
 * Gibt das neu erstellte Objekt zurück.

Slice kann auch auf einfache Formen angewendet werden, ohne dass ein Dokumentobjekt erforderlich ist, via: BOPTools.SplitAPI.slice(base_shape, tool_shapes, mode, tolerance = 0.0) Dies kann nützlich sein, um benutzerdefinierte Python-Skriptfunktionen zu erstellen.

Beispiel:

Das Tool selbst ist in Python implementiert, siehe /Mod/Part/BOPTools/SplitFeatures.py unter dem Ort, an dem FreeCAD installiert ist.

Version
Das Tool wurde in FreeCAD v0.17.8053 eingeführt. FreeCAD muss mit OCC 6.9.0 oder höher kompiliert werden. Andernfalls ist das Tool nicht verfügbar.