Archived issue #0032811
Bad result of sweep operation due to Surface Surface Intersect Bug
Description
The first picture attached is sweep algorithm failed。
After analysis, it was found that the SSI [bug_face1_intersect intresect bug_face2_intersect] lost an intersect line[picture 2]
After analysis, it was found that the SSI [bug_face1_intersect intresect bug_face2_intersect] lost an intersect line[picture 2]
Steps to reproduce
TopoDS_Shape Sh1;
TopoDS_Shape Sh2;
BRep_Builder B;
bool b1 = BRepTools::Read(Sh1, "C:\\Attachment 6 (BREP)", B);
bool b2 = BRepTools::Read(Sh2, "C:\\Attachment 7 (BREP)", B);
const TopoDS_Wire & path = TopoDS::Wire(Sh1);//newProfileWires.at(i);
const TopoDS_Wire & profile = TopoDS::Wire(Sh2);//newProfileWires.at(i);
BRepOffsetAPI_MakePipeShell shellMaker(path);
shellMaker.SetTransitionMode(static_cast<BRepBuilderAPI_TransitionMode>(1));
shellMaker.Add(profile, /*WithContact*/false, /*WithCorrection*/true);
const TopoDS_Shape& shape = shellMaker.Shape();
TopoDS_Shape Sh2;
BRep_Builder B;
bool b1 = BRepTools::Read(Sh1, "C:\\Attachment 6 (BREP)", B);
bool b2 = BRepTools::Read(Sh2, "C:\\Attachment 7 (BREP)", B);
const TopoDS_Wire & path = TopoDS::Wire(Sh1);//newProfileWires.at(i);
const TopoDS_Wire & profile = TopoDS::Wire(Sh2);//newProfileWires.at(i);
BRepOffsetAPI_MakePipeShell shellMaker(path);
shellMaker.SetTransitionMode(static_cast<BRepBuilderAPI_TransitionMode>(1));
shellMaker.Add(profile, /*WithContact*/false, /*WithCorrection*/true);
const TopoDS_Shape& shape = shellMaker.Shape();
Public activity
14 archived notes
Participants are labeled by their role within this record.
> lost intersect curve due to no seeds on it . the Param Param Intersect use Deflection = 0.1 to Sample Pnts, which is not precise enough to get all branch seeds
I have change the Deflection = 0.01, which works return 2 curves [see the attached picture Attachment 3 (PNG)]. but I known it shoud not change the tolerance to solve the problem
> I have create a branch CR32811 on git and push it.
I have change the Deflection = 0.01, which works return 2 curves [see the attached picture Attachment 3 (PNG)]. but I known it shoud not change the tolerance to solve the problem
> I have create a branch CR32811 on git and push it.
Attachment 3 (PNG) (96,704 bytes)
Branch [archived branch] has been created by Author.
[revision removed]
Detailed log of new commits:
Author: gelin
Date: Sat Jan 29 20:08:52 2022 +0800
0032811: Bad result of sweep operation due to Surface Surface Intersect Bug
[revision removed]
Detailed log of new commits:
Author: gelin
Date: Sat Jan 29 20:08:52 2022 +0800
0032811: Bad result of sweep operation due to Surface Surface Intersect Bug
Dear Igor, could you please check the proposed fix?
Branch [archived branch] has been created by Participant.
[revision removed]
Detailed log of new commits:
Author: ifv
Date: Tue Feb 1 12:17:52 2022 +0300
0032811: Bad result of sweep operation due to Surface Surface Intersect Bug
[revision removed]
Detailed log of new commits:
Author: ifv
Date: Tue Feb 1 12:17:52 2022 +0300
0032811: Bad result of sweep operation due to Surface Surface Intersect Bug
Branch [archived branch] has been updated forcibly by Participant.
[revision removed]
[revision removed]
Dear Commenter 3, fix is valid, but has test regressions, see
http://jenkins-test-08.nnov.opencascade.com/view/CR32811-master-ifv/view/COMPARE/
and cannot be integrated without fixing bad tests.
Note: branch CR32811_1 was used for testing instead of original branch CR32811.
http://jenkins-test-08.nnov.opencascade.com/view/CR32811-master-ifv/view/COMPARE/
and cannot be integrated without fixing bad tests.
Note: branch CR32811_1 was used for testing instead of original branch CR32811.
Branch [archived branch] has been updated forcibly by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been updated forcibly by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been updated by Participant.
[revision removed]
Detailed log of new commits:
Author: ifv
Date: Tue Feb 15 11:38:52 2022 +0300
Modification of IntPolyh/IntPolyh_Intersection
[revision removed]
Detailed log of new commits:
Author: ifv
Date: Tue Feb 15 11:38:52 2022 +0300
Modification of IntPolyh/IntPolyh_Intersection
Branch [archived branch] has been updated by Participant.
[revision removed]
Detailed log of new commits:
Author: ifv
Date: Wed Feb 16 15:34:10 2022 +0300
BndLib/BndLib_Add3dCurve.cxx
[revision removed]
Detailed log of new commits:
Author: ifv
Date: Wed Feb 16 15:34:10 2022 +0300
BndLib/BndLib_Add3dCurve.cxx
Branch [archived branch] has been updated forcibly by Participant.
[revision removed]
[revision removed]
The intersection problem is fixed in child issue #0032849, but this case has other problems that must be fixed
The result is valid for " Right Corner" mode, but not valid for "Round Corner" and "Modification" modes for treatment discontinuities.
The result is valid for " Right Corner" mode, but not valid for "Round Corner" and "Modification" modes for treatment discontinuities.
Related records