Skip to content

Releases: Open-Cascade-SAS/OCCT

V7_9_2

18 Oct 14:20

Choose a tag to compare

Open CASCADE Technology 7.9.2 Released

Open Cascade is delighted to announce the release of Open CASCADE Technology version 7.9.2 to the public.

Overview

Version 7.9.2 is a maintenance release incorporating over 25 improvements and bug fixes compared to version 7.9.1.

What's New in OCCT 7.9.2

Configuration & Build System

  • VCPKG add TclTk support (#580)
  • Remove jemalloc port files (#581)
  • Update C++ standard to C++17
  • Fix ARCH for older 32-bit macs (#626)
  • Fixed issue with CSF variable overwriting (#561)

Testing & Quality

  • Update samples C++ version (#606)
  • Remove marking warnings as errors in CI builds

Foundation Classes

  • Leak of WinAPI resources (#625)
  • Matrix multiplied issue (#522)

Modeling

  • Fix array indexing bug in IntAna_IntQuadQuad::NextCurve method (#703)
  • CornerMax incorrect realisation in Bnd_Box (#664)
  • Fix null surface crash in fixshape (#623)
  • Fix null surface crash in UnifySameDomain (#624)
  • GeomFill_CorrectedFrenet hangs in some cases (#630)
  • Mismatch between projected point and parameter in ShapeAnalysis_Curve (#600)
  • Infinite loop when Simplifying Fuse operation, CPU to 100% (#557)

Shape Healing

  • Revolved shape in STEP file is imported inverted (#699)

Visualization

  • Do not write comment into binary PPM image (Image_AlienPixMap)

Data Exchange

  • Crash on empty list in STEP (#671)
  • Facets with empty normals like 'f 1// 2// 3//' in RWObj_Reader (#520)
  • Fix indices during parsing of arrays in GLTF Reader (#602)
  • Preserving control directives in Step Export (#601)
  • Optimize entity graph evaluating (#562)

Draw

  • Fix message color mixing (#685)
  • Misprint in vcomputehlr command leading to error if no Viewer (#526)

Coding

  • Reducing relying on exceptions (#676)

Full Changelog: V7_9_1...V7_9_2

V8_0_0_rc2

29 Jul 16:02

Choose a tag to compare

V8_0_0_rc2 Pre-release
Pre-release

Open CASCADE Technology Version 8.0.0 Release Candidate 2

Open Cascade is delighted to announce the release of Open CASCADE Technology version 8.0.0 Release Candidate 2 to the public.

(Release Candidate 1: https://github.com/Open-Cascade-SAS/OCCT/releases/tag/V8_0_0_rc1)

Overview

Version V8_0_0_rc2 is a candidate release incorporating over 80 improvements and bug fixes compared to version V8_0_0_rc1, bringing the total improvements since version 7.9.0 to over 130 changes.

What is a Release Candidate

A Release Candidate is a tag on the master branch that has completed all test rounds and is stable to use.
Release candidates progress in parallel with maintenance releases, with the difference that maintenance releases remain binary compatible with minor releases and cannot include most improvements.
The cycle for a release candidate is planned to be 5-10 weeks, while maintenance releases occur once per quarter.

What's New in OCCT 8.0.0-rc2

Core

  • Upgraded minimum C++ version requirement to C++17 #537
  • Geometric Classes Optimization: Significantly optimized gp_Vec, gp_Vec2d, gp_XY, and gp_XYZ classes by simplifying mathematical computations, replacing indirect API calls with direct data member access in performance-critical sections, and improving matrix operations including inversion, transposition, and power calculations #578
  • Reworked atomic and Standard_Condition implementation #598
  • Optimized NCollection_Array1 with type-specific improvements #608
  • Reworked math_DoubleTab to use NCollection container #607
  • Fixed WinAPI resource leaks #625
  • Fixed include brackets type issues #635
  • Geom package copy optimization #645

Build System and Configuration

  • Comprehensive VCPKG Support: Added full VCPKG layout configuration with CMake file placement in share/ directory for compliance, introduced OCCT_PROJECT_NAME parameter for customizing directory structure, and updated environment scripts while maintaining backward compatibility #618, #637, #638
  • Added VCPKG port opencascade with TclTk and GTest support #580, #616
  • Implemented flexible project root configuration #641
  • Fixed build config file validation issues #647
  • Disabled GLTF build without RapidJSON #646
  • Fixed link errors on macOS when not building using vcpkg #609
  • Fixed CSF variable overwriting issues #561
  • Fixed paths to 3rd-party in cmake configuration #523
  • Fixed ARCH detection for older 32-bit Macs #626
  • Removed unused CMake scripts and dependencies #644, #581
  • Fixed samples CMake configuration #643

Modeling

  • New Helix Toolkit: Implemented a complete TKHelix toolkit with geometric helix curve adaptor and topological builders, featuring advanced B-spline approximation algorithms for high-quality helix representation and comprehensive TCL command interface #648
  • Added option to not build history in BRepFill_PipeShell #632
  • Fixed GeomFill_CorrectedFrenet hanging in some cases #630
  • Fixed infinite loop in Simplifying Fuse operation #557
  • Fixed Bnd_BoundSortBox::Compare failures in some cases #518
  • General Fuse Optimization: Improved BOPAlgo_PaveFiller performance by adding null checks for triangulation in BRep_Tool::IsClosed, simplifying index lookup logic in BOPDS_DS, and introducing helper functions for better clarity and robustness #514
  • Fixed BRepFilletAPI_MakeFiller segfault with two curves and rim #532
  • Fixed mismatch between projected point and parameter in ShapeAnalysis_Curve #600

Shape Healing

  • Implemented reusing Surface Analysis for Wire fixing #565

Visualization

  • Enhanced FFmpeg Compatibility Layer and updated Video Recorder #582
  • Fixed binary PPM image comment writing in Image_AlienPixMap #413c08272b
  • Updated Graphic3d_Aspects::PolygonOffsets documentation #519
  • Marked Immediate Mode rendering methods as deprecated in AIS_InteractiveContext #521

Data Exchange

  • Fixed GLTF indices parsing during array processing #602
  • Implemented non-uniform scaling in GLTF Import #503
  • Fixed GLTF saving edges when Merge Faces is enabled #554
  • Changed GLTF export line type to LINE_STRIP #535
  • Fixed missing GDT values in STP Import #617
  • Preserved control directives in Step Export #601
  • Ignored unit factors during tessellation export #577
  • Applied scaling transformation in Step Export #513
  • Fixed missing Model Curves in IGES Export transfer cache #483
  • Fixed XCAFDoc_Editor::RescaleGeometry not rescaling translation of roots reference #529
  • Fixed facets with empty normals handling in RWObj_Reader #520
  • Added conversion utilities for STEP geometrical and visual enumerations #545
  • Added missing headers #530
  • Optimized StepData_StepReaderData #543
  • Optimized entity graph evaluating #562
  • Removed GLTF files from XDEDRAW #649
  • Removed unused dependencies from TKXDEDRAW #650

Testing

  • Updated GitHub Actions to use latest versions #640
  • Added performance summary posting to PR #612
  • Fixed master validation workflow #611
  • Added daily vcpkg package validation #605
  • Updated samples C++ version #606
  • Removed extra GitHub jobs #594
  • Added ASCII code validation #593
  • Migrated PR actions to VCPKG-based #587
  • Added compilation on Clang without PCH #540
  • Enabled IR integration concurrency #531, #536

Draw and Tools

  • Fixed vcomputehlr misprint leading to error if no Viewer #526
  • Updated DrawDefault script to handle missing directory cases #542

Documentation

  • Added missing description to HLRBRep_HLRToShape methods #525
  • Added Copilot instructions for OCCT development #589

How to Upgrade

There are no critical breaking changes at the API level, however note the following:

  • C++17 Requirement: The minimum C++ version has been upgraded to C++17. Ensure your compiler supports this standard.
  • Deprecated Methods: Some Immediate Mode rendering methods in AIS_InteractiveContext have been marked as deprecated.

Migration should proceed smoothly for most applications.

Performance Improvements

This release includes several significant performance optimizations:

  • Geometric Classes: Major performance improvements in gp_Vec, gp_Vec2d, gp_XY, and gp_XYZ classes through direct data access and simplified computations
  • Boolean Operations: General Fuse algorithm opt...
Read more

V7_9_1

21 May 08:41

Choose a tag to compare

Open CASCADE Technology 7.9.1 Released

Open Cascade is delighted to announce the release of Open CASCADE Technology version 7.9.1 to the public.

Overview

Version 7.9.1 is a maintenance release incorporating over 30 improvements and bug fixes compared to version 7.9.0.

What's New in OCCT 7.9.1

Configuration & Build System

  • Update VTK configuration and enable optional components (#395)
  • Update file globbing and condition checks for installation paths (#399)
  • Extend CMake file filter regex (#400)
  • Modify VTK 9x handling (#401)
  • Update VTK optional components (#403)
  • Remove BUILD_PATCH option in CMake (#418)
  • Checking for FILES content (#424)
  • Enhance Qt5 directory detection for Windows (#419)
  • Remove -symbolic linker flag (#432)
  • TBB configuration prioritization to release (#496)
  • Fixed paths to 3rd-party in cmake configuration (#523)

Testing & Quality

  • Repeating failed tests in GitHub Actions (#412)
  • Inspector build error on latest CMake (#477)
  • Add a new compilation on Clang without PCH (#540)

Foundation Classes

  • Host resolving by itself (#457)
  • Update signal handling for GLIBC compatibility on Linux (#458)
  • Checking for MallInfo version (#459)

Modeling

  • Degenerated curves were not handled by Arrange function (#396)
  • Improve handling of polygon parameters in NURBS conversion (#410)
  • Handle void bounding box case in BRepBndLib::AddOptimal (#470)
  • Bounding BSpline periodic tolerance issue (#468)
  • Periodic BSpline curve bounding (#493)
  • XCAFDoc_Editor::RescaleGeometry does not rescale translation of roots reference (#529)
  • BRepFilletAPI_MakeFillet Segfault with two curves and rim (#532)
  • General Fuse (BOPAlgo_PaveFiller) optimization (#514)

Visualization

  • Refactor mouse click handling logic for improved double-click detection (#385)
  • AIS_Shape bounding box re-computation is not working properly (#422)

Data Exchange

  • DE Wrapper invalidating parameters after 'Load' (#393)
  • Datum Axis extraction issue (#407)
  • STEP: AP242 SchemaName Remove dot (#448)
  • IGES Export: Missing Model Curves in transfer cache (#483)
  • Small optimization of StepData_StepReaderData (#543)

Documentation

  • Enable server-based search and external search options in Doxyfile

Full Changelog: V7_9_0...V7_9_1

Open CASCADE Technology 8.0.0 Release Candidate 1

14 Apr 08:57
7aa8558

Choose a tag to compare

Open Cascade is delighted to announce the release of Open CASCADE Technology version 8.0.0 Release Candidate 1 to the public.

Overview

Version V8_0_0_rc1 is a candidate release incorporating over 50 improvements and bug fixes compared to version 7.9.0.

What is a Release Candidate

A Release Candidate is a tag on the master branch that has completed all test rounds and is stable to use.
Release candidates progress in parallel with maintenance releases, with the difference that maintenance releases remain binary compatible with minor releases and cannot include most improvements.
The cycle for a release candidate is planned to be 5-10 weeks, while maintenance releases occur once per quarter.

What's New in OCCT 8.0.0-rc1

Core

  • Moved resource directories to /resource folder #427, #429
  • Migration of Inspector to own repository #438
  • Migration of ExpToCas to own repository #442
  • Reorganize source directory to follow "src/Module/Toolkit/Package/File" template #450
  • Host search resolving by itself #457
  • Update signal handling for GLIBC compatibility on Linux #458
  • Checking for MallInfo version #459
  • Introducing GTest test system into OCCT as a new way to unit testing to improve stability #443
  • HashUtils NoExcept optimization #473

Build system

  • Fixed CMake configuration with VTK configuration built with OCCT #395, #403
  • TBB configuration prioritization to release #496
  • Fixed issue with mismatching installation folder on Unix system #399
  • Fixed issue with build patch containing dot symbol #400
  • CMake Improvements to work with VTK 9x
  • Remove BUILD_PATCH option in CMake #418
  • Enhance Qt5 directory detection for Windows #419
  • Remove -symbolic linker flag from Unix system, which can lead to RTTI issues #432
  • Re-Configuration time optimization #467

Modeling

  • GeomFill updated with fix of incorrect arrangement of Degenerated BSpline curve #396
  • Improve handling of polygon parameters in NURBS conversion #410
  • Fixed issue with calculation of bounding box with faces without PCurves in BRepBndLib::AddOptimal #470
  • Fixed issue with periodic BSpline within bounding box calculation #493

Visualization

  • Added possibility to not write warnings about unsupported fonts #392
  • Improved double click detection event to prevent long click mismatching #385
  • Changed selection behavior and allow HandleMouseClick for schemes, allowing to select an object #416
  • Fixed issue with re-computing Bounding box #422

Data Exchange

  • Added support for SurfaceStyleReflectanceAmbientDiffuse and SurfaceStyleReflectanceAmbientDiffuseSpecular classes and reorganized Rendering Parameters catching #447
  • Added option to decrease STP file size for export by removing duplicate entities. Average size improvement is 20% #475
  • Fixed issue with File and System coordinate system mixing on DE Wrapper interface for Mesh formats #393
  • Added stream to GLTF JSON parser to read lines and points #489
  • Fixed crash with Datum extraction from STP file #407
  • Removed dot from AP242 SchemaName in "AP242_MANAGED_MODEL_BASED_3D_ENGINEERING_MIM_LF. {1 0 10303 442 1 1 4 }" #448
  • Step entity Direction optimization with decreased memory footprint #479

Testing

  • Added option to repeat failed tests automatically in GH Actions #412
  • Reorganized GitHub actions #480
  • GTest tests integration #471, #481, #443

Documentation

  • Fixed various typos found in codebase #413, #414, #495
  • Migrated documentation generation from TCL to CMake #441

How to Upgrade

There are no critical changes at the API level. Migration should proceed without issues.

What's Changed

  • Coding - Add flag for font mgr to avoid error message #392
  • Data Exchange - DE Wrapper invalidating parameters after 'Load' #393
  • Visualization - Refactor mouse click handling logic for improved double-click detection #385
  • Modeling - Degenerated curves were not handled by Arrange function #396
  • Configuration - Update VTK configuration and enable optional components #395
  • Configuration - Update file globbing and condition checks for installation paths #399
  • Configuration - Extend CMake file filter regex #400
  • Configuration - Modify VTK 9x handling #401
  • Data Exchange - Datum Axis extraction issue #407
  • Configuration - Update VTK optional components #403
  • Modeling - Improve handling of polygon parameters in NURBS conversion #410
  • Testing - Repeating failed tests in GH Action #412
  • Documentation - Fix various typos found in codebase #413
  • Documentation - Fix various typos found in codebase #414
  • Visualization, Selection - allow HandleMouseClick for schemes, allowing to select an object #416
  • Configuration - Remove BUILD_PATCH option in CMake #418
  • Configuration - Checking for FILES content #424
  • Visualization - AIS_Shape bounding box re-computation is not working properly #422
  • Coding - Include gxx files from global path #423
  • Configuration - Enhance Qt5 directory detection for Windows #419
  • Configuration - Remove -symbolic linker flag #432
  • Configuration - Adding resource packages to toolkit #427
  • Data Exchange, Step - AP242 SchemaName remove dot #448
  • Coding - Migration of Inspector to own repository #438
  • Coding - Migration of ExpToCas to own repository #442
  • Configuration - Resource structure reorganization #429
  • Documentation - Migration to CMake from TCL #441
  • Configuration - Reorganize repository structure #450
  • Configuration - Resource generation source path fix #453
  • Documentation - Generation schema fixing #452
  • Configuration - Update resource path references in build scripts #454
  • Foundation Classes - Host resolving by itself #457
  • Documentation - Convert module and toolkit names to lowercase for URL generation #460
  • Foundation Classes - Update signal handling for GLIBC compatibility on Linux [#458](https://github.com/Open-Cascade-SAS/OC...
Read more

V7_9_0

18 Feb 10:34
858dd02

Choose a tag to compare

Open CASCADE Technology 7.9.0 Released

Open Cascade is delighted to announce the release of Open CASCADE Technology version 7.9.0 to the public.

Overview

Version 7.9.0 is a minor release incorporating over 250 improvements and bug fixes compared to version 7.8.0.

What's New in OCCT 7.9.0

Core

  • Improved code quality through static analysis and consistent code formatting with Clang-Format.
  • Enhanced Standard_Type implementation for better RTTI support and optimized IsKind operations.
  • Reorganized foundation classes for improved performance, including inlining Standard_Type instances.
  • Deprecated the old aliasing for Handle types (e.g., Handle_<Type>).
  • Improved memory management and container optimization, including refactoring ShapeHealingMap to NCollection.
  • Updated map operations with the new NCollection_MapAlgo for union, intersection, and other set operations.
  • Updated the RemoveAll method in AsciiString to correctly truncate the string.

Build System

  • Added VCPKG manifest mode support (beta) for managing third-party dependencies.
  • Improved handling of third-party dependencies, including Draco, VTK, and OpenVR from Ubuntu packages.
  • Updated the minimum CMake version requirement to 3.10.
  • Added an option to enable/disable Git hash extraction in the version string.
  • Introduced a warning message regarding LGPL 2.1 licensing limitations for static linking.
  • Fixed an issue where custom.bat/sh was not regenerated in the build directory.
  • Added compiler version checks for C++17 support.
  • Removed Genproj.
  • Fixed static linking failures.
  • Implemented new PCH for faster compilation.
  • Added MinGW default third-party package support.

Modeling

  • Fixed multiple issues in the UnifySameDomain algorithm, including cases with SurfaceOfRevolution or SurfaceOfLinearExtrusion based on TrimmedCurve.
  • Improved BRepOffset and BRepFill algorithms, including skipping degenerated curves in BRepOffset_Tool::TryProject and adding boundary checks in BRepFill_Filling.
  • Enhanced shape processing and transformation handling, including the removal of surfaces after transformation.
  • Fixed various geometric computation issues, including resetting Plane YVector and enhancing intersection handling for closed curves in IntPatch_Intersection.
  • Improved the robustness of boolean operations.
  • Added a warning for incomplete wire detection in WireFromList.
  • Fixed NURB conversion for degenerated cases.
  • Disabled exception with scaling transformation.
  • Fixed degenerated curves in offset operations.
  • Corrected intersection curves handling.
  • Resolved BRepOffset_Tool segmentation fault.
  • Fixed sphere cutting and Boolean operations.

Visualization

  • Enhanced AIS_Manipulator functionality, including flat skin support and transformation depending on camera rotation.
  • Improved selection handling and transformation persistence.
  • Added support for flat skin in AIS_Manipulator presentation.
  • Enhanced Z-layer handling in V3d_View, including an option to dump only a selection of z-layers.
  • Improved transparency handling in various rendering modes.
  • Implemented an interface to change myToFlipOutput of OpenGl_View.
  • Fixed direction calculation for Select3D_SensitiveCylinder created from Geom_CylindricalSurface.
  • Added support for vertical mouse movement zooming.
  • Enhanced transparency handling for capping in 'Graphic3d_RTM_BLEND_OIT' mode.
  • Fixed selection for simple shapes.
  • Resolved manipulator interaction issues.
  • Fixed transform persistence and view transformation.
  • Addressed transparency and rendering issues.

Data Exchange

  • Migrated shape healing settings to a single object, DE_ShapeFixParameters.
  • STEP:
    • Added metadata support for products, including product attributes.
    • Enhanced tessellated geometry handling.
    • Improved thread safety.
    • Fixed multiple crash issues, including those related to null curves and out-of-range indices.
    • Added support for GENERAL_PROPERTY.
    • Implemented common logic for scaling during the write procedure.
  • GLTF:
    • Added vertex and edge support.
    • Improved material handling, including fixing material color space and edge colors.
    • Enhanced import/export functionality.
    • Added metadata support.
  • Implemented XCAFDoc filter tree functionality.
  • Improved handling of IGES imports, including fixing a resource leak when parsing an invalid file and addressing a crash with degenerated BSplines.
  • Moved StepData_ConfParameters to the DESTEP package.
  • Reorganized DE Wrapper classes to have a single style and logic: DE<FORMAT>_Parameters, DE<FORMAT>_Provider, and DE<FORMAT>_ConfigurationNode.

Testing

  • Implemented comprehensive GitHub Actions workflows for build validation (Ubuntu, Windows, MacOS), code formatting, and documentation building.
  • Added automated documentation building.
  • Enhanced test result comparison systems.
  • Improved cross-platform testing support.
  • Added WebAssembly build validation.
  • Added a new TCL command to clear the test folder of skipped tests.

Documentation

  • Updated code documentation and fixed various typos.
  • Enhanced API documentation.
  • Improved contributing guidelines.
  • Updated issue templates and release notes.
  • Updated links in the README.

How to Upgrade

For details on upgrading to the new version check Upgrade 790

Windows packages and 3rd-party

The release delivers x64 and x32 binaries in both Release and Debug configurations and third-party libraries, check GitHub Release

Full Changelog: V7_8_0...V7_9_0

V7_9_0_beta2

10 Feb 21:49

Choose a tag to compare

V7_9_0_beta2 Pre-release
Pre-release

Release Information

  • Release Date (Stable): February 17, 2025
  • Version: 7.9.0.beta2
  • Git Tag: V7_9_0_beta2

The Beta1 release: https://github.com/Open-Cascade-SAS/OCCT/releases/tag/V7_9_0_beta1

New changes:

  • Fixed issue with documentation version extraction
  • Fixes crash in RWMesh interface when using old interface of parsing
  • Added material export for GLTF Edge
  • Fixed issue with ignore write.schema for STEP export
  • Fixed build with WASM 3.x
  • Fixed color space with GLTF Import result
  • Added sample build on GH Actions (each PR)
  • Fixed exporting for incorrect elements(not free vertexes or edges) for GLTF
  • Fixed issue with ignore write.units for STEP export
  • Fixed not-stable behavior with Product metadata STEP import

Installation

  • Use Git tag V7_9_0_beta2
  • Windows installer available with VS 2022 binaries
  • Complete source archive available

Coming Soon

  • Detailed release content documentation
  • Documentation update
  • Development update guide

OCCT3D Development Team

Full Changelog: V7_9_0_beta1...V7_9_0_beta2

V7_9_0_beta1

03 Feb 18:23

Choose a tag to compare

V7_9_0_beta1 Pre-release
Pre-release

Release Information

  • Release Date (Stable): February 17, 2025
  • Version: 7.9.0.beta1
  • Git Tag: V7_9_0_beta1

Overview

This beta release includes over 230 improvements across various components. The master branch is now in code freeze, with only critical issues being integrated for stability validation.
During that period - we will focused on issue related to migration and possible hidden regression to offer more stable release.

New Maintenance Workflow

Stable Releases (Quarterly)

  • Backward-compatible
  • Windows ready-to-use binary delivery
  • Example versions: 7.9.1, 7.9.2, 7.9.3

Development Releases (5-week cycle)

  • No API compatibility guarantee
  • Windows ready-to-use binary delivery
  • Latest features and bug fixes
  • Example versions: 8.0.0.dev1, 8.0.0.dev2, 8.0.0.dev3

Critical Updates

Data Exchange

  • Thread-safety improvements
  • Multiple crash and schema processing fixes
  • Metadata import support
  • glTF metadata import/export
  • glTF edge/vertex import/export

Modeling Algorithms

  • Disabled exception with scaling transformation
  • Fixed degenerated curves in offset operations
  • Corrected intersection curves handling
  • Resolved BRepOffset_Tool segmentation fault
  • Fixed sphere cutting and Boolean operations

Foundation Classes

  • Fixed memory leaks in locale conversion
  • Corrected BVH surface area calculations
  • Fixed AsciiString RemoveAll functionality
  • Reorganized RTTI and optimization

Configuration (CMake)

  • Removed Genproj
  • Fixed static linking failures
  • Implemented new PCH for 4x compilation speed
  • Added MinGW default third-party package support
  • Added VCPKG beta support

Visualization

  • Fixed selection for simple shapes
  • Resolved manipulator interaction issues
  • Fixed transform persistence and view transformation
  • Addressed transparency and rendering issues

General Improvements

  • Global code formatting with clang-format 18.1.8
  • Global static analysis results improvements
  • Migrated to GitHub with full testing integration
  • Deprecated Handle_* type usage (preparing for 8.0)
  • Improved constexpr usage and compile-time optimizations
  • Git hash info in development versioning
  • Improvements in compiler flags optimizations

Installation

  • Use Git tag V7_9_0_beta1
  • Windows installer available with VS 2022 binaries
  • Complete source archive available

Beta Testing

Please check your reported issues marked as "Verified" and report any regressions immediately.

Coming Soon

  • Detailed release content documentation
  • Documentation update
  • Development update guide

OCCT3D Development Team

Full Changelog: V7_8_0...V7_9_0_beta1

V7_8_1

01 Apr 12:30

Choose a tag to compare

Open Cascade is pleased to announce that the next Open CASCADE Technology (OCCT) maintenance release (version 7.8.1) is prepared. The sources of Open CASCADE Technology 7.8.1 are available under the V7_8_1 tag in the OCCT repository.

This maintenance release addresses a critical issue regarding backward binary compatibility with version 7.8.0. For users encountering this issue, it's essential to update to version 7.8.1 to ensure seamless integration and operation.

Additionally, please note that the develop branch contains implementations of new functionality and high-level changes. While these enhancements offer exciting features, they cannot be incorporated into binary updates. We encourage users to explore these advancements in the develop branch for future releases.

This maintenance release fixes the following problems:

  • 0033656: Foundation Classes - Standard_Type crash during unloading static lib
  • 0033560: Modeling Algorithms - Raising exception SIGFPE Arithmetic Exception
  • 0033410: Data Exchange, Step Import - TRIANGULATED_FACE from STEP where there are no pnval entries
  • 0033367: Modeling Algorithms - Normal projection or BOP problem [Regression]
  • 0031601: Modeling Algorithms - BRepOffset_Tool Segmentation Fault
  • 0033638: Data Exchange, Step Import - Style for tessellated object missed
  • 0033631: Data Exchange, Step import - Crash by reading STEP file
  • 0033603: Data Exchange, Step Import - Crash reading corrupted STEP file
  • 0033602: Data Exchange, Step - Carriage return removing
  • 0033596: Documentation - Incorrect default value read.step.tessellated
  • 0025415: Data Exchange - Invalid result of loading a STEP file
  • 0033383: Modeling Algorithms - Wire/Face creation problem
  • 0033261: Data Exchange, Step Import - Empty shape after reading process
  • 0033569: Data Exchange, STEP - Crash when reading multi-body file
  • 0025188: Data Exchange, Step Export - Losing shapes after import
  • 0032980: Data Exchange - STEP import produce a crash
  • 0033567: Modeling Data - GeomLib_IsPlanarSurface raises exception SIGFPE Arithmetic Exception in Release mode

Publication date: April 1, 2024.

We appreciate the community's continued support and feedback, which contributes to the ongoing improvement of OCCT. Stay tuned for further updates and enhancements.

Best regards,
OCCT3D team

Full Changelog: V7_8_0...V7_8_1

V7_8_0

04 Dec 18:54

Choose a tag to compare

Open CASCADE Technology 7.8.0 Released

Open Cascade is delighted to announce the release of Open CASCADE Technology version 7.8.0 to the public.

Overview

Version 7.8.0 is a minor release, encompassing approximately 110 improvements and corrections over the previous minor release 7.7.0.

What's New in OCCT 7.8.0

General

  • Fixed TDataStd_NamedData HasSmth() methods to no longer return true for empty containers.
  • Improved general performance through code updates with static analysis.
  • Implemented "Memory Manager" configurations: Native, TBB, JeMalloc, Flexible. JeMalloc leads to a performance increase of up to 40% for large files.
  • Introduced CMake configuration for optimization profiles: Default and Production. Production activates all available compiler optimizations.
  • Implemented move semantics into NCollection and TCollection containers.
  • Modernized NCollection_Vector(NCollection_DynamicArray), NCollection_Array1, and NCollection_Array2.
  • Updated memory allocation functionality to avoid unnecessary memory cleaning (set 0).
  • Modernized NCollection_IncAllocator (optimized pool for small objects).

Modeling

  • Addressed multiple bug fixes and improvements for various modeling algorithm methods.
  • Increased memory management performance.
  • Improved overall modeling stability.
  • Resolved canonical geoplane detection problems.

Visualization

  • Resolved compilation issues related to vtk 9.2.6.
  • Improved SelectMgr_EntityOwner to process the selection scheme.
  • Modified Image_AlienPixMap::Save() to write into a memory buffer instead of a file.
  • Reduced sensitivity of lines.
  • Extended AIS_AnimationObject with syntax for defining rotation around a specific point.
  • Introduced separate gesture mappings for dragging to AIS_ViewController.
  • Integrated the ability to scale by moving the mouse on the OY axis.

Mesh

  • Fixed BRepMesh_IncrementalMesh issue with overflowing system memory.
  • Unhandled Standard_OutOfRange, BRepMesh_PairOfIndex::Append() no longer prevents triangulation with large deflection values.

Data Exchange

  • Resolved multiple issues regarding DE Wrapper and Step import and export.
  • Increased STEP parser performance.
  • Introduced thread-safety interface to STEP import and export.
  • Reorganized DE ToolKits according to specific CAD formats.
  • Introduced DE plug-in system to load CAD format providers during library loading time.
  • Fixed stability issues with XBF and IGES file formats.
  • Addressed general problems with importing VRML V1.
  • Improved processing of STEP-oriented dimensions.

Draw Test Harness

  • Enabled loading of plugins on Linux OS.
  • Reorganized DRAW DE ToolKits according to specific CAD formats.
  • Resolved environment-related issues with debug tools DrawTrSurf_Set, DrawTrSurf_SetPnt, and `DrawTrSurf_SetPnt2d.

How to Upgrade

For details on upgrading to the new version, please refer to OCCT Upgrade Guide.

Full Changelog: V7_7_0...V7_8_0

V7_7_2

11 Aug 15:16

Choose a tag to compare

This maintenance release fixes the following critical problems (see also Release Notes):

  • 23638: Data Exchange - Reading IGES file produced invalid shape
  • 33377: Data Exchange - STEPCAFControl_Reader crash in OCC 7.7.0
  • 33350: Data Exchange, Step Import - Improving parsing performance
  • 33318: Data Exchange - Modifying the BRep flag after exporting the shape [Regression]
  • 30066: Data Exchange - Fail to load VRML from ArcGIS
  • 33378: Configuration - Moving ExpToCas into separate module
  • 33361: Modeling Algorithm - Fuse operation generates incomplete result
  • 33369: Modeling Algorithms - BRepBuilderAPI_Transform makes invalid shape after transformation
  • 33382: Configuration - Installation issue for debug mode for static build
  • 33375: Coding - Static Analyzing processing. [Performance increase]
  • 33379: Coding - Processing Clang-15 warnings
  • 33390: Coding - Debug version of OCCT does not compile
  • 33391: Coding - Clearing old definition way for strcasecmp
  • 33372: Visualization - Compilation of git master fails against vtk 9.2.6
  • 31956: Visualization - provide Image_AlienPixMap::Save() writing into a memory buffer instead of a file
  • 31777: Visualization - improve SelectMgr_EntityOwner to process selection scheme
  • 33366: Documentation - Add description of BRepAlgoAPI_Algo::Shape()
  • 33414: Modeling Algorithms - Access violation during executing BRepAlgoAPI_Section::Build()

Publication date: August 11, 2023.