Draft CubicBezCurve/it: Difference between revisions

From FreeCAD Documentation
(Created page with "Esempio:")
(Updating to match new version of source page)
(24 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
{{UnfinishedDocu}}


<div class="mw-translate-fuzzy">
{{Docnav/it|[[Draft BezCurve/it|Curva di Bézier]]|[[Draft_Label/it|Etichetta]]|[[Draft_Module/it|Draft]]|IconL=Draft BezCurve.svg |IconC=Workbench_Draft.svg|IconR=Draft_Label.svg }}
{{Docnav/it|[[Draft BezCurve/it|Curva di Bézier]]|[[Draft_Label/it|Etichetta]]|[[Draft_Module/it|Draft]]|IconL=Draft BezCurve.svg |IconC=Workbench_Draft.svg|IconR=Draft_Label.svg }}
</div>


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

{{GuiCommand/it
{{GuiCommand/it
|Name=Draft CubicBezCurve
|Name=Draft CubicBezCurve
Line 13: Line 14:
|SeeAlso=[[Draft Wire/it|Polilinea]], [[Draft BSpline/it|B-spline]], [[Draft BezCurve/it|Curva di Bézier]]
|SeeAlso=[[Draft Wire/it|Polilinea]], [[Draft BSpline/it|B-spline]], [[Draft BezCurve/it|Curva di Bézier]]
|Version/it=0.19}}
|Version/it=0.19}}
</div>


==Descrizione==
==Descrizione==


Lo strumento [[Draft CubicBezCurve/it|Curva di Bézier cubica]] crea una[http://en.wikipedia.org/wiki/Bezier_curve Curva di Bézier] di terzo grado. Questa è una delle curve di Bezier più usate. Questo strumento consente di creare una grande spline composta da diversi segmenti Bezier di 3° grado, in un modo simile allo strumento Bezier in Inkscape. Una curva di Bezier di qualsiasi grado può essere creata con lo strumento [[Draft BezCurve/it|Curva di Bézier]].
Lo strumento [[Draft CubicBezCurve/it|Curva di Bézier cubica]] crea una[http://en.wikipedia.org/wiki/Bezier_curve Curva di Bézier] di terzo grado (sono richiesti quattro punti). Questa è una delle curve di Bezier più usate nelle applicazioni di computer grafica. Questo strumento consente di creare una grande spline composta da diversi segmenti Bezier di 3° grado, in un modo simile allo strumento Bezier in Inkscape. Una curva generica di Bezier di qualsiasi grado può essere creata con lo strumento [[Draft BezCurve/it|Curva di Bézier]].


Gli strumenti [[Draft BezCurve/it|Curva di Bézier]] e [[Draft CubicBezCurve/it|Curva di Bézier cubica]] utilizzano i {{Emphasis|punti di controllo}} per definire la direzione della curva; invece lo strumento [[Draft BSpline/it|B-spline]] specifica i punti esatti attraverso i quali passa la curva.
Gli strumenti [[Draft BezCurve/it|Curva di Bézier]] e [[Draft CubicBezCurve/it|Curva di Bézier cubica]] utilizzano i {{Emphasis|punti di controllo}} per definire la posizione e la curvatura della spline; invece lo strumento [[Draft BSpline/it|B-spline]] specifica i punti esatti attraverso i quali passa la curva.


[[Image:cub_bez_curve.png|263px]]
[[File:Draft_CubicBezCurve_example.png|600px]]
{{Caption|Spline cubica di Bezier definita da tre segmenti. Ogni Bezier cubica è definita da quattro punti, ma quando lo strumento viene utilizzato graficamente, vengono posizionati solo tre di questi punti: 1-2-3 per il primo segmento, 3-4-5 per il secondo segmento e 5-6-7 per il terzo segmento; il quarto punto in ciascun segmento è definito implicitamente; l'ultimo punto 8 è necessario per completare l'operazione e farebbe parte di un quarto segmento di Bezier se l'operazione viene continuata.}}

{{Caption|Curva di Bézier cubica definita da tre punti di controllo}}


== Utilizzo ==
== Utilizzo ==


# Premere il pulsante {{Button|[[Image:Draft_CubicBezCurve.svg|16px]] [[Draft CubicBezCurve/it|Curva di Bézier cubica]]}}.
# Premere il pulsante {{Button|[[Image:Draft_CubicBezCurve.svg|16px]] [[Draft CubicBezCurve/it|Curva di Bézier cubica]]}}.
# Fare clic su un primo punto nella vista 3D e tenere premuto il puntatore del mouse.
# Fare clic su un primo punto nella vista 3D e tenere premuto il pulsante del mouse (1); questo è il primo punto finale..
# Trascinare il puntatore su un altro punto della vista 3D e rilasciare il puntatore.
# Trascinare il puntatore su un altro punto della vista 3D e rilasciare il pulsante del mouse (2); questo è il primo punto di controllo..
# Spostare il puntatore su un altro punto della vista 3D per regolare la curvatura della spline, fare clic e tenere premuto sul punto.
# Spostare il puntatore su un altro punto della vista 3D, fare clic e tenere premuto il pulsante del mouse su questo punto (3); questo è il secondo punto finale.
# Spostare il puntatore su un altro punto della vista 3D per regolare la curvatura finale della spline, quindi rilasciare il puntatore. Questo crea una curva di Bezier di 3° grado. Continuare a disegnare dall'ultimo punto.
# Spostare il puntatore su un altro punto della vista 3D per regolare la curvatura finale della spline, quindi rilasciare il pulsante del mouse (4)
# A questo punto si ha già una curva di Bezier di terzo grado. Il comando può essere completato premendo {{KEY|Esc}} o il pulsante {{Button|Chiudi}}, oppure si può ripetere il processo facendo clic e tenendo premuto (5), trascinando e rilasciando (6) per aggiungere altri segmenti di Bezier di terzo grado.
# Ripetere il processo di fare clic, tenere premuto, trascinare e rilasciare per aggiungere punti e creare ulteriori segmenti Beziér di terzo grado.

# Premere {{KEY|Esc}} o il pulsante {{Button|Chiudi}} per completare l'edizione.
Notare che con questo flusso di lavoro sono necessarie due sequenze di click-hold-rilascio per creare una singola curva di Bezier di terzo grado.
* Il primo click-hold definisce il primo punto finale.
* Il primo rilascio definisce il primo punto di controllo.
* Il secondo click-hold definisce il secondo punto finale e la direzione generale della spline.
* Il secondo rilascio definisce la curvatura finale della spline.
* Il secondo punto di controllo non viene specificato esplicitamente, ma viene determinato dalla posizione del puntatore durante il secondo rilascio.

<div class="mw-translate-fuzzy">
=== Nota per quando si creano molti segmenti di Bezier ===
</div>

<div class="mw-translate-fuzzy">
* Il secondo rilascio corrisponde anche al primo punto di controllo della successiva curva di Bezier.
* Ciò significa che il secondo click-hold è anche il primo punto finale della seconda curva di Bezier.
* Un terzo click-hold sarebbe il secondo punto finale.
* Un terzo rilascio definirebbe la curvatura finale della seconda curva e sarebbe anche il primo punto di controllo di una terza curva.
</div>

Ciò significa che per ogni due sequenze click-hold (c-h) e rilascio (r), la seconda sequenza fa già parte di un successivo segmento di curva, come indicato nel seguente grafico:

<pre>
|c-h -- r -- c-h -- r| 1
|c-h -- r -- c-h -- r| 2
|c-h -- r -- c-h -- r| 3
|c-h -- r -- c-h -- r| 4
</pre>

<div class="mw-translate-fuzzy">
=== Come posizionare esattamente i punti di controllo ===
</div>

L'operazione grafica di questo strumento consente all'utente di specificare solo il primo punto di controllo della curva quando viene disegnata. Il secondo punto di controllo può essere regolato dopo la creazione dell'oggetto: fare doppio clic sull'oggetto curva nella vista ad albero, oppure selezionarlo e premere {{Button|[[File:Draft_Edit.svg|16px]] [[Draft Edit/it|Modifica]]}}. Quindi trascinare il secondo punto di controllo nella posizione desiderata.

Per scegliere esattamente entrambi i punti finali e entrambi i punti di controllo, è necessario utilizzare il comando Python {{incode|Draft.makeBezCurve()}}. Vedere la sezione [[#Scripting/it|Script]].


== Opzioni ==
== Opzioni ==

Vedere le opzioni in [[Draft BezCurve/it|Curva di Bezier]].


== Proprietà ==
== Proprietà ==


Vedere le proprietà in [[Draft BezCurve/it|Curva di Bezier]].
=== Dati ===


===Vista===
== Script ==


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
== Script ==
{{Emphasis|Vedere anche:}} [[Draft API/it|Draft API]] e [[FreeCAD Scripting Basics/it|Nozioni di base sugli script di FreeCAD]].
{{Emphasis|Vedere anche:}} [[Draft API/it|Draft API]] e [[FreeCAD Scripting Basics/it|Nozioni di base sugli script di FreeCAD]].
</div>
</div>


Per informazioni di carattere generale vedere [[Draft BezCurve/it|Curva di Bézier]]. Una Bezier cubica viene creata passando l'opzione <code>degree=3</code> a {{incode|makeBezCurve()}}.
{{Emphasis|See also:}} [[Draft API]] and [[FreeCAD Scripting Basics]].


Per ogni segmento di Bezier cubica devono essere utilizzati quattro punti, di cui i due punti estremi indicano dove passa la spline e i due punti intermedi sono punti di controllo.
See [[Draft BezCurve|Draft BezCurve]] for the general information information. A cubic Bezier is created by passing the option <code>degree=3</code> to {{incode|makeBezCurve()}}.
* Se vengono assegnati solo 3 punti, viene invece creata una Bezier quadratica, con un solo punto di controllo..
* Se vengono assegnati solo 2 punti, viene creata una Bezier lineare, ovvero una linea retta.
* Se vengono assegnati 5 punti, i primi 4 creano un segmento di Bezier cubico; il quarto e il quinto punto vengono utilizzati per creare una linea retta.
* Se vengono assegnati 6 punti, i primi 4 creano un segmento cubico di Bezier; il quarto e gli altri due punti vengono utilizzati per creare un segmento quadratico di Bezier.
* Se vengono assegnati 7 punti, i primi 4 creano un segmento cubico di Bezier; il quarto e gli altri tre punti sono usati per creare un secondo segmento cubico di Bezier.
* In generale, l'ultimo punto in un gruppo di quattro è condiviso al massimo con i seguenti tre punti per creare un altro segmento di Bezier.
* * Per avere curve morbide, senza segmenti diritti, il numero di punti dovrebbe essere {{incode|3n + 1}} o {{incode|3n}}, dove {{incode|n}} è il numero di segmenti, per <code>n >= 1</code>.


[[File:Draft_CubicBezCurve_API_example.png|600px]]
For each cubic Bezier segment four points must be used, of which the two intermediate points are the control points.

* If only 3 points are given, it creates a quadratic Bezier instead.
{{Caption|Esempi di curve di Bezier prodotte utilizzando 2, 3, 4, 5, 6, 7 e 8 punti. Le linee continue indicano segmenti cubici di Bezier; le altre linee sono quadratiche o lineari.}}
* If only 2 points are given, it creates a linear Bezier, that is, a straight line.
* If 5 points are given, the first 4 create a cubic Bezier segment; the fourth and the fifth points are used to create a straight line.
* If 6 points are given, the first 4 create a cubic Bezier segment; the fourth and the other two points are used to create a quadratic Bezier segment.
* If 7 points are given, the first 4 create a cubic Bezier segment; the fourth and the other three are used to create a second cubic Bezier segment.
* That is, whenever possible, the last point in a cubic Bezier is shared withe following points.


Esempio:
Esempio:

{{Code|code=
{{Code|code=
import FreeCAD as App
import FreeCAD as App
Line 72: Line 112:
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.makeCircle(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.makeCircle(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.makeCircle(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.makeCircle(100, placement=App.Placement(p4, rot), face=False)
c4.Label = "B1_E2"
c5 = Draft.makeCircle(50, placement=App.Placement(p5, rot), face=True)
c5.Label = "B2_c3"
c6 = Draft.makeCircle(50, placement=App.Placement(p6, rot), face=True)
c6.Label = "B2_c4"
c7 = Draft.makeCircle(100, placement=App.Placement(p7, rot), face=False)
c7.Label = "B2_E3"
c8 = Draft.makeCircle(50, placement=App.Placement(p8, rot), face=True)
c8.Label = "B3_c5"
App.ActiveDocument.recompute()


B1 = Draft.makeBezCurve([p1, p2], degree=3)
B1 = Draft.makeBezCurve([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.makeBezCurve([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.makeBezCurve([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

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

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

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

B7 = Draft.makeBezCurve([p1, p2, p3, p4, p5, p6, p7, p8], degree=3)
B7.Label = "B_cub+cub+lin"
B7.ViewObject.DrawStyle = "Dashed"
App.ActiveDocument.recompute()
App.ActiveDocument.recompute()
}}
}}
{{Docnav/it|[[Draft BezCurve/it|Curva di Bézier]]|[[Draft_Label/it|Etichetta]]|[[Draft_Module/it|Draft]]|IconL=Draft BezCurve.svg |IconC=Workbench_Draft.svg|IconR=Draft_Label.svg}}


<div class="mw-translate-fuzzy">
{{Draft Tools navi/it}}
{{Docnav/it|[[Draft BezCurve/it|Curva di Bézier]]|[[Draft_Label/it|Etichetta]]|[[Draft_Module/it|Draft]]|IconL=Draft BezCurve.svg |IconC=Workbench_Draft.svg|IconR=Draft_Label.svg}}

</div>
{{Userdocnavi/it}}


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

Revision as of 17:56, 21 February 2020

Curva di Bézier cubica

Posizione nel menu
Draft → Strumenti Bezier → Curva di Bézier cubica
Ambiente
Draft, Arch
Avvio veloce
Nessuno
Introdotto nella versione
-
Vedere anche
Polilinea, B-spline, Curva di Bézier

Descrizione

Lo strumento Curva di Bézier cubica crea unaCurva di Bézier di terzo grado (sono richiesti quattro punti). Questa è una delle curve di Bezier più usate nelle applicazioni di computer grafica. Questo strumento consente di creare una grande spline composta da diversi segmenti Bezier di 3° grado, in un modo simile allo strumento Bezier in Inkscape. Una curva generica di Bezier di qualsiasi grado può essere creata con lo strumento Curva di Bézier.

Gli strumenti Curva di Bézier e Curva di Bézier cubica utilizzano i punti di controllo per definire la posizione e la curvatura della spline; invece lo strumento B-spline specifica i punti esatti attraverso i quali passa la curva.

Spline cubica di Bezier definita da tre segmenti. Ogni Bezier cubica è definita da quattro punti, ma quando lo strumento viene utilizzato graficamente, vengono posizionati solo tre di questi punti: 1-2-3 per il primo segmento, 3-4-5 per il secondo segmento e 5-6-7 per il terzo segmento; il quarto punto in ciascun segmento è definito implicitamente; l'ultimo punto 8 è necessario per completare l'operazione e farebbe parte di un quarto segmento di Bezier se l'operazione viene continuata.

Utilizzo

  1. Premere il pulsante Curva di Bézier cubica.
  2. Fare clic su un primo punto nella vista 3D e tenere premuto il pulsante del mouse (1); questo è il primo punto finale..
  3. Trascinare il puntatore su un altro punto della vista 3D e rilasciare il pulsante del mouse (2); questo è il primo punto di controllo..
  4. Spostare il puntatore su un altro punto della vista 3D, fare clic e tenere premuto il pulsante del mouse su questo punto (3); questo è il secondo punto finale.
  5. Spostare il puntatore su un altro punto della vista 3D per regolare la curvatura finale della spline, quindi rilasciare il pulsante del mouse (4)
  6. A questo punto si ha già una curva di Bezier di terzo grado. Il comando può essere completato premendo Esc o il pulsante Chiudi, oppure si può ripetere il processo facendo clic e tenendo premuto (5), trascinando e rilasciando (6) per aggiungere altri segmenti di Bezier di terzo grado.

Notare che con questo flusso di lavoro sono necessarie due sequenze di click-hold-rilascio per creare una singola curva di Bezier di terzo grado.

  • Il primo click-hold definisce il primo punto finale.
  • Il primo rilascio definisce il primo punto di controllo.
  • Il secondo click-hold definisce il secondo punto finale e la direzione generale della spline.
  • Il secondo rilascio definisce la curvatura finale della spline.
  • Il secondo punto di controllo non viene specificato esplicitamente, ma viene determinato dalla posizione del puntatore durante il secondo rilascio.

Nota per quando si creano molti segmenti di Bezier

  • Il secondo rilascio corrisponde anche al primo punto di controllo della successiva curva di Bezier.
  • Ciò significa che il secondo click-hold è anche il primo punto finale della seconda curva di Bezier.
  • Un terzo click-hold sarebbe il secondo punto finale.
  • Un terzo rilascio definirebbe la curvatura finale della seconda curva e sarebbe anche il primo punto di controllo di una terza curva.

Ciò significa che per ogni due sequenze click-hold (c-h) e rilascio (r), la seconda sequenza fa già parte di un successivo segmento di curva, come indicato nel seguente grafico:

|c-h -- r -- c-h -- r| 1
            |c-h -- r -- c-h -- r| 2
                        |c-h -- r -- c-h -- r| 3
                                    |c-h -- r -- c-h -- r| 4

Come posizionare esattamente i punti di controllo

L'operazione grafica di questo strumento consente all'utente di specificare solo il primo punto di controllo della curva quando viene disegnata. Il secondo punto di controllo può essere regolato dopo la creazione dell'oggetto: fare doppio clic sull'oggetto curva nella vista ad albero, oppure selezionarlo e premere Modifica. Quindi trascinare il secondo punto di controllo nella posizione desiderata.

Per scegliere esattamente entrambi i punti finali e entrambi i punti di controllo, è necessario utilizzare il comando Python Draft.makeBezCurve(). Vedere la sezione Script.

Opzioni

Vedere le opzioni in Curva di Bezier.

Proprietà

Vedere le proprietà in Curva di Bezier.

Script

Per informazioni di carattere generale vedere Curva di Bézier. Una Bezier cubica viene creata passando l'opzione degree=3 a makeBezCurve().

Per ogni segmento di Bezier cubica devono essere utilizzati quattro punti, di cui i due punti estremi indicano dove passa la spline e i due punti intermedi sono punti di controllo.

  • Se vengono assegnati solo 3 punti, viene invece creata una Bezier quadratica, con un solo punto di controllo..
  • Se vengono assegnati solo 2 punti, viene creata una Bezier lineare, ovvero una linea retta.
  • Se vengono assegnati 5 punti, i primi 4 creano un segmento di Bezier cubico; il quarto e il quinto punto vengono utilizzati per creare una linea retta.
  • Se vengono assegnati 6 punti, i primi 4 creano un segmento cubico di Bezier; il quarto e gli altri due punti vengono utilizzati per creare un segmento quadratico di Bezier.
  • Se vengono assegnati 7 punti, i primi 4 creano un segmento cubico di Bezier; il quarto e gli altri tre punti sono usati per creare un secondo segmento cubico di Bezier.
  • In generale, l'ultimo punto in un gruppo di quattro è condiviso al massimo con i seguenti tre punti per creare un altro segmento di Bezier.
  • * Per avere curve morbide, senza segmenti diritti, il numero di punti dovrebbe essere 3n + 1 o 3n, dove n è il numero di segmenti, per n >= 1.

Esempi di curve di Bezier prodotte utilizzando 2, 3, 4, 5, 6, 7 e 8 punti. Le linee continue indicano segmenti cubici di Bezier; le altre linee sono quadratiche o lineari.

Esempio:

import FreeCAD as App
import Draft

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.makeCircle(100, placement=App.Placement(p1, rot), face=False)
c1.Label = "B1_E1"
c2 = Draft.makeCircle(50, placement=App.Placement(p2, rot), face=True)
c2.Label = "B1_c1"
c3 = Draft.makeCircle(50, placement=App.Placement(p3, rot), face=True)
c3.Label = "B1_c2"
c4 = Draft.makeCircle(100, placement=App.Placement(p4, rot), face=False)
c4.Label = "B1_E2"
c5 = Draft.makeCircle(50, placement=App.Placement(p5, rot), face=True)
c5.Label = "B2_c3"
c6 = Draft.makeCircle(50, placement=App.Placement(p6, rot), face=True)
c6.Label = "B2_c4"
c7 = Draft.makeCircle(100, placement=App.Placement(p7, rot), face=False)
c7.Label = "B2_E3"
c8 = Draft.makeCircle(50, placement=App.Placement(p8, rot), face=True)
c8.Label = "B3_c5"
App.ActiveDocument.recompute()

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

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

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

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

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

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

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