diff --git a/src/BRepMesh/BRepMesh_IncrementalMesh.cxx b/src/BRepMesh/BRepMesh_IncrementalMesh.cxx index 8593287562..7777764eee 100644 --- a/src/BRepMesh/BRepMesh_IncrementalMesh.cxx +++ b/src/BRepMesh/BRepMesh_IncrementalMesh.cxx @@ -246,7 +246,8 @@ void BRepMesh_IncrementalMesh::discretizeFreeEdges() BRepAdaptor_Curve aCurve(aEdge); GCPnts_TangentialDeflection aDiscret(aCurve, aCurve.FirstParameter(), - aCurve.LastParameter(), myAngle, aEdgeDeflection, 2, myMinSize); + aCurve.LastParameter(), myAngle, aEdgeDeflection, 2, + Precision::PConfusion(), myMinSize); Standard_Integer aNodesNb = aDiscret.NbPoints(); TColgp_Array1OfPnt aNodes (1, aNodesNb); diff --git a/tests/bugs/mesh/bug26532 b/tests/bugs/mesh/bug26532 new file mode 100644 index 0000000000..6ab8bef745 --- /dev/null +++ b/tests/bugs/mesh/bug26532 @@ -0,0 +1,28 @@ +puts "========" +puts "OCC26532" +puts "========" +puts "" +####################################################################### +# Meshing of edge with minSize parameter leads to incorrect result +####################################################################### + +restore [locate_data_file bug26533_aal2.brep] a + +vinit +vdisplay a +vfit +vdump ${imagedir}/${casename}_1.png + +# with min size +# => ugly curve +vclear +incmesh a 0.3 -min 0.06 +vdisplay a +vdump ${imagedir}/${casename}_2.png + +# without min size +# => nice curve +vclear +incmesh a 0.3 +vdisplay a +vdump ${imagedir}/${casename}_3.png