|
Posizione nel menu |
---|
Modifiche → Clona |
Ambiente |
Draft |
Avvio veloce |
C L |
Introdotto nella versione |
- |
Vedere anche |
Draft Scala |
Il comando Clona crea copie collegate, cloni, degli oggetti selezionati. La forma di un clone è parametrica, si aggiornerà se il suo oggetto sorgente cambia. Ma un clone ha la propria posizione, rotazione e scala e le proprie Proprietà Vista. Per gli oggetti BIM il comando crea un tipo speciale di clone: un clone di Arch.
Il comando può essere utilizzato su oggetti 2D creati con Draft o Sketcher, ma anche su molti oggetti 3D come quelli creati con Part, PartDesign o BIM. I cloni di oggetti 2D possono essere utilizzati in Corpi di PartDesign.
Clone accanto al suo oggetto sorgente
Vedere anche: Editor delle proprietà.
Un oggetto creato con il comando Draft Clone è derivato da un oggetto Part Part2DObject, un oggetto Part Feature o, se viene creato un Arch Clone, dal tipo di oggetto dell'oggetto sorgente. Eredita tutte le proprietà da quell'oggetto. Un clone derivato da uno dei primi due oggetti ha anche le seguenti proprietà aggiuntive:
Draft
Bool
): specifica se le forme sovrapposte nel clone sono fuse o meno.LinkListGlobal
): specifica gli oggetti che vengono clonati.Vector
): specifica i fattori di scala X, Y e Z.
Vedere anche: Autogenerated API documentation e Script di base per FreeCAD.
Per creare un clone usa il metodo make_clone
(disponibile dalla versione 0.19) del modulo Draft. Questo metodo sostituisce il metodo deprecato clone
.
cloned_object = make_clone(obj, delta=None, forcedraft=False)
obj
contiene gli oggetti da clonare. È un singolo oggetto o un elenco di oggetti.delta
è il vettore spostamento da applicare al clone.forcedraft
è False
e obj
contiene un singolo oggetto BIM viene creato un Arch Clone. Imposta forcedraft
su True
per creare invece un Draft Clone.cloned_object
viene restituito con l'oggetto clone.Esempio:
import FreeCAD as App
import Draft
doc = App.newDocument()
place = App.Placement(App.Vector(1000, 0, 0), App.Rotation())
polygon1 = Draft.make_polygon(3, 750)
polygon2 = Draft.make_polygon(5, 750, placement=place)
vector = App.Vector(2600, 500, 0)
cloned_object = Draft.clone([polygon1, polygon2], delta=vector)
cloned_object.Fuse = True
doc.recompute()