Archived issue #0025818
IntTools_FaceFace throws Standard_ConstructionError with two unbounded planes
Description
The following code throws a Standard_ConstructionError when run.
Steps to reproduce
Handle_Geom_Plane plane1(new Geom_Plane(gp_Ax3(gp_Pnt(0, 0, 0), gp_Dir(0, 0, 1), gp_Dir(1, 0, 0))));
Handle_Geom_Plane plane2(new Geom_Plane(gp_Ax3(gp_Pnt(0, 0, 0), gp_Dir(1, 0, 0), gp_Dir(0, 1, 0))));
BRep_Builder builder;
TopoDS_Face face1, face2;
builder.MakeFace(face1, plane1, Precision::Confusion());
builder.MakeFace(face2, plane2, Precision::Confusion());
IntTools_FaceFace intersection;
intersection.SetParameters(false, true, true, Precision::Confusion());
intersection.Perform(face1, face2);
#==========================================================
# Use the following DRAW commands to reproduce the problem:
#
plane pn1 0 0 0 0 0 1 1 0 0
plane pn2 0 0 0 1 0 0 0 1 0
mkface f1 pn1
mkface f2 pn2
bopcurves f1 f2
Handle_Geom_Plane plane2(new Geom_Plane(gp_Ax3(gp_Pnt(0, 0, 0), gp_Dir(1, 0, 0), gp_Dir(0, 1, 0))));
BRep_Builder builder;
TopoDS_Face face1, face2;
builder.MakeFace(face1, plane1, Precision::Confusion());
builder.MakeFace(face2, plane2, Precision::Confusion());
IntTools_FaceFace intersection;
intersection.SetParameters(false, true, true, Precision::Confusion());
intersection.Perform(face1, face2);
#==========================================================
# Use the following DRAW commands to reproduce the problem:
#
plane pn1 0 0 0 0 0 1 1 0 0
plane pn2 0 0 0 1 0 0 0 1 0
mkface f1 pn1
mkface f2 pn2
bopcurves f1 f2
Additional information
This did not throw the exception in 6.5.5.
Public activity
9 archived notes
Participants are labeled by their role within this record.
Branch [archived branch] has been created by Participant.
[revision removed]
No new revisions were added by this update.
[revision removed]
No new revisions were added by this update.
Branch [archived branch] has been updated by Participant.
[revision removed]
Detailed log of new commits:
Author: pkv
Date: Tue Mar 3 06:43:08 2015 +0300
0025818: IntTools_FaceFace throws Standard_ConstructionError with two unbounded planes
I. New features:
No new features.
II. Changes:
II.1. class IntTools_FaceFace
- method:
void IntTools_FaceFace::Perform(const TopoDS_Face& aF1,
const TopoDS_Face& aF2)
The treatment of infinite planes was corrected.
III. Modified entities:
packages:
IntTools
[revision removed]
Detailed log of new commits:
Author: pkv
Date: Tue Mar 3 06:43:08 2015 +0300
0025818: IntTools_FaceFace throws Standard_ConstructionError with two unbounded planes
I. New features:
No new features.
II. Changes:
II.1. class IntTools_FaceFace
- method:
void IntTools_FaceFace::Perform(const TopoDS_Face& aF1,
const TopoDS_Face& aF2)
The treatment of infinite planes was corrected.
III. Modified entities:
packages:
IntTools
Git branch CR25818 is ready to be reviewed.
Reviewed.
Dear Commenter 1,
Branch CR25818 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
[revision removed]
Number of compiler warnings:
occt component :
Linux: 18 (18 on master)
Windows: 2 (2 on master)
products component :
Linux: 11 (11 on master)
Windows: 4 (4 on master)
Regressions/Differences:
No regressions/differences
Testing cases:
http://occt-tests/CR25818-master-occt-64/Debian60-64/bugs/modalg_5/bug25818.html
http://occt-tests/CR25818-master-occt-64/Windows-64-VC10/bugs/modalg_5/bug25818.html
bugs modalg_5(010) bug25818: OK
Testing on Linux:
occt component :
Total MEMORY difference: 91963461 / 91830808
Total CPU difference: 58158.190000000046 / 59519.03999999998
products component :
Total MEMORY difference: 22998561 / 22971803
Total CPU difference: 15335.179999999995 / 16296.599999999988
Testing on Windows:
occt component :
Total MEMORY difference: 57945013 / 57944267
Total CPU difference: 29583.875 / 38926.375
products component :
Total MEMORY difference: 16198070 / 16203200
Total CPU difference: 9815.78125 / 9533.171875
There are no differences in images found by testdiff.
Branch CR25818 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
[revision removed]
Number of compiler warnings:
occt component :
Linux: 18 (18 on master)
Windows: 2 (2 on master)
products component :
Linux: 11 (11 on master)
Windows: 4 (4 on master)
Regressions/Differences:
No regressions/differences
Testing cases:
http://occt-tests/CR25818-master-occt-64/Debian60-64/bugs/modalg_5/bug25818.html
http://occt-tests/CR25818-master-occt-64/Windows-64-VC10/bugs/modalg_5/bug25818.html
bugs modalg_5(010) bug25818: OK
Testing on Linux:
occt component :
Total MEMORY difference: 91963461 / 91830808
Total CPU difference: 58158.190000000046 / 59519.03999999998
products component :
Total MEMORY difference: 22998561 / 22971803
Total CPU difference: 15335.179999999995 / 16296.599999999988
Testing on Windows:
occt component :
Total MEMORY difference: 57945013 / 57944267
Total CPU difference: 29583.875 / 38926.375
products component :
Total MEMORY difference: 16198070 / 16203200
Total CPU difference: 9815.78125 / 9533.171875
There are no differences in images found by testdiff.
Branch [archived branch] has been updated by Participant.
[revision removed]
Detailed log of new commits:
Author: mkv
Date: Thu Mar 5 13:12:18 2015 +0300
Test case for issue CR25818
[revision removed]
Detailed log of new commits:
Author: mkv
Date: Thu Mar 5 13:12:18 2015 +0300
Test case for issue CR25818
Dear emv,
could you please review test case
bugs modalg_5(010) bug25818
could you please review test case
bugs modalg_5(010) bug25818
Ok with
bugs modalg_5(010) bug25818
bugs modalg_5(010) bug25818
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]