]> OCCT Git - occt-copy.git/commit
0028591: BOP Cut creates wrong result
authoremv <emv@opencascade.com>
Wed, 29 Mar 2017 05:46:31 +0000 (08:46 +0300)
committeremv <emv@opencascade.com>
Fri, 7 Jul 2017 07:02:57 +0000 (10:02 +0300)
commit99e09f5b3f1812fb7850bb94b87b286f7b3df2be
treeeeea8587992c58ddac705d0bcd2fc5a06bceefd5
parent2739fadcb8e170cc5e023c25095c5cbdb940ad09
0028591: BOP Cut creates wrong result

The Face/Face intersection procedure has been changed in Boolean Operations algorithm.
Previously, the intersection tolerance for all section curves between pair of faces has been calculated
as the maximal tolerance among all curves. Now, each curve has its own valid tolerance calculated
as the maximal deviation of the 3D curve from its 2D curves on faces or surfaces in case there are no 2D curves.

Thus, such methods of IntTools_FaceFace algorithm as TolReached3d(), TolReal() and TolReached2d() have been removed.
Now the tolerances of the curve can be obtained from the curve itself (IntTools_Curve - result of intersection):
- IntTools_Curve::Tolerance() - returns the valid tolerance for the curve;
- IntTools_Curve::TangentialTolerance() - returns the tangential tolerance, which depends on the size of the common
  between faces. Currently, this tolerance is computed for Plane/Plane cases only. For other case, the value
  of the tangential tolerance is the maximal tolerance of faces.

2D intersection tolerance (IntTools_FaceFace::TolReached2d()) has been completely removed from the algorithm as unused.
16 files changed:
dox/dev_guides/upgrade/upgrade.md
src/BOPAlgo/BOPAlgo_PaveFiller.hxx
src/BOPAlgo/BOPAlgo_PaveFiller_6.cxx
src/BOPDS/BOPDS_Curve.hxx
src/BOPDS/BOPDS_Curve.lxx
src/BOPDS/BOPDS_Interf.hxx
src/BOPTest/BOPTest_BOPCommands.cxx
src/IntTools/FILES
src/IntTools/IntTools_Curve.cxx
src/IntTools/IntTools_Curve.hxx
src/IntTools/IntTools_Curve.lxx [deleted file]
src/IntTools/IntTools_FaceFace.cxx
src/IntTools/IntTools_FaceFace.hxx
src/IntTools/IntTools_Tools.cxx
src/IntTools/IntTools_Tools.hxx
tests/bugs/modalg_6/bug28591 [new file with mode: 0644]