Я борюсь с функцией, которую я вызываю в setInterval.В частности, я хотел бы напомнить мою функцию рендеринга, которая рисует разные линии, начиная с разных точек (учитывая набор значений в массиве), но, поскольку я повторяю эти значения в цикле, кажется, что я могу запустить первый setInterval, когда i =0, но затем я не могу остановить его, а затем перезапустить, когда я = 1 ecc ... Как я могу решить эту проблему?
var degree= [2,0,3,1];
function choose_velocity(degree) {
let v0; // please give a better name
for(let i = 0;i < degree.length; i++) {
var difference = Math.abs(degree[i+1] - degree[i]);
if (difference === 1) { // always use triple equal (it will compare the type and the value as well
v0 = 25;
}
if (difference === 2) {
v0 = 36;
}
if (difference === 3) {
v0 = 44;
}
if (difference === 4) {
v0 = 51;
}
if (difference === 5) {
v0 = 57;
}
if (difference === 6) {
v0 = 62;
}
if (degree[i+1] - degree[i] < 0) {
invert_sign = true; // try to use camelCase convention in Javascript
}
StartInterval(0.2); // don't name your function with Pascal convention unless you're creating a Constructor function
console.log("entro convelocità", v0);
}
}
function StartInterval(frequency) {
var clear = setInterval(function() {
render( t += 0.03, clear, invert_sign);
}, frequency);
}
Код Codepen здесь
Я искал решение, данное в прошлом здесь, но я не мог решить мою проблему, поэтому, пожалуйста, будьте терпеливы .. В любом случае, спасибо заранее!:)