0025509: Wrong shape considered as valid by checkshape
authorpkv <pkv@opencascade.com>
Thu, 11 Dec 2014 13:53:12 +0000 (16:53 +0300)
committerbugmaster <bugmaster@opencascade.com>
Thu, 11 Dec 2014 13:54:05 +0000 (16:54 +0300)
commit949df2b64ba7a924ae600f2b5c0d72e9e38431e4
tree7fc72093ad8e0486f8abf64917a90935c252455d
parentccadc126ba3a6bb0835b4c6544766858580fb25a
0025509: Wrong shape considered as valid by checkshape

New features:

1. class BRepCheck_Solid
The class is to check a solid per se.
The scan area is:
 i.  Shells that overlaps each other
     Status:  BRepCheck_InvalidImbricationOfShells

 ii.  Detached parts of the solid (vertices, edges)
       that have non-internal orientation
       Status:  BRepCheck_BadOrientationOfSubshape

 iii.  For closed, non-internal shells:
 iii.1 Shells containing entities  of the solid that
      are outside towards the shells
      Status:  BRepCheck_SubshapeNotInShape

 iii.2 Shells that encloses other Shells
     (for non-holes)
      Status:  BRepCheck_EnclosedRegion

Changes:

1. enumeration BRepCheck_Status
members:
 InvalidImbricationOfShells,
 EnclosedRegion,
has been added

2. class BRepCheck
method:
void BRepCheck::Print(const BRepCheck_Status stat,
                      Standard_OStream& OS)
has been modified to take into account II.1

3. class BRepCheck_Analyzer
method:
void BRepCheck_Analyzer::Put(const TopoDS_Shape& S,
                             const Standard_Boolean B)
has been modified to take into account I.1

4. class BRepTest
function:
void StructuralDump(Draw_Interpretor& theCommands,
 const BRepCheck_Analyzer &theAna,
 const Standard_CString   ShName,
 const Standard_CString   Pref,
 const TopoDS_Shape       &theShape)
has been modified to take into account I.1, II.1

Test cases for issue CR25509

Correction of test cases for issue CR25509
17 files changed:
src/BRepCheck/BRepCheck.cdl
src/BRepCheck/BRepCheck.cxx
src/BRepCheck/BRepCheck_Analyzer.cxx
src/BRepCheck/BRepCheck_Solid.cdl [new file with mode: 0644]
src/BRepCheck/BRepCheck_Solid.cxx [new file with mode: 0644]
src/BRepTest/BRepTest_CheckCommands.cxx
tests/bugs/modalg_5/bug25509_1 [new file with mode: 0755]
tests/bugs/modalg_5/bug25509_2 [new file with mode: 0755]
tests/bugs/modalg_5/bug25509_3 [new file with mode: 0755]
tests/bugs/modalg_5/bug25509_4 [new file with mode: 0755]
tests/bugs/modalg_5/bug25509_5 [new file with mode: 0755]
tests/bugs/modalg_5/bug25509_6 [new file with mode: 0755]
tests/bugs/modalg_5/bug25509_7 [new file with mode: 0755]
tests/bugs/modalg_5/bug25509_8 [new file with mode: 0755]
tests/bugs/step/bug24055
tests/bugs/step/bug55
tests/de/step_3/D9 [changed mode: 0644->0755]