Surface Remplissage
|
|
| Emplacement du menu |
|---|
| Surface → Remplir |
| Ateliers |
| Surface |
| Raccourci par défaut |
| Aucun |
| Introduit dans la version |
| 0.17 |
| Voir aussi |
| Aucun |
Description
L'outil Surface Remplissage crée une surface à partir d'une série d'arêtes limites connectées. La courbure de la surface peut être contrôlée en outre par des arêtes 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.
Deux surfaces remplies délimitées par quatre arêtes situées sur le plan XY. La surface de droite est en plus contrôlée par une arête non délimitée.
Utilisation
- Il y a plusieurs façons de lancer l'outil :
- Appuyez sur le bouton
Remplir .
- Sélectionnez l'option Surface →
Remplir du menu.
- Appuyez sur le bouton
- Le panneau de tâches Limites s'ouvre. Voir Options.
- Sélectionnez deux ou plusieurs arêtes dans la vue 3D :
- Il n'est pas nécessaire d'appuyer sur le bouton Ajouter une arête dans la section Limites à ce moment-là.
- Les arêtes doivent être sélectionnées dans un ordre consécutif.
- Les arêtes doivent être connectées, mais la frontière complète ne doit pas nécessairement être fermée.
- Le contour complet ne doit pas s'auto-intersecter.
- Pour un contour circulaire de 360°, deux arêtes semi-circulaires peuvent être sélectionnées.
- Un aperçu de la forme finale s'affiche dès qu'un nombre suffisant de géométries valides a été sélectionné.
- Optionnellement, sélectionnez une Surface de support. Voir Exemple.
- Vous pouvez sélectionner une ou plusieurs Contraintes d'arête.
- Vous pouvez sélectionner une ou plusieurs Contraintes de sommet.
- Appuyez sur le bouton OK.
Options
- Dans la section Limites, vous pouvez spécifier une surface de support et les arêtes limites :
- Appuyez sur le bouton Surface de support et sélectionnez une face dans la vue 3D pour ajouter une surface de support.
- Appuyez une fois sur le bouton Ajouter une arête pour commencer à sélectionner les arêtes limites dans la vue 3D.
- Il existe plusieurs façons de désélectionner les arêtes limites :
- Appuyez une fois sur le bouton Supprimer l'arête pour commencer à désélectionner les arêtes dans la vue 3D.
- Sélectionnez une arête dans la liste et appuyez sur Supprimer.
- Cliquez avec le bouton droit de la souris sur un bord de la liste et sélectionnez Supprimer dans le menu contextuel.
- Dans la section Contraintes d'arêtes, il est possible de spécifier des arêtes non limites :
- Les options de sélection sont similaires à celles des arêtes limites.
- Dans la section Contraintes de sommets, il est possible de spécifier des sommets non limites :
- Les options de sélection sont similaires à celles des arêtes limites.
- Appuyez sur Échap ou sur le bouton Annuler pour annuler l'opération.
Exemple
Surface de support agit comme une contrainte supplémentaire pour la surface. L'exemple simple suivant vous donnera une idée de la façon dont cela fonctionne :
- Dans l'
atelier Part, créez un
cylindre et définissez DonnéesAngle à
180°. - Passez à l'
atelier Surface et appuyez sur
Remplir.
- Sélectionnez les deux arêtes semi-circulaires et les deux arêtes rectilignes qui les relient.
- Le résultat correspond aux quatre arêtes limites mais la forme intérieure est très différente de la face cylindrique.
- Éditez l'objet Surface et pour la Surface de support, sélectionnez la face cylindrique.
- La forme modifiée correspond beaucoup mieux à la face cylindrique.
Propriétés
Un objet Surface Filling (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, un objet Surface Filling a les propriétés suivantes dans l'éditeur de propriétés.
Données
Filling
- DonnéesBoundary Edges (
LinkSubList) : arêtes 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,1et2sont possibles. - DonnéesUnbound Edges (
LinkSubList) : arêtes 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,1et2sont 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, par défaut3. - DonnéesPoints On Curve (
Integer) : nombre de points sur une arête pour la contrainte. - DonnéesIterations (
Integer) : nombre d'itérations, par défaut2. - DonnéesAnisotropy (
Bool) : par défautfalse. - DonnéesTolerance2d (
Float) : tolérance 2D, par défaut0.0. - DonnéesTolerance3d (
Float) : tolérance 3D, par défaut0.0. - DonnéesTol Angular (
Float) : tolérance G1, par défaut0.01. - DonnéesTol Curvature (
Float) : tolérance G2, par défaut0.10. - DonnéesMaximum Degree (
Integer) : degré maximum de la courbe, par défaut8. - DonnéesMaximum Segments (
Integer) : nombre maximum de segments, par défaut9.
Vue
Base
- VueControl Points (
Bool) : par défautfalse. Mis àtrue, elle affichera une superposition avec les points de contrôle de la surface.
Script
Voir aussi : FreeCAD Script de base.
L'outil Surface Remplissage peut être utilisé dans des 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é
BoundaryEdgesde l'objet. - Les arêtes et les sommets auxiliaires doivent être affectés en tant que LinkSubLists aux propriétés
UnboundEdgesetPointsde 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()
- Démarrer avec FreeCAD
- Installation : Téléchargements, Windows, Linux, Mac, Logiciels supplémentaires, Docker, AppImage, Ubuntu Snap
- Bases : À propos de FreeCAD, Interface, Navigation par la souris, Méthodes de sélection, Objet name, Préférences, Ateliers, Structure du document, Propriétés, Contribuer à FreeCAD, Faire un don
- Aide : Tutoriels, Tutoriels vidéo
- Ateliers : Std Base, Assembly, BIM, CAM, Draft, FEM, Inspection, Material, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test