Sketcher BSplineIncreaseDegree: Difference between revisions

From FreeCAD Documentation
(Marked this version for translation)
(Marked this version for translation)
 
(36 intermediate revisions by 5 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
<translate>
<translate>

<!--T:14-->
<!--T:14-->
{{Docnav
{{Docnav
|[[Sketcher_BSplineConvertToNURB|Convert Geometry to B-spline]]
|[[Sketcher_BSplineConvertToNURBS|Convert geometry to B-spline]]
|[[Sketcher_BSplineDecreaseDegree|Decrease B-spline degree]]
|[[Sketcher_BSplineDecreaseDegree|Decrease B-spline degree]]
|[[Sketcher_Workbench|Sketcher]]
|[[Sketcher_Workbench|Sketcher]]
|IconL=Sketcher_BSplineConvertToNURB.svg
|IconL=Sketcher_BSplineConvertToNURBS.svg
|IconR=Sketcher_BSplineDecreaseDegree.svg
|IconC=Workbench_Sketcher.svg
|IconC=Workbench_Sketcher.svg
|IconR=Sketcher_BSplineIncreaseKnotMultiplicity.svg
}}
}}


Line 14: Line 15:
{{GuiCommand
{{GuiCommand
|Name=Sketcher BSplineIncreaseDegree
|Name=Sketcher BSplineIncreaseDegree
|MenuLocation=Sketch → Sketcher B-spline tools → Increase B-spline degree
|Workbenches=[[Sketcher_Workbench|Sketcher]]
|Workbenches=[[Sketcher_Workbench|Sketcher]]
|MenuLocation=Sketch → Sketcher B-spline tools → Increase Degree of B-spline
|Version=0.17
|Version=0.17
|SeeAlso=[[Sketcher_BSplineDegree|Show/hide B-spline degree]], [[Sketcher_BSplineDecreaseDegree|Decrease B-spline degree]]
|SeeAlso=[[Sketcher_BSplineDecreaseDegree|Sketcher BSplineDecreaseDegree]]
}}
}}


Line 23: Line 24:


<!--T:10-->
<!--T:10-->
The [[Image:Sketcher_BSplineIncreaseDegree.svg|24px]] [[Sketcher_BSplineIncreaseDegree|Sketcher BSplineIncreaseDegree]] tool increases the degree (order) of [[B-Splines|B-splines]].
Increases the degree of the B-spline(see [https://en.wikipedia.org/wiki/B-spline B-spline]).

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

<!--T:17-->
# Select one or more B-splines.
# There are several ways to invoke the tool:
#* Press the {{Button|[[Image:Sketcher_BSplineIncreaseDegree.svg|16px]] [[Sketcher_BSplineIncreaseDegree|Increase B-spline degree]]}} button.
#* Select the {{MenuCommand|Sketch → Sketcher B-spline tools → [[Image:Sketcher_BSplineIncreaseDegree.svg|16px]] Increase B-spline degree}} option from the menu.
#* {{Version|1.0}}: Right-click in the [[3D_view|3D view]] and select the {{MenuCommand|[[Image:Sketcher_BSplineIncreaseDegree.svg|16px]] Increase B-spline degree}} option from the context menu.

==Example== <!--T:28-->


<!--T:19-->
<!--T:19-->
B-splines are basically a combination of [https://en.wikipedia.org/wiki/Bezier_curve#Constructing_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).
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).


<!--T:20-->
<!--T:20-->
In this cubic spline (degree 3) there are 3 segments, meaning 3 curves are connected at 2 knots<br>(degree is indicated by the number, indication can be changed using the toolbar button {{Button|[[File:Sketcher_BSplineDegree.svg|24px]] [[Sketcher_BSplineDegree|Show/hide B-spline degree]]}}):
In this cubic B-spline (degree 3) there are 3 segments, meaning 3 curves are connected at 2 knots.

<!--T:29-->
The degree is indicated by the number in the center. See [[File:Sketcher_BSplineDegree.svg|16px]] [[Sketcher_BSplineDegree|Show/hide B-spline degree]].


</translate>
</translate>
Line 35: Line 50:
<translate>
<translate>
<!--T:21-->
<!--T:21-->
{{Caption|B-spline with degree 3 and 2 knots that each have the multiplicity 1.}}
{{Caption|B-spline with degree 3 and 2 knots that each have multiplicity 1.}}


<!--T:22-->
<!--T:22-->
The outer segments have each 2 control points, the inner one none to fulfill the constraint that the knots have multiplicity 1. (see [[Sketcher_BSplineDecreaseKnotMultiplicity#Description|this page]] for an explanation of the multiplicity)
The outer segments each have 2 control points, the inner segment has none to ensure the knots have multiplicity 1. See [[Sketcher_BSplineDecreaseKnotMultiplicity#Description|this page]] for an explanation about multiplicity.


<!--T:23-->
<!--T:23-->
Increasing the degree will add control points and the shape of the spline is not changed:
Increasing the degree to 4 will add control points without changing the shape of the B-spline:


</translate>
</translate>
Line 47: Line 62:
<translate>
<translate>
<!--T:24-->
<!--T:24-->
{{Caption|Same B-spline where the degree was changed from 3 to 4. Note that also the knot multiplicity was increased.}}
{{Caption|Same B-spline where the degree was changed from 3 to 4. Note that the knot multiplicity has also increased.}}


<!--T:25-->
<!--T:25-->
If you take this result and decrease the degree, you cannot get the initial state of the spline information will be lost by this operation. For our example decreasing the degree again leads to this:
From this result you cannot get back to the initial state of the B-spline by decreasing the degree. Some information is lost when the degree of a B-spline is changed. Decreasing the degree back to 3 leads to this:


</translate>
</translate>
Line 56: Line 71:
<translate>
<translate>
<!--T:26-->
<!--T:26-->
{{Caption|Same B-spline where the degree was changed back from 4 to 3. Note that the knot multiplicity was increased.}}
{{Caption|Same B-spline where the degree was changed back from 4 to 3. Note that the knot multiplicity has increased again. Depending on the B-spline, the algorithm to decrease the degree may add a lot of knots to preserve the shape as has happened here.}}


<!--T:27-->
<!--T:27-->
You can see that now each segment has 2 control points and the knots are coincident with each a further control point. The knots have now ''C''<sup>0</sup> continuity so that the spline will get "edges" when you move a control point. So the information of a higher continuity is lost. (see [[Sketcher_BSplineDecreaseKnotMultiplicity#Description|this page]] to for an explanation of the continuity)
Each segment now has 2 control points and each knot is coincident with an additional control point. The knots have ''C<sup>0</sup>'' continuity so that the B-spline will get "corners" if you move a control point. The information of a higher continuity is therefore lost. See [[Sketcher_BSplineDecreaseKnotMultiplicity#Description|this page]] for an explanation about continuity.

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

<!--T:17-->
# Select an edge from an existing B-spline, and press {{Button|[[File:Sketcher_BSplineIncreaseDegree.svg|24px]] '''Increase B-spline degree'''}}.




<!--T:8-->
<!--T:8-->
{{Docnav
{{Docnav
|[[Sketcher_BSplineConvertToNURB|Convert Geometry to B-spline]]
|[[Sketcher_BSplineConvertToNURBS|Convert geometry to B-spline]]
|[[Sketcher_BSplineDecreaseDegree|Decrease B-spline degree]]
|[[Sketcher_BSplineDecreaseDegree|Decrease B-spline degree]]
|[[Sketcher_Workbench|Sketcher]]
|[[Sketcher_Workbench|Sketcher]]
|IconL=Sketcher_BSplineConvertToNURB.svg
|IconL=Sketcher_BSplineConvertToNURBS.svg
|IconR=Sketcher_BSplineDecreaseDegree.svg
|IconC=Workbench_Sketcher.svg
|IconC=Workbench_Sketcher.svg
|IconR=Sketcher_BSplineIncreaseKnotMultiplicity.svg
}}
}}


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

Latest revision as of 07:28, 22 April 2024

Sketcher BSplineIncreaseDegree

Menu location
Sketch → Sketcher B-spline tools → Increase B-spline degree
Workbenches
Sketcher
Default shortcut
None
Introduced in version
0.17
See also
Sketcher BSplineDecreaseDegree

Description

The Sketcher BSplineIncreaseDegree tool increases the degree (order) of B-splines.

Usage

  1. Select one or more B-splines.
  2. There are several ways to invoke the tool:

Example

B-splines are basically a combination of Bézier curves (nicely explained in this and this video).

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

The degree is indicated by the number in the center. See Show/hide B-spline degree.

B-spline with degree 3 and 2 knots that each have multiplicity 1.

The outer segments each have 2 control points, the inner segment has none to ensure the knots have multiplicity 1. See this page for an explanation about multiplicity.

Increasing the degree to 4 will add control points without changing the shape of the B-spline:

Same B-spline where the degree was changed from 3 to 4. Note that the knot multiplicity has also increased.

From this result you cannot get back to the initial state of the B-spline by decreasing the degree. Some information is lost when the degree of a B-spline is changed. Decreasing the degree back to 3 leads to this:

Same B-spline where the degree was changed back from 4 to 3. Note that the knot multiplicity has increased again. Depending on the B-spline, the algorithm to decrease the degree may add a lot of knots to preserve the shape as has happened here.

Each segment now has 2 control points and each knot is coincident with an additional control point. The knots have C0 continuity so that the B-spline will get "corners" if you move a control point. The information of a higher continuity is therefore lost. See this page for an explanation about continuity.