View Issue Details

IDProjectCategoryView StatusLast Update
0024934Open CASCADEOCCT:Modeling Algorithmspublic2014-11-12 09:52
Reportervro Assigned Tobugmaster  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
PlatformWindowsOSVC++ 2010 
Product Version6.7.0 
Target Version6.8.0Fixed in Version6.8.0 
Summary0024934: Section: crash for two faces
DescriptionA section operation for two faces crashes on new boolean operations (BRepAlgoAPI_Section). While it works nice using old algorithm (BRepAlgo_Section).
Steps To Reproducerestore f1.brep f1
restore f2.brep f2
bsection r f1 f2
An exception was caught 0FD08AD0 : Standard_NumericError: FLT MULTIPLE FAULTS
** Exception ** 0FD08AD0 : Standard_NumericError: FLT MULTIPLE FAULTS
TagsNo tags attached.
Test case numberbugs heal(017) bug24934

Attached Files

  • faces.zip (39,425 bytes)

Activities

vro

2014-05-16 11:13

developer  

faces.zip (39,425 bytes)

abv

2014-09-12 14:15

manager   ~0031663

Vlad, current version of OCCT master returns "error 111" and no result, and I suppose this is correct in that case (one of the two faces is clearly bad, and they are not intersecting). Do you still consider this case as relevant?

vro

2014-09-12 14:33

developer   ~0031668

I agree, for a boolean operation this case is not relevant. But I noticed that an attempt to "fix" the first shape raises an exception:

Draw[21]> restore f1.brep f1
Draw[22]> checkshape f1
On Shape faulty_1 :
BRepCheck_NotConnected
BRepCheck_NoError
On Shape faulty_2 :
BRepCheck_UnorientableShape
Shape faulty_1 on shape faulty_2 :
BRepCheck_NotConnected
Faulty shapes in variables faulty_1 to faulty_2
Draw[23]> fixshape ff1 f1
An exception was caught 0FFB4298 : OSD_Exception_ACCESS_VIOLATION: ACCESS VIOLATION at address 0xFEFD0018 during 'READ' operation
** Exception ** 0FFB4298 : OSD_Exception_ACCESS_VIOLATION: ACCESS VIOLATION at address 0xFEFD0018 during 'READ' operation

May be the bug should be reconsidered for shape healing? Or closed. I agree with both solutions.

aml

2014-10-30 09:56

developer   ~0033861

I Formal reason of test fail on current master:

An exception was caught 55BDE708 : Standard_NullObject: BRep_Tool:: TopoDS_Vertex hasn't gp_Pnt
** Exception ** 55BDE708 : Standard_NullObject: BRep_Tool:: TopoDS_Vertex hasn't gp_Pnt

II Fail explanation:

Attached "f1" shape consists of 2 edges and 1 wire, command "explode" return that there is no vertexes on edges and they have unlimited bounds:

    Tolerance : 0.01
     same parametrisation of curves
     same range on curves
    - Curve 3D : 1, range : -2e+100 2e+100
    - PCurve : 1 on surface 1, range : -2e+100 2e+100
  UV Points : 1.79769313486232e+308, 1.79769313486232e+308 1.79769313486232e+308
, 1.79769313486232e+308
    - Regularity G1 on surfaces : 1, 2

We usually work with edges which have vertexes on it borders, but in this case there is no possibility to add them and make face later.

III Solution

According to previous chapter I offer to close bug, because "f1" shape too "bad" to be fixed.

abv

2014-10-30 10:05

manager   ~0033862

Please only protect ShapeHealing algorithms from exception (obviously check for Null vertex is absent) so that command fixshape does not raise exceptions

git

2014-10-30 10:26

administrator   ~0033863

Branch CR24934 has been created by aml.

SHA-1: 8de74030d1616173f3f3733d53a98d549390fb74


Detailed log of new commits:

Author: aml
Date: Thu Oct 30 10:25:53 2014 +0300

    0024934: Section: crash for two faces
    
    Added protection from null vertexes.

aml

2014-10-30 10:29

developer   ~0033864

Dear abv,

Please check current state of branch CR24934.

Protection from null vertexes which lead to exceptions was added.

git

2014-10-30 10:41

administrator   ~0033865

Branch CR24934 has been updated forcibly by aml.

SHA-1: bcb8c4ec7d3055f372179968b4e3aaaa2ce103c0

abv

2014-10-30 12:39

manager   ~0033876

No remarks, please test

mkv

2014-10-31 19:16

tester   ~0033989

Dear BugMaster,
Branch CR24934 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
SHA-1: bcb8c4ec7d3055f372179968b4e3aaaa2ce103c0

Number of compiler warnings:

occt component :
Linux: 18 (18 on master)
Windows: 0 (0 on master)

products component :
Linux: 11 (11 on master)
Windows: 1 (1 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
http://occt-tests/CR24934-master-occt/Debian60-64/bugs/heal/bug24934.html
http://occt-tests/CR24934-master-occt/Windows-32-VC10/bugs/heal/bug24934.html
bugs heal(017) bug24934: FAILED

Testing on Linux:
occt component :
Total MEMORY difference: 372144796 / 371798320
Total CPU difference: 47191.06000000005 / 48296.50000000005
products component :
Total MEMORY difference: 125271600 / 125299284
Total CPU difference: 16996.56999999997 / 16530.73999999999

Testing on Windows:
occt component :
Total MEMORY difference: 273844764 / 273087684
Total CPU difference: 48662.53125 / 37050.84375
products component :
Total MEMORY difference: 80483300 / 70377380
Total CPU difference: 12193.203125 / 12121.578125

There are no differences in images found by testdiff.

git

2014-10-31 19:17

administrator   ~0033990

Branch CR24934 has been updated by mkv.

SHA-1: be25913c37647a10ec9b29924d9278d87bb7fb49


Detailed log of new commits:

Author: mkv
Date: Fri Oct 31 19:05:37 2014 +0300

    Test case for issue CR24934

git

2014-11-05 09:18

administrator   ~0034015

Branch CR24934 has been updated forcibly by aml.

SHA-1: 256e98cf86237dad69c0f61a683686ea3ba01317

aml

2014-11-05 09:20

developer   ~0034016

Dear mkv,

Test case has been changed to meet pushed fix and rebase to current master has been performed. Please re-test.

abv

2014-11-05 09:47

manager   ~0034018

Mikhail, there is no need in comprehensive testing, just make sure the test bugs heal bug24934 works correctly. Note that the test should only do fixshape command, it is not even necessary to check its result, as in case of exception it will be reported as FAIL anyway.

mkv

2014-11-05 14:31

tester   ~0034041

Dear BugMaster,
Now:
bugs heal(017) bug24934: OK.
http://occt-tests/CR24934-master-occt/Debian60-64/bugs/heal/bug24934.html
http://occt-tests/CR24934-master-occt/Windows-32-VC10/bugs/heal/bug24934.html

git

2014-11-12 09:52

administrator   ~0034291

Branch CR24934 has been deleted by inv.

SHA-1: 256e98cf86237dad69c0f61a683686ea3ba01317

Related Changesets

occt: master 29582444

2014-11-05 14:26:31

aml


Committer: bugmaster Details Diff
0024934: Section: crash for two faces

Added protection from null vertexes.

Test case for issue CR24934
Affected Issues
0024934
mod - src/ShapeAnalysis/ShapeAnalysis_Wire.cxx Diff File
add - tests/bugs/heal/bug24934 Diff File

Issue History

Date Modified Username Field Change
2014-05-16 11:13 vro New Issue
2014-05-16 11:13 vro Assigned To => ifv
2014-05-16 11:13 vro File Added: faces.zip
2014-05-23 12:14 ifv Assigned To ifv => pkv
2014-05-23 12:14 ifv Status new => assigned
2014-09-12 14:15 abv Note Added: 0031663
2014-09-12 14:15 abv Assigned To pkv => vro
2014-09-12 14:15 abv Target Version => 6.8.0
2014-09-12 14:15 abv Status assigned => feedback
2014-09-12 14:33 vro Note Added: 0031668
2014-09-16 15:45 vro Assigned To vro => dbv
2014-09-16 15:45 vro Status feedback => assigned
2014-10-29 13:55 abv Assigned To dbv => aml
2014-10-30 09:56 aml Note Added: 0033861
2014-10-30 09:56 aml Assigned To aml => abv
2014-10-30 10:04 abv Assigned To abv => aml
2014-10-30 10:05 abv Note Added: 0033862
2014-10-30 10:26 git Note Added: 0033863
2014-10-30 10:29 aml Note Added: 0033864
2014-10-30 10:29 aml Assigned To aml => abv
2014-10-30 10:29 aml Status assigned => resolved
2014-10-30 10:41 git Note Added: 0033865
2014-10-30 12:39 abv Note Added: 0033876
2014-10-30 12:39 abv Assigned To abv => bugmaster
2014-10-30 12:39 abv Status resolved => reviewed
2014-10-30 16:28 mkv Assigned To bugmaster => mkv
2014-10-31 19:16 mkv Note Added: 0033989
2014-10-31 19:16 mkv Test case number => bugs heal(017) bug24934
2014-10-31 19:16 mkv Assigned To mkv => aml
2014-10-31 19:16 mkv Status reviewed => assigned
2014-10-31 19:17 git Note Added: 0033990
2014-11-05 09:18 git Note Added: 0034015
2014-11-05 09:20 aml Note Added: 0034016
2014-11-05 09:20 aml Assigned To aml => mkv
2014-11-05 09:47 abv Note Added: 0034018
2014-11-05 09:47 abv Status assigned => feedback
2014-11-05 14:31 mkv Note Added: 0034041
2014-11-05 14:31 mkv Assigned To mkv => bugmaster
2014-11-05 14:31 mkv Status feedback => tested
2014-11-06 15:18 bugmaster Changeset attached => occt master 29582444
2014-11-06 15:18 bugmaster Status tested => verified
2014-11-06 15:18 bugmaster Resolution open => fixed
2014-11-11 12:42 aiv Fixed in Version => 6.8.0
2014-11-11 13:03 aiv Status verified => closed
2014-11-12 09:52 git Note Added: 0034291