OCCT
Open CASCADE Technology: the open-source 3D CAD/CAM/CAE geometry kernel behind much of the MCAD world, with B-rep modeling, STEP/IGES data exchange and visualization.
What it does and how it connects
Open CASCADE Technology (OCCT) is a software development platform providing services for 3D surface and solid modeling, CAD data exchange, and visualization. Most of its functionality is available as C++ libraries, and it is aimed at software dealing with 3D modeling (CAD), manufacturing and measuring (CAM), or numerical simulation (CAE).
The kernel covers B-rep modeling, STEP and IGES data exchange, and visualization. Certified versions ship as a Git snapshot, a complete source archive with generated documentation, or platform-specific binary packages, from dev.opencascade.org and the GitHub releases page. Documentation is at dev.opencascade.org/doc/overview.
OCCT is free software under the GNU Lesser General Public License version 2.1, with a special exception defined in OCCT_LGPL_EXCEPTION.txt; an Open CASCADE commercial license or contractual agreement is the alternative. The code is provided as is, without warranty.
What engineers report
BRepLib_FuseEdges can turn a valid shape into an invalid one by moving a nonperiodic B-spline edge's parameter range outside its underlying curve's domain.
2026-11-06Read the original
Alternatives
Compare side by side- geospec
A geometry specification engine built on OCCT that answers passed, failed or refused for a model, rather than the OCCT kernel itself.
- CADence
Parametric 3D CAD for makers built with OpenCascade compiled to WebAssembly, rather than the geometry kernel as a library.
- anvilcad
Free open-source parametric 3D CAD in Rust with its own B-rep kernels, rather than a CAD kernel library.
- SketchForge-3D
A local-first browser 3D design editor for building and cutting shapes, rather than a geometry kernel library.
Recurring errors it addresses
Error Index entries this tool is built to reduce or work around.
- Boolean operations on two valid lofts sharing an end section return impossible results with no error: Fuse(body, lip) comes back empty and Common is zero on both OCCT 7.9.3 and 8.0.1, and on 8.0.1 Cut is larger than its object, all with IsDone() true. Reproduced on OCCT 7.9.3 and 8.0.1 with measured volumes against a point-classification ground truth; argument order flips the outcome. The reporter traced it to a real F1 airbox model where the same pair lost the body.Error Index
- Since OCCT 7.7.0, spherical or toroidal STEP faces with a clockwise outer boundary import as the complement of the bounded patch: 18 spherical faces on a Pro/ENGINEER model grew from 693.8 to 42,569.7 mm2 while BRepCheck_Analyzer calls every face valid. A shape-healing heuristic mistakes the explicit outer boundary for a hole.Error Index
- On long helical thread flanks, intersection tolerance grew from 3e-6 to 1.45e-4, cutting a threaded cylinder failed at 7 of 12 phases, and two more phases returned a valid solid about 60 mm3 too heavy.Error Index
- When a STEP file declares uncertainty over about 6.283 mm (2 pi), a cone ending in an apex reads back wrong, invalid solid or zero-area conical face, with no error or warning from the reader.Error Index
- A guided pipe sweep that OCCT 7.9.3 builds exactly comes out the wrong volume in 8.0.1, thinner than spec near the ends. Tighter tolerance made it worse: 0.937 thick vs 1.Error Index
Sources
Not verified
- Pricing: none stated on the repo; the kernel is free under LGPL-2.1, with a commercial license as the alternative.
- The license is LGPL-2.1 with a special exception; the catalog label open-source is confirmed, refined here to the exact license.
Last verified November 6, 2026. Listings are informational. The evidence score measures public, verifiable evidence and is not an endorsement or a compatibility claim.