View Issue Details

IDProjectCategoryView StatusLast Update
0030873CommunityOCCT:Modeling Algorithmspublic2022-10-24 10:43
Reporterdrazmyslovich Assigned Toemv  
PrioritynormalSeverityminor 
Status assignedResolutionopen 
PlatformWindowsOSVC++ 2015 
Product Version7.4.0 
Target Version7.8.0 
Summary0030873: Avoid the loop in reshaper
DescriptionCurrently, BRepTools_ReShape utility is not resistent to application loops.
Steps To ReproduceTopoDS_Shape a;
TopoDS_Shape b;

BRepTools_ReShape reshaper;
reshaper.replace (a, b);
reshaper.replace (b, a);

reshaper.Apply (a); // infinite loop
TagsNo tags attached.
Test case number

Activities

git

2019-08-07 14:27

administrator   ~0086063

Branch CR30873 has been created by drazmyslovich.

SHA-1: 828a75f2280fa20235acae49af4cb2f0876d71e9


Detailed log of new commits:

Author: drazmyslovich
Date: Wed Aug 7 13:25:15 2019 +0200

    0030873: Make ReShape tool resistant to replacement loops

drazmyslovich

2019-08-07 14:27

developer   ~0086064

The proposed solution is submitted, please, review

msv

2019-08-08 09:56

developer   ~0086082

Dear Eugeny, please review it.

emv

2019-08-12 14:43

developer   ~0086195

It is not good to call the Apply method which supposed to rebuild the shape in the replace method. At this stage we just need to check if there is no cyclic dependency between the shape and newshape recorded into a map. I suggest implementing a separate method for that without rebuilding, only analyzing the map.

emv

2019-08-12 15:20

developer   ~0086199

Additionally, it is better to use Assertion mechanism to warn the user about the error.

drazmyslovich

2019-12-18 14:38

developer   ~0089623

Dear Eugeny, unfortunately, I have currently no capacity to implement the proposed improvement (and I won't have time during the next 6 months as well), therefore I assign this ticket to you as occasionally you (your team) will decide to undertake some action on it yourselves.
I wish you Happy New Year and Happy Holidays.
Regards,
Dima

Issue History

Date Modified Username Field Change
2019-08-07 14:25 drazmyslovich New Issue
2019-08-07 14:25 drazmyslovich Assigned To => drazmyslovich
2019-08-07 14:27 git Note Added: 0086063
2019-08-07 14:27 drazmyslovich Note Added: 0086064
2019-08-07 14:27 drazmyslovich Assigned To drazmyslovich => msv
2019-08-07 14:27 drazmyslovich Status new => resolved
2019-08-08 09:56 msv Note Added: 0086082
2019-08-08 09:56 msv Assigned To msv => emv
2019-08-08 09:56 msv Status resolved => assigned
2019-08-08 09:56 msv Status assigned => resolved
2019-08-12 14:43 emv Note Added: 0086195
2019-08-12 14:43 emv Assigned To emv => drazmyslovich
2019-08-12 14:43 emv Status resolved => assigned
2019-08-12 15:11 emv Target Version 7.4.0 => 7.5.0
2019-08-12 15:20 emv Note Added: 0086199
2019-12-18 14:35 drazmyslovich Assigned To drazmyslovich =>
2019-12-18 14:35 drazmyslovich Assigned To => emv
2019-12-18 14:38 drazmyslovich Note Added: 0089623
2020-09-15 16:48 msv Target Version 7.5.0 => 7.6.0
2021-08-29 18:49 msv Target Version 7.6.0 => 7.7.0
2022-10-24 10:43 szy Target Version 7.7.0 => 7.8.0