Surface Filling/fr: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
Line 23: Line 23:
{{Button|[[File:Surface_Filling.svg|16px]] [[Surface_Filling/fr|Surface Remplissage]]}} crée une surface à partir d'une série d'arêtes de délimitation connectées. La courbure de la surface peut être contrôlée en outre par des bords et des sommets non délimités, ainsi que par une surface de support.
{{Button|[[File:Surface_Filling.svg|16px]] [[Surface_Filling/fr|Surface Remplissage]]}} crée une surface à partir d'une série d'arêtes de délimitation connectées. La courbure de la surface peut être contrôlée en outre par des bords et des sommets non délimités, ainsi que par une surface de support.


La géométrie de base peut appartenir à des courbes créées avec l'[[Draft_Workbench/fr|atelier Draft]] ou l'[[Sketcher_Workbench/fr|atelier Sketcher]], mais aussi à des objets solides tels que ceux créés avec l'[[Part_Workbench/fr|atelier Part]] ou l'[[PartDesign_Workbench/fr|atelier PartDesign]].
<div class="mw-translate-fuzzy">
Les arêtes de base qui forment le contour fermé, ainsi que les sommets et arêtes auxiliaires, peuvent appartenir à des courbes 2D de [[File:Workbench_Draft.svg|24px]] [[Draft_Workbench/fr|Draft]] ou de [[File:Workbench_Sketcher.svg|24px]] [[Sketcher_Workbench/fr|Sketcher]] mais peut également appartenir à des objets solides 3D tels que ceux créés avec [[File:Workbench_Part.svg|24px]] [[Part_Workbench/fr|Part]] ou [[File:Workbench_PartDesign.svg|24px]] [[PartDesign_Workbench/fr|PartDesign]].
</div>


[[Image:Surface_Filling_example.png|600px]]
[[Image:Surface_Filling_example.png|600px]]

Revision as of 21:05, 6 May 2022

Other languages:

Surface Remplissage

Emplacement du menu
Surface → Filling...
Ateliers
Surface
Raccourci par défaut
Aucun
Introduit dans la version
0.17
Voir aussi
Aucun

Description

Surface Remplissage crée une surface à partir d'une série d'arêtes de délimitation connectées. La courbure de la surface peut être contrôlée en outre par des bords et des sommets non délimités, ainsi que par une surface de support.

La géométrie de base peut appartenir à des courbes créées avec l'atelier Draft ou l'atelier Sketcher, mais aussi à des objets solides tels que ceux créés avec l'atelier Part ou l'atelier PartDesign.

Exemple de surface remplie, délimitée par quatre arêtes situées dans le plan XY; (à gauche) uniquement les quatre arêtes et (à droite) une courbe supplémentaire dans l'espace définissant la courbure de la surface

Utilisation

  1. Assurez-vous d'avoir au moins trois arêtes ou courbes dans l'espace formant un contour fermé. Par exemple, ceux-ci peuvent être créés avec des outils de l' atelier Draft ou de l' atelier Sketcher. L'utilisation de trois arêtes créerait une surface triangulaire; quatre arêtes une surface quadrilatérale.
    • En option, les courbes peuvent être dessinées à l'intérieur du contour fermé, sans nécessairement toucher les bords. Ces courbes peuvent être utilisées pour contrôler la courbure de la surface résultante.
    • De même, un certain nombre de sommets peuvent être utilisés dans le même but pour indiquer où la surface doit passer.
  2. Appuyez sur le bouton Filling....
  3. Dans la section Boundary, appuyez sur Add edge.
  4. Utilisez le pointeur pour sélectionner les arêtes souhaitées dans la Vue 3D. Un aperçu de la forme finale sera affiché après avoir sélectionné des arêtes valides qui forment un contour fermé.
    • En option, allez dans la section Curvature: non-boundary edges, appuyez sur Add edge et choisissez les arêtes souhaitées dans la Vue 3D .
    • En option, allez dans la section Curvature: non-boundary vertices, appuyez sur Add vertex et choisissez les sommets désirés dans la Vue 3D .
  5. Appuyez sur OK pour terminer l'opération.

Options

  • Dans la section Boundary.
  • Right mouse button: ouvrez le menu contextuel et sélectionnez Remove ou appuyez sur Suppr au clavier pour supprimer le bord actuellement sélectionné dans la liste.
  • Section Curvature: non-boundary edges. Le bouton Add edge permet de sélectionner des arêtes auxiliaires (lignes droites ou B-Splines) pour contrôler la courbure de la surface. La surface sera forcée de passer à travers ces bords auxiliaires. Cela fonctionne mieux lorsque les arêtes auxiliaires se trouvent à l'intérieur de la région délimitée par Boundary bords.
  • Section Curvature: non-boundary vertices. Similaire aux arêtes non-frontières (non-boundary edges), l'utilisateur peut choisir des sommets auxiliaires pour contrôler la courbure. Ces sommets peuvent être autonomes Draft Points ou Part Points ou peut appartenir à n'importe quelle arête (lignes droites ou B-Splines) ou être un sommet d'angle dans un objet solide. Dans ce cas, la surface sera contrainte de passer par ces points auxiliaires.
  • Appuyez sur Cancel ou Echap pour abandonner l'opération en cours.
  • In the Vertex constraints section non-boundary vertices can be specified:
    • The selection options are similar to those for boundary edges.
  • Press Esc or the Cancel button to abort the operation.

Example

The Support surface acts as an additional constraint for the surface. The following simple example will give you an idea how this works:

  1. In the Part Workbench create a cylinder and set its DonnéesAngle to 180°.
  2. Switch to the Surface Workbench and press the Filling button.
  3. Select the two semi-circular edges and the two straight edges that connect them.
  4. The result matches the four boundary edges, but the inner shape is quite different from the cylindrical face.
  5. Edit the Surface object and for the Support surface select the cylindrical face.
  6. The modified shape matches the cylindrical face much more closely.

Propriétés

Surface Remplissage (classe Surface::Filling) est dérivée de la classe de base Part Feature (classe Part::Feature via la sous-classe Part::Spline), elle partage donc toutes les propriétés de cette dernière.

Outre les propriétés décrites dans Part Feature, Surface Remplissage a les propriétés suivantes dans l'éditeur de propriétés.

Données

Filling

  • DonnéesBoundary Edges (LinkSubList): bords de frontière; C0 est requis pour les arêtes sans face correspondante.
  • DonnéesBoundary Faces (StringList):
  • DonnéesBoundary Order (IntegerList): ordre de contrainte sur les faces limites; 0, 1 et 2 sont possibles.
  • DonnéesBords non liés (LinkSubList): bords de contrainte non liés; C0 est requis pour les arêtes sans face correspondante.
  • DonnéesUnbound Faces (StringList):
  • DonnéesUnbound Order (IntegerList): ordre de contrainte sur les faces non liées; 0, 1 et 2 sont possibles.
  • DonnéesFree Faces (LinkSubList): contrainte libre sur une face.
  • DonnéesFree Order (IntegerList): ordre de contrainte sur les faces libres.
  • DonnéesPoints (LinkSubList): points de contrainte sur la surface.
  • DonnéesInitial Face (LinkSub): surface initiale à utiliser.
  • DonnéesDegree (Integer): degré de départ, la valeur par défaut est 3.
  • DonnéesPoints On Curve (Integer): nombre de points sur une arête pour la contrainte.
  • DonnéesIterations (Integer): nombre d'itérations, la valeur par défaut est 2.
  • DonnéesAnisotropy (Bool): il vaut par défaut false.
  • DonnéesTolerance2d (Float): tolérance 2D, la valeur par défaut est 0.0.
  • DonnéesTolerance3d (Float): tolérance 3D, la valeur par défaut est 0.0.
  • DonnéesTol Angular (Float): tolérance G1, la valeur par défaut est 0.01.
  • DonnéesTol Curvature (Float): tolérance G2, la valeur par défaut est 0.10.
  • DonnéesMaximum Degree (Integer): degré maximum de la courbe, la valeur par défaut est 8.
  • DonnéesMaximum Segments (Integer): nombre maximum de segments, la valeur par défaut est 9.

Vue

Base

  • VueControl Points (Bool): la valeur par défaut est false. Mis à true, elle affichera une superposition avec les points de contrôle de la surface.

Script

Voir aussi: FreeCAD Script de base.

L'outil Remplissage de Surface peut être utilisé dans macros et depuis la console Python en ajoutant l'objet Surface :: Filling.

  • Les arêtes à utiliser pour définir la surface doivent être affectées en tant que LinkSubList à la propriété BoundaryEdges de l'objet.
  • Les arêtes et les sommets auxiliaires doivent être affectés en tant que LinkSubLists aux propriétés UnboundEdges et Points de l'objet.
  • Tous les objets avec des arêtes doivent être calculés avant de pouvoir être utilisés comme entrée pour les propriétés de l'objet Filling.
import FreeCAD as App
import Draft

doc = App.newDocument()

a = App.Vector(-20, -20, 0)
b = App.Vector(-18, 25, 0)
c = App.Vector(60, 26, 0)
d = App.Vector(33, -20, 0)

points1 = [a, App.Vector(-20, -8, 0), App.Vector(-17, 7, 0), b]
obj1 = Draft.make_bspline(points1)

points2 = [b, App.Vector(0, 25, 0), c]
obj2 = Draft.make_bspline(points2)

points3 = [c, App.Vector(37, 4, 0), d]
obj3 = Draft.make_bspline(points3)

points4 = [d, App.Vector(-2, -18, 0), a]
obj4 = Draft.make_bspline(points4)
doc.recompute()

surf = doc.addObject("Surface::Filling", "Surface")
surf.BoundaryEdges = [(obj1, "Edge1"),
                      (obj2, "Edge1"),
                      (obj3, "Edge1"),
                      (obj4, "Edge1")]
doc.recompute()

# ---------------------------------------------------------
points_spl = [App.Vector(-10, 0, 2),
              App.Vector(4, 0, 7),
              App.Vector(18, 0, -5),
              App.Vector(25, 0, 0),
              App.Vector(30, 0, 0)]
aux_edge = Draft.make_bspline(points_spl)
doc.recompute()

surf.UnboundEdges = [(aux_edge, "Edge1")]
doc.recompute()

# ---------------------------------------------------------
aux_v1 = Draft.make_line(App.Vector(-13, -12, 5),
                         App.Vector(-13, -12, -5))
aux_v2 = Draft.make_line(App.Vector(-3, 18, 5),
                         App.Vector(-3, 18, -5))
doc.recompute()

surf.Points = [(aux_v1, "Vertex2"),
               (aux_v2, "Vertex1")]
doc.recompute()