Rebuild surface, lacks the good homogeneous distribution of control points

I’d like to talk about the famous rebuild command.
undoubtedly this is the most popular command.
but I find that there is a lack of an important option, which allows to distribute the control points homogeneously on the surface,

I also ran the rebuild uv command with the loose option to fix this problem. unfortunately this command does not keep the degree of the surface. (it has the tendency to transform all surfaces into degree 3)
(moving uvn also does not preserve the shape of the edges of the surface) out of the question.

you see in this little video a demonstration of what I’m talking about.

according to my understanding rhion takes into account the good distribution of knots on the surface. but not the control points

however the most important for a designer is the control points, not the knots.

if other users agree with me, please participate,
I would like the rhino developers to correct and save this wonderful command (as a priority)
thank you

@fares.boulamaali The rebuilt surfaces in your examples with the large variation in control point spacing are multi-span surfaces. Your multi-span example surfaces have uniform knots and equal size spans.

Because of the way the NURBS math works in general it is not possible to have uniform control point spacing, uniform knots and equal size spans.

Rebuild uses uniform knot spacing. Non-uniform knots can be useful, particular for curves, but it can also have disadvantages, particularly for free-form surfaces where the “optimum” non-uniform knots may be be very different depending which part of the surface the knots are optimized for. Typically for surfaces uniform knot spacing is a reasonable alternative.

Because Rebuild uses uniform knots the control points spacing will be as shown if the spans are similar size. Again that is a result of NURBS math. For some surfaces It may be possible to find a non-uniform set of knot parameter values which results in a closer correspondence between control point spacing and span That would probably require a fundamentally different rebuild algorithm, which would be likely to be slower for complex surface and produce undesirable results for many free-form surfaces.


Hello David cockey
I know very well that it is because of the uniform knots, the distribution is not homogeneous for the control points. this is quite understandable for the mathematical algorithm of the nurbs with uniform knots

… but I would also like to say that the knot may be non-uniform. the (NU) in the words nurbs means non-uniform for the knots
the multi-span surfaces can have nodes with non-uniform values ​​… which results in a different distribution of the control points
we can have a knot against a control point, only for curves are surfaces of degree 1.

in my post i talk about the rebuild command, if it can be improved in ways that it can position the checkpoints homogeneously …
using it a different math algorithm. I’m not inventing a new algorithm :joy:I’m not a mathematician :rofl:

rhino already has the rebuild uv command (loose option). Its algorithm is different in my opinion,:thinking: because it manages to reposition the points in homogeneity on the surface !!.
but its disadvantage is that it transforms all the surfaces in degree 3

How are knots calculated?

Perhaps these two threads should be merged…

1 Like

yes I agree with you

I am not associated with McNeel and have never seen Rhino source code.

The interior knot parameter values appear to be calculated by simply dividing the parameter along the curve into equal increments.

Are asking about the coordinates at the knots? I doubt those are calculated by the Rebuild command as they are not used directly in NURBS equations. The Rebuild command instead would solve for the control point coordinates, possibly using an algorithm similar to one described in The Nurbs Book

1 Like