1puts "========" 2puts "0030869: Modeling Data - BRepAdaptor_CompCurve incorrectly evaluates the boundary points" 3puts "========" 4puts "" 5 6pload QAcommands 7 8# create wire consisting of a single edge based on a trimmed circle 9circle c 1 0 0 0 -1 0 0 0 -1 1 10trim c c 1.5707963267949 4.71238898038469 11mkedge e c 12orientation e R 13wire w e 14 15# compute boundary points using BRepAdaptor_CompCurve 16set log [OCC30869 w] 17 18set lines [split $log "\n"] 19 20if {![regexp {([-0-9.+eE]*): point ([-0-9.+eE]*) ([-0-9.+eE]*) ([-0-9.+eE]*), tangent ([-0-9.+eE]*) ([-0-9.+eE]*) ([-0-9.+eE]*)} [lindex $lines 0] full t1 x1 y1 z1 dx1 dy1 dz1]} { 21 puts "Error: first point is not computed" 22} 23 24if {![regexp {([-0-9.+eE]*): point ([-0-9.+eE]*) ([-0-9.+eE]*) ([-0-9.+eE]*), tangent ([-0-9.+eE]*) ([-0-9.+eE]*) ([-0-9.+eE]*)} [lindex $lines 1] full t2 x2 y2 z2 dx2 dy2 dz2]} { 25 puts "Error: last point is not computed" 26} 27 28# compute reference values 29 30# inverse the curve as the edge in the wire is reversed 31circle ci 1 0 0 0 1 0 0 0 -1 1 32trim ci ci 1.5707963267949 4.71238898038469 33 34cvalue ci 1.5707963267949 x1_ref y1_ref z1_ref dx1_ref dy1_ref dz1_ref 35cvalue ci 4.71238898038469 x2_ref y2_ref z2_ref dx2_ref dy2_ref dz2_ref 36 37# compare the values 38set tol_abs 1.e-7 39set tol_rel 1.e-7 40 41checkreal first_pnt_x $x1 [dval x1_ref] $tol_abs $tol_rel 42checkreal first_pnt_y $y1 [dval y1_ref] $tol_abs $tol_rel 43checkreal first_pnt_z $z1 [dval z1_ref] $tol_abs $tol_rel 44 45checkreal first_tgt_x $dx1 [dval dx1_ref] $tol_abs $tol_rel 46checkreal first_tgt_y $dy1 [dval dy1_ref] $tol_abs $tol_rel 47checkreal first_tgt_z $dz1 [dval dz1_ref] $tol_abs $tol_rel 48 49checkreal last_pnt_x $x2 [dval x2_ref] $tol_abs $tol_rel 50checkreal last_pnt_y $y2 [dval y2_ref] $tol_abs $tol_rel 51checkreal last_pnt_z $z2 [dval z2_ref] $tol_abs $tol_rel 52 53checkreal last_tgt_x $dx2 [dval dx2_ref] $tol_abs $tol_rel 54checkreal last_tgt_y $dy2 [dval dy2_ref] $tol_abs $tol_rel 55checkreal last_tgt_z $dz2 [dval dz2_ref] $tol_abs $tol_rel 56