Skip to content

V7_9_0

Latest
Compare
Choose a tag to compare
@dpasukhi dpasukhi released this 18 Feb 10:34
· 9 commits to master since this release
858dd02

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