View Issue Details

IDProjectCategoryView StatusLast Update
0031641CommunityOCCT:Modeling Algorithmspublic2021-09-05 23:24
Reportermat127 Assigned Tobugmaster  
PrioritynormalSeveritymajor 
Status closedResolutionno change required 
PlatformLinux 64bitOSFedora Core 
Product Version7.3.0 
Target Version7.6.0 
Summary0031641: Modeling Algorithms - IntCurvesFace_ShapeIntersector incorrect result
DescriptionThere is a shape stored in the attached shape.brep file. IntCurvesFace_ShapeIntersector gives an icorrect results for checking intersections of this shape with lines parallel to the Z axis at particular (x,y) directions.

The application oputput is:

[(0.839, -4.675, -1.555), (0, 0, 1)]
  (0.839, -4.675, 0): out
  (0.839, -4.675, 0): in
  (0.839, -4.675, 1.5): out
[(2.304, -3.40779, -1.555), (0, 0, 1)]
  (2.304, -3.40779, 0): out

Line definition [(location),(direction)] is followed by an intended list of intersection points and their transitions in the form (intersection location): transition.

In both cases the first intersection point having the transition 'out' is errorneous. It means that the line for z < 0 is inside the shape which is not true.
Steps To ReproduceCompile and run the attached .cxx file and check the output according to the description. Note that the application needs the provided shape.brep file being placed in the same directory as the application binary.
TagsNo tags attached.
Test case number

Attached Files

  • intersector.cxx (2,622 bytes)
  • shape.brep (590,377 bytes)
  • intersector2.cxx (2,389 bytes)
  • shape2.brep (1,819,036 bytes)
  • intersector3.cxx (2,402 bytes)

Activities

mat127

2020-06-29 11:22

reporter  

intersector.cxx (2,622 bytes)

mat127

2020-06-29 11:23

reporter  

shape.brep (590,377 bytes)

mat127

2020-09-10 16:55

reporter  

intersector2.cxx (2,389 bytes)

mat127

2020-09-10 16:55

reporter  

shape2.brep (1,819,036 bytes)

mat127

2020-09-10 17:01

reporter  

intersector3.cxx (2,402 bytes)

mat127

2020-09-10 17:05

reporter   ~0094389

Similar issue observed for the shape2.brep shape. Compile and run the intersector3.cxx (please ignore intersector2.cxx) and check the output:

[(0.801494, -3.855, 1.88088), (0, 1, 0)]
  (0.801494, -3.855, 1.88088): in
  (0.801494, 3.855, 1.88088): out

This looks like a valid output signaling that the line is inside the shape for -3.855 < y < 3.855. But it is not true. The line just touches the shape at both intersection points.

git

2021-08-17 15:30

administrator   ~0103262

Branch CR31641 has been created by abulychev-ext.

SHA-1: c2f36301d793fd36f2b026fa046aea5ec73f43df


Detailed log of new commits:

Author: abulyche
Date: Tue Aug 17 15:29:56 2021 +0300

    0031641: Modeling Algorithms - IntCurvesFace_ShapeIntersector incorrect result
    
    Added command "intcshape" to BRepTest_OtherCommands.cxx for testing algorithm IntCurvesFace_ShapeIntersector

git

2021-08-19 13:58

administrator   ~0103303

Branch CR31641 has been updated forcibly by abulychev-ext.

SHA-1: 59fe737420b55e62ef9a3fcdceb5173eaba7dabd

abulychev-ext

2021-08-19 14:28

developer   ~0103304

In fact, the transitions are determined not relative to the entire shape, but relative to which side of the face (inside or outside) the line enters this face. And this algorithm works correctly. So, this is not a bug, but it's just a misunderstanding of the user.

ifv

2021-08-19 14:36

developer   ~0103305

It is not a bug, algorithm works correctly for given input.

Issue can be closed.

ifv

2021-08-19 15:50

developer   ~0103310

Review

git

2021-09-05 23:24

administrator   ~0103827

Branch CR31641 has been deleted by kgv.

SHA-1: 59fe737420b55e62ef9a3fcdceb5173eaba7dabd

Issue History

Date Modified Username Field Change
2020-06-29 11:22 mat127 New Issue
2020-06-29 11:22 mat127 Assigned To => msv
2020-06-29 11:22 mat127 File Added: intersector.cxx
2020-06-29 11:23 mat127 File Added: shape.brep
2020-09-10 16:55 mat127 File Added: intersector2.cxx
2020-09-10 16:55 mat127 File Added: shape2.brep
2020-09-10 17:01 mat127 File Added: intersector3.cxx
2020-09-10 17:05 mat127 Note Added: 0094389
2020-09-14 09:52 msv Assigned To msv => ifv
2020-09-15 09:56 ifv Assigned To ifv => akulagin
2021-06-01 17:01 ifv Assigned To akulagin => abulychev-ext
2021-06-01 17:03 kgv Summary IntCurvesFace_ShapeIntersector incorrect result => Modeling Algorithms - IntCurvesFace_ShapeIntersector incorrect result
2021-08-11 09:36 ifv Status new => assigned
2021-08-17 15:30 git Note Added: 0103262
2021-08-19 13:58 git Note Added: 0103303
2021-08-19 14:27 abulychev-ext Assigned To abulychev-ext => ifv
2021-08-19 14:27 abulychev-ext Status assigned => resolved
2021-08-19 14:28 abulychev-ext Note Added: 0103304
2021-08-19 14:36 ifv Note Added: 0103305
2021-08-19 14:36 ifv Assigned To ifv => bugmaster
2021-08-19 14:36 ifv Status resolved => reviewed
2021-08-19 14:41 kgv Status reviewed => feedback
2021-08-19 14:41 kgv Resolution open => no change required
2021-08-19 14:41 kgv Target Version => 7.6.0
2021-08-19 15:50 ifv Note Added: 0103310
2021-09-03 13:39 bugmaster Status feedback => closed
2021-09-05 23:24 git Note Added: 0103827