旋转后Kineticjs dragBoundFunc缩放句柄

时间:2013-05-06 14:51:47

标签: javascript html5-canvas kineticjs

我有缩放手柄,可以让你缩放对象。 角落中的手柄有dragbehavior = 0上部和下部1以及左侧和右侧2

dragBoundFunc: function(pos) {

            if(dragbehavior == 0) {var posx = pos.x; var posy = pos.y;}
            if(dragbehavior == 1) {var posx = this.getAbsolutePosition().x; var posy = pos.y;}
            if(dragbehavior == 2) {var posx = posx; var posy = this.getAbsolutePosition().y;}
              return {
                x: posx,
                y: posy
              }
          },

这非常有效,当我旋转一个物体时,角落仍然很好,但是旋转后侧面的处理者表现得很奇怪。我知道我需要一些旋转翻译(sin / cos),但我不知道如何实现它。这是因为大多数示例使用您想要旋转的对象本身的某个方向,但这是使用舞台的坐标。

enter image description here enter image description here

我的鼠标位于箭头处,但是矩形较大,缩放手柄不在矩形位置。如果我尝试在矩形的末尾执行光标,则rect会在整个屏幕上拉伸acros。

enter image description here

1 个答案:

答案 0 :(得分:0)

旋转是否应用于包含形状和处理程序的组?