Exploring the range of influence of control points

I set 27 points and snap to them in exact same order to create curves from degree 1 to 11:

then I moved same control point for each curve by exactly the same movement:

Now I want to intersect each couple of curves with identical degrees (intersect the two with degree one; then intersect the two with degree two; then intersect the two with degree three and so on until intersect the two with degree eleven)

Generally when I create a copy of curve and move just one control point of the copied version, and then intersect the curve with its’ modified version, I supposed to see witch parts of the curve remains the same an witch parts change under the influence of that one control point: I supposed to see the range of influence of control points; ok?!

But it doesn’t work! :roll_eyes: I don’t know why but I can show you one example!

I considered post selecting and pre selection and it makes no difference!

at the end:

  1. Is my approach good enough toward Exploring the range of influence of control points
  2. What’s wrong whit intersection command??

this is the file if you need it:influence of control points - intersction problem.3dm (157.3 KB)

Intersect gives unpredictable results when used with curves or surfaces which partially coincide.

A simpler approach is to start with straight curves of differing degrees, and then move control points at a single location.

A key to understanding the range of influence of control points of NURBS curves and surfaces is the concept of “spans”. A curve of degree d with d+1 control points is a single span curve (sometimes called a Bezier curve) and each control point influences the entire curve (except for the points at the ends of the curve which are only influenced by the corresponding end control points.

A curve of degree d with n control points n > d+1 is a multi-span curve and will have n - d spans. A curve can be converted into a set of single span curves using the ConvertToBezier command.

Example with 11 control points and degree 1 though 6 curves: CPInfluenceDC.3dm (2.9 MB)

1 Like

Thanks @davidcockey

so by considering the span concept and the use of ConverToBezier command, I should use SelDup command instead of unreliable intersect command.

Now to explore the range of control point influence, first we make a copy of original curve and move the control point of one of them:

then we break down both curves into their spans using ConvetToBezier command:

then we select duplicates using SelDup command to detect which spans remain the same:

so we know unselected spans shows the range of influence of that control point

ă…¤
ă…¤
ă…¤
Back to first post I did these steps for all the curves from degree 1 to 11 in that post and I marked the range of effect of control point with each degree with the number showing the degree


( yes! I tripple checked and 10 is further than 11!)
and this is the file if needed:
control points’ range of effect.3dm (439.0 KB)

ă…¤
ă…¤
ă…¤
After all I wanna to know about the logic behind ConvertToBezier command and span concept (I know some basics like how a Bezier curve of any degree is made); Please introduce some sources that describe these concepts (also) visually.:pray: (Something very deep of course, because I read many and couldn’t fully understand things; most of them are really shallow)