Функции, заготовки для значений — КиберПедия 

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...

Функции, заготовки для значений

2019-11-19 288
Функции, заготовки для значений 0.00 из 5.00 0 оценок
Заказать работу

e val –функция, которая исполняет текст как e xpression (при управлении экспрешеном с помощью Text Layer)

minVal

min

maxVal

startVal

endVal

 

 

▪ цикл for

for (var i = 0; i<marker.numKeys; i++) задаем переменную i, которая будет изменяться от, например, нуля и цикл будет крутиться до того момента, когда i, например, меньше количества маркеров на каждом шаге i, например, увеличивается на 1 { }

 

▪ цикл while

while (условие для цикла) { блок действий, который будет выполняться снова и снова, пока условие истинно, или пока в блоке действий не встретится специальное слово break, которое прерывает цикл; }
этот цикл пересчитывается каждый кадр, поэтому его лучше не использовать, особенно тот, который не прерывается (т.к. Ае полетит, сглючит)

 

 

▪ if/else

● if (true) { … } else value; После else часто пишут просто value  
* проверить, является ли time больше 10 и в то же время меньше или равно 20: if ((time > 10) && (time <= 20)) { …}  
Пример на Opacity для выбора вида одной из звезды (группы внутри Shape Layer, на котором fx Slider Control «starType» в качестве переключателя). На Opacity группы первой звезды: starType = effect("starType")("Slider"); if (starType==1) {100} else 0 На Opacity остальных групп аналогично, меняя цифру 1 на 2, 3, 4, т.д.

 

 

▪ УСЛОВНЫЙ оператор "?"

Оператор «?» аналогичен простейшей конструкции «if/ else»: - действие1 – для случая, если условие истинно - действие2 – для случая, если ложно (index%2 == 1)? inv = 1: inv = -1;

 

 

▪ switch

 

▪ try/catch

если в проекте много выражений с ошибками, то эта конструкция делает так, чтобы не выскакивало множество окошек с сообщениями об ошибках

try{

//экспрешен

} catch(err) {value} // или вместо value, например, thisProperty.valueAtTime(time-inPoint)

 

 

Layer à Space Transforms

* у композиции своя система координат

* и у каждого слоя – своя система координат

Координатная система слоя понятна на примере 3d слоя:

 

* увеличение слоя по Scale НЕ увеличивает его координатную сетку

 

▪ fromComp

чтобы использовать /привязываться к координатам другого слоя (например, при создании лупы - на Bulge Center в fx Bulge, когда двигаем картинку, которую увеличиваем, двигаем ведь и ее систему координат). Экспрешен:

fromComp (thisComp.layer("Magnifier").position);

▪ toComp()

фиксим Start and End Points, чтобы они следовали за анимацией слоя…

* Например, у fx CC Bend It

- на параметры Start Point и End Point пишем экспрешен:

toComp (value);

** Если слой исчез из видимости в окне просмотра, то вернуть его на место вручную. И при дублировании Start and End Points могут сдвигаться – также поправить вручную.

* и у fx Gradient Ramp, когда хотим, чтобы градиент следовал за слоем - также экспрешен применяем к Start and End Points

 

▪ toCompVec([0, 0, 1])

переводит вектор, построенный на слое, из координатной системы своего слоя в координатную систему композиции

Применение – скрывать слой при отвороте от нас. Для двусторонней карты.

 

▪ fromWorld(toWorld…

toWorld(point, t = time)

дает истинную координату точки point на слое, вне зависимости от привязок

 

Колесо. Экспрешен на Rotation:

O = thisComp. toWorld (thisLayer.anchorPoint);

R = 300; // или отсылка к Size/2 

value + radianstoDegrees(O[0]/R);

 

 

● Управляем выражениями

 

* Стандартно – через контроллеры fx Controls.

* Text Layer

Через Text Layer

Задача. При дублировании слоя/шейпа, менять постепенно Color у дублей.   * На параметр Color пишем экспрешен, связывающий цвет с индексом слоя: [index*0.2, index*0.7, index*0.4, 1] // цифры меняют RGB и Alpha …но именно этот экспрешен меняет оттенки не плавно, а скачком: И, допустим, хотим переписать экспрешен на «более плавный», вот такой: [index*0.05, index*0.1, index*0.01, 1] // ! Если экспрешен записан на Color у fx Fill, то ок – его получится скопипастить на дубли через пкм - Copy Expression Only, Ctrl+V. !НО: Если экспрешен записан на Color у шейпа внутри свитка Contents – (возможно, в Group 1) – Ellipse – Fill – Color, то так скопипастить НЕ получится. И цифр здесь много - неудобно развешивать их на Slider Controls… (хотя… может, можно на 3D Point Control??) Итак, управляем экспрешеном ● с помощью/через Text Layer: - создаем Text Layer, называем «exprLayer» (expr – от expressions J) - в окне просмотра пишем экспрешен по колорированию как просто Text Layer; - экспрешен на параметр Color (ссылаемся на содержимое в Text Layer): try{ expr = String(thisComp.layer("exprLayer").text.sourceText); eval(expr); } catch(err){value} - теперь дубли будут зависеть от цифр, которые меняем (в окне просмотраJ)  
try { eval(thisComp.layer("exprLayer").text.sourceText.value); } catch(err){value}
Апгрейд управления экспрешенами через Text Layer: - можно сделать ключи на Source Text, только они типа Hold:  - скачки: - можно на Text Layer накинуть fx Slider Controls, назвать «Paint». Экспрешен дополняем отсылкой на слайдер и делением: a = thisComp.layer("exprLayer").effect("Paint")("Slider"); [index*a/100, index*a/80, index*a/50, 1] Крутим слайдер J

 

Через.txt files / sublime

* написать экспрешен в Sublime, например: linear(time, 0, 4, 0, 400); - сохранить в формате: exprName. txt (linearSimple.txt) сохранить * экспрешен, например, на Position: myPath = "/D/faster/ref_expressions/linearSimple.txt"; val = $.evalFile(myPath); [val, val];
 

 


Поделиться с друзьями:

Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.009 с.