Part: Affetta in composto
Part Slice |
Posizione nel menu |
---|
Part → Split → Slice |
Ambiente |
Part |
Avvio veloce |
Nessuno |
Introdotto nella versione |
- |
Vedere anche |
Frammenti Booleani, Part XOR, Join, Booleane |
Descrizione
Strumento per dividere le forme intersecandole con altre forme. Ad esempio, con un cubo e un piano, viene creato un composto di due solidi.
(Nella figura sopra, i pezzi sono stati separati manualmente dopo l'operazione, per rendere visibili le singole parti)
La forma in uscita occupa lo stesso spazio dell'originale, ma è divisa dove interseca le altre forme. I singoli pezzi sono raggruppati in un composto (o in un compsolid), quindi sembra che l'oggetto sia ancora un unico pezzo. Per disporre dei singoli pezzi è necessario separare gli elementi del composto. I singoli pezzi possono essere estratti dividendo il composto con Scomponi.
Lo strumento dispone di tre modalità: "Standard", "Split", e "CompSolid".
Le modalità "Standard" e "Split" differiscono per l'azione dello strumento su wire, shell e compsolid: se si usa "Split", essi sono separati; se si usa "Standard", essi sono mantenuti insieme (si ottengono dei segmenti in più).
La struttura del composto nelle modalità "Split" e "Standard" segue la struttura dei composti della forma da suddividere.
In modalità "CompSolid", il risultato è un compsolid (o un composto di compsolid, se i solidi risultanti formano più di un'isola di connessione). Un compsolid è formato da un gruppo di solidi collegati dalle facce, esse si rapportano ai solidi come le polilinee (wire) si rapportano ai bordi (edge), e i gusci (shell) si rapportano alle facce, il nome è probabilmente l'abbreviazione di "solido composito"
L'azione complessiva dello strumento è molto simile a quella di Frammenti Booleani, tranne che il risultato contiene solo i pezzi dalla prima forma.
Uso
- Selezionare prima l'oggetto da dividere, e poi alcuni oggetti con cui dividerlo.
L'ordine di selezione è importante. I composti con auto-intersezioni non sono ammessi (le auto-intersezioni a volte possono essere individuate facendo passare il composto attraverso lo strumento Frammenti Booleani) - Avviare il comando Parte Slice.
Viene creato un oggetto parametrico Slice. Vengono nascosti gli oggetti originali , e nella vista 3D viene mostrato il risultato dell'intersezione.
Proprietà
Slice
- DatiBase: L'oggetto da dividere.
- DatiTools: Elenco di oggetti con cui dividere. (da FreeCAD v0.17.8053, questa proprietà non viene visualizzata nell'editor delle proprietà, e si può accedere solo tramite Python).
- DatiMode: "Standard", "Split", o "CompSolid". "Split" è il default. Standard e Split differiscono per l'azione dello strumento sul'aggregazione delle forme; se "Split", essi sono separati; altrimenti essi sono mantenuti insieme (si ottengono dei segmenti in più).
- DatiTolerance: Valore di "confusione". Questa è una tolleranza supplementare da applicare durante la ricerca delle intersezioni, oltre alle tolleranze memorizzate nelle forme in ingresso.
Esempio: creare un puzzle
- Passare nell'ambiente Schizzo, creare un nuovo schizzo. Disegnare un rettangolo che delimita la forma complessiva del puzzle. Chiudere lo schizzo.
- Passare nell'ambiente Part. Selezionare lo schizzo, e scegliere Part -> Crea faccia da schizzo (nel menu).
- Passare nell'ambiente Schizzo, e creare un altro schizzo sullo stesso piano. Utilizzando lo strumento polilinea disegnare le linee che divideranno il puzzle in pezzi.
- Passare nell'ambiente Part. Selezionare lo schizzo divisore, e applicare Frammenti Booleani. Questo inserisce i vertici nel punto in cui le linee dello schizzo divisore si intersecano. Per poter fare il passo successivo del lavoro è indispensabile avere questi vertici.
- Selezionare la faccia rettangolare, ed i BooleanFragments dello schizzo divisore, e applicare Parte Split.
- Passare nell'ambiente Draft, e applicare Scomponi al risultato. Nella struttura del documento si ottengono tutti i pezzi come "Face00X", che possono essere spostati in modo indipendente. Fatto!
Script
The tool can by used in macros and from the python console by using the following function:
BOPTools.SplitFeatures.makeSlice(name)
- Creates an empty Slice feature. The 'Base' and 'Tools' properties must be assigned explicitly, afterwards.
- Returns the newly created object.
Slice can also be applied to plain shapes, without the need to have a document object, via:
Part.BOPTools.SplitAPI.slice(base_shape, tool_shapes, mode, tolerance = 0.0)
This can be useful for making custom Python scripted features.
Example:
import Part
j = Part.BOPTools.SplitFeatures.makeSlice(name= 'Slice')
j.Base = FreeCADGui.Selection.getSelection()[0]
j.Tools = FreeCADGui.Selection.getSelection()[1:]
The tool itself is implemented in Python, see /Mod/Part/BOPTools/SplitFeatures.py under where FreeCAD is installed.
Version
The tool was introduced in FreeCAD v0.17.8053. FreeCAD needs to be compiled with OCC 6.9.0 or later; otherwise, the tool is unavailable.