I have tried the Boolean Operation (BRepAlgoAPI_Fuse, BRepAlgoAPI_Cut, BRepAlgoAPI_Common) for the attached 2cylinder.brep file (which contains two cylinders).
When I use the following code to get the Faces of the result (Shape):
for (Ex.Init(Shape, TopAbs_FACE); EX.More(); Ex.Next())
Face = TopoDS::Face(Ex.Current());
For different versions, I get different Face order. Is this behavior normal?