puts "TODO OCC12345 ALL: Error : Projection of a 3D point on surface using GeomAPI_ProjectPointOnSurf works incorrect" puts "========================" puts " OCC593 " puts "========================" puts "" ############################################################# ## Projection of a 3D point on surface using GeomAPI_ProjectPointOnSurf works incorrect ############################################################# restore [locate_data_file OCC593.brep] ff48 set tolerance [maxtolerance ff48] regexp { +Face +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tolerance full MaxFaceTolerance vertex vv -19.561252535222 17.89876466186 71.408126285268 distmini dd vv ff48 regexp {([-0-9.+eE]+)$} [dump dd_val] full ddval mksurface gs ff48 proj gs -19.561252535222 17.89876466186 71.408126285268 set pp1 [lindex [dump ext_1] 9] set pp2 [lindex [dump ext_1] 10] set err [expr abs ([expr $pp2 - $pp1])] puts [format "MaxFaceTolerance = %s" $MaxFaceTolerance] puts [format "MaxDistance = %s" $err] if { $err < $MaxFaceTolerance } { puts "OCC593 (case 1) : Projection of a 3D point on surface using GeomAPI_ProjectPointOnSurf works properly" } else { puts "Error : Projection of a 3D point on surface using GeomAPI_ProjectPointOnSurf works incorrect" } copy ext_1 oldext_1 puts "" puts "***** Another example: *****" svalue gs 0.56 0.4 x y z point p x y z proj gs x y z set p1 [lindex [dump ext_1] 9] set p2 [lindex [dump ext_1] 10] set err1 [expr abs ([expr $p2 - $p1])] puts [format "MaxFaceTolerance = %s" $MaxFaceTolerance] puts [format "MaxDistance = %s" $err1] if { $err1 < $MaxFaceTolerance } { puts "OCC593 (case 2) : Projection of a 3D point on surface using GeomAPI_ProjectPointOnSurf works properly" } else { puts "Error : Projection of a 3D point on surface using GeomAPI_ProjectPointOnSurf works incorrect" }