mirror of
https://github.com/Open-Cascade-SAS/OCCT.git
synced 2026-08-14 20:59:23 +08:00
fff55ee5fc
Modernized curve/surface intersection algorithms by replacing preprocessor-based generic programming (.gxx macros) with C++ templates (.pxx headers): IntCurveSurface package (TKGeomAlgo): - Introduced IntCurveSurface_Inter.pxx with callback-based template functions for intersection algorithms, replacing IntCurveSurface_Inter.gxx - Created IntCurveSurface_InterUtils.pxx with utility template functions for surface decomposition, UV clamping, and quadric intersection handling - Added IntCurveSurface_PolygonUtils.pxx for polygon construction utilities - Added IntCurveSurface_PolyhedronUtils.pxx for polyhedron construction utilities - Added IntCurveSurface_QuadricCurveExactInterUtils.pxx for exact quadric intersection computations - Converted standalone implementation files from macro instantiation (_0.cxx) to direct template usage (.cxx) - Removed obsolete .gxx and .lxx files HLRBRep package (TKHLR): - Updated HLRBRep_InterCSurf to use new IntCurveSurface template utilities - Converted HLRBRep polygon, polyhedron, and intersection classes to use modern template instantiation pattern - Removed legacy macro-based instantiation files (_0.cxx) This refactoring improves code maintainability, enables better IDE support and debugging, and aligns with modern C++ practices while preserving the existing API and functionality.