STEPControl_Reader read.precision.value

Hello, hope you're doing well.

Using OCC 7.8.0 to read a STEP file and performing reader.TransferRoots() is taking so long (around 27 minutes) for rounded profiles. For a tube of 6in diameter and 26ft length that has a linear pattern of 78EA 1in holes, and a circular pattern of 8 instances of the linear pattern as can be seen in the attached image.

I guess it has something to do with the read.precision.value, but cannot find how to correctly modify it. I tried the method of the documentation, before and after instantiating the reader, but it seems it has no effect.

if(!Interface_Static::SetIVal("read.precision.mode",1)){...error goes here}
if(!Interface_Static::SetRVal("read.precision.val",0.01)){...error goes here}

Also tried to use the StepData_ConfParameters class to modify the values and pass them as a second argument of the ReadFile method, but again, it seems it does not have any performance effect.

Do you have any example of how to correctly set those parameters? Does those parameters have effect on the read performance? Should I modify something related to curve formation?

I would really appreciate any help on this. Thanks!

Dmitrii Pasukhin's picture

Hello, mostly this parameter will not impact on performance. As, for you issue about setting, you need to StepControl_Controller::Init() before setting up parameter.

I guess there are some issue with ShapeHealing, please create an issue about performance of ShapeHealing. 7.9 Release will give you ability to parallel healing, but it will not helps to performance issue.

Best regards, Dmitrii.