34 lines
671 B
Tcl
34 lines
671 B
Tcl
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
|
|
}
|
|
}
|