0023622: IGES import produces invalid shape with parameter read.iges.bspline.continuity=0
authorRoman Lygin <roman.lygin@gmail.com>
Fri, 28 Dec 2012 14:11:58 +0000 (18:11 +0400)
committerRoman Lygin <roman.lygin@gmail.com>
Fri, 28 Dec 2012 14:11:58 +0000 (18:11 +0400)
Adding test cases for this fix

src/IGESToBRep/IGESToBRep_BasicSurface.cxx
tests/bugs/iges/bug23622_1 [new file with mode: 0755]
tests/bugs/iges/bug23622_2 [new file with mode: 0755]

index 6901b26..562a173 100755 (executable)
@@ -910,7 +910,6 @@ Handle(Geom_BSplineSurface)  IGESToBRep_BasicSurface::TransferBSplineSurface
   //  ===============================
   
   Standard_Integer icont = GetContinuity();
-  if ( icont < 1) return res;
   //Standard_Boolean isC1 = Standard_True, isC2 = Standard_True; //szv#4:S4163:12Mar99 not needed
 
   i = res->LastUKnotIndex();
diff --git a/tests/bugs/iges/bug23622_1 b/tests/bugs/iges/bug23622_1
new file mode 100755 (executable)
index 0000000..2d6890f
--- /dev/null
@@ -0,0 +1,32 @@
+puts "============"
+puts "OCC23622"
+puts "============"
+puts ""
+#######################################################################
+# IGES import produces invalid shape with parameter read.iges.bspline.continuity=0
+#######################################################################
+
+igesbrep [locate_data_file bug23622_seatmotor2.igs] s1 397
+
+renamevar s1_1 result
+
+nbshapes result
+
+set nb_v_good 4
+set nb_e_good 5
+set nb_w_good 1
+set nb_f_good 1
+set nb_sh_good 0
+set nb_sol_good 0
+set nb_compsol_good 0
+set nb_compound_good 0
+set nb_shape_good 11
+
+set tol [tolerance result ]
+regexp { *Tolerance +MAX=([-0-9.+eE]+)} ${tol} full max_tol
+puts "max_tol=${max_tol}"
+if {${max_tol} > 0.02} {
+  puts "Error : Bad tolerance"
+}
+
+set 3dviewer 1
diff --git a/tests/bugs/iges/bug23622_2 b/tests/bugs/iges/bug23622_2
new file mode 100755 (executable)
index 0000000..d597398
--- /dev/null
@@ -0,0 +1,34 @@
+puts "============"
+puts "OCC23622"
+puts "============"
+puts ""
+#######################################################################
+# IGES import produces invalid shape with parameter read.iges.bspline.continuity=0
+#######################################################################
+
+param read.iges.bspline.continuity 0
+
+igesbrep [locate_data_file bug23622_seatmotor2.igs] s1 397
+
+renamevar s1_1 result
+
+nbshapes result
+
+set nb_v_good 4
+set nb_e_good 5
+set nb_w_good 1
+set nb_f_good 1
+set nb_sh_good 0
+set nb_sol_good 0
+set nb_compsol_good 0
+set nb_compound_good 0
+set nb_shape_good 11
+
+set tol [tolerance result ]
+regexp { *Tolerance +MAX=([-0-9.+eE]+)} ${tol} full max_tol
+puts "max_tol=${max_tol}"
+if {${max_tol} > 0.02} {
+  puts "Error : Bad tolerance"
+}
+
+set 3dviewer 1