如何使服务器端转动

时间:2019-09-15 14:19:08

标签: javascript node.js express socket.io

我收到了涉及转动方向盘的作业。该圆圈由以4个像素的间隙分隔的54个球组成。任务是绘制分配旋转度的54个数字之一。然后在15秒内,车轮必须转两圈。那是720度+绘制的值。

这是“车轮旋转系统”。使用Node.js为客户端生成变量。我正在使用Socekt.IO向客户端发送消息。

//这是数字的旋转度值

function Rotate(data, last);
let INITIAL_VALUE = last;
let FINAL_RESULT = data += 720 - INITIAL_VALUE;
const FRAME_PER_SECOND = 120;
const DURATION_WHEEL = 15000;

setTimeout(function(){

    var start = new Date().getTime();
    var timer = setInterval(function() {
        var CURRENT_TIME = new Date().getTime() - start;
        x = easeOutQuart(CURRENT_TIME, INITIAL_VALUE, FINAL_RESULT - INITIAL_VALUE, DURATION_WHEEL);
        io.sockets.emit('angle', x % 360);

        if (CURRENT_TIME >= DURATION_WHEEL) {   
            var cut = x % 360;
            io.sockets.emit('angle', cut);

                        LAST_ANGLE = cut;

            clearInterval(timer);
            EndRound();
        }
    }, 1000 / FRAME_PER_SECOND);
}, 500);
}

function easeOutQuart(t, b, c, d) {
    t /= d;
    return -c * t*(t-2) + b;
}

我希望包括绘制值在内的两个回合。时不时地,我不会整整一转。

0 个答案:

没有答案