Part Feature/it: Difference between revisions

From FreeCAD Documentation
No edit summary
(Created page with "* {{PropertyView|Point Color|Color}}: simile a {{PropertyView|Line Color}}, definisce il colore dei vertici. * {{PropertyView|Point Color Array|ColorList|hidden}}: è una lista di tuple RGB che definiscono i colori, simile a {{PropertyView|Point Color}}. Il valore predefinito è un elenco di un {{value|[(0.09, 0.09, 0.09)]}}. * {{PropertyView|Point Material|Material|hidden}}: un App Material associato ai vertici di questo oggetto. Per impostazione pre...")
Line 79: Line 79:
* {{PropertyView|Line width|FloatConstraint}}: un float che determina la larghezza in pixel dei bordi nella [[3D_view/it|Vista 3D]]. Il valore predefinito è {{value|2.0}}.
* {{PropertyView|Line width|FloatConstraint}}: un float che determina la larghezza in pixel dei bordi nella [[3D_view/it|Vista 3D]]. Il valore predefinito è {{value|2.0}}.


* {{PropertyView|Point Color|Color}}: similar to {{PropertyView|Line Color}}, defines the color of the vertices.
* {{PropertyView|Point Color|Color}}: simile a {{PropertyView|Line Color}}, definisce il colore dei vertici.
* {{PropertyView|Point Color Array|ColorList|hidden}}: it is a list of RGB tuples defining colors, similar to {{PropertyView|Point Color}}. It defaults to a list of one {{value|[(0.09, 0.09, 0.09)]}}.
* {{PropertyView|Point Color Array|ColorList|hidden}}: è una lista di tuple RGB che definiscono i colori, simile a {{PropertyView|Point Color}}. Il valore predefinito è un elenco di un {{value|[(0.09, 0.09, 0.09)]}}.
* {{PropertyView|Point Material|Material|hidden}}: an [[App_Material|App Material]] associated with the vertices in this object. By default it is empty.
* {{PropertyView|Point Material|Material|hidden}}: un [[App_Material/it|App Material]] associato ai vertici di questo oggetto. Per impostazione predefinita è vuoto.
* {{PropertyView|Point Size|FloatConstraint}}: similar to {{PropertyView|Line Width}}, defines the size of the vertices.
* {{PropertyView|Point Size|FloatConstraint}}: simile a {{PropertyView|Line width}}, definisce la dimensione dei vertici.


* {{PropertyView|Shape Color|Color}}: similar to {{PropertyView|Line Color}}, defines the color of the faces. It defaults to {{value|(0.8, 0.8, 0.8)}}, which is displayed as {{value|[204, 204, 204]}} on base 255, a <span style="background-color:#ccc; width:3em; height:12pt; padding: 2px 1em 2px;">light gray</span>.
* {{PropertyView|Shape Color|Color}}: similar to {{PropertyView|Line Color}}, defines the color of the faces. It defaults to {{value|(0.8, 0.8, 0.8)}}, which is displayed as {{value|[204, 204, 204]}} on base 255, a <span style="background-color:#ccc; width:3em; height:12pt; padding: 2px 1em 2px;">light gray</span>.

Revision as of 21:58, 27 April 2024

Introduzione

Un oggetto Part Feature, (Funzione Part) o formalmente un Part::Feature, è un elemento semplice a cui è associato una forma topologica che può essere visualizzato nella Vista 3D.

La Part Feature è la classe genitore della maggior parte degli oggetti 2D (Draft, Sketcher) e 3D (Part, PartDesign), ad eccezione delle mesh, che normalmente si basano su Mesh Feature, o su FEM FemMeshObject per gli oggetti FEM.

Diagramma semplificato delle relazioni tra gli oggetti principali in FreeCAD

Utilizzo

Part Feature è un oggetto interno, quindi non può essere creato dall'interfaccia grafica, ma solo dalla console Python come descritto nel paragrafo Script.

L'oggetto Part::Feature è definito in Part ma può essere usato come classe base per script di oggetti in tutti gli ambienti che producono forme geometriche 2D e 3D. Sostanzialmente tutti gli oggetti prodotti in Part sono istanze di una Part::Feature.

Part::Feature è anche la classe genitrice dei Corpi di PartDesign, delle PartDesign Features, e dei Part Part2DObject, che è specializzato per le forme 2D (planari).

Gli ambienti possono aggiungere altre proprietà a questo elemento di base per produrre un oggetto con un comportamento complesso.

Proprietà

Vedere Proprietà per tutti i tipi di proprietà che possono avere oggetti con script.

La Part Feature (classe Part::Feature) è derivata dalla base App GeoFeature (classeApp::GeoFeature) ed eredita tutte le sue proprietà. Ha anche diverse proprietà aggiuntive. In particolare una proprietà DatiShape, che memorizza la Part TopoShape dell'oggetto. Questa è la geometria mostrata nella Vista 3D. Altre proprietà di questo oggetto sono quelle legate all'aspetto del suo TopoShape.

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

  • Dati (Hidden)Proxy (PythonObject): una classe personalizzata associata a questo oggetto. Questa esiste solo per la versione Python. Vedere Script
  • Dati (Hidden)Shape (PartShape): una classe Part TopoShape associata a questo oggetto.
  • DatiPlacement: la posizione dell'oggetto nella Vista 3D. Il posizionamento è definito da un punto Base (vettore) e una Rotation (asse e angolo). Vedere Posizionamento.
    • DatiAngle: l'angolo di rotazione attorno al DatiAxis. Di default, è (zero gradi).
    • DatiAxis: il vettore unitario che definisce l'asse di rotazione per il posizionamento. Ogni componente ha un valore in virgola mobile compreso tra 0 e 1. Se un valore è superiore a 1, il vettore viene normalizzato in modo che l'entità del vettore sia 1. Di default, è l'asse Z positivo, (0, 0, 1)
    • DatiPosition: un vettore con le coordinate 3D del punto base. Di default, è l'origine (0, 0, 0)
  • DatiLabel (String): il nome modificabile dall'utente di questo oggetto, è una stringa UTF8 arbitraria.
  • 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.

Vista

La maggior parte degli oggetti in FreeCAD ha quello che viene chiamato un "viewprovider", che è una classe che definisce l'aspetto visivo dell'oggetto nella vista 3D e nella vista ad albero. Il viewprovider predefinito degli oggetti Part Feature definisce le seguenti proprietà. Anche gli oggetti con script derivati da Part Feature hanno accesso a queste proprietà.

Base

  • Vista (hidden)Proxy (PythonObject): una classe viewprovider personalizzata associata a questo oggetto. Questo esiste solo per la versione Python. Vedere Script.

Display Options

  • VistaBounding Box (Bool): se è true, l'oggetto mostrerà il riquadro di delimitazione nella Vista 3D.
  • VistaDisplay Mode (Enumeration): Flat Lines (visualizzazione normale), Shaded (senza bordi), Wireframe (senza facce), Points (solo vertici).
  • VistaShow In Tree (Bool): il valore predefinito è true, nel qual caso l'oggetto apparirà nella Vista ad albero; in caso contrario, l'oggetto verrà nascosto nella vista ad albero. Una volta che un oggetto nell'albero è invisibile, lo si può vedere di nuovo aprendo il menu contestuale sopra il nome del documento (tasto destro) e selezionando Mostra elementi nascosti. Quindi è possibile scegliere l'elemento nascosto e VistaShow In Tree può essere riportato a true.
  • 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.

Object style

  • VistaAngular Deflection (Angle): accompagna VistaDeviation. È un altro modo per specificare la precisione con cui generare la mesh per il rendering sullo schermo o durante l'esportazione. Il valore predefinito è 28,5 degrees o 0,5 radians. Questo è il valore massimo, minore è il valore più uniforme sarà l'aspetto nella Vista 3D e più fine sarà la mesh che verrà esportata.
  • VistaDeviation (FloatConstraint): accompagna VistaAngular Deflection. È un altro modo per specificare la precisione con cui generare la mesh per il rendering sullo schermo o durante l'esportazione. Il valore predefinito è 0,5%. Questo è il valore massimo, minore è il valore più uniforme sarà l'aspetto nella Vista 3D e più fine sarà la mesh che verrà esportata.
  • Vista (hidden)Diffuse Color (ColorList): è una lista di tuple RGB che definiscono i colori, simile a VistaShape Color. Il valore predefinito è un elenco di un [(0.8, 0.8, 0.8)].
  • VistaDraw Style (Enumeration): Solid (predefinito), Dashed, Dotted, Dashdot; definisce lo stile dei bordi nella Vista 3D.
  • VistaLighting (Enumeration): Two side (predefinito), One side; l'illuminazione proviene da due lati o da un lato nella Vista 3D.
  • VistaLine Color (Color): una tupla di tre valori RGB in virgola mobile (r,g,b) per definire il colore dei bordi nella Vista 3D; per impostazione predefinita è (0.09, 0.09, 0.09), che viene visualizzato come [25,25,25] su base 255, almost black .
  • Vista (hidden)Line Color Array (ColorList): è una lista di tuple RGB che definiscono i colori, simile a VistaLine Color. Il valore predefinito è un elenco di un [(0.09, 0.09, 0.09)].
  • Vista (hidden)Line Material (Material): un App Material associato ai bordi di questo oggetto. Per impostazione predefinita è vuoto.
  • VistaLine width (FloatConstraint): un float che determina la larghezza in pixel dei bordi nella Vista 3D. Il valore predefinito è 2.0.
  • VistaPoint Color (Color): simile a VistaLine Color, definisce il colore dei vertici.
  • Vista (hidden)Point Color Array (ColorList): è una lista di tuple RGB che definiscono i colori, simile a VistaPoint Color. Il valore predefinito è un elenco di un [(0.09, 0.09, 0.09)].
  • Vista (hidden)Point Material (Material): un App Material associato ai vertici di questo oggetto. Per impostazione predefinita è vuoto.
  • VistaPoint Size (FloatConstraint): simile a VistaLine width, definisce la dimensione dei vertici.
  • VistaShape Color (Color): similar to VistaLine Color, defines the color of the faces. It defaults to (0.8, 0.8, 0.8), which is displayed as [204, 204, 204] on base 255, a light gray.
  • Vista (hidden)Shape Material (Material): an App Material associated with this object. By default it is empty.
  • VistaTransparency (Percent): an integer from 0 to 100 (a percentage) that determines the level of transparency of the faces in the 3D view. A value of 100 indicates completely invisible faces; the faces are invisible but they can still be picked as long as VistaSelectable is true.

Selection

  • VistaOn Top When Selected (Enumeration): it controls the way in which the selection occurs in the 3D view if the object has a Shape, and there are many objects partially covered by others. It defaults to Disabled, meaning that no special highlighting will occur; Enabled means that the object will appear on top of any other object when selected; Object means that the object will appear on top only if the entire object is selected in the Tree view; Element means that the object will appear on top only if a subelement (vertex, edge, face) is selected in the 3D view.
  • VistaSelectable (Bool): if it is true, the object can be picked with the pointer in the 3D view. Otherwise, the object cannot be selected until this option is set to true.
  • VistaSelection Style (Enumeration): it controls the way the object is highlighted. If it is Shape, the entire shape (vertices, edges, and faces) will be highlighted in the 3D view; if it is BoundBox a bounding box will appear surrounding the object and will be highlighted.

Deflessione e deviazione angolare

Deflessione angolare e parametri di deviazione; d < deflessione lineare, α < deflessione angolare.

La deviazione è un valore in percentuale correlato alle dimensioni in millimetri del parallelepipedo contenitore dell'oggetto. La deviazione in millimetri può essere calcolata come segue:

deviation_in_mm = (w + h + d)/3 * deviation/100

dove w, h, d sono le dimensioni del contenitore.

Script

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

Un oggetto Part Feature viene creato con il metodo addObject() del documento.

import FreeCAD as App

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

Per la sottoclasse Python, si dovrebbe creare un oggetto Part::FeaturePython.

import FreeCAD as App

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

Nome

Vedere anche: Nome oggetto per ulteriori informazioni sulle proprietà di Name.

Il metodo addObject ha due argomenti stringa di base.

  • Il primo argomento indica il tipo di oggetto, in questo caso, "Part::Feature".
  • Il secondo argomento è una stringa che definisce l'attributo Name. Se non viene fornito, per impostazione predefinita è "Part__Feature".
    • Il Name viene stabilito al momento della creazione; non può essere modificato in seguito.
    • Il Name può includere solo caratteri alfanumerici semplici e il trattino basso, [_0-9a-zA-Z]. Se vengono forniti altri simboli, questi verranno convertiti in caratteri di sottolineatura; per esempio, "A+B:C*" viene convertito in "A_B_C_".
    • Il Name deve essere unico in tutto il documento. Se vengono creati più oggetti con lo stesso nome, viene aggiunto un numero sequenziale per distinguerli, ad esempio, "Name001", "Name002", etc.
  • Se lo si desidera, l'attributo Label può essere modificato in un testo più significativo.
    • Di default, Label è uguale a Name.
    • A differenza di Name, Label può accettare qualsiasi stringa UTF8, inclusi accenti e spazi. Poiché la vista ad albero visualizza Label, è buona norma cambiare Label in una stringa più descrittiva.
    • Di default, Label deve essere univoco. Questo comportamento può essere modificato nell'editor delle preferenze, Modifica → Preferenze → Generale → Documento → Consenti la duplicazione delle etichette nel documento.

Etichetta

If desired, the Label attribute can be changed to a more meaningful text.

  • The Label can accept any UTF8 string, including accents and spaces. Since the Tree view displays the Label, it is a good practice to change the Label to a more descriptive string.
  • By default the Label is unique, just like the Name. However, this behavior can be changed in the preferences editor, Edit → Preferences → General → Document → Allow duplicate object labels in one document. This means that in general the Label may be repeated in the same document; when testing for a specific element the user should rely on the Name rather than on the Label.