[Feature] [Sketcher] Adding centripetal Catmull-Rom spline (interpolation with no loop/self-intersection)
- Dominant language
- C++
- Stars
- 33.6k
- Forks
- 6k
- Avg merge
- 3d 17h
- Merged PRs (30d)
- 196
Description
Issue imported from https://tracker.freecad.org/view.php?id=3500
* **Reporter:** dbecad
* **Date submitted:** 6/4/2018
* **FreeCAD version:** 0.18
* **Category:** Feature
* **Status:** assigned
* **Tags:** b-splines
# Original report text
Good day,
Some time you want to interpolate a curve through some measured key points (that should be controlled/constrained as normal sketcher points) an in this case the control over the order of curvature / knot weight is less important.
These splines are similar to the b-spline tool in draft WB, even if it might be more accurate to call them [centripetal / Catmull-Rom splines](https://en.wikipedia.org/wiki/Centripetal_Catmull%E2%80%93Rom_spline)
They do have a lot of really interesting properties for modeling:
- they are nicely behaved, stay local and never diverge/loop even when control points are close together,
- you can also set the tangent at the beginning/end to connect with the rest of sketches elements
- possible to generate close loop with them.
But the most important feature is you control the curve with way points, not knots like B-Splines/NURBS that have no relation with the end result curve.
Thanks for your hard work!
[Reference Forum Thread](https://forum.freecadweb.org/viewtopic.php?f=10&t=28896&p=237305#p237305)
# Additional information
NA
# Steps to reproduce
NA
# Other bug information
* **Priority:** normal
* **Severity:** feature
* **Category:** Feature
* **Platform:** All
* **Updated:** 2/6/2021
Contributor guide
Assessment
This issue has not been assessed yet.