【问题标题】:Rotate shape around the center without effecting its location围绕中心旋转形状而不影响其位置
【发布时间】:2019-02-23 16:43:09
【问题描述】:

我想在这里实现的是在 x:0, y:0 位置创建一个形状

并围绕其中心旋转形状 不改变 regX 和 regY

有没有办法在 CreateJS 中做到这一点,

我想要从左上角移动形状但同时从中心旋转的效果

https://jsfiddle.net/x5nht1am/20/

shape.regX=25;
shape.regY=25;
createjs.Tween.get(shape).to({rotation: 90} , 4000)
//then at the same time
shape.regX=0;
shape.regY=0;
createjs.Tween.get(shape).to({x: 100,y:100}, 4000)

有没有办法传递 regX&Y 以使补间能够仅在此操作中使用它?

【问题讨论】:

  • 你总是可以把它放在一个容器中,然后旋转容器... EaselJS 对象不能有单独的枢轴点和注册点。
  • @Lanny 有趣的想法,我会检查并回复你
  • @Lanny 谢谢伙计,它根据您的解决方案工作。请将其添加为答案,以便我将其标记为正确。

标签: createjs tweenjs


【解决方案1】:

EaselJS 对象不能有单独的枢轴点和注册点。

在处理单独的注册点(内容从哪里绘制)和枢轴点(内容从哪里旋转和缩放)时,一个简单的解决方案是将您的对象包装在一个 Container 实例中,然后管理位置和旋转分开。

var cont = new createjs.Container();
cont.addChild(myShape);

这应该会有所帮助。矩阵数学肯定还有其他方法,但这是我能想到的最简单的解决方案。

干杯,

【讨论】:

    猜你喜欢
    • 2013-12-18
    • 1970-01-01
    • 2018-05-17
    • 1970-01-01
    • 1970-01-01
    • 2014-04-21
    • 2015-11-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多