5 restore [locate_data_file OCC311.draw] c
6 #### checkshape c # - not a topological shape
9 set ulast 6.2831854071795897
11 segment c ${ufirst} ${ulast}
15 set list [split ${dumpc} "\n\t"]
16 set listLength [llength ${list}]
17 if { ${listLength} < 25 } {
18 puts "OCC311 - Error : listLength= ${listLength}"
21 regexp { +Degree +([-0-9.+eE]+), +([-0-9.+eE]+) +Poles, +([-0-9.+eE]+) +Knots} $dumpc full DegreeNumber PolesNumber KnotsNumber
23 set Knots [regexp -all -inline { +([-0-9.+eE]+ +: +[-0-9.+eE]+ +[-0-9.+eE]+)} $dumpc]
24 regexp { *[-0-9.+eE]+ +: +([-0-9.+eE]+) +[-0-9.+eE]+} [lindex $Knots 1] full FirstKnot
25 regexp { *[-0-9.+eE]+ +: +([-0-9.+eE]+) +[-0-9.+eE]+} [lindex $Knots [llength $Knots]-1] full LastKnot
27 set delta_first [expr abs(${FirstKnot} - ${ufirst}) / ${ufirst} * 100]
28 set delta_last [expr abs(${LastKnot} - ${ulast}) / ${ulast} * 100]
32 puts "FirstKnot = ${FirstKnot}"
33 puts "LastKnot = ${LastKnot}"
35 if { ${delta_first} > ${maxdelta} } {
36 puts "OCC311 - Error : delta_first = ${delta_first}"
38 if { ${delta_last} > ${maxdelta} } {
39 puts "OCC311 - Error : delta_last = ${delta_last}"
42 if { ${delta_first} <= ${maxdelta} && ${delta_last} <= ${maxdelta} } {