|
@@ -30,32 +30,36 @@ function Анимация(элемент, параметры) |
|
|
{ |
|
|
{ |
|
|
return; |
|
|
return; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
let ширинаДиапазона = Math.abs(this.диапазоны[0][2] - this.диапазоны[0][0]); |
|
|
|
|
|
let высотаДиапазона = Math.abs(this.диапазоны[0][3] - this.диапазоны[0][1]); |
|
|
|
|
|
let ширинаКадра = this.кадр[0]; |
|
|
|
|
|
let высотаКадра = this.кадр[1]; |
|
|
|
|
|
let кадровПоГоризонтали = Math.floor(ширинаДиапазона / ширинаКадра); |
|
|
|
|
|
let кадровПоВертикали = Math.floor(высотаДиапазона / высотаКадра); |
|
|
|
|
|
|
|
|
|
|
|
this.номерВоспроизведения = 0; |
|
|
|
|
|
this.поГоризонтали = кадровПоГоризонтали > кадровПоВертикали; |
|
|
|
|
|
this.номерКадра = -1; |
|
|
|
|
|
this.колвоКадров = this.поГоризонтали ? кадровПоГоризонтали : кадровПоВертикали; |
|
|
|
|
|
this.началоДиапазона = [this.диапазоны[0][0], this.диапазоны[0][1]]; |
|
|
|
|
|
this.номерИтерации = null; |
|
|
|
|
|
|
|
|
this.подготовитьДиапазон(0); |
|
|
|
|
|
this.номерОтрисовки = null; |
|
|
this.идёт = true; |
|
|
this.идёт = true; |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
this.обновить = function(время) |
|
|
this.обновить = function(время) |
|
|
{ |
|
|
{ |
|
|
let итерация = Math.floor(время / this.скорость); |
|
|
let итерация = Math.floor(время / this.скорость); |
|
|
if (this.номерИтерации == итерация) |
|
|
|
|
|
|
|
|
if (this.номерОтрисовки == итерация) |
|
|
{ |
|
|
{ |
|
|
return; |
|
|
return; |
|
|
} |
|
|
} |
|
|
this.анимировать(); |
|
|
this.анимировать(); |
|
|
this.номерИтерации = итерация; |
|
|
|
|
|
|
|
|
this.номерОтрисовки = итерация; |
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
this.подготовитьДиапазон = function(н) |
|
|
|
|
|
{ |
|
|
|
|
|
let ширинаДиапазона = Math.abs(this.диапазоны[н][2] - this.диапазоны[н][0]); |
|
|
|
|
|
let высотаДиапазона = Math.abs(this.диапазоны[н][3] - this.диапазоны[н][1]); |
|
|
|
|
|
let ширинаКадра = this.кадр[0]; |
|
|
|
|
|
let высотаКадра = this.кадр[1]; |
|
|
|
|
|
let кадровПоГоризонтали = Math.floor(ширинаДиапазона / ширинаКадра); |
|
|
|
|
|
let кадровПоВертикали = Math.floor(высотаДиапазона / высотаКадра); |
|
|
|
|
|
|
|
|
|
|
|
this.номерВоспроизведения = 0; |
|
|
|
|
|
this.поГоризонтали = кадровПоГоризонтали > кадровПоВертикали; |
|
|
|
|
|
this.номерКадра = -1; |
|
|
|
|
|
this.колвоКадров = this.поГоризонтали ? кадровПоГоризонтали : кадровПоВертикали; |
|
|
|
|
|
this.началоДиапазона = [this.диапазоны[н][0], this.диапазоны[н][1]]; |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
this.разобратьДиапазоны = function() |
|
|
this.разобратьДиапазоны = function() |
|
|