View Issue Details

IDProjectCategoryView StatusLast Update
0028602Open CASCADEOCCT:Shape Healingpublic2023-08-01 15:06
ReportermsvAssigned Toisn 
PrioritynormalSeverityminor 
Status assignedResolutionopen 
Product Version7.1.0 
Target VersionUnscheduled 
Summary0028602: Prevent ShapeFix_Shape to modify the input shape
DescriptionShapeFix_Shape modifies the input shape (updates tolerances of sub-shapes, adds p-curves in edges, etc.).
Sometimes the modification of input shape is unwanted. The new sub-shapes are to be created for the result if needed.
Steps To Reproducebox b 10 10 10
tolerance b

# Initial tolerances:
#Tolerance MAX=9.9999999999999995e-008 AVG=9.9999999999999995e-008 MIN=9.9999999999999995e-008
#FACE : MAX=9.9999999999999995e-008 AVG=9.9999999999999995e-008 MIN=9.9999999999999995e-008
#EDGE : MAX=9.9999999999999995e-008 AVG=9.9999999999999995e-008 MIN=9.9999999999999995e-008
#VERTEX : MAX=9.9999999999999995e-008 AVG=9.9999999999999995e-008 MIN=9.9999999999999995e-008

fixshape b1 b
tolerance b

# Result tolerances:
#Tolerance MAX=1.0001000025000001e-007 AVG=1.0000923099999988e-007 MIN=9.9999999999999995e-008
#FACE : MAX=9.9999999999999995e-008 AVG=9.9999999999999995e-008 MIN=9.9999999999999995e-008
#EDGE : MAX=1.0001000025000001e-007 AVG=1.0001000025000001e-007 MIN=1.0001000025000001e-007
#VERTEX : MAX=1.0001000025000001e-007 AVG=1.0001000025000001e-007 MIN=1.0001000025000001e-007
TagsNo tags attached.
Test case number

Relationships

related to 0028601 closedbugmaster ShapeFix_Shape increases tolerance of sub-shapes of a valid shape 
related to 0028227 closedbugmaster ShapeUpgrade_UnifySameDomain modifies the edges even if it is not requested 

Activities

msv

2017-04-04 16:22

developer   ~0064902

Dear Ivan,
Please check if topomode of fixshape solves the problem.

imn

2017-04-04 18:04

developer   ~0064905

Last edited: 2017-04-04 18:10

"Topomode" of fixshape doesn't solve the problem.
And also detected error the same as in bug 0028227.
Reproduce in DRAW:

pload ALL
vertex v1 0 0 0
vertex v2 10 10 10
edge e v1 v2
setflags e locked
fixshape res e

Result: **Exception** TopoDS_LockedShape: BRep_Builder::SameParameter
This error occurs in the method "FixSameParameter" in class "ShapeFix_Edge"

msv

2017-04-04 18:56

developer   ~0064910

Dear Ivan,
Please try to get rid of the problem using the new method BRep::SameParameter added in the fix for the bug 0028456.

git

2017-04-21 20:21

administrator   ~0065451

Branch CR28602 has been created by imn.

SHA-1: 5e415326d97c367884e410523631e184ed0fb7a0


Detailed log of new commits:

Author: imn
Date: Fri Apr 21 20:18:17 2017 +0300

    0028602: Prevent ShapeFix_Shape to modify the input shape
    - Is used the new method BRepLib::SameParameter

imn

2017-04-21 20:29

developer   ~0065453

Dear Mikhail, the problem was resolved how you suggested, could you please review CR28602.

msv

2017-04-24 16:11

developer   ~0065482

The branch CR28602 contains no solution that is needed.

The main idea is written in the bug description: "The new sub-shapes are to be created for the result if needed." It means, for example, if some edge is modified in order to recompute pcurves or increase tolerance in it, the new copy of the edge is to be created and then put in the result instead of the original edge.

The fix 0028456 contains some new overloads of the method BRepLib::SameParameter. E.g.:

TopoDS_Edge SameParameter(const TopoDS_Edge& theEdge,
                          const Standard_Real theTolerance,
                          Standard_Real& theNewTol,
                          Standard_Boolean IsUseOldEdge);

This method returns such a copy and does not touch the original edge.

git

2017-04-24 16:12

administrator   ~0065483

Branch CR28602 has been deleted by msv.

SHA-1: 5e415326d97c367884e410523631e184ed0fb7a0

Issue History

Date Modified Username Field Change
2017-03-28 11:49 msv New Issue
2017-03-28 11:49 msv Assigned To => gka
2017-03-28 11:49 msv Relationship added related to 0028601
2017-04-04 16:21 msv Summary Add SafeMode option in ShapeFix_Shape to prevent modification of the input shape => Prevent ShapeFix_Shape to modify the input shape
2017-04-04 16:21 msv Description Updated
2017-04-04 16:22 msv Note Added: 0064902
2017-04-04 16:22 msv Assigned To gka => imn
2017-04-04 16:22 msv Status new => assigned
2017-04-04 18:04 imn Note Added: 0064905
2017-04-04 18:04 imn Note Edited: 0064905
2017-04-04 18:10 imn Note Edited: 0064905
2017-04-04 18:35 msv Relationship added related to 0028227
2017-04-04 18:56 msv Note Added: 0064910
2017-04-21 20:21 git Note Added: 0065451
2017-04-21 20:29 imn Note Added: 0065453
2017-04-21 20:29 imn Assigned To imn => msv
2017-04-21 20:29 imn Status assigned => resolved
2017-04-24 16:11 msv Note Added: 0065482
2017-04-24 16:12 git Note Added: 0065483
2017-04-24 16:12 msv Status resolved => assigned
2017-05-05 18:47 msv Assigned To msv => isn
2017-07-20 13:00 msv Target Version 7.2.0 => 7.3.0
2018-02-25 21:09 abv Target Version 7.3.0 => 7.4.0
2019-09-04 13:04 abv Target Version 7.4.0 => 7.5.0
2020-09-11 16:48 utverdov Target Version 7.5.0 => 7.6.0
2021-08-31 15:20 gka Target Version 7.6.0 => 7.7.0
2022-10-24 10:43 szy Target Version 7.7.0 => 7.8.0
2023-08-01 15:06 dpasukhi Target Version 7.8.0 => Unscheduled