App FeaturePython/fr: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
No edit summary
Line 31: Line 31:
{{TitleProperty|Base}}
{{TitleProperty|Base}}


* {{PropertyData/fr|Proxy|PythonObject|Hidden}}: une classe personnalisée associée à cet objet.
<div class="mw-translate-fuzzy">
* {{PropertyData/fr|Expression Engine|ExpressionEngine}}: une liste d'expressions. Par défaut, elle est vide {{value|[]}}.
* {{PropertyData/fr|Label|String}}: le nom modifiable par l'utilisateur de cet objet, c'est une chaîne UTF8 arbitraire.
* {{PropertyData/fr|Label2|String}}: description plus longue et modifiable par l'utilisateur de cet objet, il s'agit d'une chaîne UTF8 arbitraire qui peut inclure des retours à la ligne. Par défaut, il s'agit d'une chaîne vide {{value|""}}.
* {{PropertyData/fr|Label2|String|Hidden}}: une description plus longue et modifiable par l'utilisateur de cet objet, c'est une chaîne UTF8 arbitraire qui peut inclure des retours à la ligne. Par défaut, c'est une chaîne vide {{value|""}}.
* {{PropertyData/fr|Proxy|PythonObject}}: classe associée à cet objet.
* {{PropertyData/fr|Expression Engine|ExpressionEngine|Hidden}}: une liste d'expressions. Par défaut vide {{value|[]}}.
* {{PropertyData/fr|Visibility|Bool}}: affiche ou non l'objet.
* {{PropertyData/fr|Visibility|Bool|Hidden}}: affiche ou non l'objet.
</div>


=== Vue ===
=== Vue ===

Revision as of 07:32, 17 September 2020

Other languages:

Introduction

Un objet App FeaturePython, ou officiellement App::FeaturePython, est une simple instance de App DocumentObject dans Python.

Il s'agit d'un objet simple qui, par défaut, n'a pas beaucoup de propriétés, par exemple, pas de Positionnement ni forme topologique. Cet objet est destiné à un usage général, et en lui donnant des propriétés. Il peut être utilisé pour gérer différents types de données.

Diagramme simplifié des relations entre les objets centraux du programme. La classe App::FeaturePython est une implémentation simple de App::DocumentObject qui peut être utilisée à n'importe quelle fin, car elle n'a pas de TopoShape par défaut.

Utilisation

App FeaturePython est un objet interne. Il ne peut donc pas être créé à partir de l'interface graphique. Il est censé être sous-classé par des classes qui géreront différents types de données.

Voir Script pour plus d'informations.

Propriétés

Une classe App FeaturePython (App::FeaturePython classe) est dérivée de la classe de base App DocumentObject (App::DocumentObject classe).Elle partage toutes les propriétés de cette dernière.

En plus des propriétés décrites dans App DocumentObject, FeaturePython possède un fournisseur de vues de base, il apparaît donc dans la vue arborescente.

Voir Propriétés pour tous les types de propriétés que les objets scriptés peuvent avoir.

Ce sont les propriétés disponibles dans l'éditeur de propriétés. Les propriétés masquées peuvent être affichées en utilisant la commande Show all dans le menu contextuel de l'éditeur de propriétés.

Données

Base

  • Données (caché)Proxy (PythonObject): une classe personnalisée associée à cet objet.
  • DonnéesLabel (String): le nom modifiable par l'utilisateur de cet objet, c'est une chaîne UTF8 arbitraire.
  • Données (caché)Label2 (String): une description plus longue et modifiable par l'utilisateur de cet objet, c'est une chaîne UTF8 arbitraire qui peut inclure des retours à la ligne. Par défaut, c'est une chaîne vide "".
  • Données (caché)Expression Engine (ExpressionEngine): une liste d'expressions. Par défaut vide [].
  • Données (caché)Visibility (Bool): affiche ou non l'objet.

Vue

These properties correspond to the basic properties of the base viewprovider, Gui::ViewProviderDocumentObject, that is inherited by all viewproviders in the software.

  • VueProxy (PythonObject): une classe de fournisseur de vue personnalisée associée à cet objet.
  • Vue (Hidden)Proxy (PythonObject): a custom view provider class associated with this object. This property only exist for those classes that are able to assign a custom class.
  • VueDisplay Mode (Enumeration): vide par défaut.
  • VueOn Top When Selected (Enumeration): Disabled (défaut), Enabled, Object, Element.
  • VueSelection Style (Enumeration): Shape (défaut), BoundBox. Si l'option est Shape, la forme entière (sommets, arêtes et faces) sera mise en surbrillance dans la Vue 3D; s'il s'agit de BoundBox, seul le cadre de sélection sera mis en surbrillance.
  • VueShow In Tree (Bool): s'il s'agit de true, l'objet apparaît dans la vue arborescente. Sinon, il est défini comme invisible.
  • VueVisibility (Bool): s'il s'agit de true, l'objet apparaît dans la Vue 3D; sinon, il est invisible. Par défaut, cette propriété peut être activée et désactivée en appuyant sur la barre Espace du clavier.

Selection

  • VueOn 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.
  • VueSelection Style (Enumeration): it controls the way the object is highlighted if it has a Shape. 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.

Script

Voir aussi: Débuter avec les scripts et Objets créés par script.

Voir Part Feature pour les informations générales sur l'ajout d'objets au programme.

Un App FeaturePython est créé avec la méthode addObject() du document.

import FreeCAD as App

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

Par exemple, les éléments Draft Text, Draft Dimension et Proxy pour plan de travail de l'Atelier Draft sont des App::FeaturePython objets avec une icône personnalisée et des propriétés additionnelles. Ils contiennent des données mais pas une Part TopoShape réelle.

Si l'objet souhaité doit avoir un placement, une forme, une pièce jointe ou d'autres propriétés complexes, il est préférable de créer l'une des classes les plus complexes, par exemple, App GeoFeature, Part Feature ou Part Part2DObject.