Draft CubicBezCurve/fr: Difference between revisions

From FreeCAD Documentation
(Created page with "Exemple:")
No edit summary
 
(99 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
{{UnfinishedDocu}}


{{Docnav/fr
{{Docnav/fr
|[[Draft_BSpline/fr|B-spline]]
|[[Draft BezCurve/fr|Courbe de Bézier Draft]]
|[[Draft_Label/fr|Etiquette Draft]]
|[[Draft_BezCurve/fr|Courbe de Bézier]]
|[[Draft_Module/fr|Atelier Draft]]
|[[Draft_Workbench/fr|Atelier Draft]]
|IconL=Draft BezCurve.svg
|IconL=Draft_BSpline.svg
|IconR=Draft_BezCurve.svg
|IconC=Workbench_Draft.svg
|IconC=Workbench_Draft.svg
|IconR=Draft_Label.svg
}}
}}



{{GuiCommand/fr
{{GuiCommand/fr
|Name=Draft CubicBezCurve
|Name=Draft CubicBezCurve
|Name/fr=Courbe de Bézier cubique Draft
|Name/fr=Draft Courbe de Bézier cubique
|MenuLocation=Draft → Outils de Bézier → Courbe de Bézier cubique
|Workbenches=[[Draft Module/fr|Atelier Draft]], [[Arch Module/fr|Atelier Arch]]
|Workbenches=[[Draft_Workbench/fr|Draft]], [[Arch_Workbench/fr|Arch]]
|MenuLocation=Draft → Outils Bézier → Courbe de Bézier cubique
|SeeAlso=[[Draft Wire/fr|Filaire Draft]], [[Draft BSpline/fr|BSpline Draft]], [[Draft BezCurve/fr|Courbe de Bézier Draft]]
|Version=0.19
|Version=0.19
|SeeAlso=[[Draft_BezCurve/fr|Draft Courbe de Bézier]], [[Draft_BSpline/fr|Draft B-spline]]
}}
}}


==Description==
==Description==


L'outil [[Draft CubicBezCurve/fr|Courbe de Bézier cubique Draft]] crée une [https://fr.wikipedia.org/wiki/Courbe_de_B%C3%A9zier Courbe de Bézier] de troisième degré. C'est l'une des courbes de Bézier les plus couramment utilisées. Cet outil vous permet de créer une grosse spline composée de plusieurs segments de Bézier au 3ème degré, d’une manière similaire à l’outil Bézier d’Inkscape. Une courbe de Bezier de n'importe quel degré peut être créée avec [[Draft BezCurve/fr|Courbe de Bézier Draft]].
La commande [[Image:Draft_CubicBezCurve.svg|24px]] '''Courbe de Bézier cubique''' crée une [https://fr.wikipedia.org/wiki/Courbe_de_B%C3%A9zier Courbe de Bézier] du troisième degré (quatre points requis).


La courbe de Bézier est l'une des courbes les plus utilisées en infographie. Cette commande vous permet de créer une courbe continue composée de plusieurs segments de Bézier du 3e degré, d'une manière similaire à l'outil Bézier de [https://inkscape.org/ Inkscape]. Une courbe de Bézier générale de n'importe quel degré peut être créée avec la commande [[Draft_BezCurve/fr|Draft Courbe de Bézier]].
Les outils [[Draft BezCurve/fr|Courbe de Bézier Draft]] et [[Draft CubicBezCurve/fr|Courbe de Bézier cubique Draft]] utilisent {{Emphasis|points de contrôle}} pour définir la direction de la courbe. D'autre part, l'outil [[Draft BSpline/fr|BSpline Draft]] spécifie les points exacts par lesquels la courbe passera.


Les commandes [[Draft_BezCurve/fr|Draft Courbe de Bézier]] et Draft Courbe de Bézier cubique utilisent {{Emphasis|des points de contrôle}} pour définir la position et la courbure de la spline. La commande [[Draft_BSpline/fr|Draft B-spline]], quant à elle, spécifie les {{Emphasis|points exacts}} par lesquels la courbe passera.
[[Image:cub_bez_curve.png|263px]]


[[File:Draft_CubicBezCurve_example.png|500px]]
{{Caption|Courbe de Bézier cubique définie par trois points de control}}
{{Caption|Spline constituée de trois segments cubiques de Bézier. Le premier segment est défini par quatre points. Les segments suivants réutilisent deux points du segment précédent et ne nécessitent donc que deux points supplémentaires.}}


<span id="Usage"></span>
==Utilisation==
==Utilisation==


Voir aussi : [[Draft_Tray/fr|Draft La barre]], [[Draft_Snap/fr|Draft Aimantation]] et [[Draft_Constrain/fr|Draft Contrainte]].
# Appuyez sur le bouton {{Button|[[Image:Draft_CubicBezCurve.svg|16px]] [[Draft CubicBezCurve|Courbe de Bézier cubique Draft]]}} .

# Cliquez sur un premier point de la vue 3D et maintenez le pointeur de la souris.
# Il existe plusieurs façons de lancer la commande :
# Faites glisser le pointeur vers un autre point de la vue 3D, puis relâchez le pointeur.
#* Appuyez sur le bouton {{Button|[[Image:Draft_CubicBezCurve.svg|16px]] [[Draft_CubicBezCurve/fr|Courbe de Bézier cubique]]}}.
# Déplacez le pointeur sur un autre point de la vue 3D pour ajuster la courbure de la spline, puis cliquez et maintenez le point appuyé.
#* Sélectionnez la {{MenuCommand|Draft → Outils de Bézier → [[Image:Draft_CubicBezCurve.svg|16px]] Courbe de Bézier cubique}} du menu.
# Déplacez le pointeur sur un autre point de la vue 3D pour régler la courbure finale de la spline, puis relâchez le pointeur. Cela crée une courbe de Bézier du 3ème degré et continue de dessiner à partir du dernier point.
# Le panneau de tâches {{MenuCommand|Courbe cubique de Bézier}} s'ouvre. Voir [[#Options|Options]] pour plus d'informations.
# Répétez le processus de clic, de maintien, de glissement et de relâchement pour ajouter des points et créez d'autres segments de Bézier au 3ème degré.
# Il n'est pas possible de saisir des points via le panneau de tâches.
# Appuyez sur {{KEY|Echap}} ou sur le bouton {{Button|Fermer}} pour terminer l'édition.
# Pour les [[Mouse_navigation/fr|modes de navigation par la souris]] suivants, une touche du clavier doit être maintenue enfoncée :
#* Si vous utilisez le [[Mouse_navigation/fr#Mode_OpenInventor|mode OpenInventor]], la touche {{KEY|Ctrl}} doit être maintenue enfoncée pendant toute la durée de la commande.
#* Si vous utilisez le [[Mouse_navigation/fr#Mode_Gestuel|mode Gestuel]], la touche {{KEY|Alt}} doit être maintenue enfoncée pour chaque séquence de clic et de relâchement, mais il est également possible de maintenir cette touche enfoncée pendant toute la durée de la commande.
# Choisissez le premier point dans la [[3D_view/fr|vue 3D]] et maintenez le bouton de la souris (1), il s'agit du premier point.
# Faites glisser le pointeur vers un autre point de la [[3D_view/fr|vue 3D]] et relâchez le bouton de la souris (2), il s'agit du premier point de contrôle.
# Déplacez le pointeur vers un autre point dans la [[3D_view/fr|vue 3D]], choisissez ce point et maintenez le bouton de la souris (3), il s'agit du deuxième point d'extrémité.
# Déplacez le pointeur vers un autre point dans la [[3D_view/fr|vue 3D]] pour ajuster la courbure finale du segment et relâchez le bouton de la souris (4), il s'agit du deuxième point de contrôle.
# Vous avez maintenant une courbe de Bézier du 3ème degré.
# Vous pouvez répéter le processus de cliquer et de maintenir (5), puis de faire glisser et de relâcher (6) pour ajouter d'autres segments.
# Chaque segment suivant utilisera le deuxième point d'extrémité et le deuxième point de contrôle du segment précédent comme premier point d'extrémité et premier point de contrôle respectivement.
# Appuyez sur {{KEY|Echap}} ou sur le bouton {{Button|Fermer}} pour terminer la commande.


==Options==
==Options==


Voir [[Draft_BezCurve/fr#Options|Draft Courbe de Bézier]].
==Propriétés==


=== Données ===
== Notes ==


* Une Draft Courbe de Bézier cubique peut être éditée avec la commande [[Draft_Edit/fr|Draft Éditer]].
=== Vue ===


<span id="Properties"></span>
==Propriétés==

Voir [[Draft_BezCurve/fr#Propri.C3.A9t.C3.A9s|Draft Courbe de Bézier]].

<span id="Scripting"></span>
==Script==
==Script==


{{Emphasis|Voir aussi:}} [[Draft API/fr|Draft API]] et [[FreeCAD Scripting Basics/fr|FreeCAD Script de Base]].
Voir aussi : [https://freecad.github.io/SourceDoc/ Autogenerated API documentation] et [[FreeCAD_Scripting_Basics/fr|FreeCAD Débuter avec les scripts]].


Voir [[Draft BezCurve/fr|Courbe de Bézier Draft]] pour les informations générales. Un cube de Bézier est créé en passant l'option <code>degree=3</code> à {{incode|makeBezCurve()}}.
Voir [[Draft_BezCurve/fr|Draft Courbe de Bézier]] pour des informations générales. Une courbe de Bézier cubique est créée en passant l'option <code>degré=3</code> à {{incode|makeBezCurve()}}.


Pour chaque segment de Bézier cubique, il faut utiliser quatre points, dont les deux points intermédiaires sont les points de contrôle.
Pour chaque segment de Bézier cubique, il faut utiliser quatre points dont les deux points extrêmes indiquent le passage de la spline et où les deux points intermédiaires sont des points de contrôle.
* Si seulement 3 points sont donnés, cela crée un Bézier quadratique à la place.
* Si seulement 3 points sont donnés, cela crée une courbe de Bézier quadratique, avec un seul point de contrôle.
* Si seulement 2 points sont donnés, cela crée un Bézier linéaire, c'est-à-dire une ligne droite.
* Si seulement 2 points sont donnés, cela crée une courbe de Bézier linéaire, c'est-à-dire une ligne droite.
* Si 5 points sont donnés, les 4 premiers créent un segment de Bézier cubique; les quatrième et cinquième points sont utilisés pour créer une ligne droite.
* Si 5 points sont donnés, les 4 premiers créent un segment de Bézier cubique; les 4ème et 5ème points sont utilisés pour créer une ligne droite.
* Si 6 points sont donnés, les 4 premiers créent un segment de Bézier cubique; le quatrième et les deux autres points sont utilisés pour créer un segment de Bézier quadratique.
* Si 6 points sont donnés, les 4 premiers créent un segment de Bézier cubique; le 4ème et les deux autres points sont utilisés pour créer un segment de Bézier quadratique.
* Si 7 points sont donnés, les 4 premiers créent un segment de Bézier cubique; le quatrième et les trois autres servent à créer un deuxième segment de Bézier cubique.
* Si 7 points sont donnés, les 4 premiers créent un segment de Bézier cubique; le 4ème et les trois autres points sont utilisés pour créer un deuxième segment de Bézier cubique.
* Autrement dit, chaque fois que cela est possible, le dernier point d’une courbe cubique de Bézier est partagé avec les points suivants.
* En général, le dernier point d'un groupe de quatre est partagé avec les trois points suivants au maximum pour créer un autre segment de Bézier.
* Pour avoir des courbes lisses, sans segment droit, le nombre de points doit être {{incode|3n + 1}} ou {{incode|3n}} où {{incode|n}} est le nombre de segments, pour <code>n >= 1</code>.

[[File:Draft_CubicBezCurve_API_example.png|600px]]

{{Caption|Exemples de courbes de Bézier produites en utilisant 2, 3, 4, 5, 6, 7 et 8 points. Les lignes continues indiquent les segments de Bézier cubiques. Les autres lignes sont quadratiques ou linéaires.}}


Exemple:
Exemple:

{{Code|code=
{{Code|code=
import FreeCAD as App
import FreeCAD as App
import Draft
import Draft

doc = App.newDocument()


p1 = App.Vector(-3500, 0, 0)
p1 = App.Vector(-3500, 0, 0)
Line 76: Line 101:
p6 = App.Vector(3000, -1500, 0)
p6 = App.Vector(3000, -1500, 0)
p7 = App.Vector(5000, 0, 0)
p7 = App.Vector(5000, 0, 0)
p8 = App.Vector(6000, 1500, 0)
rot = App.Rotation()
rot = App.Rotation()


Draft.makeCircle(100, placement=App.Placement(p1, rot), face=False)
c1 = Draft.make_circle(100, placement=App.Placement(p1, rot), face=False)
c1.Label = "B1_E1"
Draft.makeCircle(50, placement=App.Placement(p2, rot), face=True)
Draft.makeCircle(50, placement=App.Placement(p3, rot), face=True)
c2 = Draft.make_circle(50, placement=App.Placement(p2, rot), face=True)
c2.Label = "B1_c1"
Draft.makeCircle(100, placement=App.Placement(p4, rot), face=False)
Draft.makeCircle(50, placement=App.Placement(p5, rot), face=True)
c3 = Draft.make_circle(50, placement=App.Placement(p3, rot), face=True)
c3.Label = "B1_c2"
Draft.makeCircle(50, placement=App.Placement(p6, rot), face=True)
Draft.makeCircle(100, placement=App.Placement(p7, rot), face=False)
c4 = Draft.make_circle(100, placement=App.Placement(p4, rot), face=False)
c4.Label = "B1_E2"
c5 = Draft.make_circle(50, placement=App.Placement(p5, rot), face=True)
c5.Label = "B2_c3"
c6 = Draft.make_circle(50, placement=App.Placement(p6, rot), face=True)
c6.Label = "B2_c4"
c7 = Draft.make_circle(100, placement=App.Placement(p7, rot), face=False)
c7.Label = "B2_E3"
c8 = Draft.make_circle(50, placement=App.Placement(p8, rot), face=True)
c8.Label = "B3_c5"


doc.recompute()
B1 = Draft.makeBezCurve([p1, p2], degree=3)

B1 = Draft.make_bezcurve([p1, p2], degree=3)
B1.Label = "B_lin"
B1.ViewObject.DrawStyle = "Dashed"
B1.ViewObject.DrawStyle = "Dashed"


B2 = Draft.makeBezCurve([p1, p2, p3], degree=3)
B2 = Draft.make_bezcurve([p1, p2, p3], degree=3)
B2.Label = "B_quad"
B1.ViewObject.DrawStyle = "Dotted"
B2.ViewObject.DrawStyle = "Dotted"


B = Draft.makeBezCurve([p1, p2, p3, p4], degree=3)
B3 = Draft.make_bezcurve([p1, p2, p3, p4], degree=3)
B3.Label = "B_cub"
B3 = Draft.makeBezCurve([p1, p2, p3, p4, p5, p6, p7], degree=3)
B3.ViewObject.LineWidth = 4
App.ActiveDocument.recompute()

B4 = Draft.make_bezcurve([p1, p2, p3, p4, p5], degree=3)
B4.Label = "B_cub+lin"
B4.ViewObject.DrawStyle = "Dashed"

B5 = Draft.make_bezcurve([p1, p2, p3, p4, p5, p6], degree=3)
B5.Label = "B_cub+quad"
B5.ViewObject.DrawStyle = "Dotted"

B6 = Draft.make_bezcurve([p1, p2, p3, p4, p5, p6, p7], degree=3)
B6.Label = "B_cub+cub"
B6.ViewObject.LineWidth = 2

B7 = Draft.make_bezcurve([p1, p2, p3, p4, p5, p6, p7, p8], degree=3)
B7.Label = "B_cub+cub+lin"
B7.ViewObject.DrawStyle = "Dashed"

doc.recompute()
}}
}}

<div class="mw-translate-fuzzy">

{{Docnav/fr
{{Docnav/fr
|[[Draft_BSpline/fr|B-spline]]
|[[Draft BezCurve/fr|Courbe de Bézier Draft]]
|[[Draft_Label/fr|Etiquette Draft]]
|[[Draft_BezCurve/fr|Courbe de Bézier]]
|[[Draft_Module/fr|Atelier Draft]]
|[[Draft_Workbench/fr|Atelier Draft]]
|IconL=Draft BezCurve.svg
|IconL=Draft_BSpline.svg
|IconR=Draft_BezCurve.svg
|IconC=Workbench_Draft.svg
|IconC=Workbench_Draft.svg
|IconR=Draft_Label.svg
}}
}}
</div>

{{Draft Tools navi/fr}}

{{Userdocnavi/fr}}


{{Draft Tools navi{{#translation:}}}}
{{clear}}
{{Userdocnavi{{#translation:}}}}

Latest revision as of 08:39, 9 December 2023

Draft Courbe de Bézier cubique

Emplacement du menu
Draft → Outils de Bézier → Courbe de Bézier cubique
Ateliers
Draft, Arch
Raccourci par défaut
Aucun
Introduit dans la version
0.19
Voir aussi
Draft Courbe de Bézier, Draft B-spline

Description

La commande Courbe de Bézier cubique crée une Courbe de Bézier du troisième degré (quatre points requis).

La courbe de Bézier est l'une des courbes les plus utilisées en infographie. Cette commande vous permet de créer une courbe continue composée de plusieurs segments de Bézier du 3e degré, d'une manière similaire à l'outil Bézier de Inkscape. Une courbe de Bézier générale de n'importe quel degré peut être créée avec la commande Draft Courbe de Bézier.

Les commandes Draft Courbe de Bézier et Draft Courbe de Bézier cubique utilisent des points de contrôle pour définir la position et la courbure de la spline. La commande Draft B-spline, quant à elle, spécifie les points exacts par lesquels la courbe passera.

Spline constituée de trois segments cubiques de Bézier. Le premier segment est défini par quatre points. Les segments suivants réutilisent deux points du segment précédent et ne nécessitent donc que deux points supplémentaires.

Utilisation

Voir aussi : Draft La barre, Draft Aimantation et Draft Contrainte.

  1. Il existe plusieurs façons de lancer la commande :
    • Appuyez sur le bouton Courbe de Bézier cubique.
    • Sélectionnez la Draft → Outils de Bézier → Courbe de Bézier cubique du menu.
  2. Le panneau de tâches Courbe cubique de Bézier s'ouvre. Voir Options pour plus d'informations.
  3. Il n'est pas possible de saisir des points via le panneau de tâches.
  4. Pour les modes de navigation par la souris suivants, une touche du clavier doit être maintenue enfoncée :
    • Si vous utilisez le mode OpenInventor, la touche Ctrl doit être maintenue enfoncée pendant toute la durée de la commande.
    • Si vous utilisez le mode Gestuel, la touche Alt doit être maintenue enfoncée pour chaque séquence de clic et de relâchement, mais il est également possible de maintenir cette touche enfoncée pendant toute la durée de la commande.
  5. Choisissez le premier point dans la vue 3D et maintenez le bouton de la souris (1), il s'agit du premier point.
  6. Faites glisser le pointeur vers un autre point de la vue 3D et relâchez le bouton de la souris (2), il s'agit du premier point de contrôle.
  7. Déplacez le pointeur vers un autre point dans la vue 3D, choisissez ce point et maintenez le bouton de la souris (3), il s'agit du deuxième point d'extrémité.
  8. Déplacez le pointeur vers un autre point dans la vue 3D pour ajuster la courbure finale du segment et relâchez le bouton de la souris (4), il s'agit du deuxième point de contrôle.
  9. Vous avez maintenant une courbe de Bézier du 3ème degré.
  10. Vous pouvez répéter le processus de cliquer et de maintenir (5), puis de faire glisser et de relâcher (6) pour ajouter d'autres segments.
  11. Chaque segment suivant utilisera le deuxième point d'extrémité et le deuxième point de contrôle du segment précédent comme premier point d'extrémité et premier point de contrôle respectivement.
  12. Appuyez sur Echap ou sur le bouton Fermer pour terminer la commande.

Options

Voir Draft Courbe de Bézier.

Notes

  • Une Draft Courbe de Bézier cubique peut être éditée avec la commande Draft Éditer.

Propriétés

Voir Draft Courbe de Bézier.

Script

Voir aussi : Autogenerated API documentation et FreeCAD Débuter avec les scripts.

Voir Draft Courbe de Bézier pour des informations générales. Une courbe de Bézier cubique est créée en passant l'option degré=3 à makeBezCurve().

Pour chaque segment de Bézier cubique, il faut utiliser quatre points dont les deux points extrêmes indiquent le passage de la spline et où les deux points intermédiaires sont des points de contrôle.

  • Si seulement 3 points sont donnés, cela crée une courbe de Bézier quadratique, avec un seul point de contrôle.
  • Si seulement 2 points sont donnés, cela crée une courbe de Bézier linéaire, c'est-à-dire une ligne droite.
  • Si 5 points sont donnés, les 4 premiers créent un segment de Bézier cubique; les 4ème et 5ème points sont utilisés pour créer une ligne droite.
  • Si 6 points sont donnés, les 4 premiers créent un segment de Bézier cubique; le 4ème et les deux autres points sont utilisés pour créer un segment de Bézier quadratique.
  • Si 7 points sont donnés, les 4 premiers créent un segment de Bézier cubique; le 4ème et les trois autres points sont utilisés pour créer un deuxième segment de Bézier cubique.
  • En général, le dernier point d'un groupe de quatre est partagé avec les trois points suivants au maximum pour créer un autre segment de Bézier.
  • Pour avoir des courbes lisses, sans segment droit, le nombre de points doit être 3n + 1 ou 3nn est le nombre de segments, pour n >= 1.

Exemples de courbes de Bézier produites en utilisant 2, 3, 4, 5, 6, 7 et 8 points. Les lignes continues indiquent les segments de Bézier cubiques. Les autres lignes sont quadratiques ou linéaires.

Exemple:

import FreeCAD as App
import Draft

doc = App.newDocument()

p1 = App.Vector(-3500, 0, 0)
p2 = App.Vector(-3000, 2000, 0)
p3 = App.Vector(-1100, 2000, 0)
p4 = App.Vector(0, 0, 0)

p5 = App.Vector(1500, -2000, 0)
p6 = App.Vector(3000, -1500, 0)
p7 = App.Vector(5000, 0, 0)
p8 = App.Vector(6000, 1500, 0)
rot = App.Rotation()

c1 = Draft.make_circle(100, placement=App.Placement(p1, rot), face=False)
c1.Label = "B1_E1"
c2 = Draft.make_circle(50, placement=App.Placement(p2, rot), face=True)
c2.Label = "B1_c1"
c3 = Draft.make_circle(50, placement=App.Placement(p3, rot), face=True)
c3.Label = "B1_c2"
c4 = Draft.make_circle(100, placement=App.Placement(p4, rot), face=False)
c4.Label = "B1_E2"
c5 = Draft.make_circle(50, placement=App.Placement(p5, rot), face=True)
c5.Label = "B2_c3"
c6 = Draft.make_circle(50, placement=App.Placement(p6, rot), face=True)
c6.Label = "B2_c4"
c7 = Draft.make_circle(100, placement=App.Placement(p7, rot), face=False)
c7.Label = "B2_E3"
c8 = Draft.make_circle(50, placement=App.Placement(p8, rot), face=True)
c8.Label = "B3_c5"

doc.recompute()

B1 = Draft.make_bezcurve([p1, p2], degree=3)
B1.Label = "B_lin"
B1.ViewObject.DrawStyle = "Dashed"

B2 = Draft.make_bezcurve([p1, p2, p3], degree=3)
B2.Label = "B_quad"
B2.ViewObject.DrawStyle = "Dotted"

B3 = Draft.make_bezcurve([p1, p2, p3, p4], degree=3)
B3.Label = "B_cub"
B3.ViewObject.LineWidth = 4

B4 = Draft.make_bezcurve([p1, p2, p3, p4, p5], degree=3)
B4.Label = "B_cub+lin"
B4.ViewObject.DrawStyle = "Dashed"

B5 = Draft.make_bezcurve([p1, p2, p3, p4, p5, p6], degree=3)
B5.Label = "B_cub+quad"
B5.ViewObject.DrawStyle = "Dotted"

B6 = Draft.make_bezcurve([p1, p2, p3, p4, p5, p6, p7], degree=3)
B6.Label = "B_cub+cub"
B6.ViewObject.LineWidth = 2

B7 = Draft.make_bezcurve([p1, p2, p3, p4, p5, p6, p7, p8], degree=3)
B7.Label = "B_cub+cub+lin"
B7.ViewObject.DrawStyle = "Dashed"

doc.recompute()