Difference between revisions of "Sketcher BSplineDecreaseDegree"

From FreeCAD Documentation
Jump to navigation Jump to search
(create page)
 
m
 
(13 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
<languages/>
 
<languages/>
 
<translate>
 
<translate>
 +
 
<!--T:14-->
 
<!--T:14-->
 
{{Docnav
 
{{Docnav
|[[Sketcher_BSplineIncreaseDegree|Increase degree]]
+
|[[Sketcher_BSplineIncreaseDegree|Increase B-spline degree]]
 
|[[Sketcher_BSplineIncreaseKnotMultiplicity|Increase knot multiplicity]]
 
|[[Sketcher_BSplineIncreaseKnotMultiplicity|Increase knot multiplicity]]
 
|[[Sketcher_Workbench|Sketcher]]
 
|[[Sketcher_Workbench|Sketcher]]
 
|IconL=Sketcher_BSplineIncreaseDegree.svg
 
|IconL=Sketcher_BSplineIncreaseDegree.svg
 +
|IconR=Sketcher_BSplineIncreaseKnotMultiplicity.svg
 
|IconC=Workbench_Sketcher.svg
 
|IconC=Workbench_Sketcher.svg
|IconR=Sketcher_BSplineIncreaseKnotMultiplicity.svg
 
 
}}
 
}}
  
Line 14: Line 15:
 
{{GuiCommand
 
{{GuiCommand
 
|Name=Sketcher BSplineDecreaseDegree
 
|Name=Sketcher BSplineDecreaseDegree
 +
|MenuLocation=Sketch → Sketcher B-spline tools → Decrease B-spline degree
 
|Workbenches=[[Sketcher_Workbench|Sketcher]]
 
|Workbenches=[[Sketcher_Workbench|Sketcher]]
|MenuLocation=Sketch → Sketcher B-spline tools → Decrease Degree of B-spline
 
 
|Version=0.19
 
|Version=0.19
|SeeAlso=[[Sketcher_BSplineIncreaseDegree|Decrease B-spline degree]]
+
|SeeAlso=[[Sketcher_BSplineDegree|Sketcher Show/hide B-spline degree]], [[Sketcher_BSplineIncreaseDegree|Sketcher Increase B-spline degree]]
 
}}
 
}}
  
Line 23: Line 24:
  
 
<!--T:10-->
 
<!--T:10-->
Decreases the degree of the B-spline(see [https://en.wikipedia.org/wiki/B-spline B-spline]).
+
Decreases the degree (order) of a B-spline (see [[B-Splines|this page]] for more info about B-splines).
 +
 
 +
<!--T:18-->
 +
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).
 +
 
 +
<!--T:19-->
 +
In this cubic spline (degree 3) there are 3 segments, meaning 3 curves are connected at 2 knots<br>(the 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]]}}):
 +
 
 +
</translate>
 +
[[File:Sketcher_BSplineDegree3.png|400px]]
 +
<translate>
 +
<!--T:20-->
 +
{{Caption|B-spline with degree 3 and 2 knots that each have the multiplicity 1.}}
 +
 
 +
<!--T:21-->
 +
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)
 +
 
 +
<!--T:22-->
 +
Decreasing the degree will not delete control points but try instead to conserve the shape of the spline. Therefore segments will be added. For our example you see a lot of new spline segments with each one control point and the shape of the spline has only slightly been changed:
  
 
</translate>
 
</translate>
[[File:Sketcher_SampleBSplineIncreaseDegree.png|350px]]
+
[[File:Sketcher_BSplineDegree2.png|400px]]
 
<translate>
 
<translate>
 +
<!--T:23-->
 +
{{Caption|Same B-spline where the degree was changed from 3 to 2. Note that also the knot multiplicity was increased to conserve the spline shape. In effect the knots have now ''C''<sup>0</sup> continuity so that the spline will get "edges" when you move a control point. (see [[Sketcher_BSplineDecreaseKnotMultiplicity#Description|this page]] to for an explanation of the continuity)}}
 +
 +
<!--T:24-->
 +
If you take this result and increase the degree, you cannot get the initial state of the spline because information was lost by the prior decrease of the degree. For our example increasing the degree again leads to this:
  
<!--T:13-->
+
</translate>
{{Caption|Same B-spline with different Degrees.}}
+
[[File:Sketcher_BSplineDegree3again.png|400px]]
 +
<translate>
 +
<!--T:25-->
 +
{{Caption|Same B-spline where the degree was changed back from 2 to 3. Note that the knot multiplicity increased too because the information for a possible higher continuity was lost.}}
  
 
==Usage== <!--T:5-->
 
==Usage== <!--T:5-->
  
 
<!--T:17-->
 
<!--T:17-->
# Select an edge from an existing B-spline, and press {{Button|[[File:Sketcher_BSplinedecreaseDegree.svg|16px]] [[Sketcher_BSplinedecreaseDegree|B-spline decrease degree]]}}.
+
# Select an edge from an existing B-spline, and press {{Button|[[File:Sketcher_BSplineDecreaseDegree.svg|24px]] '''Decrease B-spline degree'''}}.
 +
 
  
 
<!--T:8-->
 
<!--T:8-->
 
{{Docnav
 
{{Docnav
|[[Sketcher_BSplineIncreaseDegree|Increase degree]]
+
|[[Sketcher_BSplineIncreaseDegree|Increase B-spline degree]]
 
|[[Sketcher_BSplineIncreaseKnotMultiplicity|Increase knot multiplicity]]
 
|[[Sketcher_BSplineIncreaseKnotMultiplicity|Increase knot multiplicity]]
 
|[[Sketcher_Workbench|Sketcher]]
 
|[[Sketcher_Workbench|Sketcher]]
 
|IconL=Sketcher_BSplineIncreaseDegree.svg
 
|IconL=Sketcher_BSplineIncreaseDegree.svg
 +
|IconR=Sketcher_BSplineIncreaseKnotMultiplicity.svg
 
|IconC=Workbench_Sketcher.svg
 
|IconC=Workbench_Sketcher.svg
|IconR=Sketcher_BSplineIncreaseKnotMultiplicity.svg
 
 
}}
 
}}
  
Line 50: Line 78:
 
{{Sketcher Tools navi{{#translation:}}}}
 
{{Sketcher Tools navi{{#translation:}}}}
 
{{Userdocnavi{{#translation:}}}}
 
{{Userdocnavi{{#translation:}}}}
{{clear}}
 

Latest revision as of 17:04, 14 September 2021

Other languages:
Deutsch • ‎English • ‎français • ‎polski • ‎português do Brasil • ‎русский

Sketcher BSplineDecreaseDegree.svg Sketcher BSplineDecreaseDegree

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

Description

Decreases the degree (order) of a B-spline (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).

In this cubic spline (degree 3) there are 3 segments, meaning 3 curves are connected at 2 knots
(the degree is indicated by the number, indication can be changed using the toolbar button Sketcher BSplineDegree.svg Show/hide B-spline degree):

Sketcher BSplineDegree3.png

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

The outer segments have each 2 control points, the inner one none to fulfill the constraint that the knots have multiplicity 1. (see this page for an explanation of the multiplicity)

Decreasing the degree will not delete control points but try instead to conserve the shape of the spline. Therefore segments will be added. For our example you see a lot of new spline segments with each one control point and the shape of the spline has only slightly been changed:

Sketcher BSplineDegree2.png

Same B-spline where the degree was changed from 3 to 2. Note that also the knot multiplicity was increased to conserve the spline shape. In effect the knots have now C0 continuity so that the spline will get "edges" when you move a control point. (see this page to for an explanation of the continuity)

If you take this result and increase the degree, you cannot get the initial state of the spline because information was lost by the prior decrease of the degree. For our example increasing the degree again leads to this:

Sketcher BSplineDegree3again.png

Same B-spline where the degree was changed back from 2 to 3. Note that the knot multiplicity increased too because the information for a possible higher continuity was lost.

Usage

  1. Select an edge from an existing B-spline, and press Sketcher BSplineDecreaseDegree.svg Decrease B-spline degree.