Surface display crash

Hello 

I found a very strange surface visualization problem.

Please see attached IGES file. 

Our environment: VC12 32bit. OCC 7.0.0 or 7.2.0

The problem occurred also on ImportExport application  from MFCSamples.

The application  has imported IGES file fine, but  stuck  into display function. I investigated the source code. The problem caused in the StdPrs_CurveDeflection file in  the application enters into drawCurve function. Into  drawCurve  function app. goes into GCPnts_TangentialDeflection Algo(aCurve, theU1, theU2, anAngle, TheDeflection); and stuck there about 100 seconds, and Standard_OutOfMemory esception occured.

Under OCC 6.7.0  this IGES works well and fast.

Please help me to solve the problem or to find workaround.

Thanks in advance

Boris Weisman

 

 

Attachments: 
Kirill Gavrilov's picture

I have registered bug #29356 for this issue.
https://tracker.dev.opencascade.org/view.php?id=29356

Boris Weisman's picture

The workaround was implemented to dismiss the iso-lines out of the range and was found working well for us

Hereunder are the lines added to the StdPrs_Isolines.cxx file in the function addOnSurface line 512 (ver. 7.2.0):

      if (anIsoParam <  theSurface->FirstUParameter() || anIsoParam >  theSurface->LastUParameter())
         continue;

Will be happy to get your comments

Hope that it can help to somebody else

Kirill Gavrilov's picture

The patch for the issue should be included into next OCCT release.