Require Class/basicOffsetSurface

basicOffsetSurface Subclass OffsetSurface {
  Var "domain {[basicOffsetSurface get domain]}"
  Method <Domain> {domain} {set [var domain] $domain}
  ClassVar "Domain-template {{[basicOffsetSurface get domain]}}"

  Var "offset [basicOffsetSurface get offset]"
  Method <Offset> {distance} {set [var offset] $distance}
  ClassVar "Offset-template [basicOffsetSurface get offset]"

  ClassVar {script-templates {Domain Offset}}

  Method ScriptBegin {} {
    Vars domain offset
    Parent ScriptBegin
    set domain [Parent get domain]
    set offset [Parent get offset]
  }
}

OffsetSurface Register
