View Issue Details

IDProjectCategoryView StatusLast Update
0033432CommunityOCCT:Modeling Algorithmspublic2023-08-01 15:33
Reporterdratner Assigned Toakaftasev  
PrioritynormalSeverityminor 
Status newResolutionopen 
PlatformWindowsOSVC++ 2019 
Product Version7.6.3 
Target VersionUnscheduled 
Summary0033432: Modeling Algorithms - BRepFilletAPI_MakeFillet generates TopoDS_Solid with check-faults
DescriptionFilleting an edge with a radius no larger than 0.0105 will generate a cleanly checking result. It is not clear why a larger radius (e.g., radius = 0.1) results in a faulty check.

Please note that other CAD systems (NX for instance) have successfully filleted this case with a larger radius fillet.
Steps To Reproduce
    // Load .brep.
    TopoDS_Shape importShp;
    BRep_Builder builder;
    BRepTools::Read(importShp, "cyl_box.brep", builder);

    TopoDS_Solid solidShp;
    TopExp_Explorer exp;
    for (exp.Init(shp, TopAbs_SOLID); exp.More(); exp.Next()) {
        solidShp = TopoDS::Solid(exp.Current());
    }

    // Get lower-topology edges.
    TopTools_IndexedMapOfShape edgeShpMap;
    TopExp::MapShapes(solidShp, TopAbs_EDGE, edgeShpMap);

    // Fillet the 4th edge with a radius 0.1.
    // Note a radius of 0.0105 will generate a cleanly checking result.
    double radius = 0.1;
    TopoDS_Edge edgeShp = TopoDS::Edge(edgeShpMap(4));
    BRepFilletAPI_MakeFillet fillet(solidShp);
    fillet.Add(radius, edgeShp);
    fillet.Build();
    TopoDS_Shape newShp = fillet.Shape();

    // Check the result.
    BRepCheck_Analyzer fCheck(newShp);
    if (!fCheck.IsValid()) {
        bool nowImHere = true;
    }
TagsNo tags attached.
Test case number

Attached Files

  • cyl_box.brep (7,470 bytes)

Activities

dratner

2023-07-25 01:43

reporter  

cyl_box.brep (7,470 bytes)

Issue History

Date Modified Username Field Change
2023-07-25 01:43 dratner New Issue
2023-07-25 01:43 dratner Assigned To => oan
2023-07-25 01:43 dratner File Added: cyl_box.brep
2023-07-25 11:40 dpasukhi Target Version => Unscheduled
2023-07-25 11:40 dpasukhi Summary BRepFilletAPI_MakeFillet generates TopoDS_Solid with check-faults => Modeling Algorithms - BRepFilletAPI_MakeFillet generates TopoDS_Solid with check-faults
2023-07-25 11:40 dpasukhi Steps to Reproduce Updated
2023-08-01 15:33 dpasukhi Assigned To oan => akaftasev