Тонкости управления проектом AE через AE scipt

Правила форума
Уроки в плейлисте YouTube "Скрипты и выражения в After Effects"
https://www.youtube.com/playlist?list=PL-JXfMS5pUAAi0yrIenAiwMLUEE3t9woE
Canonical Link
Аватара пользователя

Автор темы
Any
Нуб
Нуб
Сообщения: 2
Зарегистрирован: 28 сен 2016, 17:32

Тонкости управления проектом AE через AE scipt

Сообщение #1 Any » 28 сен 2016, 17:52

Добрый день.
Может подскажите почему происходит следующая ситуация.

Пишу скрипт создания новой композиции через AE Scipt

Код: Выделить всё

app.project.items.addComp('CamRotation',1920,1080,1.0,2.0,25.0);

все работает нормально.
затем усложняю задачу и перед созданием новой композиции проверяю присутствует ли композиция с именем 'CamRotation в проекте

Код: Выделить всё

var ferstCompItem;
k=1;
//~ проверка наличия в проекте композиции с именем "CamRotation"
while (k <= app.project.numItems) {
  if (app.project.item(k) instanceof CompItem & app.project.item(k).name = "CamRotation"){
      ferstCompItem=app.project.item(k);
    alert(ferstCompItem.name);
      }
 k =k+1;
}
//~ создание композиции с именем "CamRotation"
  if (ferstCompItem == undefined ) {
      alert("Будет создана композиция поворота камеры ");
      app.project.save()
      app.newProject();
      app.project.items.addComp('CamRotation',1920,1080,1.0,2.0,25.0);
       }

при этом если в проекте уже присутствуют ДРУГИЕ композиции, то это скрипт переименовывает все композиции в проекте, а так же, создает новую с таким же именем ????




Аватара пользователя

aeplug
Санта
Санта
Сообщения: 2802
Зарегистрирован: 18 мар 2016, 23:20
Откуда: С Ютуба
Благодарил (а): 18 раз
Поблагодарили: 274 раза
Контактная информация:

Сообщение #2 aeplug » 28 сен 2016, 18:02

навскидку:
Если ты почитаешь про операции сравнения JavaScript Comparison and Logical Operators
http://www.w3schools.com/js/js_comparisons.asp
то увидишь, что надо использовать для этой операции ==, а не один =, который у тебя все в цикле и присваивает заново.
Видео уроки для After Effects http://www.youtube.com/AEPlug
Платные консультации по работе в программах

Аватара пользователя

Автор темы
Any
Нуб
Нуб
Сообщения: 2
Зарегистрирован: 28 сен 2016, 17:32

Дополнение к первому сообщению

Сообщение #3 Any » 28 сен 2016, 18:03

Sorry, в прошлом сообщении я написал не правильный код, там идет сохранение текущего проекта, и создание нового, (попытка обойти ДАННУЮ ТРУДНОСТЬ).

А первоначально скрипт выглядит так
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
var ferstCompItem;
k=1;
//~ проверка наличия в проекте композиции с именем "CamRotation"
while (k <= app.project.numItems) {
if (app.project.item(k) instanceof CompItem & app.project.item(k).name = "CamRotation"){
ferstCompItem=app.project.item(k);
alert(ferstCompItem.name);
}
k =k+1;
}
//~ создание композиции с именем "CamRotation"
if (ferstCompItem == undefined ) {
alert("Будет создана композиция повота камеры ");
//~ app.project.save()
//~ app.newProject();
app.project.items.addComp('CamRotation',1920,1080,1.0,2.0,25.0);
}
/////////////////////////////////////////////////////////////////////

Аватара пользователя

aeplug
Санта
Санта
Сообщения: 2802
Зарегистрирован: 18 мар 2016, 23:20
Откуда: С Ютуба
Благодарил (а): 18 раз
Поблагодарили: 274 раза
Контактная информация:

Сообщение #4 aeplug » 28 сен 2016, 22:48

и ответ тот же
не надо создавать кучу тем про одно и тоже
Видео уроки для After Effects http://www.youtube.com/AEPlug
Платные консультации по работе в программах


Вернуться в «Вопросы о выражениях и скриптах»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей