MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0026003Open CASCADE[OCCT] OCCT:Shape Healingpublic2015-04-01 15:032015-04-01 15:03
Reportermsv 
Assigned Togka 
PrioritynormalSeveritytweak 
StatusnewResolutionopen 
PlatformOSOS Version
Product Version 
Target Version[OCCT] UnscheduledFixed in Version 
Summary0026003: Some algorithms in ShapeFix do not check the status of ShapeFix_Edge::FixSameParameter
DescriptionThe examples of such places are provided in case when an exception is raised, e.g. in CheckCurveData when bspline knots are checked for validity (see description in 0025971).

The method ShapeFix_Edge::FixSameParameter contains try/catch block. When an exception is caught the status ShapeExtend_FAIL2 is set.

The next items enumerate places where the status is not checked, which can lead to incorrect behavior of the tool.

1) The method ShapeFix::SameParameter (line 132 in ShapeFix.cxx):

  sfe->FixSameParameter (E);
  if (!BRep_Tool::SameParameter (E)) { ierr = 1; nbfail ++; }

If sfe tool sets the status to FAIL2 then the edge has incorrect state of the flag SameParameter, and the flag ierr remains equal to 0, indicating there is no error. Therefore the further code does not reset the flags of the edge, and the edge remains in wrong state of its flags. As a result, the tool that is aimed to ensure correct SameParameter flag setting leaves some edges with incorrectly set SameParameter.

2) The method TryNewPCurve that is called during work of the tools FixSelfIntersectingEdge, FixLacking (line 1737 in ShapeFix_Wire.cxx):

  sfe->FixSameParameter ( edge );
  c2d = BRep_Tool::CurveOnSurface ( edge, face, first, last );

Here nor the status nor the result curve is checked for validity, and the wrongly parameterized curve is taken in further processing.

3) The method FixSameParameter is called without checking of the result status in other places as well. It is needed to make search of all such places at least limited by the package ShapeFix.

In each found place it is needed to make logically justified treatment of the returned status.
TagsNo tags attached.
Test case number
Attached Files

- Relationships

-  Notes
There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
2015-04-01 15:03 msv New Issue
2015-04-01 15:03 msv Assigned To => gka


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker