short edges and BRepBuilderAPI_MakeWire

hello together,

i have some problems with the BRepBuilderAPI_MakeWire. I import a step file and connect some edges to a wire. This works well until i want to add a edge which is only 0.5 mm. Then i get a BRepBuilderAPI_WireError number 2: BRepBuilderAPI_DisconnectedWire.

But when i display the edges via OCC or in catia i can see that they are connected. So i think the problem depend on some tolerance settings? But how to show or change them?

Some ideas? Thanks in advance.

Hennig's picture

i found the reason....

The BRepBuilderAPI_MakeWire::Add() uses the function BRepLib_MakeWire::Add() from BRepLib_MakeWire.cxx

They check if the distance between the vertex from the existing wire and the vertex from the edge to be add, is smaller then the tolerance of the vertices.
In may case the distance was 1.6e-07 and the tolerance of the vertices 1.0e-07. I solved the problem using ShapeFix_ShapeTolerance::SetTolerance(myShape, 1.0e-06, TopAbs_VERTEX ).

Is this the best way? Somebody who made the same experience?