Текущие версии программ: After Effects CC 2017 v14.0.1  Premiere Pro CC 2017 v11.0.1

не стесняйтесь создавать новые темы для новых вопросов

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

Вопросы связанные с работой в программе
Canonical Link

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

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

Сообщение 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
Санта
Санта
Сообщения: 850
Зарегистрирован: 18 мар 2016 23:20
Откуда: С Ютуба
Благодарил (а): 2 раза
Поблагодарили: 82 раза

Сообщение 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

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

Сообщение 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
Санта
Санта
Сообщения: 850
Зарегистрирован: 18 мар 2016 23:20
Откуда: С Ютуба
Благодарил (а): 2 раза
Поблагодарили: 82 раза

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

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


Вернуться в «Adobe After Effects»

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

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