如何使用svg.js库在动画持续时间内从一个角度旋转到另一个角度?

时间:2019-02-11 12:17:40

标签: javascript animation svg rotation

我正在使用svg.js库进行旋转。我希望旋转从一个角度发生到另一个角度。旋转之间我需要500毫秒的动画持续时间。在浏览器边缘,旋转不是沿圆形方向进行,而是直接移动到下一个角度。我已经将旋转点定义为50,50。

我已经尝试过从svg.js库进行旋转和转换旋转方法,但是我还没有实现从当前角度到单击事件发生的角度的旋转。以下是单击事件后的代码,其中角度定义了旋转应移动和停止的下一个角度。

function moveHotspotPointer(angle) {
    if (currentBrowser == "ie" || currentBrowser == "edge") {
        var hp = SVG.get('hotspot-pointer');
        hp.animate(500).rotate(angle, 50, 50);

        /* hp.animate(500).transform({ rotation: 255, cx: 50, cy: 50 }).transform({ rotation: angle,  cx: 50, cy: 50 }) */

    }
}

预期结果:旋转应该从一个角度发生到另一个角度并持续一定时间。

实际结果:旋转发生在完整的刻度盘上,然后到达目标角度而不是角度到角度。

0 个答案:

没有答案