Sketcher BSplineIncreaseKnotMultiplicity: Difference between revisions

From FreeCAD Documentation
(step 2)
(another link)
(14 intermediate revisions by 3 users not shown)
Line 7: Line 7:
|[[Sketcher_Workbench|Sketcher]]
|[[Sketcher_Workbench|Sketcher]]
|IconL=Sketcher_BSplineDecreaseDegree.svg
|IconL=Sketcher_BSplineDecreaseDegree.svg
|IconC=Workbench_Sketcher.svg
|IconR=Sketcher_BSplineDecreaseKnotMultiplicity.svg
|IconR=Sketcher_BSplineDecreaseKnotMultiplicity.svg
|IconC=Workbench_Sketcher.svg
}}
}}


Line 17: Line 17:
|Workbenches=[[Sketcher_Workbench|Sketcher]]
|Workbenches=[[Sketcher_Workbench|Sketcher]]
|Version=0.17
|Version=0.17
|SeeAlso=[[Sketcher_BSplineKnotMultiplicity|Show/hide B-spline knot multiplicity]], [[Sketcher_BSplineDecreaseKnotMultiplicity|Decrease knot multiplicity]]
|SeeAlso=[[Sketcher_BSplineKnotMultiplicity|Sketcher Show/hide B-spline knot multiplicity]], [[Sketcher_BSplineDecreaseKnotMultiplicity|Sketcher Decrease knot multiplicity]]
}}
}}


Line 23: Line 23:


<!--T:9-->
<!--T:9-->
Increases the knot multiplicity of a B-spline curve knot (see [https://en.wikipedia.org/wiki/B-spline B-spline]).
Increases the multiplicity of a B-spline knot. (See [[B-Splines|this page]] for more info about B-splines).


<!--T:15-->
B-splines in FreeCAD are basically a combination of [https://en.wikipedia.org/wiki/Bezier_curve#Constructing_B%C3%A9zier_curves Bézier curves]. The points where two Bézier curves are connected to form the spline is called the knot. A knot with the multiplicity 1 means that the curve left and right to the knot has at least the same first order derivative (called ''C''<sup>1</sup> continuity).
B-splines are basically a combination of [[B-Splines#B.C3.A9zier_curves|Bézier curves]] (nicely explained in [https://www.youtube.com/watch?v=bE1MrrqBAl8 this] and [https://www.youtube.com/watch?v=xXJylM2S72s this] video). The points where two Bézier curves are connected to form the spline are called knots. A knot on a degree ''d'' spline with the multiplicity ''m'' means that the curve left and right to the knot has at least an equal ''n'' order derivative (called ''C''<sup>''n''</sup> continuity) whereas <math>n=d-m</math>.<br/>
Here is a spline whose knots have the multiplicity 1 (indicated by the number in parentheses, indication can be changed using the toolbar button {{Button|[[File:Sketcher_BSplineKnotMultiplicity.svg|24px]] [[Sketcher_BSplineKnotMultiplicity|Show/hide B-spline knot multiplicity]]}}):
Here is a cubic spline (<math>d=3</math>) whose knots have the multiplicity 1. The multiplicity is indicated by the number in parentheses. The indication can be changed using the toolbar button {{Button|[[File:Sketcher_BSplineKnotMultiplicity.svg|24px]] [[Sketcher_BSplineKnotMultiplicity|Show/hide B-spline knot multiplicity]]}}):


</translate>
</translate>
[[File:Sketcher_KnotMultiplicity_multiplicity1.png]]
[[File:Sketcher_KnotMultiplicity_multiplicity1.png|400px]]
<translate>
<translate>
<!--T:10-->
<!--T:16-->
{{Caption|B-spline where both knots have the multiplicity 1.}}
{{Caption|B-spline where both knots have the multiplicity 1.}}


<!--T:17-->
You can see that the second order derivative left and right to the knots is not equal. A multiplicity of 2 will change the spline so that the second order derivative becomes equal (''C''<sup>2</sup> continuity). Here is the same spline where the multiplicity was increased to 2:
A multiplicity of 3 will change this spline so that even the first order derivatives are not equal (''C''<sup>0</sup> continuity). Here is the same spline where the left's knot multiplicity was increased to 3:


</translate>
</translate>
[[File:Sketcher_KnotMultiplicity_multiplicity2.png]]
[[File:Sketcher_KnotMultiplicity_multiplicity3.png|400px]]
<translate>
<translate>
<!--T:10-->
<!--T:18-->
{{Caption|B-spline where both knots have the multiplicity 2.}}
{{Caption|B-spline from above with knot multiplicity 3. A control point was moved to show that the knot has ''C''<sup>0</sup> continuity.}}


<!--T:19-->
Note that the control points were added and changed to achieve this.
A consequence of a higher multiplicity is that for the price of loosing continuity you gain local control. This means the change of one control point only affects the spline locally to this changed point. This can be seen in this example, where the spline from the first image above was taken and its second control point from the right side was moved up:

Another consequence of a multiplicity of 2 is that you gain local control. This means the change of one control point only affects the splice locally to this changed point. This can be seen din this example:
{{Caption|Difference of locality due to different multiplicity.}}
The spline with knot multiplicity is completely changed while the one with multiplicity 2 is not due to the additions control points to keep the second order derivative equal.


</translate>
</translate>
[[File:Sketcher_KnotMultiplicity_locality.png]]
[[File:Sketcher_KnotMultiplicity_locality.png|400px]]
<translate>
<translate>
<!--T:10-->
<!--T:20-->
{{Caption|B-spline curve showing increasing knot multiplicity.}}
{{Caption|Effect of locality due to different multiplicity.}}

<!--T:21-->
One can see that the spline with knot multiplicity 1 is completely changed while the one with multiplicity 2 kept its form at its left side.


==Usage== <!--T:5-->
==Usage== <!--T:5-->


<!--T:14-->
<!--T:14-->
# Select a B-spline knot.
# Select a B-spline knot, either:
# Either:
#* Press the button {{Button|[[File:Sketcher_BSplineIncreaseKnotMultiplicity.svg|24px]] [[Sketcher_BSplineIncreaseKnotMultiplicity|B-spline increase knot multiplicity]]}}.
#* Press the button {{Button|[[File:Sketcher_BSplineIncreaseKnotMultiplicity.svg|24px]] [[Sketcher_BSplineIncreaseKnotMultiplicity|B-spline increase knot multiplicity]]}}.
#* Use the menu {{MenuCommand|Sketch → Sketcher B-spline tools → [[File:Sketcher_BSplineIncreaseKnotMultiplicity.svg|24px]] Increase knot multiplicity}}.
#* Use the menu {{MenuCommand|Sketch → Sketcher B-spline tools → [[File:Sketcher_BSplineIncreaseKnotMultiplicity.svg|24px]] Increase knot multiplicity}}.
Line 68: Line 69:
|[[Sketcher_Workbench|Sketcher]]
|[[Sketcher_Workbench|Sketcher]]
|IconL=Sketcher_BSplineDecreaseDegree.svg
|IconL=Sketcher_BSplineDecreaseDegree.svg
|IconC=Workbench_Sketcher.svg
|IconR=Sketcher_BSplineDecreaseKnotMultiplicity.svg
|IconR=Sketcher_BSplineDecreaseKnotMultiplicity.svg
|IconC=Workbench_Sketcher.svg
}}
}}



Revision as of 16:36, 5 June 2021

Sketcher BSplineIncreaseKnotMultiplicity

Menu location
Sketch → Sketcher B-spline tools → Increase knot multiplicity
Workbenches
Sketcher
Default shortcut
None
Introduced in version
0.17
See also
Sketcher Show/hide B-spline knot multiplicity, Sketcher Decrease knot multiplicity

Description

Increases the multiplicity of a B-spline knot. (See this page for more info about B-splines).

B-splines are basically a combination of Bézier curves (nicely explained in this and this video). The points where two Bézier curves are connected to form the spline are called knots. A knot on a degree d spline with the multiplicity m means that the curve left and right to the knot has at least an equal n order derivative (called Cn continuity) whereas .
Here is a cubic spline () whose knots have the multiplicity 1. The multiplicity is indicated by the number in parentheses. The indication can be changed using the toolbar button Show/hide B-spline knot multiplicity):

B-spline where both knots have the multiplicity 1.

A multiplicity of 3 will change this spline so that even the first order derivatives are not equal (C0 continuity). Here is the same spline where the left's knot multiplicity was increased to 3:

B-spline from above with knot multiplicity 3. A control point was moved to show that the knot has C0 continuity.

A consequence of a higher multiplicity is that for the price of loosing continuity you gain local control. This means the change of one control point only affects the spline locally to this changed point. This can be seen in this example, where the spline from the first image above was taken and its second control point from the right side was moved up:

Effect of locality due to different multiplicity.

One can see that the spline with knot multiplicity 1 is completely changed while the one with multiplicity 2 kept its form at its left side.

Usage

  1. Select a B-spline knot, either: