puts "============" puts "OCC884" puts "============" puts "" ################################################### ## ShapeFix_Wire::FixSelfIntersection does not fix 3d curves on planes ################################################### pload QAcommands restore [locate_data_file OCC884.brep] a OCC884 res a 1.1 1.1 explode res e mkplane p res pcurve c2d res_1 p mkcurve c3d res_1 set list_3 [length $c3d] set list_4 [length $c2d] # len2 is the length of 3d curve regexp {The length c3d is +([-0-9.+eE]+)} $list_3 full len2 # len1 is the length of 2d curve regexp {The length c2d is +([-0-9.+eE]+)} $list_4 full len1 set percent_max 0.1 set percent [expr abs(${len2} - ${len1}) / double(${len1}) * 100.] puts "len1 = ${len1}" puts "len2 = ${len2}" puts "percent = ${percent}" if {${percent} > ${percent_max}} { puts "OCC884: Error" } else { puts "OCC884: OK" }