I'm working on SolveSpace, a parametric CAD. I'm looking for something to replace its builtin NURBS library, which has become a limiting aspect for many improvements.

It must:

  • Not be OpenCASCADE;
  • Be written in C++ or at least compile to C++;
  • Provide boolean operations on trimmed NURBS surfaces;
  • Be under a GPLv3+-compatible license.

I'm aware of:

  • OpenCASCADE: please do not suggest I just use OpenCASCADE;
  • OpenNURBS: not actually a NURBS operation library, mostly just loads/saves geometry;
  • libnurbs: no boolean operations, only some rudimentary parts of them;
  • SISL: provides some boolean operations, but only over NURBS surfaces defined over rectangular windows, as opposed to trimmed NURBS surfaces;
  • GoTools (based on SISL): provides trimmed NURBS surfaces, but no surface-surface intersection, classification, etc;
  • Verb NURBS: rudimentary booleans, no trimmed NURBS surfaces; none of which satisfy the requirements.

Are there any which do?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.