Исходя из этого вопроса Скручивание цветов в Spark AR с помощью скрипта Теперь я пытаюсь сделать начальный и конечный цвета динамически ограниченными. Вероятно, я еще не поглотил всю концепцию реактивного программирования, но я попытался создать фабрику, чтобы значение было функцией ... но не работало или только с начальными значениями. Использование функции set и перезапуска анимации ничего не меняет. Что мне не хватает? Спасибо и всего наилучшего!
const pink = [.99, .682, .721, 1];
const blue = [.0094, .0092, .501, 1];
const yellow = [0.9372, .7725, 0, 1];
function ColorFactory() {
this.sourceCol = pink;
this.targetCol = blue;
this.set = function (_col1, _col2) {
this.sourceCol = _col1;
this.targetCol = _col2;
}
this.get = function (id) {
switch (id) {
case 'source': return this.sourceCol;
default: return this.targetCol;
}
}
}
var colfac = new ColorFactory();
const timeDriver = Animation.timeDriver(timeDriverParameters);
const rotSampler = Animation.samplers.easeInQuad(0, 35);
const alphaSampler = Animation.samplers.linear(1, 0);
const colSampler = Animation.samplers.linear(colfac.get('source'), colfac.get('target'));
const colorAnimation = Animation.animate(timeDriver, colSampler);
timedriver.start();
//doesnt make change anything, same colors as before:
colfac.set(blue, yellow);
timedriver.reset();
timedriver.start();
Так как же я могу сделать набор цветов динамичным c? Кто-нибудь? * * 1006