0

I'm trying to interpolate through a set of motion data points, using piecewise motions as defined by Wagner, so each data point contains 8 numbers. Each of those numbers forms a motion parameter, so I need to generate Bspline functions for each parameter (8 total parameters, 8 Bpsline functions). 3 of the numbers pertain to translation, 4 to rotation and 1 to the translation weight. Each of these three groups is defined to have a specific degree for their respective curves, so general cubic B-spline interpolation does not work.

The formula for a cubic Bspline is explicitly defined but that's not the case for higher curve degrees, so how do I interpolate a data set using a degree of say 4? I know LU decomposition can be used, but I'm not sure how to implement that in C++, or how to define the needed values for the decomposition (I have the knot vector, and time of each data point, but that's all).

alain
  • 11,939
  • 2
  • 31
  • 51
C.A
  • 1
  • 2
  • 1
    Welcome to Stack Overflow. Please take the time to read [The Tour](http://stackoverflow.com/tour) and refer to the material from the [Help Center](http://stackoverflow.com/help/asking) what and how you can ask here. – πάντα ῥεῖ May 15 '17 at 22:49
  • Is this the algorithm you wanted? http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.27.5309 – Davislor May 16 '17 at 02:15
  • you can always use [De_Casteljan](https://en.wikipedia.org/wiki/De_Casteljau%27s_algorithm) it is a bit slower but very easy to implement on any degree ... – Spektre May 16 '17 at 07:30

0 Answers0