我有一个像这样实例化的弧:
Var arc = new createjs.Shape();
arc.graphics.beginStroke('#6d6e71')
.setStrokeStyle(16)
.arc(CONSTANTS.WIDTH/2, CONSTANTS.HEIGHT/2, 250, 0 + doorPosition, Math.PI/5 + doorPosition);
我想围绕中心旋转它,就像弧线的其余部分已完成一样。如果使用 setTransform 时圆包含在矩形中,它似乎围绕 0,0 点旋转:
arc.setTransform(0, 0, 1, 1, angle);
如有任何帮助,我们将不胜感激。
最佳答案
旋转围绕 (0,0) 点,因为即使您的圆弧绘制在 (CONSTANTS.WIDTH/2, CONSTANTS.HEIGHT/2),您的形状位置仍然是 (0,0)。相反,请将您的形状放在 :
之前var arc = new createjs.Shape();
arc.x = CONSTANTS.WIDTH/2;
arc.y = CONSTANTS.HEIGHT/2;
arc.graphics.beginStroke('#6d6e71')
.setStrokeStyle(16)
.arc(0,0, 250, 0 + doorPosition, Math.PI/5 + doorPosition);
如果你只想旋转弧线,你可以修改“rotation”属性而不是使用“setTransform”:
arc.rotation = angle;
这是一个示例:http://jsfiddle.net/JTqvJ/40/ ,希望这有帮助。
关于javascript - EaselJS中绕中心旋转圆弧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19920185/