Sketcher BSplineIncreaseDegree: Difference between revisions
(remove statement about number of control points as discussed: https://forum.freecadweb.org/viewtopic.php?f=3&t=51600&p=444884#p444884) |
(Marked this version for translation) |
||
(37 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
<languages/> |
<languages/> |
||
<translate> |
<translate> |
||
<!--T:14--> |
<!--T:14--> |
||
{{Docnav |
{{Docnav |
||
|[[ |
|[[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= |
|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 |
||
⚫ | |||
|Workbenches=[[Sketcher_Workbench|Sketcher]] |
|Workbenches=[[Sketcher_Workbench|Sketcher]] |
||
⚫ | |||
|Version=0.17 |
|Version=0.17 |
||
|SeeAlso= |
|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]). |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
# Select one or more B-splines. |
|||
# There are several ways to invoke the tool: |
|||
⚫ | |||
#* 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:20--> |
|||
In this cubic B-spline (degree 3) there are 3 segments, meaning 3 curves are connected at 2 knots. |
|||
<!--T:29--> |
|||
⚫ | |||
</translate> |
</translate> |
||
[[File:Sketcher_BSplineDegree3.png|400px]] |
[[File:Sketcher_BSplineDegree3.png|400px]] |
||
<translate> |
<translate> |
||
<!--T:21--> |
|||
{{Caption|B-spline with degree 3 and 2 knots that each have |
{{Caption|B-spline with degree 3 and 2 knots that each have multiplicity 1.}} |
||
<!--T:22--> |
|||
The outer segments |
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--> |
|||
Increasing the degree will add control points |
Increasing the degree to 4 will add control points without changing the shape of the B-spline: |
||
</translate> |
</translate> |
||
[[File:Sketcher_BSplineDegree4.png|400px]] |
[[File:Sketcher_BSplineDegree4.png|400px]] |
||
<translate> |
<translate> |
||
<!--T:24--> |
|||
{{Caption|Same B-spline where the degree was changed from 3 to 4. Note that |
{{Caption|Same B-spline where the degree was changed from 3 to 4. Note that the knot multiplicity has also increased.}} |
||
<!--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> |
||
[[File:Sketcher_BSplineDegree3from4.png|400px]] |
[[File:Sketcher_BSplineDegree3from4.png|400px]] |
||
<translate> |
<translate> |
||
<!--T:26--> |
|||
{{Caption|Same B-spline where the degree was changed back from 4 to 3. Note that the knot multiplicity |
{{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--> |
|||
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. |
|||
⚫ | |||
⚫ | |||
⚫ | |||
<!--T:8--> |
<!--T:8--> |
||
{{Docnav |
{{Docnav |
||
|[[ |
|[[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= |
|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:}}}} |
||
{{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
- Select one or more B-splines.
- There are several ways to invoke the tool:
- Press the Increase B-spline degree button.
- Select the Sketch → Sketcher B-spline tools → Increase B-spline degree option from the menu.
- introduced in version 1.0: Right-click in the 3D view and select the Increase B-spline degree option from the context menu.
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.
- General: Create sketch, Edit sketch, Map sketch to face, Reorient sketch, Validate sketch, Merge sketches, Mirror sketch, Leave sketch, View sketch, View section, Toggle grid, Toggle snap, Configure rendering order, Stop operation
- Sketcher geometries: Point, Line, Arc, Arc by 3 points, Circle, Circle by 3 points, Ellipse, Ellipse by 3 points, Arc of ellipse, Arc of hyperbola, Arc of parabola, B-spline by control points, Periodic B-spline by control points, B-spline by knots, Periodic B-spline by knots, Polyline, Rectangle, Centered rectangle, Rounded rectangle, Triangle, Square, Pentagon, Hexagon, Heptagon, Octagon, Regular polygon, Slot, Fillet, Corner-preserving fillet, Trim, Extend, Split, External geometry, Carbon copy, Toggle construction geometry
- Sketcher constraints:
- Geometric constraints: Coincident, Point on object, Vertical, Horizontal, Parallel, Perpendicular, Tangent, Equal, Symmetric, Block
- Dimensional constraints: Lock, Horizontal distance, Vertical distance, Distance, Radius or weight, Diameter, Auto radius/diameter, Angle, Refraction (Snell's law)
- Constraint tools: Toggle driving/reference constraint, Activate/deactivate constraint
- Sketcher tools: Select unconstrained DoF, Select associated constraints, Select associated geometry, Select redundant constraints, Select conflicting constraints, Show/hide internal geometry, Select origin, Select horizontal axis, Select vertical axis, Symmetry, Clone, Copy, Move, Rectangular array, Remove axes alignment, Delete all geometry, Delete all constraints
- Sketcher B-spline tools: Show/hide B-spline degree, Show/hide B-spline control polygon, Show/hide B-spline curvature comb, Show/hide B-spline knot multiplicity, Show/hide B-spline control point weight, Convert geometry to B-spline, Increase B-spline degree, Decrease B-spline degree, Increase knot multiplicity, Decrease knot multiplicity, Insert knot, Join curves
- Sketcher virtual space: Switch virtual space
- Additional: Sketcher Dialog, Preferences, Sketcher scripting
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework
- Hubs: User hub, Power users hub, Developer hub