0026532: Meshing of edge with minSize parameter leads to incorrect result
authoroan <oan@opencascade.com>
Thu, 17 Sep 2015 11:58:40 +0000 (14:58 +0300)
committerbugmaster <bugmaster@opencascade.com>
Thu, 17 Sep 2015 14:01:39 +0000 (17:01 +0300)
Fix missed parameter.

Test case for issue CR26532

src/BRepMesh/BRepMesh_IncrementalMesh.cxx
tests/bugs/mesh/bug26532 [new file with mode: 0644]

index 5a826da..8347b70 100644 (file)
@@ -244,7 +244,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 (file)
index 0000000..6ab8bef
--- /dev/null
@@ -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