# Wat is SMLib, en hoe verhoudt het zich tot OCCT?

- Link: https://opensourcecad.nl/cad-kernels/wat-is-smlib-en-hoe-verhoudt-het-zich-tot-occt/
- Published: 2026-10-21T22:08:34+02:00
- Author: Marijn van den Heuvel \+ AI

_English version: [What is SMLib, and how does it relate to OCCT?](https://opensourcecad.nl/en/what-is-smlib-and-how-does-it-relate-to-occt/)._

NVIDIA zette in oktober 2026 een kernel open source onder de naam USD BRep. Die 
kernel heet SMLib en zat ruim twintig jaar in het commerciële ClassCAD. Daarmee 
is er naast OCCT een tweede open-source kernel voor B-rep-modelleren. Hieronder 
staat wat SMLib is, wat ClassCAD en OCCT zijn, en waarin ze feitelijk verschillen.

## Wat SMLib is

SMLib staat voor Solid Modeling Library. Het is een kernel voor B-rep-modelleren
die met NURBS rekent: exacte oppervlakken, booleans, fillets en chamfers, sweeps,
offset en shell, plus het repareren en trianguleren van modellen. Naast NURBS gaan
er ook analytische oppervlakken in, zoals vlakken, cilinders, kegels, bollen en 
torussen.

De kernel komt van Solid Modeling Solutions. NVIDIA nam dat bedrijf in mei 2022 
over en publiceerde de code op 9 oktober 2026 onder de Apache-2.0-licentie, als 
onderdeel van USD BRep. Wat SMLib niet is: een CAD-programma. Het is de rekenkern;
functiegeschiedenis, schets-oplossing en samenstellingen zitten in de applicatie
erboven.

## Wat ClassCAD is

ClassCAD is de CAD-engine waarin SMLib al die jaren draait, van AWV Informatik uit
Sankt Gallen. Je start het niet als een programma met een eigen venster: de engine
draait op een server of in de browser en wordt via een API aangestuurd, om CAD in
andere software te bouwen. De engine levert de functiegeschiedenis en de schetsen,
SMLib levert de geometrie eronder. Om die engine heen hangen producten als Buerligons(
een modelleerprogramma in de browser), de Buerli-SDK en ClassCAD.ai.

## Wat OCCT is

OCCT, Open CASCADE Technology, is een C++-bibliotheek voor 3D CAD, CAM en CAE. Matra
Datavision maakte hem in 1999 open source, en sinds 2004 heet hij zo. Het bedrijf
erachter, Open Cascade SAS, hoort sinds 2014 bij Capgemini. De licentie is LGPL 
2.1 met een uitzondering, sinds versie 6.7.0 uit 2013; de nieuwste versie is 8.0.1.
OCCT rekent net als SMLib met analytische oppervlakken en NURBS, doet booleans en
fillets, en heeft vertalers voor uitwisselformaten zoals STEP. Ook OCCT is een kernel,
geen CAD-programma.

## Waar ze van elkaar verschillen

  |   |  OCCT |  SMLib |  
   |  Licentie |  LGPL 2.1 met uitzondering; commerciële licentie mogelijk via Open Cascade |  Apache-2.0 |  
 |  Open source sinds |  1999 |  Oktober 2026 |  
 |  Herkomst |  Matra Datavision, nu Open Cascade SAS onder Capgemini |  Solid Modeling Solutions, sinds 2022 NVIDIA |  
 |  Draait in |  FreeCAD, KiCad 3D, Salome, CadQuery, build123d en meer |  ClassCAD; als open source nog geen breed gebruik |

Het grootste feitelijke verschil zit in de licentie. Verder lijken ze op elkaar:
beide zijn kernels voor B-rep-modelleren, met analytische oppervlakken en NURBS,
booleans en fillets.

## Het licentieverschil

Apache-2.0, die van SMLib, geeft je de volle vrijheid. Je mag de code gebruiken,
aanpassen en verspreiden, ook in een gesloten product. Belangrijker: ook je eigen
verbeteringen aan de kernel mag je voor jezelf houden. Je hoeft alleen de licentie-
en auteursrechtmeldingen te laten staan en aan te geven wat je gewijzigd hebt, en
je krijgt er patentrechten bij.

LGPL 2.1 met uitzondering, die van OCCT, werkt anders. Je applicatie mag gesloten
blijven en aan de kernel linken, maar de kernel zelf blijft onder de LGPL. Verbeter
je de kernel en verspreid je die aanpassing, dan moet ze onder dezelfde licentie
openbaar worden. En de gebruiker moet de kernel kunnen vervangen door een eigen 
bouw. De uitzondering verruimt alleen het linken, niet die twee plichten. Wie ze
helemaal niet wil, kan bij Open Cascade een commerciële licentie kopen.

**Mijn oordeel:** dat verschil is geen toeval. OCCT staat open source onder een 
licentie die het commerciële bedrijf erachter ten goede komt: wie de kernel aanpast
en verspreidt, moet die aanpassing delen, en zo komt verbeterwerk gratis terecht
bij een bedrijf dat er ook commerciële licenties op verkoopt. Wie zijn eigen kernelwerk
wil houden in plaats van weg te geven, zit met Apache-2.0 beter.

## Wat dat betekent als je een kernel kiest

Naast de licentie telt hoe lang een kernel al in open source meedraait. OCCT heeft
een lange lijst programma’s die erop draaien, met jaren aan documentatie en gereedschap.
SMLib heeft een lange commerciële staat van dienst, maar is pas net open source.
Voor SolidCraft loopt er een port naar een nieuwe kernel, Solidcore, die nog niet
af is.

De code van SMLib staat op [GitHub](https://github.com/NVIDIA-Omniverse/usd-brep),
de licentie van OCCT op de [projectwiki](https://github.com/Open-Cascade-SAS/OCCT/wiki/license).
Hoe Solidcore zich verhoudt tot OCCT, staat in de [eerdere vergelijking](https://opensourcecad.nl/vibecoded-apps/solidcore-vs-occt/).
