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
  }
}
