Les Effets



Les effets tout comme les masques représentent un groupe de propriété ("PropertyGroup"), chacun de ses éléments étant un effet appliqué au calque considéré ou encore un autre groupe de propriété. Ce PropertyGroup est nommé property("Effects") ou directement Effects.

Comme pour les masques, il faudra être prudent pour y avoir accès et ensuite les paramétrer comme on le souhaite.

On ajoute un effet à un calque par l'intermédiaire de la méthode addProperty(). Cette méthode prend en paramètre le nom de l'effet à ajouter (le nom tel qu'il est écrit dans l'interface utilisateur). Attention, dans un tel script la langue de la version utilisée est importante, un nom d'effet en français ne sera pas reconnu par la version anglaise du logiciel.


Exemple


Pour s'exercer nous allons ajouter à notre calque un effet "Flou accéléré" et tenter de le paramétrer.

Nous commençons par récupérer notre objet calque dans une variable et nous lui ajoutons l'effet souhaité. Cet effet est également stocké dans une variable ce qui va nous permettre de lui faire référence plus facilement quand nous allons le paramétrer.

      myLayer = app.project.activeItem.layer(1);
      myEffect = myLayer.property("Effects").addProperty("Flou accéléré");


remarque : nous aurions également pu écrire :

      myEffect = myLayer.Effects.addProperty("Flou accéléré");

ajout d'un effet


Maintenant que nous avons ajouté l'effet, nous souhaitons le paramétrer de la manière suivante : Intensité = 3 et Dimensions du flou = horizontale.

Commençons par l'intensité. On accède à une propriété soit par son nom, soit par sa position. Nous attribuons une valeur (fixe dans le temps) à une propriété en utilisant la méthode setValue(), qui prend en paramètre la valeur à attribuer. Nous pourrons donc écrire cela :

      myEffect.property("Intensité").setValue(3);

ou de façon équivalente (sachant que l'Intensité est la première propriété du Flou accéléré) :

      myEffect.property(1).setValue(3);

paramétrage d'un effet


Pour la deuxième propriété à paramétrer, on constate qu'il s'agit d'un menu dans lequel il faut choisir une des options. Ces options sont accessibles via leur position dans le menu.

position dans un menu


Le choix "horizontal" correspond à la position 2, nous écrirons ainsi :

      myEffect.property("Dimensions de flou").setValue(2);

ou de façon équivalente (sachant que Dimensions du flou est la deuxième propriété du Flou accéléré) :

      myEffect.property(2).setValue(2);

paramétrage d'un effet