Draft: Lega facce

From FreeCAD Documentation
Revision as of 19:59, 4 September 2021 by Heda (talk | contribs)

Lega facce

Posizione nel menu
Draft → Lega facce
Ambiente
Draft, Arch
Avvio veloce
F F
Introdotto nella versione
0.14
Vedere anche
Cubo di Part, Muro di Arch

Descrizione

Lo strumento Lega facce (Facebinder) crea un oggetto superficie dalle facce selezionate di un oggetto solido. È parametrico, il che significa che se si modifica l'oggetto originale, Lega facce si aggiorna di conseguenza. Se si sposta e ruota il Lega facce, esso rimane collegato ale facce originali.

Può essere usato per creare un'estrusione da una collezione di facce prese da altri oggetti. Un tipico utilizzo è nella progettazione architettonica per costruire un oggetto che copre diverse pareti, ad esempio una carta da parati o un intonaco.

Facebinder creato dalle facce di pareti solide

Utilizzo

  1. Sceglere una faccia o tenere premuto Ctrl e sceglere diverse facce da oggetti solidi.
  2. Premere il pulsante Lega facce, o premere i tasti F e poi F.

Proprietà

Dati

  • DatiExtrusion: specifica uno spessore di estrusione da applicare a tutte le facce della forma.
  • DatiRemove Splitter: se è true cerca di fondere le intersezioni interne del Facebinder quando viene estruso.
  • DatiSew: se è true tenta di eseguire un'operazione di cucitura topologica sul Facebinder quando viene estruso.
  • DatiOffset: specifica una distanza di offset da applicare tra le facce legate e le facce originali, prima dell'estrusione.
  • DatiArea: l'area totale di queste facce legate.

See also: Property editor.

A Draft Facebinder object is derived from a Part Feature object and inherits all its properties. It also has the following additional properties:

Data

Draft

  • DatiArea (Area): (read-only) specifies the total area of the linked faces of the facebinder.
  • DatiExtrusion (Distance): specifies the extrusion thickness of the facebinder.
  • DatiFaces (LinkSubList): specifies the linked faces of the facebinder.
  • DatiOffset (Distance): specifies an offset distance to apply between the facebinder and the original faces, prior to extrusion.
  • DatiRemove Splitter (Bool): Specifies whether to remove splitter lines that divide co-planar faces of the facebinder.
  • DatiSew (Bool): Specifies whether to perform a topological sewing operation on the facebinder.

View

Draft

Vista

  • VistaPattern: specifica un modello di Campitura con cui riempire la faccia della forma. Questa proprietà funziona solo se VistaDisplay Mode è "Flat Lines".
  • VistaPattern Size: specifica la dimensione della Campitura.

Scripting

Lo strumento Lega facce può essere utilizzato nelle macro e dalla console Python tramite la seguente funzione:

facebinder = make_facebinder(selectionset)
  • Crea un oggetto Facebinder dalla selectionset, che è una lista di SelectionObject come quelli restituiti da FreeCADGui.Selection.getSelectionEx().
    • selectionset può anche essere un PropertyLinkSubList.

Un PropertyLinkSubList è un elenco di tuple; ogni tupla contiene come primo elemento un oggetto e come secondo elemento un elenco (o tupla) di stringhe; queste stringhe indicano i nomi dei sotto-elementi (facce) di quell'oggetto.

PropertyLinkSubList = [tuple1, tuple2, tuple3, ...]
PropertyLinkSubList = [(object1, list1), (object2, list2), (object3, list3), ...]
PropertyLinkSubList = [(object1, ['Face1', 'Face4', 'Face6']), ...]
PropertyLinkSubList = [(object1, ('Face1', 'Face4', 'Face6')), ...]

Lo spessore di Facebinder può essere aggiunto sovrascrivendo il suo attributo Extrusion; il valore è inserito in millimetri.

Il posizionamento di Facebinder può essere cambiato sovrascrivendo il suo attributo Placement, o sovrascrivendo singolarmente i suoi attributi Placement.Base e Placement.Rotation.

Esempio:

import FreeCAD as App
import FreeCADGui as Gui
import Draft

doc = App.newDocument()

# Insert a solid box
box = doc.addObject("Part::Box", "Box")
box.Length = 2300
box.Width = 800
box.Height = 1000

# selection = Gui.Selection.getSelectionEx()
selection = [(box, ("Face1", "Face6"))]
facebinder = Draft.make_facebinder(selection)
facebinder.Extrusion = 50

doc.recompute()

facebinder.Placement.Base = App.Vector(1000, -1000, 100)
facebinder.ViewObject.ShapeColor = (0.99, 0.99, 0.4)

doc.recompute()