Surface Sections

From FreeCAD Documentation
Jump to navigation Jump to search
This page is a translated version of the page Surface Sections and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎français • ‎italiano

Surface Sections.svg Surface Sections

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


Description

Surface Sections.svg Surface Sections est utilisé pour créer une surface à partir d'arêtes qui représentent des sections transversales d'une surface.

Surface Sections edges example.png Surface Sections example.png

À gauche: bords de contrôle (coupes transversales). À droite: surface produite à partir de ces arêtes.


Utilisation

  1. Assurez-vous d'avoir au moins deux arêtes ou courbes dans l'espace. Par exemple, ceux-ci peuvent être créés avec des outils de l'Workbench Draft.svg atelier Draft ou de l'Workbench Sketcher.svg atelier Sketcher.
  2. Appuyez sur le bouton Surface Sections.svg Surface sections.
  3. 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é deux arêtes valides.
  5. Appuyez sur OK pour terminer l'opération.

Options

  • Add edge: appuyez une fois pour commencer à choisir les arêtes dans la Vue 3D. Les lignes individuelles telles que les Draft BSpline.svg Draft BSplines et les Sketcher CreateBSpline.svg Sketcher BSplines peuvent être choisies ainsi que n'importe quelle arête des objets solides, comme celles de PartDesign Body.svg PartDesign Corps et de Part Primitives.svg Part Primitives.
  • Remove edge: appuyez une fois pour commencer à choisir les arêtes dans la Vue 3D. Celles-ci doivent être des arêtes précédemment sélectionnées avec Add edge.
  • Bouton droit de la souris: ouvrez le menu contextuel et sélectionnez Remove ou appuyez sur Suppr au clavier pour supprimer le bord actuellement sélectionné dans la liste.
  • Drag: faites glisser l'élément actuellement sélectionné dans la liste afin de changer l'ordre dans lequel il sera traité. La liste est traitée de haut en bas.
  • Appuyez sur Cancel ou Echap pour abandonner l'opération en cours.

Propriétés

Surface Sections (classe Surface::Sections) sont dérivées de la classe de base Part Feature (classe Part::Feature via la sous-classe Part::Spline). Elles partagent donc toutes les propriétés de cette dernière.

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

Données

Sections

  • DonnéesNSections (LinkSubList): une liste d'arêtes qui seront utilisées pour construire la surface.

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.

Torsion de la surface

La forme de la surface dépend de la direction des arêtes choisies. Si des arêtes sont sélectionnées et que le résultat est une surface qui "se tord" sur elle-même, l'une des arêtes peut avoir besoin de sa liste de sommets dans l'ordre inverse. Voir les informations dans Surface GeomFillSurface.svg Surface Remplir entre les courbes limites pour une explication plus complète.

Surface twisting example smooth.png Surface twisting example twisted.png

Script

Voir aussi: FreeCAD Script de base.

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

  • Les arêtes à utiliser pour définir la surface doivent être affectées en tant que LinkSubList à la propriété NSections 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 Sections.
import FreeCAD as App
import Draft

doc = App.newDocument()

pl1 = App.Placement()
obj1 = Draft.make_circle(50, placement=pl1, face=False, startangle=0, endangle=180)

pl2 = App.Placement(App.Vector(0, 0, 25), App.Rotation())
obj2 = Draft.make_circle(30, placement=pl2, face=False, startangle=0, endangle=180)

points3 = [App.Vector(18, -10, 50),
           App.Vector(12, 10, 50),
           App.Vector(-12, 10, 50),
           App.Vector(-18, -10, 50)]
obj3 = Draft.make_bspline(points3)

points4 = [App.Vector(15, -20, 100),
           App.Vector(0, 6, 100),
           App.Vector(-15, -20, 100)]
obj4 = Draft.make_bspline(points4)
doc.recompute()

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