首页/技术分享

OpenCascade 8.0有重大更新,要起飞了!

发布于:2025-11-25 20:38:30
319人 分享

image.png

(图源:OCCT Blog)


OpenCascade在官方blog发布OCCT 8.0.0版本前瞻,有诸多重大更新,关键技术变更如下:


  • 原生C++类型:弃用 Standard_Real、Standard_Integer 等自定义类型,改用原生类型(double、int)。这简化了代码结构并提升编译器兼容性。

  • 标准数学库:弃用OCCT特有的数学包装器(如Abs、Min、Max),代码库将直接使用标准STL库函数(如std::abs、std::min、std::max)以减少冗余。

  • 命名空间更新:引入更简洁的occ命名空间替代opencascade,符合现代代码风格。注:过渡期间代码示例可能仍保留完整命名空间,但新标准将采用occ。句柄:使用新命名空间的模板语法直接替代Handle宏定义,如旧格式:Handle(MyClass);新格式:occ::handle<MyClass>。

  • 现代容器:逐步淘汰类型别名(如TColStd_SequenceOfReal),提倡直接使用模板类:示例:occ::Seq<double> 或 NCollection_Sequence<double>。

  • 新型别名:在occ命名空间中引入简短别名(如用occ::Seq<T>替代NCollection_Sequence<T>)。

  • 标准属性:将Standard_NODISCARD等宏替换为标准C++属性:[[nodiscard]]、[[maybe_unused]]等。

  • 错误处理:基础几何函数改用std::optional作为返回值,减少对异常处理的依赖。

  • 安全性与速度:广泛使用constexpr和noexcept说明符。

  • C++17标准:代码库全面升级至C++17标准,充分利用现代语言特性。

  • 统一异常处理:精简基于Standard_Failure的自定义异常类型,整合至统一架构中。


同时,OCCT团队正在对8.0.0发布周期的多项重大改进进行验证。这些功能处于不同的规划和开发阶段,技术路线图包括:


  • 标准化异常处理:逐步从Standard_Failure迁移至std::exception,实现更规范的异常管理。

  • 文档系统升级:将文档系统从Doxygen迁移至基于Markdown的架构,显著提升可读性与可访问性。

  • 全新"ODE"格式(Preview):在数据交换模块中提出替代传统BRep格式的新方案。ODE(开放数据交换)专注于纯拓扑结构,具备现代化架构、版本控制支持与可扩展性。

  • 全新"XDE"格式(Preview):通过XDE(扩展数据交换)增强XCAF支持。该格式专注于装配体和产品结构数据(颜色、图层、材质),采用模块化架构设计,便于功能扩展。


同时,还将推出OCCT Light版本,旨在通过三大核心优势降低使用门槛:

  • 现代C++接口:减少模板代码量,实现与现代C++应用的无缝集成。

  • 强化安全特性:内置行业最佳实践,显著提升应用可靠性。

  • 简化API设计:直观易用的接口架构,有效降低学习曲线。

  • 多语言支持:开箱即用的Python与JavaScript/TypeScript绑定。


看好这波OCCT的关键更新,能降低不少使用上的不便与门槛,同时减少冗余,提升开发效率。尤其是OCCT Light版本同时提供Python与Wasm,这正好也是近期LNLib正在做的,应网友们需求LNLib将会继续推出跨平台.NET API版本


转载请注明来源本文地址:https://www.tuituisoft/blog/96213.html

上一篇:

深圳市住房和建设局正式发布《深圳市建筑工程算量信息模型标准》

下一篇:

全新的AI辅助设计——SolidWorks2026(附软件下载)