Sketcher SketchObject/it: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
Line 38: Line 38:
Un [[Sketcher_SketchObject|Sketcher SketchObject]] (classe {{incode|Sketcher::SketchObject}}) deriva da un [[Part_Part2DObject|Part Part2DObject]] ({{incode|Part::Part2DObject}}), quindi condivide tutte le proprietà di quest'ultimo.
Un [[Sketcher_SketchObject|Sketcher SketchObject]] (classe {{incode|Sketcher::SketchObject}}) deriva da un [[Part_Part2DObject|Part Part2DObject]] ({{incode|Part::Part2DObject}}), quindi condivide tutte le proprietà di quest'ultimo.


<div class="mw-translate-fuzzy">
Oltre alle proprietà descritte in [[Part_Part2DObject/it|Part Part2DObject]], il corpo di PartDesign ha le seguenti proprietà nell'[[property editor/it|editor delle proprietà]].
Oltre alle proprietà descritte in [[Part_Part2DObject/it|Part Part2DObject]], il corpo di PartDesign ha le seguenti proprietà nell'[[property editor/it|editor delle proprietà]].
</div>


=== Dati ===
=== Dati ===


<div class="mw-translate-fuzzy">
{{TitleProperty|Attachment}}
{{TitleProperty|Attachment}}
* {{PropertyData|Map Mode}}: vedere [[Part Attachment/it|Part Attachment]] per ulteriori informazioni su tutte le modalità di associazione.
* {{PropertyData|Map Mode}}: vedere [[Part Attachment/it|Part Attachment]] per ulteriori informazioni su tutte le modalità di associazione.
</div>


<div class="mw-translate-fuzzy">
{{TitleProperty|Sketch}}
{{TitleProperty|Sketch}}
* {{PropertyData|Constraints}}: vincoli atribuiti, se esistono; altrimenti è un elenco {{incode|[]}} vuoto.
* {{PropertyData|Constraints}}: vincoli atribuiti, se esistono; altrimenti è un elenco {{incode|[]}} vuoto.
</div>

==== Hidden properties Data ====

See [[Part_Part2DObject|Part Part2DObject]] for the rest of the hidden properties.

{{TitleProperty|Base}}

* {{PropertyData|Proxy|PythonObject}}: a custom class associated with this object. This only exists for the [[Python|Python]] version. See [[Sketcher_SketchObject#Scripting|Scripting]].

{{TitleProperty|Sketch}}

* {{PropertyData|Geometry|GeometryList}}: a list of Part geometries that exist inside the sketch.
* {{PropertyData|External Geometry|LinkSubList}}: a list of Part geometries outside this Sketch that are used for reference.


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


<div class="mw-translate-fuzzy">
{{TitleProperty|Auto Constraints}}
{{TitleProperty|Auto Constraints}}
* {{PropertyView|Autoconstraints}}: se è {{TRUE}} prova ad impostare i vincoli quando viene disegnata la geometria.
* {{PropertyView|Autoconstraints}}: se è {{TRUE}} prova ad impostare i vincoli quando viene disegnata la geometria.
</div>


<div class="mw-translate-fuzzy">
{{TitleProperty|Visibility automation}}
{{TitleProperty|Visibility automation}}
* {{PropertyView|Editing Workbench}}: normalmente {{incode|SketcherWorkbench}}, è il nome dell'ambiente da attivare durante la modifica dello schizzo.
* {{PropertyView|Editing Workbench}}: normalmente {{incode|SketcherWorkbench}}, è il nome dell'ambiente da attivare durante la modifica dello schizzo.
Line 59: Line 81:
* {{PropertyView|Show Links}}: se è {{TRUE}} tutti gli oggetti utilizzati nei collegamenti alla geometria esterna vengono visualizzati quando si apre lo schizzo.
* {{PropertyView|Show Links}}: se è {{TRUE}} tutti gli oggetti utilizzati nei collegamenti alla geometria esterna vengono visualizzati quando si apre lo schizzo.
* {{PropertyView|Show Support}}: se è {{TRUE}} tutti gli oggetti a cui è associato questo schizzo vengono mostrati quando si apre lo schizzo.
* {{PropertyView|Show Support}}: se è {{TRUE}} tutti gli oggetti a cui è associato questo schizzo vengono mostrati quando si apre lo schizzo.
</div>

==== Hidden properties View ====

{{TitleProperty|Base}}

* {{PropertyView|Proxy|PythonObject}}: a custom view provider class associated with this object. This only exists for the [[Python|Python]] version. See [[Sketcher_SketchObject#Scripting|Scripting]].

{{TitleProperty|Visibility automation}}

* {{PropertyView|Tempo Vis|PythonObject}}: a custom class associated with this object, that handles hiding and showing other objects when opening and closing the sketch.

All other view properties, including hidden properties, are those of the base [[Part_Feature|Part Feature]] object.


== Script ==
== Script ==
Line 68: Line 103:
</div>
</div>


<div class="mw-translate-fuzzy">
Un oggetto Sketcher SketchObject viene creato con il metodo {{incode|addObject()}} del documento.
Un oggetto Sketcher SketchObject viene creato con il metodo {{incode|addObject()}} del documento.
</div>
{{Code|code=
{{Code|code=
import FreeCAD as App
import FreeCAD as App
Line 77: Line 114:
}}
}}


This basic {{incode|Sketcher::SketchObject}} doesn't have a Proxy object so it can't be fully used for sub-classing.

Therefore, for [[Python|Python]] subclassing, you should create the {{incode|Sketcher::SketchObjectPython}} object.

{{Code|code=
import FreeCAD as App

doc = App.newDocument()
obj = App.ActiveDocument.addObject("Sketcher::SketchObjectPython", "CustomSketch")
obj.Label = "Custom label"
}}

<div class="mw-translate-fuzzy">
{{Sketcher Tools navi/it}}
{{Sketcher Tools navi/it}}
{{Userdocnavi/it}}
{{Userdocnavi/it}}
</div>

Revision as of 15:48, 18 January 2020

Other languages:

Introduzione

Un Sketcher SketchObject, o formalmente un Sketcher::SketchObject, è l'elemento base per creare oggetti 2D con l'ambiente Sketcher.

Sketcher::SketchObject deriva da Part Part2DObject, il che significa che è un oggetto Part Feature specializzato per la geometria 2D. Come Part2DObject, anche SketchObject può essere collegato a piani e facce. Inoltre, SketchObject è in grado di gestire i vincoli geometrici delle linee e delle curve disegnate al suo interno.

Diagramma semplificato delle relazioni tra gli oggetti principali in FreeCAD. La classe Sketcher::SketchObject è specializzata per le forme 2D e inoltre può gestire i vincoli.

Utilizzo

  1. Passare all'ambiente Sketcher.
  2. Premere Nuovo schizzo.
  3. Selezionare un orientamento: piano XY, piano XZ o piano YZ. Opzionalmente scegliere anche Direzione inversa, e assegnare un valore di Offset.
  4. Premere OK.

Sebbene SketchObject possa essere utilizzato da solo per disegnare su un piano, viene comunemente utilizzato insieme a PartDesign per creare solidi estrusi.

  1. Passare in PartDesign.
  2. Premere Crea un corpo.
  3. Premere Crea uno schizzo.
  4. Selezione della funzione: piano XY (piano base), piano XZ (piano base) o piano YZ (piano base).
  5. Premere OK.

Proprietà

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

Un Sketcher SketchObject (classe Sketcher::SketchObject) deriva da un Part Part2DObject (Part::Part2DObject), quindi condivide tutte le proprietà di quest'ultimo.

Oltre alle proprietà descritte in Part Part2DObject, il corpo di PartDesign ha le seguenti proprietà nell'editor delle proprietà.

Dati

Attachment

  • DatiMap Mode: vedere Part Attachment per ulteriori informazioni su tutte le modalità di associazione.

Sketch

  • DatiConstraints: vincoli atribuiti, se esistono; altrimenti è un elenco [] vuoto.

Hidden properties Data

See Part Part2DObject for the rest of the hidden properties.

Base

  • DatiProxy (PythonObject): a custom class associated with this object. This only exists for the Python version. See Scripting.

Sketch

  • DatiGeometry (GeometryList): a list of Part geometries that exist inside the sketch.
  • DatiExternal Geometry (LinkSubList): a list of Part geometries outside this Sketch that are used for reference.

Vista

Auto Constraints

  • VistaAutoconstraints: se è true prova ad impostare i vincoli quando viene disegnata la geometria.

Visibility automation

  • VistaEditing Workbench: normalmente SketcherWorkbench, è il nome dell'ambiente da attivare durante la modifica dello schizzo.
  • VistaHide Dependent: se è true tutti gli oggetti che dipendono dallo schizzo vengono nascosti quando si apre lo schizzo.
  • VistaRestore Camera: se è true la posizione della telecamera viene salvata prima di aprire lo schizzo e viene ripristinata quando lo si chiude.
  • VistaShow Links: se è true tutti gli oggetti utilizzati nei collegamenti alla geometria esterna vengono visualizzati quando si apre lo schizzo.
  • VistaShow Support: se è true tutti gli oggetti a cui è associato questo schizzo vengono mostrati quando si apre lo schizzo.

Hidden properties View

Base

  • VistaProxy (PythonObject): a custom view provider class associated with this object. This only exists for the Python version. See Scripting.

Visibility automation

  • VistaTempo Vis (PythonObject): a custom class associated with this object, that handles hiding and showing other objects when opening and closing the sketch.

All other view properties, including hidden properties, are those of the base Part Feature object.

Script

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

Vedere Part Feature per le informazioni generali.

Un oggetto Sketcher SketchObject viene creato con il metodo addObject() del documento.

import FreeCAD as App

doc = App.newDocument()
obj = App.ActiveDocument.addObject("Sketcher::SketchObject", "Sketch")
obj.Label = "Custom label"

This basic Sketcher::SketchObject doesn't have a Proxy object so it can't be fully used for sub-classing.

Therefore, for Python subclassing, you should create the Sketcher::SketchObjectPython object.

import FreeCAD as App

doc = App.newDocument()
obj = App.ActiveDocument.addObject("Sketcher::SketchObjectPython", "CustomSketch")
obj.Label = "Custom label"