Gruppo

From FreeCAD Documentation
Revision as of 07:05, 21 February 2021 by SandroDN (talk | contribs)

Crea Gruppo

Posizione nel menu
Vista ad albero → Cliccare col destro sul nome del documento → Crea gruppo
Ambiente
Tutti
Avvio veloce
Nessuno
Introdotto nella versione
-
Vedere anche
Parte, Seleziona gruppo, Aggiungi al gruppo

Descrizione

Un Gruppo (chiamato internamente App DocumentObjectGroup) è un contenitore per scopi generici che consente di raggruppare diversi tipi di oggetti nella vista ad albero, indipendentemente dal tipo di dati. È usato come una semplice cartella per classificare e organizzare gli oggetti nel modello, al fine di mantenere una struttura logica. I gruppi possono essere nidificati all'interno di altri gruppi.

Lo strumento Gruppo non è definito da un particolare ambiente di lavoro, ma dal sistema base; di conseguenza lo si ritrova nella barra degli strumenti struttura, che è disponibile in tutti gli ambienti di lavoro.

Per raggruppare gli oggetti 3D come una singola unità, con l'intenzione di creare degli assiemi, utilizzare Parte.

Vari elementi all'interno di Gruppo nella vista ad albero.

Utilizzo

  1. Fare clic sul nome del documento nella vista ad albero, aprire il menu di scelta rapida (clic con il tasto destro) e scegliere Crea gruppo.
  2. In alternativa premere il pulsante Gruppo nella barra degli strumenti della struttura. Viene creato un gruppo vuoto.
  3. Per aggiungere degli oggetti a un gruppo, selezionarli nella vista ad albero, quindi trascinarli e rilasciarli sul gruppo.
  4. Per rimuovere degli oggetti da un gruppo, trascinarli fuori dal gruppo, sull'etichetta del documento nella parte superiore della vista ad albero.

Note

  • L'oggetto Gruppo non influisce sulle posizioni nella Vista 3D degli elementi che contiene; è essenzialmente solo una cartella che viene utilizzata per mantenere organizzata la vista ad albero.
  • Il Gruppo può anche essere creato nella Python console e sotto-classificato per creare speciali "gruppi" come indicato nella sezione Script.

Proprietà

Un Gruppo è internamente chiamato App DocumentObjectGroup (App::DocumentObjectGroup class), è derivato dall'oggetto base App DocumentObject (App::DocumentObject class), pertanto condivide tutte le proprietà di quest'ultimo.

Oltre alle proprietà descritte in App FeaturePython, che è l'istanza più elementare di un App DocumentObject, l'App DocumentObjectGroup ha la proprietà DatiGroup.

Queste sono le proprietà disponibili nel editore delle proprietà. Le proprietà nascoste possono essere mostrate usando il comando Mostra tutto nel menu contestuale dell'editore delle proprietà.

Dati

Base

  • DatiLabel (String): il nome modificabile dall'utente di questo oggetto, è una stringa UTF8 arbitraria.
  • DatiGroup (LinkList): un elenco di oggetti referenziati. Di default, è vuoto [].

Proprietà dati nascoste

  • DatiProxy (PythonObject): una classe personalizzata associata a questo oggetto. Questa esiste solo per la versione Python. Vedere Script.

Vista

Base

Vedere App FeaturePython per le proprietà di base della vista.

Proprietà vista nascoste

  • VistaProxy (PythonObject): una classe del provider di visualizzazione personalizzata associata a questo oggetto. Questo esiste solo per la versione Python. Vedere Script.

Eredità

Un Gruppo è formalmente un'istanza della classe App::DocumentObjectGroup, il cui parente è App DocumentObject (App::DocumentObject class), e viene incrementato con un'estensione del Gruppo.

Schema semplificato delle relazioni tra gli oggetti principali del programma. La classe App::DocumentObjectGroup è un semplice contenitore che utilizza l'estensione Gruppo per poter contenere qualsiasi tipo di oggetto.

Script

Vedere anche: Script di base per FreeCAD, e script di oggetti.

Vedi Funzione Part per le informazioni generali su come aggiungere oggetti al documento.

Un Gruppo (App DocumentObjectGroup) è creato con il metodo del documento addObject(). Una volta che un Gruppo esiste, altri oggetti possono essere aggiunti ad esso con i metodi addObject() o addObjects().

import FreeCAD as App

doc = App.newDocument()
obj = App.ActiveDocument.addObject("App::DocumentObjectGroup", "Group")

bod1 = App.ActiveDocument.addObject("PartDesign::Body", "Body")
bod2 = App.ActiveDocument.addObject("Part::Box", "Box")

obj.addObjects([bod1, bod2])
App.ActiveDocument.recompute()

Questo App::DocumentObjectGroup di base non ha un oggetto Proxy, quindi non può essere pienamente utilizzato per la sotto-classe.

Pertanto, per la sottoclasse Python, è necessario creare l'oggetto App::DocumentObjectGroupPython.

import FreeCAD as App

doc = App.newDocument()
obj = App.ActiveDocument.addObject("App::DocumentObjectGroupPython", "Name")
obj.Label = "Custom label"

Per esempio, un Analisi FEM è un oggetto App::DocumentObjectGroupPython con un'icona personalizzata e proprietà aggiuntive.

Link