23.12.2019, 16:09
|
Интересующийся
|
|
Регистрация: 23.12.2019
Сообщений: 11
|
|
время анимации
есть команда сортировки которая размещает объекты в зависимости от изменения значения, можно ли сделать так чтобы перемещение объекта происходило не мгновенно а плавно?
var layerCounts = [comp("1").layer("Слой-фигура 2").effect("Элемент управления точкой")("Точка")[0], comp("2").layer("Слой-фигура 2").effect("Элемент управления точкой")("Точка")[0], comp("3").layer("Слой-фигура 2").effect("Элемент управления точкой")("Точка")[0], comp("4").layer("Слой-фигура 2").effect("Элемент управления точкой")("Точка")[0]];
arr = layerCounts.sort(function(a, b) {return b - a});
var el1 = thisComp.layer("Слой-фигура 2").effect("Элемент управления точкой")("Точка")[0];
temp = ((arr.indexOf(el1))+1)*68-43;
[80, temp]
то есть чтоб изменение значения temp происходило плавно
|
|
23.12.2019, 16:25
|
|
Профессор
|
|
Регистрация: 20.12.2009
Сообщений: 1,714
|
|
Сообщение от pavelxodos
|
то есть чтоб изменение значения temp происходило плавно
|
Я правильно понимаю, что у вас эти значения [80, temp] используются в качестве значении для CSS-свойств top, left? Или transform? Если оно так и есть, вы можете использовать, например, стиль transition: 500ms; на объекте!
|
|
23.12.2019, 16:36
|
Интересующийся
|
|
Регистрация: 23.12.2019
Сообщений: 11
|
|
используется для управления transform.position, если можно скажите конкретней как привязать этот стиль и время к моему коду
p. s. я не совсем программист а этот код собирал не один час из того что находил в интернете
Последний раз редактировалось pavelxodos, 23.12.2019 в 17:00.
|
|
26.12.2019, 12:17
|
Интересующийся
|
|
Регистрация: 23.12.2019
Сообщений: 11
|
|
Malleys,
так можно только в css а мне нужно на js
|
|
26.12.2019, 12:33
|
|
Профессор
|
|
Регистрация: 20.12.2009
Сообщений: 1,714
|
|
Сообщение от pavelxodos
|
так можно только в css а мне нужно на js
|
Так экспериментируйте со временем... откуда я могу знать, что у вас там...
var layerCounts = [
comp("1").layer("Слой-фигура 2").effect("Элемент управления точкой")("Точка")[0],
comp("2").layer("Слой-фигура 2").effect("Элемент управления точкой")("Точка")[0],
comp("3").layer("Слой-фигура 2").effect("Элемент управления точкой")("Точка")[0],
comp("4").layer("Слой-фигура 2").effect("Элемент управления точкой")("Точка")[0]
];
var arr = layerCounts.sort(function(a, b) {
return b - a
});
var el1 = thisComp.layer("Слой-фигура 2").effect("Элемент управления точкой")("Точка")[0];
var from = 68 * layerCounts.indexOf(el1) + 25;
var to = 68 * arr.indexOf(el1) + 25;
[80, (to - from) * Math.min(1, 0.1 * time) + from]
|
|
26.12.2019, 13:20
|
Интересующийся
|
|
Регистрация: 23.12.2019
Сообщений: 11
|
|
Malleys,
var from = transform.position[1];
var to = 68 * arr.indexOf(el1) + 25;
[80, (to - from) * Math.min(1, 0.1 * time) + from]
проблема в том что и from и to динамические, то есть перемещение объекта которому я пытаюсь задать координаты, может происходить n-ое количество раз, пытался взять разницу разделить на количество кадров в секунду и задать интервал - тоже не получилось
var z = from
var r = (to - from)/25;
let timer = setInterval(function() {
z += r
}, 20);
[80, z]
|
|
26.12.2019, 17:07
|
Интересующийся
|
|
Регистрация: 23.12.2019
Сообщений: 11
|
|
Malleys,
можете хотя бы сказать это вообще возможно сделать? а то уже несколько дней безрезультатных поисков по сети
|
|
26.12.2019, 18:13
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,123
|
|
Сообщение от pavelxodos
|
несколько дней безрезультатных поисков
|
похоже один Malleys, понимает на каком наречии js вы пишите.
|
|
26.12.2019, 18:26
|
Интересующийся
|
|
Регистрация: 23.12.2019
Сообщений: 11
|
|
рони,
программа афтер эфектс скрипты пишу чтоб не выполнять одно и то же действие много раз, я думал язык javascript один
var z = from
var r = (to - from)/25;
let timer = setInterval(function() {
z += r
}, 20);
[80, z]
z значение (координата) изменяется от from к to
цель: добиться чтоб значение z изменялось не мгновенно после смены to а за одну секунду (как бы плавно) значение to тоже может меняться во времени
|
|
|
|