namespace eval nvstep { } proc nvstep::trans {value {val2 none}} { if {$value eq "inv"} { if {$val2 > 1.9} { return [expr $val2 * 100 - 180] } if {$val2 > 1.0} { return [expr 1.0 / (2 - $val2)] } return $val2 } if {$val2 eq "none"} { if {$value > 10} { return [expr ($value + 180) * 0.01] } if {$value > 1} { return [expr 2 - 1.0 / $value] } return $value } error "illegal arguments: nvstep::trans $value $val2" } proc nvstep::out {motpath {value none}} { if {$value eq "none"} { return [hvali $motpath] } if {[hgetpropval $motpath status] ne "run"} { hset $motpath $value } }