Part Slice/it: Difference between revisions
Renatorivo (talk | contribs) No edit summary |
(Updating to match new version of source page) |
||
Line 51: | Line 51: | ||
Slice può essere applicato anche a forme piane, senza la necessità di avere un document object, attraverso: |
Slice può essere applicato anche a forme piane, senza la necessità di avere un document object, attraverso: |
||
''' |
'''BOPTools.SplitAPI.slice(base_shape, tool_shapes, mode, tolerance = 0.0)''' |
||
Questo può essere utile per creare delle funzioni personalizzate con script Python. |
Questo può essere utile per creare delle funzioni personalizzate con script Python. |
||
Line 57: | Line 57: | ||
Esempio: |
Esempio: |
||
{{code|code= |
{{code|code= |
||
import |
import BOPTools.SplitFeatures |
||
j = |
j = BOPTools.SplitFeatures.makeSlice(name= 'Slice') |
||
j.Base = FreeCADGui.Selection.getSelection()[0] |
j.Base = FreeCADGui.Selection.getSelection()[0] |
||
j.Tools = FreeCADGui.Selection.getSelection()[1:] |
j.Tools = FreeCADGui.Selection.getSelection()[1:] |
Revision as of 19:03, 18 September 2018
Part Slice |
Posizione nel menu |
---|
Part → Dividi → Affetta |
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. Se si desidera accedere ai singoli pezzi in modo parametrico, è possibile utilizzare Filtra composto di Part. Per un utilizzo rapido e non parametrico usare 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 sull'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
Lo strumento può essere utilizzato nelle macro e dalla console python utilizzando la seguente funzione:
BOPTools.SplitFeatures.makeSlice(name)
- Crea una funzione Slice vuota. Le proprietà 'Objects' devono essere assegnate in modo esplicito, in seguito.
- Restituisce l'oggetto appena creato.
Slice può essere applicato anche a forme piane, senza la necessità di avere un document object, attraverso:
BOPTools.SplitAPI.slice(base_shape, tool_shapes, mode, tolerance = 0.0)
Questo può essere utile per creare delle funzioni personalizzate con script Python.
Esempio:
import BOPTools.SplitFeatures
j = BOPTools.SplitFeatures.makeSlice(name= 'Slice')
j.Base = FreeCADGui.Selection.getSelection()[0]
j.Tools = FreeCADGui.Selection.getSelection()[1:]
Lo strumento stesso è implementato in Python, vedere /Mod/Part/BOPTools/SplitFeatures.py nell'installazione di FreeCAD.
Versione
Lo strumento è stato introdotto in FreeCAD v0.17.8053. FreeCAD deve essere compilato con OCC 6.9.0 o superiore; altrimenti lo strumento non è disponibile.