Sketcher BSplineIncreaseKnotMultiplicity: Difference between revisions

From FreeCAD Documentation
(Button template)
No edit summary
 
(41 intermediate revisions by 5 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
{{Page_in_progress}}
<translate>
<translate>

<!--T:11-->
<!--T:11-->
{{Docnav
{{Docnav
|[[Sketcher_BSplineIncreaseDegree|Increase degree]]
|[[Sketcher_BSplineDecreaseDegree|Decrease B-spline degree]]
|[[Sketcher_BSplineDecreaseKnotMultiplicity|Decrease knot multiplicity]]
|[[Sketcher_BSplineDecreaseKnotMultiplicity|Decrease knot multiplicity]]
|[[Sketcher_Workbench|Sketcher]]
|[[Sketcher_Workbench|Sketcher]]
|IconL=Sketcher_BSplineIncreaseDegree.svg
|IconL=Sketcher_BSplineDecreaseDegree.svg
|IconC=Workbench_Sketcher.svg
|IconR=Sketcher_BSplineDecreaseKnotMultiplicity.svg
|IconR=Sketcher_BSplineDecreaseKnotMultiplicity.svg
|IconC=Workbench_Sketcher.svg
}}
}}


Line 15: Line 17:
|Name=Sketcher BSplineIncreaseKnotMultiplicity
|Name=Sketcher BSplineIncreaseKnotMultiplicity
|MenuLocation=Sketch → Sketcher B-spline tools → Increase knot multiplicity
|MenuLocation=Sketch → Sketcher B-spline tools → Increase knot multiplicity
|Workbenches=[[Sketcher Workbench|Sketcher]]
|Workbenches=[[Sketcher_Workbench|Sketcher]]
|Version=0.17
|Version=0.17
|SeeAlso=[[Sketcher CompCreateBSpline|Create B-spline]]
|SeeAlso=[[Sketcher_BSplineDecreaseKnotMultiplicity|Sketcher BSplineDecreaseKnotMultiplicity]]
}}
}}


Line 23: Line 25:


<!--T:9-->
<!--T:9-->
The [[Image:Sketcher_BSplineIncreaseKnotMultiplicity.svg|24px]] [[Sketcher_BSplineIncreaseKnotMultiplicity|Sketcher BSplineIncreaseKnotMultiplicity]] tool increases the multiplicity of [[B-Splines|B-spline]] knot.
Increases the knot multiplicity of a B-spline curve knot (see [https://en.wikipedia.org/wiki/B-spline B-spline]).

</translate>
[[File:Sketcher_SampleBSplineIncreaseKnotMultiplicity_example.png]]
<translate>
<!--T:10-->
{{Caption|B-spline curve showing increasing knot multiplicity.}}


==Usage== <!--T:5-->
==Usage== <!--T:5-->
Line 35: Line 31:
<!--T:14-->
<!--T:14-->
# Select a B-spline knot.
# Select a B-spline knot.
# There are several ways to invoke the tool:
# Invoke the tool using several methods:
#* Press the {{Button|[[File:Sketcher_BSplineIncreaseKnotMultiplicity.svg|16px]] [[Sketcher_BSplineIncreaseKnotMultiplicity|B-spline increase knot multiplicity]]}} button.
#* Press the {{Button|[[File:Sketcher_BSplineIncreaseKnotMultiplicity.svg|16px]] [[Sketcher_BSplineIncreaseKnotMultiplicity|Increase knot multiplicity]]}} button.
#* Use the {{MenuCommand|Sketch → Sketcher B-spline tools → [[File:Sketcher_BSplineIncreaseKnotMultiplicity.svg|16px]] Increase knot multiplicity}} entry in the top menu.
#* Select the {{MenuCommand|Sketch → Sketcher B-spline tools → [[Image:Sketcher_BSplineIncreaseKnotMultiplicity.svg|16px]] Increase knot multiplicity}} option from the menu.

==Example==

<!--T:15-->
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 pieces are connected are called knots. A knot with multiplicity ''m'' on a B-spline with degree ''d'' means the curve to the left and right of the knot has at least an equal ''n'' order derivative (called ''C<sup>n</sup>'' continuity) where ''n = d - m''.

In this cubic B-spline (degree 3) there are 3 segments, meaning 3 curves are connected at 2 knots. The knots have multiplicity 1.

The multiplicity is indicated by the numbers in round brackets. See [[File:Sketcher_BSplineKnotMultiplicity.svg|16px]] [[Sketcher_BSplineKnotMultiplicity|Show/hide B-spline knot multiplicity]].

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

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

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

<!--T:19-->
A consequence of a higher multiplicity is that for the price of loosing continuity you gain local control. Meaning changing one control point will only affect the B-spline locally.

This can be seen in this example, where the B-spline with knot multiplicity 1 from the first image above was taken, and the second control point from the right was moved up. As a result the complete shape of the B-spline has changed:

</translate>
[[File:Sketcher_KnotMultiplicity_locality1.png|400px]]
<translate>

After increasing the multiplicity of the knots to 2, moving the second control point from the right results in significant changes on the right side of the shape only:

</translate>
[[File:Sketcher_KnotMultiplicity_locality2.png|400px]]
<translate>



<!--T:8-->
<!--T:8-->
{{Docnav
{{Docnav
|[[Sketcher_BSplineIncreaseDegree|Increase degree]]
|[[Sketcher_BSplineDecreaseDegree|Decrease B-spline degree]]
|[[Sketcher_BSplineDecreaseKnotMultiplicity|Decrease knot multiplicity]]
|[[Sketcher_BSplineDecreaseKnotMultiplicity|Decrease knot multiplicity]]
|[[Sketcher_Workbench|Sketcher]]
|[[Sketcher_Workbench|Sketcher]]
|IconL=Sketcher_BSplineIncreaseDegree.svg
|IconL=Sketcher_BSplineDecreaseDegree.svg
|IconC=Workbench_Sketcher.svg
|IconR=Sketcher_BSplineDecreaseKnotMultiplicity.svg
|IconR=Sketcher_BSplineDecreaseKnotMultiplicity.svg
|IconC=Workbench_Sketcher.svg
}}
}}


</translate>
</translate>
{{Sketcher Tools navi{{#translation:}}}}
{{Sketcher_Tools_navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{clear}}

Latest revision as of 11:16, 2 April 2024

This documentation is a work in progress. Please don't mark it as translatable since it will change in the next hours and days.

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 BSplineDecreaseKnotMultiplicity

Description

The Sketcher BSplineIncreaseKnotMultiplicity tool increases the multiplicity of B-spline knot.

Usage

  1. Select a B-spline knot.
  2. There are several ways to invoke the tool:
    • Press the Increase knot multiplicity button.
    • Select the Sketch → Sketcher B-spline tools → Increase knot multiplicity option from the menu.

Example

B-splines are basically a combination of Bézier curves (nicely explained in this and this video). The points where two Bézier pieces are connected are called knots. A knot with multiplicity m on a B-spline with degree d means the curve to the left and right of the knot has at least an equal n order derivative (called Cn continuity) where n = d - m.

In this cubic B-spline (degree 3) there are 3 segments, meaning 3 curves are connected at 2 knots. The knots have multiplicity 1.

The multiplicity is indicated by the numbers in round brackets. See Show/hide B-spline knot multiplicity.

B-spline where both knots have multiplicity 1.

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

Same B-spline 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. Meaning changing one control point will only affect the B-spline locally.

This can be seen in this example, where the B-spline with knot multiplicity 1 from the first image above was taken, and the second control point from the right was moved up. As a result the complete shape of the B-spline has changed:

After increasing the multiplicity of the knots to 2, moving the second control point from the right results in significant changes on the right side of the shape only: