shearVobject

$group shearVobject x y x0 y0 LeftX mode
interactively shears object vertical

obj method group shearVobject {x y x0 y0 LeftX {mode parallel}} {
  if {[$self constraint shear]} then {
    set centerDot [my centerDot]
    lassign [$centerDot storeXY info] centerX centerY
    $centerDot shearVobject $x $y $x0 $y0 $LeftX $mode
    set dx [- [$centerDot cget -x] $centerX]
    set dy [- [$centerDot cget -y] $centerY]
    lappend transformL moveHorizontal $dx moveVertical $dy
    $self dots transform {*}$transformL
  } else {
    $self elements shearVobject $x $y $x0 $y0 $LeftX $mode
  }
}

© Wolf-Dieter Busch | Home | Sitemap | Urheber | A-Z