EASELjs使用transformMatrix

时间:2015-09-08 09:05:05

标签: javascript draggable easeljs

我有疑问请纠正我,经过一些研究后我找不到任何相关内容。如果有的话,你可以给我一个答案。具体来说,这是另一个post的延续。

将变换矩阵应用于容器元素后,没有拖动动画。我在阅读documentation

后想出来了
  

transformMatrix Matrix2D

     

继承自DisplayObject:transformMatrix:318

     

如果设置,则定义此显示对象的变换,覆盖所有其他变换属性(x,y,旋转,缩放,倾斜)。

     

默认值:null

用于拖动我使用 x y 目标对象的属性

dragger.on("pressmove", function (evt) {
    evt.currentTarget.x = evt.stageX;
    evt.currentTarget.y = evt.stageY;
    canvasElement.update();
});

所以现在我想我必须更改矩阵值才能制作拖动动画。还是有另一种解决方案?

这是带有转换矩阵的容器的fiddle

1 个答案:

答案 0 :(得分:0)

右。如果您应用transformMatrix,它将覆盖其他转换属性。查看代码最明显的解决方案是不使用矩阵,并设置xy属性。

https://jsfiddle.net/n55jk201/11/

另一种选择是使用Matrix2D.translate(),或直接在矩阵上设置tx / ty

https://jsfiddle.net/n55jk201/12/

显然你可以做很多代码清理工作,但希望这能传达出一般的想法。