MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0030346Open CASCADE[OCCT] OCCT:Modeling Algorithmspublic2018-11-06 18:042018-12-30 14:58
Reporterkgv 
Assigned Tobugmaster 
PrioritynormalSeverityminor 
StatusverifiedResolutionfixed 
PlatformOSOS Version
Product Version[OCCT] 5.0.0 
Target Version[OCCT] 7.4.0*Fixed in Version 
Summary0030346: Modeling Algorithms - BRepPrimAPI_MakeRevol throws "BRepSweep_Translation::MakeEmptyVertex"
DescriptionTest case bugs/moddata_2/bug65 throws "BRepSweep_Translation::MakeEmptyVertex" exception within BRepSweep_Rotation::MakeEmptyVertex() method when exceptions are preserved (DEBUG build or No_Exception undefined).

Although #0000065 specifies, that the original issue will NOT be fixed,
it doesn't look reasonable keeping a broken test case in OCCT.
Either, the bug should be fixed, or test case removed / adopted.

Notice also a misprint in exception text specifying wrong class name, which should be also corrected:
TopoDS_Shape  BRepSweep_Rotation::MakeEmptyVertex
  (const TopoDS_Shape& aGenV, 
   const Sweep_NumShape& aDirV)
{
  //call only in construction mode with copy.
  Standard_ConstructionError_Raise_if
    (!myCopy,"BRepSweep_Translation::MakeEmptyVertex");


Really, problem (exception) occurs during history building and was caused by an attempt to obtain generated shape for subshape, which was really "deleted" by algorithm - this input subshape and its possible generated shape was not used in result.
To remove exception it is necessary to treat correctly "deleted" shapes in history - to add standard method "IsDeleted(...)" for rotation and translation algorithms.
Steps To Reproducebugs moddata_2 bug65
bugs modalg_7 bug30346_1
bugs modalg_7 bug30346_2
TagsNo tags attached.
Test case numberbugs/modalg_7/bug30346_1, bugs/modalg_7/bug30346_2
Attached Files

- Relationships
related to 0029181assignedapn Open CASCADE Jenkins Certification Tool - testing with enabled exceptions (undefined No_Exception) 

-  Notes
(0080788)
msv (developer)
2018-11-06 18:32

I propose to eliminate exception in the method MakeEmptyVertex() in both classes BRepSweep_Translation and BRepSweep_Rotation.
(0080789)
msv (developer)
2018-11-06 18:33

Dear Igor, what is your opinion?
(0081101)
ifv (developer)
2018-11-15 08:49

I agree with you
(0081103)
msv (developer)
2018-11-15 09:27

Please do it.
(0081582)
git (administrator)
2018-12-21 11:38

Branch CR30346 has been created by ifv.

SHA-1: 8e30c2e11942b4a1a83b882783f2ef743013cce7


Detailed log of new commits:

Author: ifv
Date: Mon Dec 10 15:48:55 2018 +0300

    0030346: Modeling Algorithms - BRepPrimAPI_MakeRevol throws "BRepSweep_Translation::MakeEmptyVertex"
    
    Implementation of method "IsDeleted(...)" for MakeRevol and MakePrism algorithms
(0081622)
git (administrator)
2018-12-25 15:24

Branch CR30346 has been updated forcibly by ifv.

SHA-1: 411a60079618d89f457257c180bf60ebb2c3c791
(0081636)
ifv (developer)
2018-12-27 10:45

Branch CR30346 is reday for review.
Test results: CR30346-master-IFV
(0081640)
msv (developer)
2018-12-27 11:55

I see no relation between planned fix:

> eliminate exception in the method MakeEmptyVertex() in both classes
> BRepSweep_Translation and BRepSweep_Rotation

and the done fix:

> Implementation of method "IsDeleted(...)" for MakeRevol and
> MakePrism algorithms).

What is about the initial bug?

More remarks:

src/BRepSweep/BRepSweep_Prism.hxx
- 87: description of the method GenIsUsed() seams to be not correct in compare with BRepSweep_NumLinearRegularSweep, which implementation is called.

src/BRepSweep/BRepSweep_Prism.cxx
- 199: the method GenIsUsed is commented as IsBuilt.

src/BRepSweep/BRepSweep_NumLinearRegularSweep.cxx
- 525,576: protect against exception if iGenS==0.
(0081641)
msv (developer)
2018-12-27 12:03

The test bugs/moddata_2/bug65 is still bad. Can we adopt it to make it good?
Checkshape reports error that the second shell in the result is empty. May be it is needed not to pass the second shape (wire) of the initial shape to the revol algorithm?
(0081646)
git (administrator)
2018-12-28 11:24

Branch CR30346 has been updated forcibly by ifv.

SHA-1: 1f294967a0733c33ad4510c6804d7aee92098f2d
(0081647)
ifv (developer)
2018-12-28 11:29

CR30346 is updated

Problem (exception) occurs during history building and was caused by an attempt to obtain generated shape for subshape, which was really "deleted" by algorithm - this input subshape and its possible generated shape was not used in result.
(0081648)
msv (developer)
2018-12-28 11:51

Reviewed.
(0081649)
bugmaster (administrator)
2018-12-28 15:52

Combination -
OCCT branch : CR30346 SHA - 411a60079618d89f457257c180bf60ebb2c3c791
Products branch : master SHA - 4b92b1495aa4777a767cfbc88afc00a4e9fb1b5f
was compiled on Linux, MacOS and Windows platforms and tested in optimize mode.

Number of compiler warnings:
No new/fixed warnings

Regressions/Differences/Improvements:
No regressions/differences

CPU differences:
Debian80-64:
OCCT
Total CPU difference: 16357.570000000016 / 16359.79999999999 [-0.01%]
Products
Total CPU difference: 7164.300000000043 / 7165.4900000000225 [-0.02%]
Windows-64-VC14:
OCCT
Total CPU difference: 17796.953125 / 17811.34375 [-0.08%]
Products
Total CPU difference: 8607.125 / 8697.84375 [-1.04%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention
(0081658)
git (administrator)
2018-12-30 14:58

Branch CR30346 has been deleted by inv.

SHA-1: 1f294967a0733c33ad4510c6804d7aee92098f2d

- Related Changesets
occt: master 80eeb3ce
Timestamp: 2018-12-10 12:48:55
Author: ifv
Committer: bugmaster
Details ] Diff ]
0030346: Modeling Algorithms - BRepPrimAPI_MakeRevol throws "BRepSweep_Translation::MakeEmptyVertex"

Implementation of method "IsDeleted(...)" for MakeRevol and MakePrism algorithms.

Problem (exception) occurs during history building and was caused by an attempt to obtain generated shape for subshape, which was really "deleted" by algorithm - this input subshape and its possible generated shape was not used in result.
mod - src/BRepPrimAPI/BRepPrimAPI_MakePrism.cxx Diff ] File ]
mod - src/BRepPrimAPI/BRepPrimAPI_MakePrism.hxx Diff ] File ]
mod - src/BRepPrimAPI/BRepPrimAPI_MakeRevol.cxx Diff ] File ]
mod - src/BRepPrimAPI/BRepPrimAPI_MakeRevol.hxx Diff ] File ]
mod - src/BRepSweep/BRepSweep_NumLinearRegularSweep.cxx Diff ] File ]
mod - src/BRepSweep/BRepSweep_NumLinearRegularSweep.hxx Diff ] File ]
mod - src/BRepSweep/BRepSweep_Prism.cxx Diff ] File ]
mod - src/BRepSweep/BRepSweep_Prism.hxx Diff ] File ]
mod - src/BRepSweep/BRepSweep_Revol.cxx Diff ] File ]
mod - src/BRepSweep/BRepSweep_Revol.hxx Diff ] File ]
mod - src/BRepSweep/BRepSweep_Rotation.cxx Diff ] File ]
mod - src/BRepTest/BRepTest_SweepCommands.cxx Diff ] File ]
add - tests/bugs/modalg_7/bug30346_1 Diff ] File ]
add - tests/bugs/modalg_7/bug30346_2 Diff ] File ]
mod - tests/bugs/moddata_2/bug65 Diff ] File ]

- Issue History
Date Modified Username Field Change
2018-11-06 18:04 kgv New Issue
2018-11-06 18:04 kgv Assigned To => msv
2018-11-06 18:04 kgv Relationship added child of 0000065
2018-11-06 18:05 kgv Relationship added related to 0029181
2018-11-06 18:05 kgv Product Version 7.3.0 => 5.0.0
2018-11-06 18:32 msv Note Added: 0080788
2018-11-06 18:33 msv Note Added: 0080789
2018-11-06 18:33 msv Assigned To msv => ifv
2018-11-06 18:33 msv Status new => feedback
2018-11-15 08:48 ifv Assigned To ifv => msv
2018-11-15 08:49 ifv Note Added: 0081101
2018-11-15 09:27 msv Note Added: 0081103
2018-11-15 09:27 msv Assigned To msv => ifv
2018-11-15 09:27 msv Status feedback => assigned
2018-12-21 11:38 git Note Added: 0081582
2018-12-25 15:24 git Note Added: 0081622
2018-12-27 10:45 ifv Note Added: 0081636
2018-12-27 10:45 ifv Assigned To ifv => msv
2018-12-27 10:45 ifv Status assigned => resolved
2018-12-27 10:45 ifv Steps to Reproduce Updated View Revisions
2018-12-27 11:55 msv Note Added: 0081640
2018-12-27 11:55 msv Assigned To msv => ifv
2018-12-27 11:55 msv Status resolved => assigned
2018-12-27 12:03 msv Note Added: 0081641
2018-12-28 11:24 git Note Added: 0081646
2018-12-28 11:29 ifv Note Added: 0081647
2018-12-28 11:29 ifv Assigned To ifv => msv
2018-12-28 11:29 ifv Status assigned => resolved
2018-12-28 11:34 ifv Description Updated View Revisions
2018-12-28 11:51 msv Note Added: 0081648
2018-12-28 11:51 msv Assigned To msv => bugmaster
2018-12-28 11:51 msv Status resolved => reviewed
2018-12-28 15:52 bugmaster Note Added: 0081649
2018-12-28 15:52 bugmaster Status reviewed => tested
2018-12-28 15:53 bugmaster Test case number => bugs/modalg_7/bug30346_1, bugs/modalg_7/bug30346_2
2018-12-30 14:54 bugmaster Changeset attached => occt master 80eeb3ce
2018-12-30 14:54 bugmaster Status tested => verified
2018-12-30 14:54 bugmaster Resolution open => fixed
2018-12-30 14:58 git Note Added: 0081658


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker