XNurbs releases a ground-breaking NURBS software

Well that is only true if you are able to maintain good tangency and flow across the centerline. I use both and both techniques are valid. I have found that it can sometimes be easier to build a large surface across the centerline rather than splitting it at the centerline. for some added reading pleasure, our friends at Autodesk Alias also recommend this as a possible strategy to maintain good curvature across a centerline.

Of course I agree. The same is true for any continuity .It is wrong always taking the highest feasible continuity.
It is equally important to look for a good curvature flow, otherwise a high continuity is meaningless. You can trick any deviation analysis by matching surfaces at smallest size at any cost, but that doesn’t prevent you from wavy flows, bumps or flat spots.Aiming at G2 everywhere is simply dangerous smattering…

That has nothing to do with what I said and you even quoted me saying it

I was referring to models that people posted on this forum.asking for help with how to make a particular surface or shape. Many of these models have been not very different than the model you posted. I have probably seen more than hundred times people have responded to these types of questions with ‘you need to get VSR or Tsplines to do that’. But not once has anybody actually posted a concrete solution that I could open and analyze to see if VSR or Tsplines is capable of solving such a prob;em.

I suspect that VSR or Tsplines are good for making some shapes just as long as you aren’t too fussy about whatever that shape turns out to be. But if you need something to make a particular shape (like the example you posted earlier), they aren’t much use.


Vsr is a set of tools for trimming - matching - analyzing - recalculating that is far superior than anything rhino has. (no offense)

As far as shape goes that’s up to users skill.

A tool won’t do your job.

I don’t need vsr to tell me not to match anyhing to this type of surface though. (from upper example posted)

@Mark_Landsaat ! Taking some measurements, the model has a maximum brep edge normal deviation along all joined edges below 0.000002 degrees. Imho this is impressive. For example i have seen production surfaces made in ICEM which have edge normal deviations in the range of 0.04 and 0.1 degrees.


I’ve read lots of similar statements making all sorts of claims about vsr, but in my opinion if it were true that it can do what people claim it can do somebody would have by now provided at least one concrete example of how it handles one of the typical problem that people post here.

So what are you saying? vsr produces nothing or does it make a mess or what?

The Xnurbs guy also said the input was not ideal, but he showed us what it can do and didn’t just make excuses. As far as i have seen we have been shown what Xnurbs can do for every example people have posted here and vsr has the exact opposite record of never showing what it does.

Orange surfaces, VSR Multi-Blend. One button operation, took about 30 seconds. .3dm included

TT_ST_GS_VSR.3dm (897.2 KB)


I’m saying match to a dirty surface - get a dirty surface.

1 Like

2 problem’s I see with your model:

  1. Its not solution to the problem that was posed. It may be a solution to a different problem.

  2. those surfaces have horrible tangent continuity. One of the orange surfaces is more than 1 degree from being tangent with its neighbor.

But thanks for the example.

@jim, it is true but to be fair, that 1 degree is present on the boundary edge. I would not expect that any tool can compensate that. It’s garbage in garbage out as @Vladimir_Aleksic said.


@jim fair enough my model isn’t very good. But I showed an example of what I was able to achieve with VSR tools in a 30 second effort. I don’t know how to get a better result with native Rhino surfaces, maybe you can take my bad model and show us all how it should be done with native Rhino surfaces.

I would actually be really grateful to learn how to do it better since I don’t have the skillset to do it.

Hi Mark, i’ve given this a quick try and just used poor mans _BlendSrf with a slighly different layout than yours. It’s normal deviation along joined edges is 0.1 degrees. I’ve also created the 3 main blends new, they where build using G1 tangency. The horizontal blend srf pointing to the right was rebuild using 9 degree, then matched on all 4 sides using _MatchSrf. Of course this is no single click operation, it takes more than 30 seconds, maybe in the range of 3-4 minutes. But there is much control over the outcome.

Here is the file for comparison: BlendSrf.3dm (159.9 KB)

@XNurbs, could you please demonstrate how you would fill the other side ?



@clement. Thank you so much for giving that a try. I will try to recreate myself tomorrow as well. Very cool that you were able to get this result. I find these transitions very difficult to built and am excited about this new patch layout. Looks good from the picture.


1 Like

I provide a surface patch for you reference. You can find the rhino file below.

Blender surface01.3dm (220.5 KB)


We should not compare Icem/VSR with T-Splines.
The advantage of T-splines are almost perfect curvature continuous models, easy and fast to model.
Its main disadvantage is the lack of explicit and technical control. How do you model something which needs
Exact fillet radii’s, certain flange angles or equally crown surfaces. It’s simply not possible.
One aspect of having an always perfect g2 model, is that you trade in freedom in the surface layout.

ICEM/ and its technical subset VSR have a completely different approach, which allows maximum controllability
and maximum quality at almost impossible situations. Its drawback: It is an absolutely direct and slow approach to model something.
And because of this concept, it has to keep the control points low on count and equally distributed. This is what Alias Golden Rules are about, which share a similar concept.

And this is very important: If you match two single span surfaces, it is much more complicated to enforce continuity.
If you add spans and move the cps close to the matching edge you will simplify matching, but this is kind of cheating.
Under this aspect tangency under 0.15 is visually okay, <0.05 is visually perfect tangent. But you should not compare tangency deviation by numbers only, it is also important to see what you match together.

I am not comparing Icem, VSR, T-Splines or whatever per se. I am analyzing one aspect of the output, the normal deviation along joined edges. The normal deviation for the multipatch example posted by XNurbs above is in the thousands of degrees, which is impressive and remarkable, along with the density of the Nurbs surface provided to achieve such a small normal deviation.

It is clear which drawbacks there are when working with subdivision based modeling techniques, single span or multispan. The points you brought up will partially be true for Rhino’s SubD implementation as well. But as you say, today, speed and simplicity counts often more than quality.

Imho the average Rhino user never will take care about single span modeling or higher degree surfaces as long as this is not achieved without too much hassle or automagically. I would estimate that you can cover 80 percent of the design application field using just multispan surfaces. Single span surfaces are, at this time, more complicated to build in Rhino and frankly, often not necessary. The average user counts on sandpaper, mold polishing or the manufacturing skills if required. I’ve seen many good and bad models used for production, from all kinds of industries. Many of them where build by what you call cheating but no one asks for the surface layout, or tangent deviation as long as the overall appearance and flow of the outcome is pleasing enough to convince one decision maker. Required late changes are often done by surfacing specialists, but not by the designers.

What interests me most about VSR or XNurbs are the embedding possibilities in the context of surfaces built with Rhino’s standart surfacing commands. I guess this is the area where the Rhino PlugIn will be evaluated by potential users.



100 % agree :slight_smile:

Especially the last sentence. In the end most user may just use a minimal subset of functionality, but
they judge a platform by its potential.

Funny, this morning I had a conversation with a workmate doing class A as well. He told me he almost never blends surfaces. He creates surfaces and matches them instead. I couldn’t believe that at first, because I use it all the time. But it clearly shows there are many ways to Rome. And if some say we need better functionality of A, others, doing the same stuff, will tell you that they don’t care about it at all because they are doing it differently anyway…

clement asked “@XNurbs, could you please demonstrate how you would fill the other side ?”

Since you started it, could you post the surfaces generated by XNurbs in both cases. For such simple cases, XNurbs should solve it within 0.1 second.

Could anyone produce a curve network like the image below or some models even better? We would like to produce some demos to show how to use XNurbs for different operations/applications.


@suka.chen Thank you for posting this possible solution, much appreciated :+1:


Patch is pretty good.

TT_ST_GS_PATCH.3dm (4.5 MB)