Mesh Feature/fr: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
 
(27 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
{{TOCright}}


== Introduction ==
== Introduction ==


[[File:Mesh_Tree.svg|32px]]
{{TOCright}}


Un objet [[Image:Tree_Mesh.svg|32px]] [[Mesh Feature/fr|Mesh Feature]] ou officiellement un {{incode|Mesh::Feature}} est un élément simple avec un [[Mesh_MeshObject/fr|mesh objet]] qui lui est associé et qui peut être affiché dans la [[3D view/fr|vue 3D]].
Un objet [[Mesh Feature/fr|Mesh Feature]], ou formellement un {{incode|Mesh::Feature}}, est un élément simple avec un [[Mesh_MeshObject/fr|objet de maillage]] associé qui peut être affiché dans la [[3D_view/fr|vue 3D]].


Une fonction de maillage (Mesh Feature) est conceptuellement similaire à une [[Part_Feature/fr|Part Feature]]. Le premier est l'objet de base pour les éléments avec des informations de "maillage", tandis que le second est l'objet de base pour les éléments avec des informations de "forme géométrique".
Une fonction de maillage (Mesh Feature) est conceptuellement similaire à une [[Part_Feature/fr|Part Feature]]. Le premier est l'objet de base pour les éléments avec des informations de "maillage", tandis que le second est l'objet de base pour les éléments avec des informations de "forme géométrique".


Veuillez noter que l'{{Button|[[Image:Workbench_FEM.svg|16px]] [[FEM Workbench/fr|atelier FEM]]}} utilise également des maillages, mais dans ce cas, il utilise un objet différent, appelé [[Fem_FemMeshObject/fr|Fem FemMeshObject]] (classe {{incode|Fem::FemMeshObject}}). Cet objet n'est pas dérivé de la fonction de maillage, il a donc des propriétés différentes.
Notez que l'{{Button|[[Image:Workbench_FEM.svg|16px]] [[FEM_Workbench/fr|atelier FEM]]}} utilise également des maillages, mais dans ce cas, il utilise un objet différent, appelé [[FEM_Mesh/fr|FEM FemMeshObject]] (classe {{incode|Fem::FemMeshObject}}). Cet objet n'est pas dérivé de la fonction de maillage et possède des propriétés différentes.


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


{{Caption|Diagramme simplifié des relations entre les objets centraux dans Freecad}}
{{Caption|Diagramme simplifié des relations entre les objets centraux du programme. La classe {{incode|Mesh::Feature}} est à l'origine de la plupart des objets possédant un [[Mesh_MeshObject/fr|maillage triangulaire]]. Ces objets sont créés à partir de l'[[Mesh Workbench/fr|atelier Mesh]] ou en important des fichiers STL, OBJ et des formats de maillage similaires.}}


== Utilisation ==
== Utilisation ==


Presque tous les objets maillés créés par les commandes disponibles dans l'interface graphique de l'[[Mesh Workbench/fr|atelier Mesh]] sont des [[Mesh Feature/fr|Mesh Features]]. Les objets maillés paramétriques créés par la commande [[Mesh_BuildRegularSolid/fr|Mesh Solide régulier]] sont les seules exceptions. Un [[Mesh Feature/fr|Mesh Feature]] peut également être créé à partir de la [[Python console/fr|console Python]] comme décrit dans la section [[Mesh_Feature/fr#Script|Script]].
Presque tous les objets maillés créés par les commandes disponibles dans l'interface graphique de l'[[Mesh_Workbench/fr|atelier Mesh]] sont des [[Mesh_Feature/fr|Mesh Features]]. Les objets maillés paramétriques créés par la commande [[Mesh_BuildRegularSolid/fr|Mesh Solide régulier]] sont les seules exceptions. Un [[Mesh_Feature/fr|Mesh Feature]] peut également être créé à partir de la [[Python_console/fr|console Python]] comme décrit dans la section [[Mesh_Feature/fr#Script|Script]].


L'objet {{incode|Mesh::Feature}} est défini dans l'[[Mesh_Workbench/fr|atelier Mesh]] mais peut être utilisé comme classe de base pour [[scripted objects/fr|objets scripté]] dans tous les [[Workbenches/fr|ateliers]] générant des formes géométriques 2D et 3D.
L'objet {{incode|Mesh::Feature}} est défini dans l'[[Mesh_Workbench/fr|atelier Mesh]] mais peut être utilisé comme classe de base pour les [[Scripted_objects/fr|objets scriptés]] dans tous les [[Workbenches/fr|ateliers]] générant des formes géométriques 2D et 3D.


Un {{incode|Mesh::Feature}} a des propriétés simples comme un [[Placement/fr|placement]] et des propriétés visuelles pour définir l'apparence de ses arêtes et faces.
Un {{incode|Mesh::Feature}} a des propriétés simples comme un [[Placement/fr|placement]] et des propriétés visuelles pour définir l'apparence de ses arêtes et faces.
Line 25: Line 26:
== Propriétés ==
== Propriétés ==


Voir [[Property/fr|Propriétés]] pour tous les types de propriétés que les objets crées par script peuvent avoir.
[[Mesh_Feature/fr|Part Feature]] (classe {{incode|Mesh::Feature}}) est dérivé de la classe de base [[App_GeoFeature/fr|App GeoFeature]] (classe {{incode|App::GeoFeature}}), de ce fait partage toutes les propriétés de cette dernière.


Outre les propriétés décrites dans [[App_GeoFeature/fr|App GeoFeature]], Mesh Feature possède la propriété {{PropertyData/fr|Mesh}} qui contrôle le type de géométrie affiché dans la [[3D view/fr|vue 3D]]. Elle stocke [[Mesh_MeshObject/fr|Mesh MeshObject]] de cet objet. Il s'agit de la géométrie affichée dans la [[3D view/fr|Vue 3D]].
La classe [[Mesh_Feature/fr|Mesh Feature]] (classe {{incode|Mesh::Feature}}) est dérivée de [[App_GeoFeature/fr|App GeoFeature]] de base. (classe {{incode|App::GeoFeature}}) et hérite de toutes ses propriétés. Elle possède également plusieurs propriétés supplémentaires, notamment une propriété {{PropertyData|Mesh}}, qui stocke son [[Mesh_MeshObject/fr|Mesh MeshObject]]. Il s'agit de la géométrie qui est affichée dans la [[3D_view/fr|vue 3D]].


Ce sont les propriétés disponibles dans l'[[Property_editor/fr|éditeur de propriétés]]. Les propriétés masquées peuvent être affichées en utilisant la commande {{MenuCommand|Show all}} dans le menu contextuel de l'[[Property_editor/fr|éditeur de propriétés]].
Les autres propriétés de cet objet sont celles liées à l'apparence de son [[Mesh_MeshObject/fr|Mesh MeshObject]], y compris {{PropertyView/fr|Crease Angle}}, {{PropertyView/fr|Lighting}}, {{PropertyView/fr|Line Color}}, {{PropertyView/fr|Line Transparency}}, {{PropertyView/fr|Line Width}}, {{PropertyView/fr|Open Edges}}, {{PropertyView/fr|Point Size}} ainsi que la propriété masquée {{PropertyView/fr|Coloring}}.

Voir [[Property/fr|Propriétés]] pour tous les types de propriétés que les objets crées par script peuvent avoir.

Ce sont les propriétés disponibles dans l'[[property editor/fr|éditeur de propriétés]]. Les propriétés masquées peuvent être affichées en utilisant la commande {{MenuCommand|Show all}} dans le menu contextuel de l'[[property editor/fr|éditeur de propriétés]].


=== Données ===
=== Données ===
Line 39: Line 36:
{{TitleProperty|Base}}
{{TitleProperty|Base}}


* {{PropertyData/fr|Mesh|MeshKernel}}: une classe [[Mesh_MeshObject/fr|Mesh MeshObject]] associée à cet objet. Elle répertorie le nombre de {{Value|Points}}, {{Value|Edges}} et {{Value|Faces}} du maillage.
* {{PropertyData|Proxy|PythonObject|Hidden}} : une classe personnalisée associée à cet objet. Ceci n'existe que pour la version en [[Python/fr|Python]]. Voir [[#Script|Script]].
* {{PropertyData|Mesh|MeshKernel}}: une classe [[Mesh_MeshObject/fr|Mesh MeshObject]] associée à cet objet. Elle répertorie le nombre de {{Value|Points}}, {{Value|Edges}} et {{Value|Faces}} du maillage.
* {{PropertyData/fr|Placement|Placement}}: la position de l'objet dans la [[3D_view/fr|vue 3D]]. Le placement est défini par un {{incode|Base}} point (vecteur) et un {{incode|Rotation}} (axe et angle). Voir [[Placement/fr|Placement]].
* {{PropertyData|Placement|Placement}}: la position de l'objet dans la [[3D_view/fr|vue 3D]]. Le placement est défini par un {{incode|Base}} point (vecteur) et un {{incode|Rotation}} (axe et angle). Voir [[Placement/fr|Placement]].
** {{PropertyData/fr|Angle}}: l'angle de rotation autour de {{PropertyData/fr|Axis}}. Par défaut, {{value|0°}} (zéro degré).
** {{PropertyData|Angle}}: l'angle de rotation autour de {{PropertyData/fr|Axis}}. Par défaut, {{value|0°}} (zéro degré).
** {{PropertyData/fr|Axis}}: le vecteur unitaire qui définit l'axe de rotation du placement. Chaque composant est une valeur à virgule flottante entre {{value|0}} et {{value|1}}. Si une valeur est supérieure à {{value|1}}, le vecteur est normalisé de sorte que la norme du vecteur soit {{value|1}}. Par défaut, il s'agit de l'axe Z positif, {{value|(0, 0, 1)}}.
** {{PropertyData/fr|Position}}: un vecteur avec les coordonnées 3D du point de base. Par défaut, il s'agit de l'origine {{value|(0, 0, 0)}}.
** {{PropertyData|Axis}}: le vecteur unitaire qui définit l'axe de rotation du placement. Chaque composant est une valeur à virgule flottante entre {{value|0}} et {{value|1}}. Si une valeur est supérieure à {{value|1}}, le vecteur est normalisé de sorte que la norme du vecteur soit {{value|1}}. Par défaut, il s'agit de l'axe Z positif, {{value|(0, 0, 1)}}.
* {{PropertyData/fr|Label|String}}: le nom modifiable par l'utilisateur de cet objet, c'est une chaîne UTF8 arbitraire.
** {{PropertyData|Position}}: un vecteur avec les coordonnées 3D du point de base. Par défaut, il s'agit de l'origine {{value|(0, 0, 0)}}.
* {{PropertyData|Label|String}}: le nom modifiable par l'utilisateur de cet objet, c'est une chaîne UTF8 arbitraire.
* {{PropertyData|Label2|String|Hidden}} : une description plus longue, modifiable par l'utilisateur, de cet objet. Il s'agit d'une chaîne UTF8 arbitraire qui peut inclure des nouvelles lignes. Par défaut, il s'agit d'une chaîne vide {{value|""}}.
* {{PropertyData|Expression Engine|ExpressionEngine|Hidden}} : une liste d'expressions. Par défaut, elle est vide {{value|[]}}.
* {{PropertyData|Visibility|Bool|Hidden}} : affichage ou non de l'objet.


=== Vue ===
===== Propriétés cachées de Données =====


{{TitleProperty|Base}}
{{TitleProperty|Base}}


* {{PropertyView|Proxy|PythonObject|Hidden}} : une classe personnalisée de [[Viewprovider/fr|viewprovider]] associée à cet objet. Ceci n'existe que pour la version en [[Python/fr|Python]]. Voir [[#Script|Script]].
* {{PropertyData/fr|Expression Engine|ExpressionEngine}}: une liste d'expressions. Par défaut, vide {{value|[]}}.
* {{PropertyData/fr|Label2|String}}: description plus longue et modifiable par l'utilisateur de cet objet, il s'agit d'une chaîne UTF8 arbitraire. Par défaut, il s'agit d'une chaîne vide {{value|""}}.
* {{PropertyData/fr|Proxy|PythonObject}}: une classe personnalisée associée à cet objet. Cela n'existe que pour la version [[Python/fr|Python]]. Voir [[Mesh_Feature/fr#Script|Script]].
* {{PropertyData/fr|Visibility|Bool}}: affiche ou non l'objet.


{{TitleProperty|Display Options}}
=== Vue ===


* {{PropertyView|Bounding Box|Bool}} : si la valeur est {{TRUE}}, l'objet affichera la boîte englobante dans la [[3D_view/fr|vue 3D]].
La plupart des objets dans FreeCAD ont ce qu'on appelle un "fournisseur de vues", c'est-à-dire une classe qui définit l'apparence visuelle de l'objet dans la [[3D view/fr|vue 3D]] et dans la [[tree view/fr|vue en arborescence]] . Le fournisseur de vue par défaut des objets Mesh Feature définit les propriétés suivantes. Les objets scriptés dérivés de Mesh Feature auront également accès à ces propriétés.
* {{PropertyView|Display Mode|Enumeration}} : {{value|Shaded}} (pas d'arêtes), {{value|Wireframe}} (pas de faces), {{value|Flat Lines}} (affichage classique), {{value|Points}} (uniquement les sommets).
* {{PropertyView|Show In Tree|Bool}} : si la valeur est {{TRUE}}, l'objet apparaît dans la [[Tree_view|Tree view]]. Sinon, il est défini comme invisible.
* {{PropertyView|Visibility|Bool}} : si elle est {{TRUE}}, l'objet apparaît dans la [[3D_view/fr|vue 3D]] ; sinon, il est invisible. Par défaut, cette propriété peut être activée ou désactivée en appuyant sur la barre {{KEY|Espace}}.


{{TitleProperty|Base}}
{{TitleProperty|Object Style}}


* {{PropertyView/fr|Bounding Box|Bool}}: s'il est {{TRUE}}, l'objet affichera le cadre de délimitation dans la [[3D_view/fr|vue 3D]].
* {{PropertyView|Coloring|Bool|Hidden}} : la valeur par défaut est {{FALSE}}.
* {{PropertyView/fr|Crease Angle|FloatConstraint}}:
* {{PropertyView|Crease Angle|FloatConstraint}} :
* {{PropertyView/fr|Display Mode|Enumeration}}: {{value|Shaded}} (sans arêtes), {{value|Wireframe}} (sans faces), {{value|Flat Lines}} (visualisation régulière), {{value|Points}} (uniquement les sommets).
* {{PropertyView|Lighting|Enumeration}} : {{value|Un côté}}. (par défaut), {{value|Two side}} ; l'éclairage provient de deux côtés ou d'un seul côté dans la [[3D_view/fr|vue 3D]].
* {{PropertyView|Line Color|Color}} : un tuple de trois valeurs RVB à virgule flottante {{value|(r,g,b)}} pour définir la couleur des bords dans la [[3D_view/fr|vue 3D]] ; par défaut, il s'agit de {{value|(0.0, 0.0, 0.0)}}, qui est affiché comme {{value|[0,0,0]}} sur la base 255, <span style="background-color:#000; color:#eee; width:3em; height:12pt; padding: 2px 1em 2px;">complètement noir</span>.
* {{PropertyView/fr|Lighting|Enumeration}}: {{value|One side}} (par défaut), {{value|Two side}}. L'éclairage provient de deux côtés ou d'un côté dans la [[3D_view/fr|vue 3D]].
* {{PropertyView/fr|Line Color|Color}}: un tuple de trois valeurs RVB à virgule flottante {{value|(r,g,b)}} pour définir la couleur des arêtes dans la [[3D_view/fr|vue 3D]]; par défaut, il s'agit de {{value|(0.0, 0.0, 0.0)}}, qui s'affiche sous la forme {{value|[0,0,0]}} en base 255, <span style="background-color:#000; color:#eee; width:3em; height:12pt; padding: 2px 1em 2px;">complètement noir</span>.
* {{PropertyView|Line Transparency|Percent}} : un nombre entier de {{value|0}} à {{value|100}} (un pourcentage) qui détermine le niveau de transparence des bords dans la [[3D_view/fr|vue 3D]]. Une valeur de {{value|100}} indique des bords complètement invisibles ; les bords sont invisibles mais peuvent toujours être sélectionnés tant que {{PropertyView|Selectable}} est {{TRUE}}.
* {{PropertyView/fr|Line Transparency|Percent}}: un entier de {{value|0}} à {{value|100}} (un pourcentage) qui détermine le niveau de transparence des arêtes dans la [[3D_view/fr|Vue 3D]]. Une valeur de {{value|100}} indique des arêtes complètement invisibles; les bords sont invisibles mais ils peuvent toujours être choisis tant que {{PropertyView/fr|Selectable}} est {{TRUE}}.
* {{PropertyView|Line Width|FloatConstraint}} : un flottant qui détermine la largeur en pixels des bords dans la [[3D_view/fr|vue 3D]]. La valeur par défaut est {{value|1.0}}.
* {{PropertyView/fr|Line Width|FloatConstraint}}: valeur en flottant qui détermine la largeur en pixels des bords dans la [[3D_view/fr|vue 3D]]. La valeur par défaut est {{value|1.0}}.
* {{PropertyView|Open Edges|Bool}} : la valeur par défaut est {{FALSE}}.
* {{PropertyView|Point Size|FloatConstraint}} : similaire à {{PropertyView|Line Width}}, définit la taille des sommets.
* {{PropertyView/fr|On Top When Selected|Enumeration}}: {{value|Disabled}} (par défaut), {{value|Enabled}}, {{value|Object}}, {{value|Element}}.
* {{PropertyView|Shape Color|Color}} : similaire à {{PropertyView|Line Color}}, définit la couleur des faces. La valeur par défaut est {{value|(0.8, 0.8, 0.8)}}, qui s'affiche comme {{value|[204,204,204]}} sur la base 255, un <span style="background-color:#ccc; width:3em; height:12pt; padding: 2px 1em 2px;">gris clair</span>.
* {{PropertyView/fr|Open Edges|Bool}}: la valeur par défaut est {{FALSE}}.
* {{PropertyView/fr|Point Size|FloatConstraint}}: similaire à {{PropertyView/fr|Line Width}}, définit la taille des sommets.
* {{PropertyView|Shape Material|Material|Hidden}} : un [[App_Material/fr|App Material]] associé à cet objet. Par défaut, il est vide.
* {{PropertyView/fr|Selectable|Bool}}: s'il est {{TRUE}}, l'objet peut être sélectionné avec le pointeur dans la [[3D_view/fr|vue 3D]]. Sinon, l'objet ne peut pas être sélectionné tant que cette option n'est pas définie sur {{TRUE}}.
* {{PropertyView|Transparency|Percent}} : un nombre entier compris entre {{value|0}} et {{value|100}} (un pourcentage) qui détermine le niveau de transparence des faces dans la [[3D_view/fr|vue 3D]]. Une valeur de {{value|100}} indique des faces complètement invisibles ; les faces sont invisibles mais peuvent toujours être sélectionnées tant que {{PropertyView|Selectable}} est {{TRUE}}.
* {{PropertyView/fr|Selection Style|Enumeration}}: {{value|Shape}} (par défaut), {{value|BoundBox}}. Si l'option est {{value|Shape}}, la forme entière (sommets, arêtes et faces) sera mise en évidence dans [[3D_view/fr|vue 3D]]; s'il s'agit de {{value|BoundBox}}, seul le cadre englobant sera mis en surbrillance.
* {{PropertyView/fr|Shape Color|Color}}: similaire à {{PropertyView/fr|Line Color}}, définit la couleur des faces. La valeur par défaut est {{value|(0.8, 0.8, 0.8)}}, qui s'affiche sous la forme {{value|[204,204,204]}} sur la base 255, un <span style="background-color:#ccc; width:3em; height:12pt; padding: 2px 1em 2px;">gris clair</span>.
* {{PropertyView/fr|Show In Tree|Bool}}: s'il vaut {{TRUE}}, l'objet apparaît dans la [[tree_view/fr|vue en arborescence]]. Sinon, il est défini comme invisible.
* {{PropertyView/fr|Transparency|Percent}}: un entier de {{value|0}} à {{value|100}} (un pourcentage) qui détermine le niveau de transparence des faces dans la [[3D_view/fr|3D vue]]. Une valeur de {{value|100}} indique des faces complètement invisibles; les faces sont invisibles mais elles peuvent toujours être sélectionnées tant que {{PropertyView/fr|Selectable}} est {{TRUE}}.
* {{PropertyView/fr|Visibility|Bool}}: s'il est {{TRUE}}, l'objet apparaît dans la [[3D_view/fr|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 {{KEY|Espace}} du clavier.


{{TitleProperty|Selection}}
===== Propriétés cachées de Données =====

{{TitleProperty|Base}}


* {{PropertyView/fr|Coloration|Bool}}: par défaut {{FALSE}}.
* {{PropertyView|On Top When Selected|Enumeration}} : {{value|Disabled}} (par défaut), {{value|Enabled}}, {{value|Object}}, {{value|Element}}.
* {{PropertyView|Selectable|Bool}} : si elle vaut {{TRUE}}, l'objet peut être sélectionné avec le pointeur dans la [[3D_view/fr|vue 3D]]. Sinon, l'objet ne peut pas être sélectionné tant que cette option n'est pas définie sur {{TRUE}}.
* {{PropertyView/fr|Proxy|PythonObject}}: une classe de fournisseur de vue personnalisée associée à cet objet. N'existe que pour la version [[Python/fr|Python]]. Voir [[Mesh_Feature/fr#Script|Script]].
* {{PropertyView|Selection Style|Enumeration}} : {{value|Shape}} (par défaut), {{value|BoundBox}}. Si l'option est {{value|Shape}}, la forme entière (sommets, arêtes et faces) sera mise en évidence dans la [[3D_view/fr|vue 3D]] ; si elle est {{value|BoundBox}}, seule la boîte de délimitation sera mise en évidence.
* {{PropertyView/fr|Shape Material|Material}}: un [[App_Material/fr|App Material]] associé à cet objet. Par defaut, vide.


== Script ==
== Script ==


{{Emphasis|Voir aussi:}} [[FreeCAD Scripting Basics/fr|Débuter avec les scripts]] et [[scripted objects/fr|Objets créés par script]].
{{Emphasis|Voir aussi :}} [[FreeCAD_Scripting_Basics/fr|Débuter avec les scripts]] et [[Scripted_objects/fr|Objets créés par script]].


Voir [[Part_Feature/fr|Part Feature]] pour les informations générales sur l'ajout d'objets au programme.
Voir [[Part_Feature/fr|Part Feature]] pour les informations générales sur l'ajout d'objets au document.


Un Mesh Feature est créée avec la méthode {{incode|addObject()}} du document.
Un Mesh Feature est créée avec la méthode {{incode|addObject()}} du document.

{{Code|code=
{{Code|code=
import FreeCAD as App
import FreeCAD as App
Line 101: Line 96:
}}
}}


Pour la sous-classification de [[Python/fr|Python]], vous devez créer l'objet {{incode|Mesh::FeaturePython}}.
Ce {{incode|Mesh::Feature}} de base n'a pas d'objet Proxy, il ne peut donc pas être entièrement utilisé pour la sous-classification.


Par conséquent, pour la sous-classe [[Python/fr|Python]], vous devez créer l'objet {{incode|Mesh::FeaturePython}}.
{{Code|code=
{{Code|code=
import FreeCAD as App
import FreeCAD as App
Line 113: Line 107:




{{Mesh Tools navi{{#translation:}}}}
{{Mesh_Tools_navi{{#translation:}}}}
{{Document objects navi{{#translation:}}}}
{{Document_objects_navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
[[Category:Glossary{{#translation:}}]]
[[Category:Glossary{{#translation:}}]]

Latest revision as of 09:48, 22 February 2022

Other languages:

Introduction

Un objet Mesh Feature, ou formellement un Mesh::Feature, est un élément simple avec un objet de maillage associé qui peut être affiché dans la vue 3D.

Une fonction de maillage (Mesh Feature) est conceptuellement similaire à une Part Feature. Le premier est l'objet de base pour les éléments avec des informations de "maillage", tandis que le second est l'objet de base pour les éléments avec des informations de "forme géométrique".

Notez que l' atelier FEM utilise également des maillages, mais dans ce cas, il utilise un objet différent, appelé FEM FemMeshObject (classe Fem::FemMeshObject). Cet objet n'est pas dérivé de la fonction de maillage et possède des propriétés différentes.

Diagramme simplifié des relations entre les objets centraux dans Freecad

Utilisation

Presque tous les objets maillés créés par les commandes disponibles dans l'interface graphique de l'atelier Mesh sont des Mesh Features. Les objets maillés paramétriques créés par la commande Mesh Solide régulier sont les seules exceptions. Un Mesh Feature peut également être créé à partir de la console Python comme décrit dans la section Script.

L'objet Mesh::Feature est défini dans l'atelier Mesh mais peut être utilisé comme classe de base pour les objets scriptés dans tous les ateliers générant des formes géométriques 2D et 3D.

Un Mesh::Feature a des propriétés simples comme un placement et des propriétés visuelles pour définir l'apparence de ses arêtes et faces.

Propriétés

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

La classe Mesh Feature (classe Mesh::Feature) est dérivée de App GeoFeature de base. (classe App::GeoFeature) et hérite de toutes ses propriétés. Elle possède également plusieurs propriétés supplémentaires, notamment une propriété DonnéesMesh, qui stocke son Mesh MeshObject. Il s'agit de la géométrie qui est affichée dans la vue 3D.

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 (Hidden)Proxy (PythonObject) : une classe personnalisée associée à cet objet. Ceci n'existe que pour la version en Python. Voir Script.
  • DonnéesMesh (MeshKernel): une classe Mesh MeshObject associée à cet objet. Elle répertorie le nombre de Points, Edges et Faces du maillage.
  • DonnéesPlacement (Placement): la position de l'objet dans la vue 3D. Le placement est défini par un Base point (vecteur) et un Rotation (axe et angle). Voir Placement.
    • DonnéesAngle: l'angle de rotation autour de DonnéesAxis. Par défaut, (zéro degré).
    • DonnéesAxis: le vecteur unitaire qui définit l'axe de rotation du placement. Chaque composant est une valeur à virgule flottante entre 0 et 1. Si une valeur est supérieure à 1, le vecteur est normalisé de sorte que la norme du vecteur soit 1. Par défaut, il s'agit de l'axe Z positif, (0, 0, 1).
    • DonnéesPosition: un vecteur avec les coordonnées 3D du point de base. Par défaut, il s'agit de l'origine (0, 0, 0).
  • DonnéesLabel (String): le nom modifiable par l'utilisateur de cet objet, c'est une chaîne UTF8 arbitraire.
  • Données (Hidden)Label2 (String) : une description plus longue, modifiable par l'utilisateur, de cet objet. Il s'agit d'une chaîne UTF8 arbitraire qui peut inclure des nouvelles lignes. Par défaut, il s'agit d'une chaîne vide "".
  • Données (Hidden)Expression Engine (ExpressionEngine) : une liste d'expressions. Par défaut, elle est vide [].
  • Données (Hidden)Visibility (Bool) : affichage ou non de l'objet.

Vue

Base

  • Vue (Hidden)Proxy (PythonObject) : une classe personnalisée de viewprovider associée à cet objet. Ceci n'existe que pour la version en Python. Voir Script.

Display Options

  • VueBounding Box (Bool) : si la valeur est true, l'objet affichera la boîte englobante dans la vue 3D.
  • VueDisplay Mode (Enumeration) : Shaded (pas d'arêtes), Wireframe (pas de faces), Flat Lines (affichage classique), Points (uniquement les sommets).
  • VueShow In Tree (Bool) : si la valeur est true, l'objet apparaît dans la Tree view. Sinon, il est défini comme invisible.
  • VueVisibility (Bool) : si elle est true, l'objet apparaît dans la vue 3D ; sinon, il est invisible. Par défaut, cette propriété peut être activée ou désactivée en appuyant sur la barre Espace.

Object Style

  • Vue (Hidden)Coloring (Bool) : la valeur par défaut est false.
  • VueCrease Angle (FloatConstraint) :
  • VueLighting (Enumeration) : Un côté. (par défaut), Two side ; l'éclairage provient de deux côtés ou d'un seul côté dans la vue 3D.
  • VueLine Color (Color) : un tuple de trois valeurs RVB à virgule flottante (r,g,b) pour définir la couleur des bords dans la vue 3D ; par défaut, il s'agit de (0.0, 0.0, 0.0), qui est affiché comme [0,0,0] sur la base 255, complètement noir.
  • VueLine Transparency (Percent) : un nombre entier de 0 à 100 (un pourcentage) qui détermine le niveau de transparence des bords dans la vue 3D. Une valeur de 100 indique des bords complètement invisibles ; les bords sont invisibles mais peuvent toujours être sélectionnés tant que VueSelectable est true.
  • VueLine Width (FloatConstraint) : un flottant qui détermine la largeur en pixels des bords dans la vue 3D. La valeur par défaut est 1.0.
  • VueOpen Edges (Bool) : la valeur par défaut est false.
  • VuePoint Size (FloatConstraint) : similaire à VueLine Width, définit la taille des sommets.
  • VueShape Color (Color) : similaire à VueLine Color, définit la couleur des faces. La valeur par défaut est (0.8, 0.8, 0.8), qui s'affiche comme [204,204,204] sur la base 255, un gris clair.
  • Vue (Hidden)Shape Material (Material) : un App Material associé à cet objet. Par défaut, il est vide.
  • VueTransparency (Percent) : un nombre entier compris entre 0 et 100 (un pourcentage) qui détermine le niveau de transparence des faces dans la vue 3D. Une valeur de 100 indique des faces complètement invisibles ; les faces sont invisibles mais peuvent toujours être sélectionnées tant que VueSelectable est true.

Selection

  • VueOn Top When Selected (Enumeration) : Disabled (par défaut), Enabled, Object, Element.
  • VueSelectable (Bool) : si elle vaut true, l'objet peut être sélectionné avec le pointeur dans la vue 3D. Sinon, l'objet ne peut pas être sélectionné tant que cette option n'est pas définie sur true.
  • VueSelection Style (Enumeration) : Shape (par défaut), BoundBox. Si l'option est Shape, la forme entière (sommets, arêtes et faces) sera mise en évidence dans la vue 3D ; si elle est BoundBox, seule la boîte de délimitation sera mise en évidence.

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 document.

Un Mesh Feature est créée avec la méthode addObject() du document.

import FreeCAD as App

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

Pour la sous-classification de Python, vous devez créer l'objet Mesh::FeaturePython.

import FreeCAD as App

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