Анимация.разобратьПараметры
This commit is contained in:
@@ -26,29 +26,11 @@ function Анимация(элемент, параметры)
|
|||||||
this.запустить = function()
|
this.запустить = function()
|
||||||
{
|
{
|
||||||
this.идёт = false;
|
this.идёт = false;
|
||||||
|
if (!this.разобратьПараметры())
|
||||||
let п = параметры;
|
{
|
||||||
let воспроизведений = Number(п["воспроизведений"]);
|
|
||||||
let скорость = Number(п["скорость"]);
|
|
||||||
let к0 = Number(п["кадр.0"]);
|
|
||||||
let к1 = Number(п["кадр.1"]);
|
|
||||||
let диапазоны = this.разобратьДиапазоны();
|
|
||||||
|
|
||||||
if (
|
|
||||||
воспроизведений == null ||
|
|
||||||
скорость == null ||
|
|
||||||
к0 == null ||
|
|
||||||
к1 == null ||
|
|
||||||
диапазоны == null
|
|
||||||
) {
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.диапазоны = диапазоны;
|
|
||||||
this.воспроизведений = воспроизведений;
|
|
||||||
this.кадр = [к0, к1];
|
|
||||||
this.скорость = скорость;
|
|
||||||
|
|
||||||
let ширинаДиапазона = Math.abs(this.диапазоны[0][2] - this.диапазоны[0][0]);
|
let ширинаДиапазона = Math.abs(this.диапазоны[0][2] - this.диапазоны[0][0]);
|
||||||
let высотаДиапазона = Math.abs(this.диапазоны[0][3] - this.диапазоны[0][1]);
|
let высотаДиапазона = Math.abs(this.диапазоны[0][3] - this.диапазоны[0][1]);
|
||||||
let ширинаКадра = this.кадр[0];
|
let ширинаКадра = this.кадр[0];
|
||||||
@@ -60,7 +42,7 @@ function Анимация(элемент, параметры)
|
|||||||
this.поГоризонтали = кадровПоГоризонтали > кадровПоВертикали;
|
this.поГоризонтали = кадровПоГоризонтали > кадровПоВертикали;
|
||||||
this.номерКадра = -1;
|
this.номерКадра = -1;
|
||||||
this.колвоКадров = this.поГоризонтали ? кадровПоГоризонтали : кадровПоВертикали;
|
this.колвоКадров = this.поГоризонтали ? кадровПоГоризонтали : кадровПоВертикали;
|
||||||
this.началоДиапазона = [диапазоны[0][0], диапазоны[0][1]];
|
this.началоДиапазона = [this.диапазоны[0][0], this.диапазоны[0][1]];
|
||||||
this.номерИтерации = null;
|
this.номерИтерации = null;
|
||||||
this.идёт = true;
|
this.идёт = true;
|
||||||
};
|
};
|
||||||
@@ -76,25 +58,6 @@ function Анимация(элемент, параметры)
|
|||||||
this.номерИтерации = итерация;
|
this.номерИтерации = итерация;
|
||||||
};
|
};
|
||||||
|
|
||||||
this.разобратьДиапазон = function(номер)
|
|
||||||
{
|
|
||||||
var список = [];
|
|
||||||
for (var н = 0; н < 4; ++н)
|
|
||||||
{
|
|
||||||
let ключ = `диапазон.${номер}.${н}`;
|
|
||||||
let значение = Number(параметры[ключ]);
|
|
||||||
if (значение)
|
|
||||||
{
|
|
||||||
список.push(значение);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (список.length == 4)
|
|
||||||
{
|
|
||||||
return список;
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
};
|
|
||||||
|
|
||||||
this.разобратьДиапазоны = function()
|
this.разобратьДиапазоны = function()
|
||||||
{
|
{
|
||||||
let ключи = Object.keys(параметры).sort();
|
let ключи = Object.keys(параметры).sort();
|
||||||
@@ -130,6 +93,33 @@ function Анимация(элемент, параметры)
|
|||||||
return null;
|
return null;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
this.разобратьПараметры = function()
|
||||||
|
{
|
||||||
|
let п = параметры;
|
||||||
|
let воспроизведений = Number(п["воспроизведений"]);
|
||||||
|
let скорость = Number(п["скорость"]);
|
||||||
|
let к0 = Number(п["кадр.0"]);
|
||||||
|
let к1 = Number(п["кадр.1"]);
|
||||||
|
let диапазоны = this.разобратьДиапазоны();
|
||||||
|
|
||||||
|
if (
|
||||||
|
воспроизведений == null ||
|
||||||
|
скорость == null ||
|
||||||
|
к0 == null ||
|
||||||
|
к1 == null ||
|
||||||
|
диапазоны == null
|
||||||
|
) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
this.диапазоны = диапазоны;
|
||||||
|
this.воспроизведений = воспроизведений;
|
||||||
|
this.кадр = [к0, к1];
|
||||||
|
this.скорость = скорость;
|
||||||
|
|
||||||
|
return true;
|
||||||
|
};
|
||||||
|
|
||||||
// Конструктор.
|
// Конструктор.
|
||||||
this.запустить();
|
this.запустить();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user