You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
varselProps=curComp.selectedProperties;//все выбранные свойства текущей композиции
10
+
varspeedRange=1000;//максимальное значение скорости
11
+
for(vari=0;i<selProps.length;i++){
12
+
if(selProps[i].propertyType===PropertyType.PROPERTY&&selProps[i].selectedKeys.length>0){//если свойство не конечное (!= PropertyType.PROPERTY) или если у него нет выбранных ключей, мы пропускаем его
13
+
varprop=selProps[i];
14
+
for(vary=0;y<prop.selectedKeys.length;y++){//запускаем цикл по выбранным ключам конкретного свойства
15
+
varinfluenceIn=getRandomInt(0.1,100);//получаем рандомное значение influence
16
+
varinfluenceOut=getRandomInt(0.1,100);
17
+
if(keyState.altKey){//если при начале выполнения скрипта был зажат альт, берем рандомное значение и для inSpeed, и для outSpeed
18
+
speedIn=getRandomInt(-speedRange,speedRange);
19
+
speedOut=getRandomInt(-speedRange,speedRange);
20
+
}elseif(keyState.shiftKey){//если при начале выполнения скрипта был зажат шифт, берем рандомное значение только для outSpeed
21
+
speedIn=0;
22
+
speedOut=getRandomInt(-speedRange,speedRange);
23
+
}elseif(keyState.ctrlKey||keyState.metaKey){//если при начале выполнения скрипта был зажат Control(win) или Command(mac), берем рандомное значение только для inSpeed
24
+
speedIn=getRandomInt(-speedRange,speedRange);
25
+
speedOut=0;
26
+
}else{//во всех других случаях outSpeed и inSpeed будут равны 0
27
+
speedIn=0;
28
+
speedOut=0;
29
+
}
30
+
vareaseIn=newKeyframeEase(speedIn,influenceIn);//создаем два новых объекта KeyframeEase, встроенного в AE, отдельно для входящей Interpolation и исходящей
if(!prop.isSpatial&&(prop.value.length===3)){//если свойство не является пространственным (spatial) и его значение (value) представлено массивом из 3-х чисел
33
+
prop.setTemporalEaseAtKey(prop.selectedKeys[y],[easeIn,easeIn,easeIn],[easeOut,easeOut,easeOut]);//назначаем ему временной изинг на выбранном ключе из массивов включающих 3 KeyframeEase объекта
34
+
}elseif(!prop.isSpatial&&(prop.value.length===2)){//если свойство не является пространственным (spatial) и его значение (value) представлено массивом из 2-х чисел
35
+
prop.setTemporalEaseAtKey(prop.selectedKeys[y],[easeIn,easeIn],[easeOut,easeOut]);//назначаем ему временной изинг на выбранном ключе из массивов включающих 2 KeyframeEase объекта
36
+
}else{//если это пространственное свойство или если его значение представлено числом,
37
+
prop.setTemporalEaseAtKey(prop.selectedKeys[y],[easeIn],[easeOut]);//назначаем ему временной изинг на выбранном ключе из МАССИВОВ включающих 1 KeyframeEase объекта.
38
+
//prop.setTemporalEaseAtKey(prop.selectedKeys[y], easeIn, easeOut) - не выполнится, будет ошибка
0 commit comments