Std Part/it: Difference between revisions

From FreeCAD Documentation
(Created page with "Non si può creare uno script {{incode|App::Part}}. Tuttavia, è possibile aggiungere un ruolo {{incode|App::Part}} a uno script {{incode|Part::FeaturePython}} usando il segue...")
(Updating to match new version of source page)
 
(27 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<languages/>
<languages/>

{{Docnav/it
{{Docnav/it
|
|
Line 18: Line 19:
}}
}}


<span id="Description"></span>
==Descrizione==
==Descrizione==


Una [[File:Std_Part.svg|16px]] [[Std_Part/it|Parte]] (internamente chiamata [[App_Part/it|App Part]]) è un contenitore per scopi generali che contiene un gruppo di oggetti in modo che essi possano essere spostati in blocco come una singola unità nella vista 3D.
Una [[File:Std_Part.svg|16px]] [[Std_Part/it|Parte]] (internamente chiamata [[App_Part/it|App Part]]) è un contenitore per scopi generali che contiene un gruppo di oggetti in modo che essi possano essere spostati in blocco come una singola unità nella vista 3D.


L'elemento Parte è stato sviluppato per essere l'elemento di base per creare [[assembly/it|assemblaggi]] meccanici. In particolare, ha lo scopo di disporre oggetti che hanno una [[Part_TopoShape/it|forma topologica]], come le [[Part_Primitives/it|primitive di Part]], i [[PartDesign_Body/it|corpi di PartDesign]], e altre [[Part_Feature/it|funzioni di Part]]. Parte fornisce un [[#Origin/it|Oggetto Origine]] con assi X, Y e Z locali e piani standard; questa origine viene utilizzata come riferimento per posizionare e collegare quegli altri oggetti. Inoltre, le Parti possono essere nidificate all'interno di altre Parti per creare un grande assieme da sotto-assiemi più piccoli.
L'elemento Parte è stato sviluppato per essere l'elemento di base per creare [[assembly/it|assemblaggi]] meccanici. In particolare, ha lo scopo di disporre oggetti che hanno una [[Part_TopoShape/it|forma topologica]], come le [[Part_Primitives/it|primitive di Part]], i [[PartDesign_Body/it|corpi di PartDesign]], e altre [[Part_Feature/it|funzioni di Part]]. Parte fornisce un [[Std_Part/it#Origine|Origine]] con assi X, Y e Z locali e piani standard; questa origine viene utilizzata come riferimento per posizionare e collegare quegli altri oggetti. Inoltre, le Parti possono essere nidificate all'interno di altre Parti per creare un grande assieme da sotto-assiemi più piccoli.


Sebbene sia destinato principalmente a corpi solidi, Parte può essere utilizzato per gestire qualsiasi oggetto che abbia una proprietà [[Placement/it|Posizionamento]], quindi può anche contenere [[Mesh_Feature/it|Funzioni Mesh]], [[Sketch/it|schizzi]] e altri oggetti derivati dalla classe [[App_GeoFeature/it|App GeoFeature]].
Sebbene sia destinato principalmente a corpi solidi, Parte può essere utilizzato per gestire qualsiasi oggetto che abbia una proprietà [[Placement/it|Posizionamento]], quindi può anche contenere [[Mesh_Feature/it|Funzioni Mesh]], [[Sketch/it|schizzi]] e altri oggetti derivati dalla classe [[App_GeoFeature/it|App GeoFeature]].
Line 28: Line 30:
Non confondere il [[File:PartDesign_Body.svg|16px]] [[PartDesign_Body/it|Corpo di PartDesign]] con la [[File:Std_Part.svg|16px]] [[Std_Part/it|Parte]]. Il primo è un oggetto specifico utilizzato in [[File:Workbench_PartDesign.svg|24px]] [[PartDesign_Workbench/it|PartDesign]], destinato a modellare un [[PartDesign_Body/it#Singolo solido contiguo|singolo solido contiguo]] mediante le [[PartDesign_Feature/it| funzioni di PartDesign]]. Invece, la [[Std_Part/it|Parte]] non viene utilizzata per la modellazione, ma solo per disporre diversi oggetti nello spazio, per creare degli [[assembly/it|assemblaggi]].
Non confondere il [[File:PartDesign_Body.svg|16px]] [[PartDesign_Body/it|Corpo di PartDesign]] con la [[File:Std_Part.svg|16px]] [[Std_Part/it|Parte]]. Il primo è un oggetto specifico utilizzato in [[File:Workbench_PartDesign.svg|24px]] [[PartDesign_Workbench/it|PartDesign]], destinato a modellare un [[PartDesign_Body/it#Singolo solido contiguo|singolo solido contiguo]] mediante le [[PartDesign_Feature/it| funzioni di PartDesign]]. Invece, la [[Std_Part/it|Parte]] non viene utilizzata per la modellazione, ma solo per disporre diversi oggetti nello spazio, per creare degli [[assembly/it|assemblaggi]].


Lo strumento Parte non è definito da un particolare ambiente di lavoro, ma dal sistema base; di conseguenza lo si trova nella {{MenuCommand|barra degli strumenti struttura}}, che è disponibile in tutti gli [[Workbenches/it|ambienti di lavoro]]. Per raggruppare gli oggetti arbitrariamente senza considerare la loro posizione, utilizzare [[File:Std_Group.svg|16px]] [[Std_Group/it|Gruppo]]; questo oggetto non influenza i posizionamenti degli elementi che contiene, è essenzialmente solo una cartella che viene utilizzata per mantenere organizzata la [[tree_view/it|vista ad albero]].
Lo strumento Parte non è definito da un particolare ambiente di lavoro, ma dal sistema base; di conseguenza lo si trova nella {{MenuCommand|barra degli strumenti struttura}}, che è disponibile in tutti gli [[Workbenches/it|ambienti di lavoro]]. Per raggruppare gli oggetti arbitrariamente senza considerare la loro posizione, utilizzare [[File:Std_Group.svg|16px]] [[Std_Group/it|Gruppo]]; questo oggetto non influenza i posizionamenti degli elementi che contiene, è essenzialmente solo una cartella che viene utilizzata per mantenere organizzata la [[Tree_view/it|vista ad albero]].


[[File:Std Part-tree.png]][[File:Std Part example.png]]
[[File:Std Part-tree.png]][[File:Std Part example.png]]


{{Caption|A sinistra: elementi all'interno di una Parte nella vista ad albero. A destra: oggetti posizionati nello spazio, riferiti all'Origine della Parte.}}
{{Caption|A sinistra: elementi all'interno di una Parte nella [[Tree_view/it|Vista ad albero]]. A destra: oggetti posizionati nello spazio, riferiti all'Origine della Parte.}}


<span id="Usage"></span>
==Utilizzo==
==Utilizzo==


# Premere il pulsante {{Button|[[File:Std_Part.svg|16px]] [[Std_Part/it|Parte]]}}. Viene creata una parte vuota che diventa automaticamente ''[[Std_Part/it#Stato attivo|attiva]]''.
# Premere il pulsante {{Button|[[File:Std_Part.svg|16px]] [[Std_Part/it|Crea una parte]]}}.
# Viene creata una parte vuota che diventa automaticamente ''[[Std_Part/it#Active_status|attiva]]''.
# Per aggiungere oggetti a una parte, trascinarli e rilasciarli sulla parte nella [[tree_view/it|vista ad albero]].
# Per rimuovere oggetti da una parte, trascinarli fuori dalla parte e sull'etichetta del documento nella parte superiore della [[tree_view/it|vista ad albero]].
# Per aggiungere oggetti alla parte, selezionarli nella [[Tree_view/it|Vista ad albero]] e trascinarli e rilasciarli sulla parte.
# Per rimuovere oggetti dalla parte, trascinarli fuori dalla parte e sull'etichetta del documento nella parte superiore della [[Tree_view/it|Vista ad albero]].
# Gli oggetti possono anche essere aggiunti e rimossi modificando la proprietà {{PropertyData|Group}} della Parte.


<span id="Notes"></span>
===Note===
== Note ==


* A partire dalla v0.19, un dato oggetto può appartenere solo ad una singola Parte.
* Un oggetto può appartenere solo ad una singola Parte.
* Le operazioni 3D come [[Part_Boolean/it|Part Boolean]] non possono essere applicate alle parti. Ad esempio, non è possibile selezionare due parti ed eseguire una [[Part_Fuse/it|Part Fusione]] o un [[Part_Cut|Part Sottrazione]].
* Fare doppio clic sulla Parte nella [[tree view/it|vista ad albero]] o aprire il menu contestuale (tasto destro del mouse) e selezionare {{MenuCommand|Attiva/disattiva la parte}} per attivare o disattivare la Parte. Se un'altra Parte è attiva, sarà disattivata. Vedere [[Std_Part/it#Stato_attivo|Stato attivo]] per maggiori informazioni.

===Limitazioni===

* Al momento, i metodi [[Draft Snap/it|Snap di Draft]] non funzionano sui contenitori di Parti selezionati né sugli oggetti al loro interno.
* Una Parte non ha una [[Part_TopoShape/it|forma topologica]], quindi operazioni 3D come le [[Part_Boolean/it|operazioni booleane]] non possono essere utilizzate su una parte. Ad esempio, non è possibile selezionare due parti ed eseguire una [[Part_Fuse/it|Unione]] o un [[Part_Cut/it|Taglio]] con esse.
** Queste operazioni booleane funzionano solo sugli oggetti contenuti fintanto che sono derivati da [[Part_Feature/it|Part Feature]] e hanno una [[Part_TopoShape/it|forma topologica]].


<span id="Properties"></span>
== Proprietà ==
== Proprietà ==


Una [[Std_Part/it|Parte]] è internamente chiamata [[App_Part/it|App Part]] ({{incode|App::Part}} class), e deriva da un [[App_GeoFeature/it|App GeoFeature]] ({{incode|App::GeoFeature}} class), quindi condivide la maggior parte delle proprietà di quest'ultimo.
La [[Std_Part/it|Parte]], chiamata internamente [[App_Part/it|App Part]] (classe {{incode|App::Part}}), è derivata dalla [[App_GeoFeature/it|App GeoFeature]] ({{incode |App::GeoFeature}}) ed eredita tutte le sue proprietà. Ha anche diverse proprietà aggiuntive. In particolare le proprietà che l'aiutano a gestire le informazioni nel contesto di un assieme, ad esempio, {{PropertyData|Type}}, {{PropertyData|Id}}, {{PropertyData|License}}, {{PropertyData|LicenseURL}} e { {DatiProprietà|Group}}.

Oltre alle proprietà descritte in [[App_GeoFeature/it|App GeoFeature]], la classe App Part ha alcune proprietà che la aiutano a gestire le informazioni nel contesto di un assieme, ad esempio, {{PropertyData|Type}}, {{PropertyData|Id}}, {{PropertyData|License}}, {{PropertyData|LicenseURL}}, {{PropertyData|Color}}, e {{PropertyData|Group}}.


Queste sono le proprietà disponibili nell'[[property editor/it|editore delle proprietà]]. Le proprietà nascoste possono essere mostrate usando il comando {{MenuCommand|Mostra tutto}} nel menu contestuale dell'[[property editor/it|editore delle proprietà]].
Queste sono le proprietà disponibili nell'[[Property_editor/it|editor delle proprietà]]. Le proprietà nascoste possono essere mostrate usando il comando {{MenuCommand|Mostra tutto}} nel menu contestuale dell'[[Property_editor/it|editor delle proprietà]].


<span id="Data"></span>
=== Dati ===
=== Dati ===


Line 64: Line 64:


* {{PropertyData|Type|String}}: una descrizione per questo oggetto. Per impostazione predefinita, è una stringa vuota {{value|""}}.
* {{PropertyData|Type|String}}: una descrizione per questo oggetto. Per impostazione predefinita, è una stringa vuota {{value|""}}.
* {{PropertyData|Material|Link}}: il materiale per questo oggetto.
* {{PropertyData|Meta|Map|Hidden}}: mappa con metainformazioni aggiuntive. Per impostazione predefinita, <code>{}</code> è vuoto.
* {{PropertyData|Id|String}}: un numero di identificazione o un numero di parte per questo oggetto. Per impostazione predefinita, è una stringa vuota {{value|""}}.
* {{PropertyData|Id|String}}: un numero di identificazione o un numero di parte per questo oggetto. Per impostazione predefinita, è una stringa vuota {{value|""}}.
* {{PropertyData|Uid|UUID|Hidden}}: l'[https://en.wikipedia.org/wiki/Universally_unique_identifier identificatore univoco universale] (UUID) (numero a 128 bit) dell'oggetto. Questo viene assegnato al momento della creazione.
* {{PropertyData|License|String}}: un campo per specificare la licenza per questo oggetto. Per impostazione predefinita, è una stringa vuota {{value|""}}.
* {{PropertyData|License|String}}: un campo per specificare la licenza per questo oggetto. Per impostazione predefinita, è una stringa vuota {{value|""}}.
* {{PropertyData|LicenseURL|String}}: un campo per specificare l'indirizzo web della licenza o del contratto per questo oggetto. Per impostazione predefinita, è una stringa vuota {{value|""}}.
* {{PropertyData|LicenseURL|String}}: un campo per specificare l'indirizzo web della licenza o del contratto per questo oggetto. Per impostazione predefinita, è una stringa vuota {{value|""}}.
* {{PropertyData|Color|Color}}: una serie di quattro valori RGBA a virgola mobile {{value|(r,g,b,a)}} per definire il colore dell'oggetto; di default è {{value|(1.0, 1.0, 1.0, 1.0)}}, che viene visualizzato come {{value|[255,255,255]}} su base 255, <span style="background-color:#fff; color:#000; border: 1px solid #888888; width:3em; height:12pt; padding: 2px 1em 2px;">white color</span>.
* {{PropertyData|Color|Color}}: una serie di quattro valori RGBA a virgola mobile {{value|(r,g,b,a)}} per definire il colore dell'oggetto; di default è {{value|(1.0, 1.0, 1.0, 1.0)}}, che viene visualizzato come {{value|[255,255,255]}} su base 255, <span style="background-color:#fff; color:#000; border: 1px solid #888888; width:3em; height:12pt; padding: 2px 1em 2px;">white color</span>.
* {{PropertyData|Placement|Placement}}: la posizione dell'oggetto nella [[3D view/it|vista 3D]]. Il posizionamento è definito da un punto {{incode|Base}} (vettore), e una {{incode|Rotazione}} (asse e angolo). Vedi [[Placement/it|Posizionamento]].
* {{PropertyData|Placement|Placement}}: la posizione dell'oggetto nella [[3D_view/it|vista 3D]]. Il posizionamento è definito da un punto {{incode|Base}} (vettore), e una {{incode|Rotazione}} (asse e angolo). Vedi [[Placement/it|Posizionamento]].
** {{PropertyData|Angle}}: l'angolo di rotazione intorno al {{PropertyData|Axis}}. Per impostazione predefinita, è {{value|0°}} (zero gradi).
** {{PropertyData|Angle}}: l'angolo di rotazione intorno al {{PropertyData|Axis}}. Per impostazione predefinita, è {{value|0°}} (zero gradi).
** {{PropertyData|Axis}}: il vettore che definisce l'asse di rotazione per il posizionamento. Ogni componente è un valore in virgola mobile tra {{value|0}} e {{value|1}}. Se un valore è superiore a {{value|1}}, il vettore è normalizzato in modo che la grandezza del vettore sia {{value|1}}. Per impostazione predefinita, l'asse Z è positivo, {{value|(0, 0, 1)}}.
** {{PropertyData|Axis}}: il vettore che definisce l'asse di rotazione per il posizionamento. Ogni componente è un valore in virgola mobile tra {{value|0}} e {{value|1}}. Se un valore è superiore a {{value|1}}, il vettore è normalizzato in modo che la grandezza del vettore sia {{value|1}}. Per impostazione predefinita, l'asse Z è positivo, {{value|(0, 0, 1)}}.
** {{PropertyData|Position}}: un vettore con coordinate 3D nel punto base. Per impostazione predefinita, è l'origine {{value|(0, 0, 0)}}.
** {{PropertyData|Position}}: un vettore con coordinate 3D nel punto base. Per impostazione predefinita, è l'origine {{value|(0, 0, 0)}}.
* {{PropertyData|Label|String}}: il nome modificabile dall'utente di questo oggetto, è una stringa arbitraria UTF8.
* {{PropertyData|Label|String}}: il nome modificabile dall'utente di questo oggetto, è una stringa arbitraria UTF8.
* {{PropertyData|Label2|String|Hidden}}: una descrizione più lunga e modificabile dall'utente di questo oggetto, è una stringa UTF8 arbitraria che può includere ritorni a capo. Per impostazione predefinita, è una stringa vuota {{value|""}}.
* {{PropertyData|Expression Engine|ExpressionEngine|Hidden}}: un elenco di espressioni. Per impostazione predefinita, è vuoto {{value|[]}}.
* {{PropertyData|Visibility|Bool|Hidden}}: se visualizzare o meno l'oggetto.
* {{PropertyData|Origin|Link|Hidden}}: l'oggetto [[App_OriginGroupExtension/it|App Origin]] che è il riferimento posizionale per tutti gli elementi elencati in {{PropertyData|Group}}.
* {{PropertyData|Group|LinkList}}: un elenco di oggetti di riferimento. Per impostazione predefinita, è vuoto {{value|[]}}.
* {{PropertyData|Group|LinkList}}: un elenco di oggetti di riferimento. Per impostazione predefinita, è vuoto {{value|[]}}.
* {{PropertyData|_ Group Touched|Bool|Hidden}}: se il gruppo viene toccato o meno.


<span id="View"></span>
====Proprietà dati nascoste====

* {{PropertyData|Material|Map}}: mappa con le proprietà del materiale. Per impostazione predefinita, è vuota <code>{}</code>.
* {{PropertyData|Meta|Map}}: mappa con ulteriori meta-informazioni. Per impostazione predefinita, è vuota <code>{}</code>.
* {{PropertyData|Uid|UUID}}: L' [https://en.wikipedia.org/wiki/Universally_unique_identifier identificatore univoco universale] (UUID) (128-bit number) dell'oggetto. Questo viene assegnato al momento della creazione.
* {{PropertyData|Label2|String}}: una descrizione più lunga e modificabile dall'utente di questo oggetto, è una stringa UTF8 arbitraria che può includere nuove linee. Per impostazione predefinita, è una stringa vuota {{value|""}}.
* {{PropertyData|Expression Engine|ExpressionEngine}}: un elenco di espressioni. Per impostazione predefinita, è vuoto {{value|[]}}.
* {{PropertyData|Visibility|Bool}}: se visualizzare o meno l'oggetto.
* {{PropertyData|Origin|Link}}: l'oggetto [[App_Origin/it|App Origin]] è il riferimento posizionale per tutti gli elementi elencati in {{PropertyData|Group}}.
* {{PropertyData|_ Group Touched|Bool}}: se il gruppo viene coinvolto o meno.

===Vista===
===Vista===


{{TitleProperty|Display Options}}
La App Part ha solo cinque proprietà di base [[App_FeaturePython/it|App FeaturePython]], e non ha proprietà nascoste.

{{TitleProperty|Base}}


* {{PropertyView|Display Mode|Enumeration}}: {{value|Group}}.
* {{PropertyView|Display Mode|Enumeration}}: {{value|Group}}.
* {{PropertyView|Show In Tree|Bool}}: se è {{TRUE}}, l'oggetto appare nella [[Tree_view/it|Vista ad albero]]. Altrimenti viene impostato come invisibile.
* {{PropertyView|On Top When Selected|Enumeration}}: {{value|Disabled}} (default), {{value|Enabled}}, {{value|Object}}, {{value|Element}}.
* {{PropertyView|Visibility|Bool}}: se è {{TRUE}}, l'oggetto appare nella [[3D_view/it|vista 3D]]; altrimenti è invisibile. Per impostazione predefinita, questa proprietà può essere attivata e disattivata premendo la barra {{KEY|Space}} sulla tastiera.
* {{PropertyView|Selection Style|Enumeration}}: {{value|Shape}} (default), {{value|BoundBox}}. Se l'opzione è {{value|Shape}}, l'intera forma (vertici, bordi e facce) verrà evidenziata nella [[3D_view/it|vista 3D]]; se è {{value|BoundBox}} verrà evidenziato solo il bounding box.
* {{PropertyView|Show In Tree|Bool}}: se è {{TRUE}}, l'oggetto appare nella [[tree view/it|vista ad albero]]. Altrimenti, è impostato come invisibile.
* {{PropertyView|Visibility|Bool}}: se è {{TRUE}}, l'oggetto appare nella [[3D_view/it|vista 3D]]; altrimenti è invisibile. Per impostazione predefinita questa proprietà può essere attivata e disattivata premendo la barra {{KEY|Spazio}} sulla tastiera.


{{TitleProperty|Selection}}
==Concetto di assemblaggio==


* {{PropertyView|On Top When Selected|Enumeration}}: {{value|Disabled}} (default), {{value|Enabled}}, {{value|Object}}, {{value|Element}}.
La Parte è destinata ad essere il blocco di base per la creazione di assemblaggi. A differenza di un [[PartDesign_Body/it|corpo di PartDesign]], un assemblaggio è inteso come un insieme di elementi separati e distinguibili che sono collegati in qualche modo nel mondo fisico, per esempio, attraverso la pressione, le viti o la colla.
* {{PropertyView|Selection Style|Enumeration}}: {{value|Shape}} (default), {{value|BoundBox}}. Se l'opzione è {{value|Shape}}, l'intera forma (vertici, bordi e facce) verrà evidenziata nella [[3D_view/it|vista 3D]]; se è {{value|BoundBox}} verrà evidenziato solo il riquadro di delimitazione.

Esempi che potrebbero essere Parti:
* Un tavolo di legno che consiste di singoli pezzi di legno (gambe, piano), che sono messi insieme con colla o viti di metallo.
* Un cuscinetto a sfere composto da più sfere d'acciaio, un anello interno, un fermo, una guarnizione e un anello esterno.
* Un assemblaggio di una vite con una rondella e un dado corrispondente.

[[File:PartDesign_Body_contiguous_separate.png|x200px]] [[File:PartDesign_Body_contiguous_assembly.png|x200px]]
{{Caption|A sinistra: tre singoli solidi contigui, ciascuno modellato da un [[PartDesign_Body|Corpo di PartDesign]].
</br>
A destra: i singoli corpi messi insieme all'interno di una Parte per creare un assemblaggio.}}

In termini generali, quando si importa un file STEP nel programma, l'insieme principale e i suoi sottoinsiemi saranno importati come contenitori di Parti, ognuno dei quali contiene una semplice [[Part_Feature/it|Funzione Part]].


<span id="Detailed_explanation"></span>
=== Spiegazione dettagliata ===
=== Spiegazione dettagliata ===


<span id="Active_status"></span>
===Stato attivo===
===Stato attivo===


Un documento aperto può contenere più Parti. Una parte attiva verrà visualizzata nella [[Tree_view/it|vista ad albero]] con il colore di sfondo specificato per il {{MenuCommand|Contenitore attivo}}, per impostazione predefinita il colore in [[Preferences_Editor/it#Colori|editor delle preferenze]] è azzurro. Una parte attiva sarà anche mostrata in grassetto.
Un documento aperto può contenere più Parti. Ma solo una Parte può essere attiva. Viene visualizzata la parte attiva nella [[Tree_view/it|vista ad albero]] con il colore di sfondo specificato per il {{MenuCommand|Contenitore attivo}}, per impostazione predefinita il colore in [[Preferences_Editor/it#Colori|editor delle preferenze]] è azzurro. Essa sarà anche mostrata con testo in grassetto.


Per attivare o disattivare un Parte:
Per attivare o disattivare un Parte:
* Doppio click nella [[Tree_view/it|vista ad albero]], oppure
* Doppio click nella [[Tree_view/it|vista ad albero]], oppure
* Aprire il menu contestuale (click tasto destro) e selezionare {{MenuCommand|Attivare la parte}}.
* Aprire il menu contestuale (click tasto destro) e selezionare {{MenuCommand|Attivare la parte}}.

{{Emphasis|Note:}}
* Lo {{emphasis|stato attivo}} delle Parti è stato sviluppato nella v0.17 in parallelo con lo {{emphasis|stato attivo}} dei [[PartDesign_Body/it|Corpo di PartDesign]]; tuttavia, a partire dalla v0.19 per le Parti tale stato non ha un vero e proprio scopo.
* Anche quando una Parte è attiva, gli oggetti appena creati non vengono posizionati automaticamente al suo interno. In questo caso, è sufficiente trascinare questi nuovi oggetti e rilasciarli sulla Parte desiderata.
* Solo una Parte singola alla volta può essere attiva.


[[File:Std_Part_active.png]]
[[File:Std_Part_active.png]]
Line 133: Line 113:
{{Caption|Documento con due Parti, di cui la seconda è attiva.}}
{{Caption|Documento con due Parti, di cui la seconda è attiva.}}


<span id="Origin"></span>
===Origine===
=== Origine ===


L'Origine è costituita dai tre assi standard (X, Y, Z) e da tre piani standard (XY, XZ e YZ). A questi elementi possono essere collegati, al momento della creazione, [[Sketch/it|Schizzi]] e altri oggetti.
L'Origine è costituita dai tre assi standard (X, Y, Z) e da tre piani standard (XY, XZ e YZ). A questi elementi possono essere collegati, al momento della creazione, [[Sketch/it|Schizzi]] e altri oggetti.
Line 139: Line 120:
[[File:Part_Origin_tree.png]] [[File:Part_Origin_view.png]]
[[File:Part_Origin_tree.png]] [[File:Part_Origin_view.png]]


{{Caption|A sinistra: Origine di Part nella [[tree view/it|vista ad albero]].</br> A destra: rappresentazione degli elementi Origine nella [[3D view/it|vista 3D]].}}
{{Caption|A sinistra: Origine di Part nella [[Tree_view/it|vista ad albero]]. A destra: rappresentazione degli elementi Origine nella [[3D_view/it|vista 3D]].}}


{{Emphasis|Nota:}} l'origine è un oggetto [[App_Origin/it|App Origin]]({{incode|App::Origin}} class), mentre gli assi e i piani sono rispettivamente oggetti di tipo {{incode|App::Linea}} e {{incode|App::Piano}}. Ognuno di questi elementi può essere nascosto e non nascosto singolarmente con la barra {{KEY|Spazio}}; questo è utile per scegliere il riferimento corretto quando si creano altri oggetti.
{{Emphasis|Nota:}} l'origine è un oggetto [[App_OriginGroupExtension/it|App Origin]]({{incode|App::Origin}} class), mentre gli assi e i piani sono rispettivamente oggetti di tipo {{incode|App::Linea}} e {{incode|App::Piano}}. Ognuno di questi elementi può essere nascosto e non nascosto singolarmente con la barra {{KEY|Spazio}}; questo è utile per scegliere il riferimento corretto quando si creano altri oggetti.


{{Emphasis|Nota 2:}} tutti gli elementi all'interno della Parte sono riferiti all'Origine della Parte, il che significa che la Parte può essere spostata e ruotata in riferimento al sistema globale di coordinate senza influenzare il posizionamento degli elementi all'interno.
{{Emphasis|Nota 2:}} tutti gli elementi all'interno della Parte sono riferiti all'Origine della Parte, il che significa che la Parte può essere spostata e ruotata in riferimento al sistema globale di coordinate senza influenzare il posizionamento degli elementi all'interno.


<span id="Visibility_Management"></span>
===Gestione della visibilità===
===Gestione della visibilità===


Line 152: Line 134:
{{Caption|La visibilità della parte Std determina se gli oggetti raggruppati sotto di essa sono mostrati o meno nella [[3D_view/it|vista 3D ]].</br>A sinistra: la Parte è nascosta, quindi nessuno degli oggetti sarà mostrato nella [[3D_view/it|vista 3D]].</br>Destra: la Parte è visibile, quindi ogni oggetto controlla la propria visibilità.}}
{{Caption|La visibilità della parte Std determina se gli oggetti raggruppati sotto di essa sono mostrati o meno nella [[3D_view/it|vista 3D ]].</br>A sinistra: la Parte è nascosta, quindi nessuno degli oggetti sarà mostrato nella [[3D_view/it|vista 3D]].</br>Destra: la Parte è visibile, quindi ogni oggetto controlla la propria visibilità.}}


<span id="Scripting"></span>
==Eredità==

Una [[Std_Part/it|Parte]] è formalmente un'istanza della classe {{incode|App::Part}}, il cui genitore è il genitore di base [[App_GeoFeature/it|App GeoFeature]]. ({{incode|App::GeoFeature}} class), ed è incrementato con un'estensione di Origine.

[[File:FreeCAD_core_objects.svg|800px]]

{{Caption|Diagramma semplificato delle relazioni tra gli oggetti principali del programma. La classe {{incode|App::Part}} è un semplice contenitore che ha una posizione nello spazio 3D e ha un'origine per controllare il posizionamento degli oggetti raggruppati sotto di essa.}}

==Script==
==Script==


{{Emphasis|Vedere anche:}} [[FreeCAD Scripting Basics/it|Script di base per FreeCAD]], e [[scripted objects/it|script di oggetti]].
{{Emphasis|Vedere anche:}} [[FreeCAD_Scripting_Basics/it|Script di base per FreeCAD]], e [[Scripted_objects/it|script di oggetti]].


Vedere [[Part_Feature/it|Funzione Part]] per le informazioni generali sull'aggiunta di oggetti al documento.
Vedere [[Part_Feature/it|Funzione Part]] per le informazioni generali sull'aggiunta di oggetti al documento.
Line 172: Line 147:


doc = App.newDocument()
doc = App.newDocument()
obj = App.ActiveDocument.addObject("App::Part", "Part")
part = App.ActiveDocument.addObject("App::Part", "Part")


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


obj.addObjects([bod1, bod2])
part.addObjects([obj1, obj2])
App.ActiveDocument.recompute()
App.ActiveDocument.recompute()
}}
}}


Non si può creare uno script {{incode|App::Part}}. Tuttavia, è possibile aggiungere un ruolo {{incode|App::Part}} a uno script {{incode|Part::FeaturePython}} usando il seguente codice:
Non si può creare uno script {{incode|App::Part}}. Tuttavia, è possibile aggiungere un comportamento {{incode|App::Part}} a uno script {{incode|Part::FeaturePython}} usando il seguente codice:


{{Code|code=
{{Code|code=
Line 190: Line 165:
self.attach(obj)
self.attach(obj)


def __getstate__(self):
def dumps(self):
return
return


def __setstate__(self, _state):
def loads(self, _state):
return
return


def attach(self, obj):
def attach(self, obj):
obj.addExtension('App::OriginGroupExtensionPython')
obj.addExtension("App::OriginGroupExtensionPython")
obj.Origin = FreeCAD.ActiveDocument.addObject('App::Origin', 'Origin')
obj.Origin = FreeCAD.ActiveDocument.addObject("App::Origin", "Origin")


def onDocumentRestored(self, obj):
def onDocumentRestored(self, obj):
Line 212: Line 187:


def attach(self, vobj):
def attach(self, vobj):
vobj.addExtension('Gui::ViewProviderOriginGroupExtensionPython')
vobj.addExtension("Gui::ViewProviderOriginGroupExtensionPython")
self.ViewObject = vobj
self.ViewObject = vobj


def __getstate__(self):
def dumps(self):
return None
return None


def __setstate__(self, _state):
def loads(self, _state):
return None
return None


App.ActiveDocument.addObject('Part::FeaturePython', 'Group', group.MyGroup(), group.ViewProviderMyGroup(), True)
App.ActiveDocument.addObject("Part::FeaturePython",
"Group",
group.MyGroup(),
group.ViewProviderMyGroup(),
True)
}}
}}


Line 234: Line 213:
}}
}}


{{Std Base navi{{#translation:}}}}
{{Std_Base_navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{clear}}

Latest revision as of 09:02, 27 January 2024

Parte

Posizione nel menu
Nessuno
Ambiente
Tutti
Avvio veloce
Nessuno
Introdotto nella versione
0.17
Vedere anche
Gruppo, PartDesign Corpo

Descrizione

Una Parte (internamente chiamata App Part) è un contenitore per scopi generali che contiene un gruppo di oggetti in modo che essi possano essere spostati in blocco come una singola unità nella vista 3D.

L'elemento Parte è stato sviluppato per essere l'elemento di base per creare assemblaggi meccanici. In particolare, ha lo scopo di disporre oggetti che hanno una forma topologica, come le primitive di Part, i corpi di PartDesign, e altre funzioni di Part. Parte fornisce un Origine con assi X, Y e Z locali e piani standard; questa origine viene utilizzata come riferimento per posizionare e collegare quegli altri oggetti. Inoltre, le Parti possono essere nidificate all'interno di altre Parti per creare un grande assieme da sotto-assiemi più piccoli.

Sebbene sia destinato principalmente a corpi solidi, Parte può essere utilizzato per gestire qualsiasi oggetto che abbia una proprietà Posizionamento, quindi può anche contenere Funzioni Mesh, schizzi e altri oggetti derivati dalla classe App GeoFeature.

Non confondere il Corpo di PartDesign con la Parte. Il primo è un oggetto specifico utilizzato in PartDesign, destinato a modellare un singolo solido contiguo mediante le funzioni di PartDesign. Invece, la Parte non viene utilizzata per la modellazione, ma solo per disporre diversi oggetti nello spazio, per creare degli assemblaggi.

Lo strumento Parte non è definito da un particolare ambiente di lavoro, ma dal sistema base; di conseguenza lo si trova nella barra degli strumenti struttura, che è disponibile in tutti gli ambienti di lavoro. Per raggruppare gli oggetti arbitrariamente senza considerare la loro posizione, utilizzare Gruppo; questo oggetto non influenza i posizionamenti degli elementi che contiene, è essenzialmente solo una cartella che viene utilizzata per mantenere organizzata la vista ad albero.

A sinistra: elementi all'interno di una Parte nella Vista ad albero. A destra: oggetti posizionati nello spazio, riferiti all'Origine della Parte.

Utilizzo

  1. Premere il pulsante Crea una parte.
  2. Viene creata una parte vuota che diventa automaticamente attiva.
  3. Per aggiungere oggetti alla parte, selezionarli nella Vista ad albero e trascinarli e rilasciarli sulla parte.
  4. Per rimuovere oggetti dalla parte, trascinarli fuori dalla parte e sull'etichetta del documento nella parte superiore della Vista ad albero.
  5. Gli oggetti possono anche essere aggiunti e rimossi modificando la proprietà DatiGroup della Parte.

Note

  • Un oggetto può appartenere solo ad una singola Parte.
  • Le operazioni 3D come Part Boolean non possono essere applicate alle parti. Ad esempio, non è possibile selezionare due parti ed eseguire una Part Fusione o un Part Sottrazione.

Proprietà

La Parte, chiamata internamente App Part (classe App::Part), è derivata dalla App GeoFeature (App::GeoFeature) ed eredita tutte le sue proprietà. Ha anche diverse proprietà aggiuntive. In particolare le proprietà che l'aiutano a gestire le informazioni nel contesto di un assieme, ad esempio, DatiType, DatiId, DatiLicense, DatiLicenseURL e { {DatiProprietà|Group}}.

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

Dati

Base

  • DatiType (String): una descrizione per questo oggetto. Per impostazione predefinita, è una stringa vuota "".
  • DatiMaterial (Link): il materiale per questo oggetto.
  • Dati (Hidden)Meta (Map): mappa con metainformazioni aggiuntive. Per impostazione predefinita, {} è vuoto.
  • DatiId (String): un numero di identificazione o un numero di parte per questo oggetto. Per impostazione predefinita, è una stringa vuota "".
  • Dati (Hidden)Uid (UUID): l'identificatore univoco universale (UUID) (numero a 128 bit) dell'oggetto. Questo viene assegnato al momento della creazione.
  • DatiLicense (String): un campo per specificare la licenza per questo oggetto. Per impostazione predefinita, è una stringa vuota "".
  • DatiLicenseURL (String): un campo per specificare l'indirizzo web della licenza o del contratto per questo oggetto. Per impostazione predefinita, è una stringa vuota "".
  • DatiColor (Color): una serie di quattro valori RGBA a virgola mobile (r,g,b,a) per definire il colore dell'oggetto; di default è (1.0, 1.0, 1.0, 1.0), che viene visualizzato come [255,255,255] su base 255, white color.
  • DatiPlacement (Placement): la posizione dell'oggetto nella vista 3D. Il posizionamento è definito da un punto Base (vettore), e una Rotazione (asse e angolo). Vedi Posizionamento.
    • DatiAngle: l'angolo di rotazione intorno al DatiAxis. Per impostazione predefinita, è (zero gradi).
    • DatiAxis: il vettore che definisce l'asse di rotazione per il posizionamento. Ogni componente è un valore in virgola mobile tra 0 e 1. Se un valore è superiore a 1, il vettore è normalizzato in modo che la grandezza del vettore sia 1. Per impostazione predefinita, l'asse Z è positivo, (0, 0, 1).
    • DatiPosition: un vettore con coordinate 3D nel punto base. Per impostazione predefinita, è l'origine (0, 0, 0).
  • DatiLabel (String): il nome modificabile dall'utente di questo oggetto, è una stringa arbitraria UTF8.
  • Dati (Hidden)Label2 (String): una descrizione più lunga e modificabile dall'utente di questo oggetto, è una stringa UTF8 arbitraria che può includere ritorni a capo. Per impostazione predefinita, è una stringa vuota "".
  • Dati (Hidden)Expression Engine (ExpressionEngine): un elenco di espressioni. Per impostazione predefinita, è vuoto [].
  • Dati (Hidden)Visibility (Bool): se visualizzare o meno l'oggetto.
  • Dati (Hidden)Origin (Link): l'oggetto App Origin che è il riferimento posizionale per tutti gli elementi elencati in DatiGroup.
  • DatiGroup (LinkList): un elenco di oggetti di riferimento. Per impostazione predefinita, è vuoto [].
  • Dati (Hidden)_ Group Touched (Bool): se il gruppo viene toccato o meno.

Vista

Display Options

  • VistaDisplay Mode (Enumeration): Group.
  • VistaShow In Tree (Bool): se è true, l'oggetto appare nella Vista ad albero. Altrimenti viene impostato come invisibile.
  • VistaVisibility (Bool): se è true, l'oggetto appare nella vista 3D; altrimenti è invisibile. Per impostazione predefinita, questa proprietà può essere attivata e disattivata premendo la barra Space sulla tastiera.

Selection

  • VistaOn Top When Selected (Enumeration): Disabled (default), Enabled, Object, Element.
  • VistaSelection Style (Enumeration): Shape (default), BoundBox. Se l'opzione è Shape, l'intera forma (vertici, bordi e facce) verrà evidenziata nella vista 3D; se è BoundBox verrà evidenziato solo il riquadro di delimitazione.

Spiegazione dettagliata

Stato attivo

Un documento aperto può contenere più Parti. Ma solo una Parte può essere attiva. Viene visualizzata la parte attiva nella vista ad albero con il colore di sfondo specificato per il Contenitore attivo, per impostazione predefinita il colore in editor delle preferenze è azzurro. Essa sarà anche mostrata con testo in grassetto.

Per attivare o disattivare un Parte:

  • Doppio click nella vista ad albero, oppure
  • Aprire il menu contestuale (click tasto destro) e selezionare Attivare la parte.

Documento con due Parti, di cui la seconda è attiva.

Origine

L'Origine è costituita dai tre assi standard (X, Y, Z) e da tre piani standard (XY, XZ e YZ). A questi elementi possono essere collegati, al momento della creazione, Schizzi e altri oggetti.

A sinistra: Origine di Part nella vista ad albero. A destra: rappresentazione degli elementi Origine nella vista 3D.

Nota: l'origine è un oggetto App Origin(App::Origin class), mentre gli assi e i piani sono rispettivamente oggetti di tipo App::Linea e App::Piano. Ognuno di questi elementi può essere nascosto e non nascosto singolarmente con la barra Spazio; questo è utile per scegliere il riferimento corretto quando si creano altri oggetti.

Nota 2: tutti gli elementi all'interno della Parte sono riferiti all'Origine della Parte, il che significa che la Parte può essere spostata e ruotata in riferimento al sistema globale di coordinate senza influenzare il posizionamento degli elementi all'interno.

Gestione della visibilità

La visibilità della Parte sostituisce la visibilità di qualsiasi oggetto in essa contenuto. Se la Parte è nascosta, anche gli oggetti in essa contenuti saranno nascosti, anche se la loro proprietà individuale VistaVisibilità è impostata su true. Se la Parte è visibile, allora la VistaVisibilità di ogni oggetto determina se l'oggetto è mostrato o meno.

La visibilità della parte Std determina se gli oggetti raggruppati sotto di essa sono mostrati o meno nella vista 3D .
A sinistra: la Parte è nascosta, quindi nessuno degli oggetti sarà mostrato nella vista 3D.
Destra: la Parte è visibile, quindi ogni oggetto controlla la propria visibilità.

Script

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

Vedere Funzione Part per le informazioni generali sull'aggiunta di oggetti al documento.

Una Parte (App Part) viene creata con il metodo del documento addObject(). Una volta che una Parte esiste, altri oggetti possono essere aggiunti ad essa con i metodi di questa Parte addObject() o addObjects().

import FreeCAD as App

doc = App.newDocument()
part = App.ActiveDocument.addObject("App::Part", "Part")

obj1 = App.ActiveDocument.addObject("PartDesign::Body", "Body")
obj2 = App.ActiveDocument.addObject("Part::Box", "Box")

part.addObjects([obj1, obj2])
App.ActiveDocument.recompute()

Non si può creare uno script App::Part. Tuttavia, è possibile aggiungere un comportamento App::Part a uno script Part::FeaturePython usando il seguente codice:

class MyGroup(object):
    def __init__(self, obj=None):
        self.Object = obj
        if obj:
            self.attach(obj)

    def dumps(self):
        return

    def loads(self, _state):
        return

    def attach(self, obj):
        obj.addExtension("App::OriginGroupExtensionPython")
        obj.Origin = FreeCAD.ActiveDocument.addObject("App::Origin", "Origin")

    def onDocumentRestored(self, obj):
        self.Object = obj

class ViewProviderMyGroup(object):
    def __init__(self, vobj=None):
        if vobj:
            vobj.Proxy = self
            self.attach(vobj)
        else:
            self.ViewObject = None

    def attach(self, vobj):
        vobj.addExtension("Gui::ViewProviderOriginGroupExtensionPython")
        self.ViewObject = vobj

    def dumps(self):
        return None

    def loads(self, _state):
        return None

App.ActiveDocument.addObject("Part::FeaturePython",
                             "Group",
                             group.MyGroup(),
                             group.ViewProviderMyGroup(),
                             True)