mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-04-10 18:51:21 +03:00
Boolean Operations algorithm improvements: 1. To be able to add/remove elements into the tree of bounding boxes UBTree is replaced with EBTree in Boolean operations. 2. Perform repeated (nested) intersection of sub-shapes of the arguments with vertices which tolerances have been increased during the operation. 3. Edge/Edge and Edge/Face intersection point creation improvement for the cases when intersection point is located close to the edge's boundaries. 4. Forced Edge/Face intersection procedure to ensure common blocks creation. 5. Face/Face intersection post treatment stage improvements. 6. Avoid extension of the planar faces for Plane/Plane intersection. 7. Builder Face algorithm - improve classification of the potentially internal edges relatively new faces by adding filtering by bounding boxes. Side effect changes: 1. IntTools_ShrunkRange is now keeps the length of the valid range of the edge. 2. The method BOPDS_DS::UpdateEdgeTolerance() has been removed as unused (replaced by the BOPAlgo_PaveFiller::UpdateEdgeTolerance()). Test case for the issue 0029900. Test case for the issue 0029711. Adjustments of the existing test cases.