Draft Courbe de Bézier

From FreeCAD Documentation
Revision as of 21:15, 21 February 2020 by David69 (talk | contribs)

Draft Courbe de Bézier

Emplacement du menu
Draft → Outils Bézier → Courbe de Bézier
Ateliers
Draft, Arch
Raccourci par défaut
B Z
Introduit dans la version
0.14
Voir aussi
Draft Filaire, Draft BSpline

Description

L'outil Courbe de Bézier crée une courbe de Bezier (ou une partie de courbe de Bézier) à partir de plusieurs points. Il utilise l'outil Draft Propriétés de ligne défini dans Draft La barre.

La courbe de l'outil Courbe de Bézier utilise les points de control pour définir la direction de la courbe. D'autre part, l'outil BSpline Draft spécifie les points exacts par lesquels la courbe passera. Pour créer des courbes circulaires ou elliptiques exactes, utilisez Arc Draft et Ellipse Draft.

Courbe de Bézier définie par plusieurs points de control

Utilisation

  1. Lancez la commande Draft BezCurve de plusieurs manières:
    • Appuyez sur le bouton Courbe de Bézier dans la barre d'outils Draft
    • Appuyez sur les touches du clavier B puis Z
    • Utilisez l'entrée Draft → Outils Bézier → Courbe de Bézier dans le menu Draft
  2. Cliquez sur un premier point dans la vue 3D ou saisissez une Coordonnées et appuyez sur le add point bouton.
  3. Cliquez sur des points supplémentaires dans la vue 3D ou saisissez une Coordonnées et appuyez sur le add point bouton.
  4. Appuyez sur Esc ou sur le bouton Close ou double-cliquez sur le dernier point pour terminer l'édition.

L'objet est créé comme simple courbe de Bézier nombre de points - 1. Il peut être modifié partiellement après sa création en utilisant l'éditeur de propriétés. Elle peut être transformée en une courbe par tronçon composée de courbes d’un degré spécifié en modifiant ses propriétés.

La spline peut être modifiée en double-cliquant sur l'élément dans l'arborescence ou en appuyant sur le bouton Edit Draft. Vous pouvez ensuite déplacer les points vers un nouvel emplacement ou cliquer sur Ajouter un point Draft ou Effacer un point Draft puis cliquez sur le fil pour ajouter ou supprimer des points. Vous pouvez également modifier le type de contrainte de chaque point.

Contraintes les noeuds

Les extrémités des segments peuvent être contraintes de sorte que les points de contrôle adjacents soient tangents ou symétriques par rapport aux segments situés à l'extrémité. Commencez par modifier la courbe, puis sélectionnez l’un des outils, puis choisissez un point. Cliquez à nouveau sur l'outil pour le désactiver afin de pouvoir déplacer le point.

  • sharp supprime les contraintes sur les points afin que la courbe puisse avoir des angles vifs.
  • tangent force les points de contrôle adjacents à être tangents.
  • symmetric force les points de contrôle adjacents à être tangents et équidistants.

Limitations

  • La propriété Points n'apparaît pas encore dans la liste des propriétés.
  • OpenCascade, et donc FreeCAD, ne prend pas en charge les courbes de Bézier dont le degré est supérieur à 25. Cela ne devrait pas poser de problèmes, la plupart des utilisateurs utilisent généralement des courbes de Bézier allant de 3 à 5 degrés.

Options

  • Appuyez sur la touche A ou Terminer la ligne Draft pour terminer la courbe en la laissant ouverte.
  • Appuyez sur le bouton O ou Fermer la ligne Draft pour fermer la courbe, c'est-à-dire qu'un segment sera ajouté. du dernier point au premier pour former un visage. Au moins quatre points, une courbe de degré trois, sont nécessaires pour former une face.
  • Appuyez sur W ou sur le bouton Wipe pour supprimer les segments de courbe déjà placés, mais continuez à éditer la courbe à partir du dernier point.
  • Appuyez sur la touche U ou Plan de travail Draft pour ajuster le plan de travail actuel avec l'orientation du dernier point.
  • Appuyez sur X, Y ou Z après un point pour contraindre le point suivant sur l'axe donné.
  • Pour entrer les coordonnées manuellement, entrez simplement les chiffres, puis appuyez sur Entrée entre chaque composante X, Y et Z.
  • Appuyez sur R ou cliquez sur la case à cocher pour basculer en mode relatif. Si le mode relatif est activé, les coordonnées du point suivant sont relatives au dernier sinon, ils sont absolus, pris par rapport à l'origine (0,0,0).
  • Appuyez sur T ou cochez la case pour passer en mode continuer. Si le mode Continuer est activé, l'outil Courbe de Bézier redémarre une fois que vous avez terminé la courbe, ce qui vous permet d'en dessiner une autre sans appuyer à nouveau sur le bouton de l'outil.
  • Appuyez sur L ou cliquez sur la case à cocher pour passer en mode rempli. Si le mode rempli est activé, une ligne fermée créera une surface remplie (DonnéesMake Face true) dans le cas contraire, la ligne fermée ne fera pas de surface (DonnéesMake Face false).
Remarque: la courbe ne doit pas être remplie si elle se croise elle-même, car elle ne créera pas une face adéquate. Si la courbe est remplie mais qu'aucune forme n'est visible, définissez manuellement DonnéesMake Face sur false pour afficher la courbe.
  • Maintenez la touche Ctrl pendant que vous dessinez pour forcer l'Accrochage Draft de votre point au point de capture le plus proche, indépendamment de la distance.
  • Maintenez Shift pendant que vous dessinez pour contraindre Contrainte Draft votre prochain point horizontalement ou verticalement par rapport au dernier.
  • Appuyez sur Ctrl + Z ou appuyez sur le bouton Annuler le dernier segment Draft pour annuler le dernier point.
  • Appuyez sur Echap ou sur le bouton Fermer pour annuler la commande en cours; les segments de courbe déjà placés resteront.

Propriétés

Données

  • DonnéesDegree: spécifie le degré de la courbe de Bézier ou des segments individuels.
  • DonnéesClosed: spécifie si la courbe est fermée ou non. Si la courbe est initialement ouverte, cette valeur est false. En mettant sur true, un segment sera tracé pour fermer la courbe. Si la courbe est initialement fermée, cette valeur est true. En mettant sur false, le dernier segment sera supprimé et la courbe sera ouverte.
  • DonnéesMake Face: spécifie si la courbe crée une surface ou non. S'il s'agit de true, une surface est créée. Sinon, seul le périmètre est considéré comme faisant partie de l'objet. Cette propriété ne fonctionne que si DonnéesClosed est true.
Remarque: ne mettez pas DonnéesMake Face à true si la courbe se croise elle-même, elle ne créerait pas de surface.
  • DonnéesContinuity: (en lecture seule) lorsque la courbe est fermée indique la continuité de la courbe [0] ou [0,0]. Sinon c'est [].

Vues

  • VueArrow Size: spécifie la taille du symbole affiché à la fin de la courbe.
  • VueType de flèche: spécifie le type de symbole affiché à la fin de la courbe, qui peut être un point, un cercle, une flèche et une coche.
  • VueEnd Arrow: spécifie si un symbole doit être affiché au dernier point de la courbe afin qu'il puisse être utilisé comme une ligne d'annotation.
  • VuePattern: spécifie un Pattern Draft avec lequel remplir la face de la courbe fermée. Cette propriété ne fonctionne que si DonnéesMake Face est true et si VueDisplay Mode est "Lignes plates".
  • VuePattern Size: spécifie la taille du Pattern Draft.

Script

Voir aussi: Draft API et FreeCAD Scripts de base.

L'outil Courbe de Bézier peut être utilisé dans les macros et dans la console Python en utilisant la console avec la fonction suivante:

BezCurve = makeBezCurve(pointslist, closed=False, placement=None, face=None, support=None, degree=None)
BezCurve = makeBezCurve(Part.Wire, closed=False, placement=None, face=None, support=None, degree=None)
  • Crée un objet BezCurve avec la liste de points donnée, pointslist.
    • Chaque point de la liste est défini par son FreeCAD.Vector, en millimètres.
    • Sinon, l'entrée peut être un Part.Wire à partir duquel les points sont extraits.
  • Si closed est True ou si les premier et dernier points sont identiques, la courbe est fermée.
  • Si un placement est donné, il est utilisé; sinon la forme est créée à l'origine.
  • Si face est True et que le fil est fermé, la ligne forme une surface, c'est-à-dire qu'elle apparaît remplie.

Exemple:

import FreeCAD, Draft

p1 = FreeCAD.Vector(0, 0, 0)
p2 = FreeCAD.Vector(1000, 1000, 0)
p3 = FreeCAD.Vector(2000, 0, 0)
p4 = FreeCAD.Vector(1500, -2000, 0)

BezCurve1 = Draft.makeBezCurve([p1, p2, p3, p4], closed=True)
BezCurve2 = Draft.makeBezCurve([p4, 1.3*p2, p1, 4.1*p3], closed=True)
BezCurve3 = Draft.makeBezCurve([1.7*p3, 1.5*p4, 2.1*p2, p1], closed=True)