puts "========" puts "OCC28030" puts "========" puts "" ######################################################################################################## # Algorith GeomLib_CheckCurveOnSurface takes too much time for Bspline curves with big number of knots ######################################################################################################## beziercurve c 4 0 0 0 1 1 0 2 1 0 3 0 0 convert c1 c set i 1 repeat 98 {insertknot c1 0.01*$i 1; incr i 1} mkedge e1 c1 prism p1 e1 0 0 1 explode p1 e dchrono cpu reset dchrono cpu start xdistef p1_3 p1 dchrono cpu stop puts [dchrono cpu show] set q1 [dchrono cpu show] regexp {CPU user time: ([-0-9.+eE]+) seconds} ${q1} full t1 convert c2 c set i 1 repeat 1000 {insertknot c2 0.00098*$i 1; incr i 1} mkedge e2 c2 prism p2 e2 0 0 1 explode p2 e dchrono cpu reset dchrono cpu start xdistef p2_3 p2 dchrono cpu stop puts [dchrono cpu show] set q2 [dchrono cpu show] regexp {CPU user time: ([-0-9.+eE]+) seconds} ${q2} full t2 set max_ratio 5 if { ${t2} > ${max_ratio}*${t1} } { puts "Elapsed time is too much - Faulty" } else { puts "Elapsed time is OK" }