Skip to main content

B-Spline and NURBS

Submitted by Ahmad Yavari on

Hi Dears

I have a question about B-Spline or NURBS. Assume that we have a X(u)=sig(Ri,p(u)).Xi that Xi are the control points and Ri,p are the rational basis functions. When I choose a parametric variable like ui according to control point by interpolation I can find the X(ui), now the question is this that can I find the parametric variable according to having an spatial X(u)??? It means that can I find the parametric variable that have resulted a spatial X(u) that I have it???
thanks for your attention. 

To my knowledge there is no closed solution to your problem. In fact, you cannot even be sure that the given point x is even on your Spline curve/surface! The mapping x(u) = \sum_i N_i(u) x_i is determined by the control points' location x_i. In general, it is nonlinear, so, in case that x is on the curve/surface, you must determine the parametric coordinate(s) u of x iteratively.

Peter Stein

Fri, 02/26/2016 - 14:45 Permalink

As I said, there is no direct inverse for the mapping from knot space to physical space. But you can find the parametric variable iteratively, i.e. you start with u_test = 0.5*u_1 as initial guess, compute the corresponding Cartesian coordinates x_i(u_test) and continue in the style of binary search until you are satisfied. Alternatively, Newton's method might also work for you.


Best regards,
Peter

Mon, 02/29/2016 - 10:57 Permalink