Выражения. Оператор % After Effects

Оператор % в JavaScript (и, соответственно, в выражениях After Effects) — это оператор модуля (или остаток от деления). Он возвращает остаток от деления одного числа на другое. В контексте After Effects он часто используется для создания циклических или повторяющихся эффектов.

Список эффектов и не только After Effects
Выражения After Effects список

Синтаксис: a % b
a — делимое (число, которое делим).
b — делитель (число, на которое делим).
Результат — остаток от деления a на b.

Например:
7 % 3 = 1, потому что 7 делится на 3 два раза (2 × 3 = 6), а остаток равен 1.
10 % 4 = 2, потому что 10 делится на 4 два раза (2 × 4 = 8), а остаток равен 2.
5 % 5 = 0, потому что 5 делится на 5 ровно, без остатка.
1 % 2 = 1 1 делится на 2 ноль раз (целочисленное деление: 1 ÷ 2 = 0), так как 2 × 0 = 0. Остаток: 1 — 0 = 1
7 % 0.3 = 0,1 Целочисленное деление: 7 ÷ 0.3 = 23.333… (7 делим на 0.3, получаем примерно 23.333).
Берем целую часть: Math.floor(7 / 0.3) = 23.
Умножаем делитель на целую часть: 0.3 × 23 = 6.9.
Вычисляем остаток: 7 — 6.9 = 0.1.

time % 2;

Для создания повторяющегося изменения свойства слоя

//Выражение для свойства Положение
var cycle = time % 2; // Цикл длительностью 2 секунды
x = transform.position[0] * Math.sin(cycle);
y = transform.position[1];[x, y];

//Выражение для свойства Положение
var cycle = time % 2; // Цикл длительностью 2 секунды
x = transform.position[0] * random(cycle);
y = transform.position[1];[x, y];

//Выражение для свойства Положение
var cycle = time % 2; // Цикл длительностью 2 секунды
x = transform.position[0] + 100 * random(cycle);
y = transform.position[1];[x, y];

//Выражение для свойства Масштаб
var cycle = time % 2; // Цикл длительностью 2 секунды
x = transform.position[0] + 200 * Math.cos(cycle);
y = transform.position[1];[x, y];

//Выражение для свойства Поворот
var cycle = time % 2; // Цикл длительностью 2 секунды
transform.rotation + 360 * Math.cos(cycle);

Для параметров, которые должны оставаться в определенном диапазоне, например, шкала от 0 до 100:

var Scale = (50 + time * 10) % 100; // Шкала циклически меняется от 0 до 100[Scale, Scale];

Для чередования между состояниями (например, включено/выключено):

if (Math.floor(time) % 2 == 0) {
100;
}else{
0;
} // Чередует значение каждую секунду