Open Cascade is delighted to announce the final release of Open CASCADE Technology version 8.0.0 to the public.
8.0.0 is the largest single-version step in OCCT in many years. The cycle covered five Release Candidates and three Beta builds and accumulated more than 500 changes since 7.9.0.
More details: https://github.com/Open-Cascade-SAS/OCCT/releases/tag/V8_0_0
The full per-area release notes are linked below. Migration guidance is on the developer portal: https://dev.opencascade.org/doc/overview/html/occt__upgrade.html (the page may take a short time to refresh after the tag).
Per-stage release notes
- Release Candidate 1
- Release Candidate 2
- Release Candidate 3
- Release Candidate 4
- Release Candidate 5
- Beta 1
- Beta 2
- Beta 3
Highlights
- C++17 baseline: the codebase uses
std::variant,std::optional,std::string_view,std::shared_mutexand structured bindings throughout. Pre-C++17 compilers are no longer supported. - Standard exceptions:
Standard_Failurederives fromstd::exception(what(),ExceptionType()are exposed);Raise(),Throw()andInstance()static helpers are gone, exceptions usethrow. Error handler stack isthread_local. - Standard threading:
Standard_MutexandTopTools_MutexForShapeProviderwere retired in favour ofstd::mutex.Standard_Conditionwas rebuilt on top of standard primitives. - Geometry evaluation redesign: 32 leaf
Geom*/Geom2d*curve and surface classes useEvalD0/EvalD1/EvalD2/EvalD3/EvalDNreturning POD result structs. The 29 concrete leaves arefinal. Adaptor dispatch is devirtualized throughstd::variant. - New differential-properties packages:
Geom2dProp,GeomProp,BRepPropreplace the legacy macro-basedLPropfamily withstd::variant-dispatched evaluators and result structs. GeomBndLibpackage: per-type bounding-box evaluators with analytical solutions for conics and quadrics;BndLibnow forwards to it.ExtremaPCpackage: point-to-curve extrema with per-geometrystd::variantdispatch.- Gordon surface construction:
GeomFill_GordonandGeomFill_GordonBuilderfor transfinite interpolation on N x M curve networks. - Helix toolkit (
TKHelix): geometric helix curve adaptor and topological builders. - BRepGraph: a graph-based representation of topology and BRep geometry, complementary to
TopoDS_Shape. Typed identifiers, multiple Views, bidirectional traversal, an extensible Layer/Cache system, history, deduplication, validation, and roundtrip conversion to and fromTopoDS_Shape. - TopoDS optimization:
TopoDS_TShapecarries shape type plus eight flags in a bit-packeduint16_t, soShapeType()is non-virtual.TopAbs::Compose/Reverse/Complementare inlinenoexcept.TopoDS_Iteratorsupports range-basedfor. - BSpline/Bezier: direct array members, always-populated weights backed by a static unit-weights view, faster
BSplCLibinterpolation. Several long-standing bugs corrected. - NCollection refresh: new
FlatMap/FlatDataMap(Robin Hood),OrderedMap/OrderedDataMap(insertion-order),KDTree(header-only),LinearVector(contiguous flat buffer),DynamicArrayrebuilt for O(1) indexed access. UnifiedContained()/TryEmplace()/TryBind()/Items()API.Size()returnssize_t(useLength()forint-typed APIs).IncAllocatorfast path is lock-free. - Shader-based infinite grid:
V3d_RectangularGridandV3d_CircularGridunified onto a single shader path with infinite extent, sub-pixel AA, arbitrarygp_Ax3plane, and bounded clipping. The classical CPU grid is preserved alongside for legacy GL profiles. - Selection through group flipping:
Graphic3d_Flipperbrings flip-aware BVH bounds and frustum overlap testing in line with rendering, fixing missed clicks onAIS_TextLabelandPrsDim_Dimensionafter camera rotation. Polyline strict-inclusion selection works for all sensitive types. - BVH-accelerated polyhedra interference:
IntPatch_PolyhedronBVHwith dual-tree traversal replaces pairwise triangle scans inIntPatch_InterferencePolyhedron::Interference(). - STEP: stream-based
DE_Wrapperread and write; thread-safe STEP read and write under one-instance-per-thread; STEP General Attributes export, coordinate system connection points import, PMI measurement scaling, ~20% smaller files through duplicate-entity removal, smallerDirectionentity. IGES read remains non-thread-safe. - Mesh: registry-based factory (
BRepMesh_DiscretAlgoFactory) replacing theDISCRETPLUGIN/DISCRETALGOsymbol-based plugin system; TKMesh and TKXMesh can be loaded together. - Shape Healing:
ShapeBuild_ReShapecycle/leaf resolution and DFS guards eliminate stack overflows and edge multiplication on shapes with shared sub-shapes. - Numerical solvers:
MathPoly_Laguerrefor general polynomial roots; coordinate-wise Brent polishing for PSO and DE solvers improves precision by 4 orders of magnitude on separable functions; unified fixed-size 2D/3D/4D Newton API. - Build: CMake 3.16+, ARM64 a first-class target on macOS and Windows, comprehensive VCPKG support and upstream
opencascadeport. VTK is no longer enabled by default: setUSE_VTK=ONto opt in. - Repository layout: sources reorganized to
src/Module/Toolkit/Package/File. Inspector and ExpToCas extracted to their own repositories. GTest is the unit-testing framework; many QADraw tests were migrated to it. - Removed:
OSD_MAllocHook,QANCollection,PLib_Base,PLib_DoubleJacobiPolynomial,Standard_Mutex-based code paths,TColGeom/TColGeom2d/Geom2dLProp/LProp3dtypedef-only packages,BRepMesh_PluginMacro/PluginEntryType/FactoryError.

We’re thrilled to release a significant update to our commercial C# Wrapper, designed to make life easier for every .NET developer building powerful 3D applications.
We are delighted to announce the release of Open CASCADE Technology version 7.9.1
We’re excited to announce the Migration Program and the upcoming Major Release 8.0, scheduled for the beginning of 2026