Scripting Guide.pdf

  • Uploaded by: Ahmad Farhan
  • 0
  • 0
  • December 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Scripting Guide.pdf as PDF for free.

More details

  • Words: 78,103
  • Pages: 274
Aide d’Adobe After Effects

Comment utiliser l’aide

Comment utiliser l’aide

Page précédente

1

Comment utiliser l’aide A propos de l’aide en ligne Adobe Systems Incorporated fournit une documentation complète sous la forme d’un système d’aide au format Adobe PDF. Cette aide inclut des informations sur tous les outils, les commandes et les fonctionnalités de l’application correspondante. Le format PDF permet de naviguer facilement dans l’aide qui peut être également imprimée et utilisée comme référence. En outre, ce format prend en charge les lecteurs d’écran tiers fonctionnant sous Windows.

Navigation parmi les rubriques d’aide L’aide s’ouvre dans une fenêtre Adobe Acrobat en affichant le volet Signets. (Si le volet Signets n’est pas affiché, cliquez sur l’onglet Signets dans le coin gauche de la fenêtre.) Chaque page affichée comporte une barre de navigation contenant les liens vers la page (Comment utiliser l’aide), les rubriques (Sommaire) et l’index. Pour passer d’une page à l’autre, cliquez sur les flèches Page suivante et Page précédente . Vous pouvez également cliquer sur les flèches de navigation au bas de la page. Cliquez sur Précédent pour revenir à la dernière page affichée. Vous pouvez également naviguer dans l’aide en utilisant les signets, le sommaire, l’index ou la commande Rechercher (Acrobat 5 et 6). Pour rechercher une rubrique à l’aide des signets : 1 Dans le volet Signets, cliquez sur le signe plus (+) (Windows) ou la flèche vers la droite (Mac OS) en regard d’une rubrique pour afficher ses sous-rubriques. 2 Cliquez sur le signet pour afficher la rubrique correspondante. Pour rechercher une rubrique à l’aide du sommaire : 1 Cliquez sur Sommaire dans la barre de navigation. 2 Dans la page Sommaire, cliquez sur une rubrique pour l’afficher. 3 Pour afficher la liste des sous-rubriques d’une rubrique, cliquez sur le signe plus (+) (Windows) ou la flèche vers la droite (Mac OS) en regard de la rubrique dans le volet Signets. Pour rechercher une rubrique à l’aide de l’index : 1 Effectuez l’une des opérations suivantes : •

Cliquez sur Index dans la barre de navigation, puis sur la lettre souhaitée en haut de la page.



Dans le volet Signets, développez le signet Index pour afficher les sous-rubriques associées aux lettres. Cliquez ensuite sur la lettre souhaitée.

Comment utiliser l’aide

Page précédente

1

Aide d’Adobe After Effects

Comment utiliser l’aide

Comment utiliser l’aide

Page précédente

2

2 Repérez l’entrée appropriée, puis cliquez sur le numéro de page pour afficher la rubrique correspondante. 3 Pour afficher d’autres entrées correspondant à la rubrique, cliquez sur Précédent pour revenir au même endroit dans l’index, puis cliquez sur un autre numéro de page. Pour rechercher une rubrique à l’aide de la commande Rechercher (Acrobat 6) : 1 Sélectionnez Edition > Rechercher. 2 Entrez un mot ou une phrase dans la zone de saisie, puis cliquez sur Rechercher. Acrobat recherche alors dans le document actif et affiche chaque occurrence du mot ou de la phrase recherchée dans la zone Résultats du volet Recherche PDF. Pour rechercher une rubrique à l’aide de la commande Rechercher (Acrobat 5) : 1 Sélectionnez Edition > Rechercher. 2 Entrez un mot ou une phrase dans la zone de saisie, puis cliquez sur Rechercher. Acrobat recherche alors dans le document actif en commençant par la page affichée et met en surbrillance la première occurrence du mot ou de la phrase recherchée. 3 Pour rechercher l’occurrence suivante, sélectionnez Edition > Poursuivre la recherche.

Impression de l’aide L’affichage de l’aide à l’écran a été optimisé ; néanmoins, vous pouvez imprimer une sélection de pages ou l’ensemble du fichier. Pour imprimer l’aide : Sélectionnez Fichier > Imprimer ou cliquez sur l’icône Imprimer dans la barre d’outils d’Acrobat.

Comment utiliser l’aide

Page précédente

2

Aide d’Adobe After Effects

Comment utiliser l’aide

Présentation

Page précédente

3

Présentation Le guide de création de script et d’automatisation du rendu d’After Effects 6.5 (Render Automation & Scripting Guide) décrit comment contrôler les procédures de vos projets After Effects à l’aide de scripts. Cet ensemble de fonctions n’est disponible que dans la version Adobe After Effects 6.5 Professional. L’utilisation de la création de script au niveau système vous permet de simplifier votre structure de rendu et d’éviter les nombreuses opérations de pointer-cliquer répétitives. Si vous avez déjà eu l’occasion d’utiliser des expressions ou d’autres techniques de type JavaScript pour l’animation, ou de travailler avec la création de script système dans AppleScript ou Visual Basic, vous remarquerez la puissance de la création de script d’application fournie dans After Effects. Avec de la pratique et suffisamment d’expérience de l’utilisation du langage JavaScript, vous pouvez prendre le contrôle de votre structure graphique.

Si vous êtes novice en matière de création de script After Effects 6.5 est un outil visuel comportant une interface graphique utilisateur dont les éléments vous sont familiers, notamment les menus, les palettes et les icônes. Cette interface est le moyen le plus accessible de travailler avec l’application. La création de script est conçue pour les situations dans lesquelles cette méthodologie implique une répétition fastidieuse ou de lourdes opérations de recherche et de tri qui pourraient être automatisées. Elle est également utile pour tirer parti de la puissance du rendu en réseau dans les cas où le dossier de contrôle est moins puissant (et moins pratique à configurer). La création de script est destinée à aider les utilisateurs d’After Effects à franchir ce type d’obstacles et est accessible aux utilisateurs qui ne souhaitent pas nécessairement apprendre le langage JavaScript. Si vous êtes ce type d’utilisateur, vous pouvez néanmoins exploiter la puissance de la création de script par le biais de solutions tierces telles que Rush Render Queue, une interface graphique utilisateur permettant de configurer des rendus distribués depuis tout ordinateur du réseau sans devoir les configurer sur des machines individuelles. Vous pouvez également tirer parti des contributions des utilisateurs de la création de script qui mettent des scripts à la disposition des autres utilisateurs en les partageant. Ce type d’utilisateurs peut se trouver en interne dans les grands studios, alors que d’autres utilisateurs peuvent visiter des forums tels que ceux accessibles à l’adresse suivante : www.adobeforums.com.

Comment utiliser l’aide

Page précédente

3

Aide d’Adobe After Effects

Comment utiliser l’aide

Présentation

Page précédente

4

Objets After Effects Vous n’imaginez peut-être pas After Effects comme une collection d’objets hiérarchisés, mais lorsque vous utilisez les éléments de file d’attente de rendu, les compositions et les projets, c’est ainsi qu’ils apparaissent dans la création de script. De la même façon que les fonctionnalités d’expressions dans After Effects vous permettent d’accéder à la quasitotalité des propriétés de tout calque à l’intérieur de toute composition de votre projet (chacun de ces éléments étant appelé objet), la création de script vous permet d’accéder à la hiérarchie d’objets contenus dans After Effects et d’apporter des modifications à ces objets. La création de script After Effects est fondée sur ECMAScript (plus précisément, sur la 3e édition de la norme ECMA-262). Pour plus d’informations sur cette norme, consultez le site www.ecma-international.org.

Expressions et équations Etant donné que la création de script peut accéder à des propriétés de calque individuelles et qu’elle utilise JavaScript, on pourrait penser que les expressions et la création de script constituent une seule et même chose. Cependant, il s’agit de deux entités totalement distinctes. Alors que les expressions n’ont pas accès aux informations des scripts (comme les variables et les fonctions), un script peut être rédigé pour créer ou éditer une expression. La similarité entre les expressions et la création de script est toutefois apparente, car elles sont toutes les deux dérivées du même langage, à savoir JavaScript standard ECMA. Ainsi, la connaissance de l’une facilite la compréhension de l’autre. Les équations ne font plus partie d’After Effects, cette fonctionnalité ayant été remplacée par la création de script et les expressions. Tous les opérateurs mathématiques et logiques communs à ECMAScript sont disponibles pour la création de script. Par exemple, avec les expressions, il est possible de simuler la physique d’une balle rebondissante en appliquant des règles mathématiques à un calque « balle ». Avec la création de script, vous pouvez créer une interface utilisateur complète qui permette d’animer une balle rebondissante et un calque d’ombre au moyen de critères entrés par l’utilisateur.

A propos de ce guide Ce guide est destiné aux utilisateurs chargés de la gestion d’une structure graphique (laquelle peut inclure d’autres applications scriptables) et qui souhaitent créer des scripts pour personnaliser After Effects. Cette fonctionnalité est également offerte par des solutions tierces de gestion de rendu en réseau. Ces produits comportent des éléments logiciels conçus pour faciliter la gestion de ce processus. Il est ainsi possible de tirer profit de cette fonctionnalité sans devoir procéder à une édition manuelle des scripts.

Comment utiliser l’aide

Page précédente

4

Aide d’Adobe After Effects

Comment utiliser l’aide

Présentation

Page précédente

5

Bien que ce guide ait pour objet d’expliquer les extensions ajoutées au langage ECMAScript/JavaScript pour la création de projets After Effects, vous aurez également besoin, pour exploiter le potentiel de la création de script, de comprendre la rédaction de script au niveau système (pour une intégration avec AppleScript sur Mac et les commandes en langage natif DOS sur les systèmes Windows) et de posséder une connaissance préalable de JavaScript. Une grande partie de ce que la création de script permet de réaliser peut également être effectuée par le biais de l’interface utilisateur After Effects. Une connaissance approfondie de l’application elle-même est, par conséquent, essentielle pour savoir comment utiliser cette fonctionnalité. Notez que les objets JavaScript habituellement appelés « propriétés » sont appelés « attributs » dans ce guide, afin d’éviter toute confusion avec la définition de propriété propre à After Effects (une valeur animable d’un effet ou d’une transformation dans un calque individuel).

Activation des fonctionnalités complètes de création de script Pour des raisons de sécurité, les fonctionnalités de création de script opérant en dehors de l’application After Effects (telles que l’ajout et la suppression de fichiers et de dossiers sur des volumes, ou l’accès au réseau) sont désactivées par défaut. Pour activer ces fonctionnalités, choisissez Préférences > Général, puis cochez l’option Autoriser les scripts à écrire les fichiers et à accéder au réseau. Le fait de sélectionner cette option active les fonctions suivantes : •

Ecriture de fichiers



Création de dossiers



Définition du dossier actif



Création d’un socket



Ouverture d’un socket



Ecoute d’un socket

Le débogage JavaScript est désactivé par défaut de façon à ce que les utilisateurs non expérimentés ne le rencontrent pas. Lors de l’édition ou de l’écriture de scripts, le débogage JavaScript permet de diagnostiquer les problèmes de script plus rapidement. Pour activer le débogage JavaScript sur la machine locale en cas d’erreur de script, choisissez Préférences > Général, puis cochez la case Activer le débogage JavaScript. Notez que le débogage JavaScript ne fonctionne que lors de l’exécution d’un script, sans expressions, même si les expressions utilisent également JavaScript. Pour plus d’informations sur le débogage JavaScript, reportez-vous à la section « Débogage JavaScript », page 18.

Comment utiliser l’aide

Page précédente

5

Aide d’Adobe After Effects

Comment utiliser l’aide

Présentation

Page précédente

6

Accès aux scripts et écriture des scripts Pour créer et éditer des scripts pour After Effects, utilisez une application d’édition de texte externe créant des fichiers avec l’encodage de texte Unicode UTF-8. Evitez les applications telles que Microsoft Word qui ajoutent par défaut des informations d’en-tête aux fichiers (celles-ci créent des erreurs de ligne 0 dans les scripts, ce qui empêche leur exécution). Un script peut résider à tout endroit, mais pour apparaître dans le menu Scripts, il doit être sauvegardé dans le dossier Scripts, lui-même situé dans le dossier de l’application After Effects. Pour plus d’informations sur la création et l’édition de scripts, reportez-vous à la section « Ecriture de scripts », page 7. L’application n’intègre pas de méthode permettant l’enregistrement dans un script d’une série d’actions réalisées dans After Effects, comme cela est possible avec les scripts Photoshop. Les scripts sont créés en dehors d’After Effects puis exécutés à l’intérieur ou à l’extérieur au moyen d’une ligne de commande ou d’un logiciel de gestion de rendu tiers.

Utilisations des scripts After Effects L’automatisation de rendu est l’une des principales utilisations de la création de script dans After Effects 6.5. Toute personne chargée de la gestion d’une structure de rendu complexe y trouvera un intérêt. L’automatisation de rendu peut être effectuée au moyen de scripts de saisie manuelle de code ou par une solution tierce de rendu en réseau prenant en charge la gestion automatisée des structures de rendu en réseau. La création de script peut avoir d’autres usages. Elle peut en effet fournir un raccourci pour les tâches fastidieuses impliquant sans cela des actions pointer-cliquer répétitives. Pour obtenir des exemples d’actions pouvant être effectuées par les scripts, reportez-vous à la section « Exemples », page 197.

Comment utiliser l’aide

Page précédente

6

Aide d’Adobe After Effects

Comment utiliser l’aide

Ecriture de scripts

Page précédente

7

Ecriture de scripts Lorsque vous utilisez After Effects, vous créez des projets, des compositions et des éléments de file d’attente de rendu, ainsi que tous les éléments qu’ils contiennent, c’est-àdire le métrage, les images, les solides, les calques, les masques, les effets et les propriétés. En terminologie de création de script, chacun de ces éléments est un objet. Le cœur d’une application scriptable est le modèle d’objet. Dans After Effects, le modèle d’objet est composé de projets, d’éléments, de compositions, de calques et d’éléments de file d’attente de rendu. Chaque objet possède ses propres attributs particuliers et chaque objet dans un projet After Effects possède sa propre identité (bien que tous ne soient pas accessibles pour l’écriture de scripts). Vous devez maîtriser le modèle d’objet d’After Effects pour pouvoir créer des scripts. Pour plus d’informations sur l’initiation à la création de scripts, reportez-vous à la section « Autres ressources d’apprentissage de la création de script », page 10.

Edition de scripts After Effects 6.5 ne comporte pas d’éditeur de script. Vous pouvez utiliser tout éditeur de texte pour créer, éditer et enregistrer des scripts, mais il est recommandé de choisir une application qui n’ajoute pas automatiquement des informations d’en-tête lors de l’enregistrement des fichiers et qui enregistre avec l’encodage Unicode (UTF-8). Les applications Windows utiles pour l’édition de scripts incluent EM Editor ou le Blocnotes intégré (assurez-vous de définir l’encodage UTF-8 dans les options d’enregistrement). Les applications Mac OS utiles pour l’édition de scripts incluent BBEdit ou Textedit intégré à OS X (assurez-vous de définir Unicode [UTF-8] comme type d’enregistrement dans les préférences).

Format .jsx Les scripts After Effects doivent être dotés de l’extension de fichier .jsx pour pouvoir être correctement reconnus par l’application. Cette extension est une variante de l’extension standard « .js » utilisée pour les fichiers JavaScript classiques ; tous les fichiers texte utilisant l’encodage UTF-8 et comportant cette extension seront reconnus.

Menu et dossier Scripts Les scripts After Effects résident dans le dossier Scripts, situé dans le même dossier que votre fichier d’application After Effects 6.5. Bien qu’un fichier de script puisse résider à un autre endroit, seuls les scripts contenus dans ce dossier Scripts figurent automatiquement dans le menu Scripts. Pour exécuter un script n’apparaissant pas dans le menu de Scripts, utilisez la commande Fichier > Exécuter le script > Choisir un fichier, puis choisissez le script dans la boîte de dialogue Ouvrir. Une autre solution consiste à envoyer un script à After Effects à partir d’une ligne de commande (sous Windows) ou d’AppleScript (sur Mac OS).

Comment utiliser l’aide

Page précédente

7

Aide d’Adobe After Effects

Comment utiliser l’aide

Ecriture de scripts

Page précédente

8

Pour apparaître dans la boîte de dialogue Ouvrir, votre script doit être doté de l’extension de fichier .jsx.

Dossiers Shutdown (arrêt) et Startup (démarrage) Le dossier Scripts contient deux sous-dossiers appelés Startup et Shutdown. After Effects exécute automatiquement les scripts contenus dans ces dossiers lors du démarrage et de la fermeture de l’application, respectivement. Vous pouvez placer dans le dossier Startup les scripts que vous souhaitez exécuter au démarrage de l’application. Une fois l’application initialisée, ces scripts seront exécutés et tous les modules seront chargés. La création de script partageant un environnement global, tout script exécuté au démarrage peut définir des variables et des fonctions disponibles pour tous les scripts. Dans tous les cas de figure, les variables et les fonctions, une fois définies en exécutant un script les contenant, sont perpétuées dans les scripts suivants au cours de la même session After Effects. Une fois l’application fermée, toutes ces variables et fonctions définies au niveau global sont supprimées. Notez que cette continuité des paramètres globaux signifie également que si vous ne veillez pas à attribuer des noms uniques aux variables dans les scripts, vous risquez de réattribuer par mégarde des variables globales sensées être préservées pendant toute une session. Des propriétés peuvent également être incorporées dans les objets existants tels que l’objet Application (voir la section « Objet Application », page 31) pour étendre l’application à d’autres scripts. Les scripts contenus dans le dossier Shutdown sont exécutés au moment de la fermeture de l’application. Ces exécutions sont réalisées une fois le projet fermé, mais avant la fermeture de toute autre application.

Envoi d’un script à After Effects à partir du système Si vous savez comment exécuter un script à partir de la ligne de commande sous Windows ou avec AppleScript, vous pouvez envoyer un script directement à l’application After Effects ouverte, lequel sera exécuté automatiquement.

Inclusion de la création de script After Effects dans une ligne de commande (Windows) Voici plusieurs exemples de commandes en langage natif DOS qui envoient un script After Effects à l’application sans utiliser l’interface utilisateur After Effects pour exécuter le script. Dans le premier exemple, vous copiez-collez directement votre script After Effects dans le script de ligne de commande puis l’exécutez comme suit (le texte de votre script apparaît entre guillemets après la commande afterfx.exe -s) : afterfx.exe –s “alert (“You just sent an alert to After Effects”)”

Une autre solution consiste à spécifier l’emplacement du fichier .jsx à exécuter, comme suit : afterfx.exe –r c:\myDocuments\Scripts\yourAEScriptHere.jsx

Comment utiliser l’aide

Page précédente

8

Aide d’Adobe After Effects

Comment utiliser l’aide

Ecriture de scripts

Page précédente

9

Inclusion de la création de script After Effects dans un AppleScript (Mac OS) Voici trois exemples d’AppleScript envoyant un fichier .jsx existant contenant un script After Effects à l’application sans utiliser l’interface utilisateur After Effects pour exécuter le script. Dans le premier exemple, vous copiez votre script After Effects directement dans AppleScript puis l’exécutez comme suit (le texte de votre script apparaît entre guillemets après la commande DoScript) : tell application “Adobe After Effects 6.5” DoScript “alert (\”You just sent an alert to After Effects\”)” end tell

Une autre solution consiste à afficher une boîte de dialogue demandant l’emplacement du fichier .jsx à exécuter, comme suit : set thefile to choose file tell application “Adobe After Effects 6.5” DoScript thefile end tell

Enfin, ce script est peut-être le plus utile lorsque vous travaillez directement sur l’édition d’un script .jsx et souhaitez l’envoyer à After Effects pour le tester ou l’exécuter. Pour l’utiliser efficacement, vous devez entrer l’application contenant le fichier .jsx ouvert (dans cet exemple, il s’agit de TextEdit) ; si vous ne connaissez pas le nom exact de l’application, entrez ce qui s’en approche le plus en remplacement de TextEdit, et AppleScript vous invitera à la localiser. Mettez simplement en évidence le texte de script que vous souhaitez exécuter, puis activez cet AppleScript : (* This script sends the current selection to After Effects as a script. *) tell application “TextEdit” set the_script to selection as text end tell tell application "Adobe After Effects 6.5" activate DoScript the_script end tell

Pour plus d’informations sur l’utilisation d’AppleScript, reportez-vous au manuel AppleScript: the Definitive Guide de Matt Neuberg (éditions O’Reilly & Associates) ou AppleScript 1-2-3 de Sal Soghoian (éditions Peachpit Press).

Comment utiliser l’aide

Page précédente

9

Aide d’Adobe After Effects

Comment utiliser l’aide

Ecriture de scripts

Page précédente

10

Essais et dépannage Tout script After Effects contenant une erreur empêchant sa réalisation complète génère un message d’erreur depuis l’application. Ce message inclut des informations sur la nature de l’erreur et la ligne du script sur laquelle elle est survenue. After Effects inclut par ailleurs un outil de débogage JavaScript. Pour plus d’informations sur l’activation et l’utilisation du débogage, reportez-vous à la section « Débogage JavaScript », page 18.

Autres ressources d’apprentissage de la création de script Il existe de nombreuses ressources permettant d’approfondir vos connaissances de création de script avec ECMA standard. Le moteur de création de script After Effects prend en charge la 3e édition de la norme ECMA-262, y compris ses conventions de notation et lexicales, ses types, objets, expressions et instructions. Pour obtenir une liste complète des mots-clés et opérateurs inclus avec ECMAScript, reportez-vous au document Ecma-262.pdf, disponible à l’adresse suivante : www.ecmainternational.org/publications/standards/ECMA-262.HTM. Les ouvrages traitant de JavaScript 1.2 sont également utiles à la compréhension du fonctionnement de la création de scripts dans After Effects. L’ouvrage JavaScript, The Definitive Guide de David Flanagan (éditions O’Reilly) constitue, en quelque sorte, une bible pour les utilisateurs de JavaScript. Une autre source tout à fait recommandable est l’ouvrage JavaScript: A Beginner’s Guide de John Pollock (éditions Osborne). Ces deux ouvrages contiennent des informations concernant en particulier les extensions de JavaScript pour les navigateurs Internet, tout en offrant également des explications détaillées des principes de base de la création de script. Il existe également des ouvrages sur l’utilisation d’AppleScript et la création de scripts de ligne de commande Windows, ces deux solutions pouvant être utilisées pour envoyer des scripts à After Effects.

Mots-clés et syntaxe d’instructions Bien qu’il ne soit pas possible de fournir une ressource exhaustive décrivant l’utilisation de JavaScript, les tableaux ci-après présentent les mots-clés, les instructions, les opérateurs, la priorité et l’associativité. Le tableau ci-dessous énumère et décrit tous les mots-clés et instructions reconnus par le moteur de création de script After Effects. Tableau 1

Mots-clés et syntaxe d’instructions

Mot-clé/ Instruction

Description

break

JavaScript standard ; quitte la boucle en cours d’exécution.

continue

JavaScript standard ; arrête l’exécution de l’itération de la boucle en cours.

case

Libellé utilisé dans une instruction switch

default

Libellé utilisé dans une instruction switch lorsqu’un libellé case est introuvable

Comment utiliser l’aide

Page précédente

10

Aide d’Adobe After Effects

Comment utiliser l’aide

Ecriture de scripts

Page précédente

11

Mot-clé/ Instruction

Description

do - while

Construction JavaScript standard. Similaire à la boucle w h i le , excepté que l’évaluation de la condition de boucle est effectuée à la fin de la boucle.

false

Littéral représentant le booléen false.

for

Construction de boucle JavaScript standard.

for - in

Construction JavaScript standard. Fournit un moyen aisé d’appliquer une boucle à travers les propriétés d’un objet.

function

Utilisée pour définir une fonction.

if/if - else

Constructions conditionnelles JavaScript standard.

new

Instruction de constructeur JavaScript standard.

null

Attribué à une variable, un élément de tableau, ou une propriété d’objet pour indiquer qu’il ou elle ne contient pas de valeur autorisée.

return

Moyen JavaScript standard de renvoyer une valeur à partir d’une fonction ou de quitter une fonction.

switch

Moyen JavaScript standard d’évaluer une expression et de tenter de faire correspondre la valeur de l’expression à un libellé c a s e .

this

Méthode JavaScript standard utilisée pour indiquer l’objet en cours.

true

Littéral représentant le booléen true.

undefined

Indique que la variable, l’élément de tableau ou la propriété d’objet n’a pas encore reçu de valeur.

var

Syntaxe JavaScript standard utilisée pour déclarer une variable locale.

while

Construction JavaScript standard. Similaire à la boucle do - w h i l e , excepté que l’évaluation de la condition de boucle est effectuée au début de la boucle.

with

Construction JavaScript standard utilisée pour spécifier un objet à utiliser dans les instructions dont elle est suivie.

Opérateurs Les tableaux ci-après énumèrent et décrivent tous les opérateurs reconnus par le moteur de création de script After Effects et indiquent la priorité et l’associativité de tous les opérateurs. Tableau 2

Description des opérateurs

Opérateurs

Description

new

Alloue un objet.

delete

Annule l’allocation d’un objet.

typeof

Renvoie le type de données.

Comment utiliser l’aide

Page précédente

11

Aide d’Adobe After Effects

Comment utiliser l’aide

Page précédente

Opérateurs

Description

void

Renvoie la valeur indéfinie.

.

Membre de la structure.

[]

Elément de tableau.

()

Appel de fonction.

++

Pré- ou post-incrément.

--

Pré- ou post-décrément.

-

Négation ou soustraction unaire. ~

Ecriture de scripts

NOT au niveau bit.

!

NOT logique.

*

Produit.

/

Division.

%

Division modulo.

+

Addition.

<<

Décalage vers la gauche au niveau du bit.

>>

Décalage vers la droite au niveau du bit.

>>>

Décalage non signé vers la droite au niveau du bit.

<

Inférieur.

<=

Inférieur ou égal.

>

Supérieur.

>=

Supérieur ou égal.

==

Egal.

!=

Différent.

&

AND au niveau bit.

^

XOR au niveau bit.

|

OR au niveau bit.

&&

AND logique.

||

OR logique.

?:

Conditionnel (ternaire).

=

Attribution.

+=

Attribution avec l’opération d’addition.

Comment utiliser l’aide

12

Page précédente

12

Aide d’Adobe After Effects

Comment utiliser l’aide

Ecriture de scripts

Page précédente

13

Opérateurs

Description

-=

Attribution avec l’opération de soustraction.

*=

Attribution avec l’opération de multiplication.

/=

Attribution avec l’opération de division.

%=

Attribution avec l’opération modulo.

<<=

Attribution avec l’opération de décalage vers la gauche au niveau du bit.

>>=

Attribution avec opération de décalage vers la droite au niveau du bit.

>>>=

Attribution avec opération non signée de décalage vers la droite au niveau du bit.

&=

Attribution avec opération AND au niveau du bit.

^=

Attribution avec opération XOR au niveau du bit.

|=

Attribution avec opération OR au niveau du bit. Evaluation multiple.

,

Tableau 3

Priorité des opérateurs

Opérateurs (énumérés par ordre de priorité décroissant)

Associativité

[], (), .

gauche à droite

new, delete, - (négation unaire), ~, !, typeof, void,++, --

droite à gauche

*, /, %

gauche à droite

+, - (soustraction)

gauche à droite

<<, >>, >>>

gauche à droite

<, <=, >, >=

gauche à droite

==, !=

gauche à droite

&

gauche à droite

^

gauche à droite

|

gauche à droite

Comment utiliser l’aide

Page précédente

13

Aide d’Adobe After Effects

Ecriture de scripts

Comment utiliser l’aide

Page précédente

14

Opérateurs (énumérés par ordre de priorité décroissant)

Associativité

&&

gauche à droite

||

gauche à droite

?:

droite à gauche

=, /=, %=, <<=, >>=, >>>=, &=, ^=, |=, +=, -=, *=

droite à gauche

,

gauche à droite

Automatisation du rendu avec aerender L’automatisation de rendu est l’une des principales utilisations de la création de script dans After Effects 6.5. Toute personne chargée de la gestion d’une structure de rendu complexe y trouvera un intérêt. L’automatisation de rendu peut être effectuée au moyen de scripts de saisie manuelle de code ou par une solution tierce de rendu en réseau prenant en charge la gestion automatisée des structures de rendu en réseau. Remarque : la création de script peut avoir d’autres usages. Elle peut en effet fournir un raccourci pour les tâches fastidieuses impliquant sans cela des actions pointer-cliquer répétitives. Pour obtenir des exemples d’actions pouvant être effectuées par les scripts, reportez-vous à la section « Exemples », page 197. Utilisation L’application de ligne de commande aerender réalise le rendu des compositions After Effects. Ce rendu peut être réalisé par une instance d’After Effects en cours d’exécution ou par une nouvelle instance invoquée. Par défaut, aerender invoque une nouvelle instance d’After Effects, même si une autre instance est déjà en cours d’exécution. Pour modifier cette configuration par défaut, reportez-vous à l’indicateur « -reuse » dans la section « Arguments » ci-dessous. Arguments A partir de la ligne de commande, aerender prend une série d’arguments facultatifs ajoutés à la commande exécutable ci-dessous (c’est-à-dire aerender.exe). Certains d’entre eux sont des indicateurs seuls, ce qui est le cas de « -reuse », par exemple. D’autres se présentent par paires argument-indicateur, tels que « -project project_path ». L’un des arguments se présente sous forme de trio, -mem_usage image_cache_percent max_mem_percent. En l’absence d’argument ou en présence de tout argument « -help », aerender affiche un message d’utilisation fournissant les informations contenues dans cette section. Argument

Utilisation

-help

Affiche un message d’utilisation

Comment utiliser l’aide

Page précédente

14

Aide d’Adobe After Effects

Ecriture de scripts

Comment utiliser l’aide

Page précédente

Argument

Utilisation

-reuse

Utilisez cet indicateur si vous souhaitez essayer de réutiliser une instance d’After Effects déjà en cours d’exécution pour réaliser le rendu. Par défaut, aerender lance une nouvelle instance d’After Effects, même si une autre instance est déjà en cours d’exécution. Cependant, si After Effects est déjà en cours d’exécution et que l’indicateur - reuse est fourni, aerender demande à l’instance d’After Effects en cours de réaliser le rendu. Chaque fois que l’application aerender lance une nouvelle instance d’After Effects, elle demande à cette application de quitter une fois le rendu terminé ; sinon, After Effects ne ferme pas. Par ailleurs, lorsque l’indicateur - reuse est défini, les préférences sont enregistrées dans un fichier à la fermeture ; sinon elles ne le sont pas.

-project project_path

où pro j e c t _ p a t h correspond à un chemin d’accès ou à une URI spécifiant un fichier de projet à ouvrir. Si aucun chemin d’accès ni aucune URI ne sont fournis, aerender utilise le projet ouvert en cours. Si aucun projet n’est ouvert ou fourni, une erreur est générée.

-comp comp_name

où comp_name spécifie une composition à rendre.

15

Si cette composition se trouve déjà dans la file d’attente de rendu et dans un état propre à la mise en file d’attente, seule la première instance propre à la mise en file d’attente de cette composition dans la file d’attente est rendue. Si la composition se trouve dans le projet mais pas dans la file d’attente de rendu, elle est ajoutée à la file d’attente et rendue. Si aucun argument - comp n’est fourni, aerender rend la totalité de la file d’attente de rendu telle quelle. Dans ce cas (aucun argument -comp), les seuls autres arguments utilisés sont - pro j e c t , - l o g , - v, - m e m _ u s a g e e t close ; les arguments -RStemplate, -OMtemplate, -output, -s et -e -RStemplate render_settings_temp late

sont ignorés.

où render_setting s_template correspond au nom d’un modèle à appliquer à l’élément de file d’attente de rendu. Si le modèle n’existe pas, il s’agit d’une erreur. Par défaut, le modèle de rendu déjà défini pour l’élément est utilisé.

Comment utiliser l’aide

Page précédente

15

Aide d’Adobe After Effects

Ecriture de scripts

Comment utiliser l’aide

Page précédente

Argument

Utilisation

-OMtemplate output_module_templa te

où o utput_module_template correspond au nom d’un modèle à appliquer au module de sortie. Si le modèle n’existe pas, il s’agit d’une erreur. Par défaut, le modèle déjà défini pour le module de sortie est utilisé.

-output

où o ut p u t _ p a t h correspond à un chemin d’accès ou à une URI spécifiant le fichier de destination de rendu. Le chemin d’accès par défaut est celui déjà indiqué dans le fichier de projet.

output_path

-log logfile_path

où l o g file _ p a t h correspond à un chemin d’accès ou à une URI spécifiant l’emplacement du fichier journal. Par défaut, il s’agit de s tdout .

-s start_frame

où sta r t _ f r a m e correspond à la première image à rendre. Par défaut, il s’agit de la première image dans le fichier.

-e end_frame

où en d_ f r a m e correspond à la dernière image à rendre. Notez que l’on parle de la dernière image comprise ; la dernière image est rendue. Par défaut, il s’agit de la dernière image dans le fichier.

-i increment

où i n c rement correspond au nombre d’images à parcourir avant de rendre une nouvelle image. La valeur 1 (par défaut) produit un rendu normal de toutes les images. Des incréments plus élevés répètent la même image (incrément d’image-1) fois, puis rendent une nouvelle image, en recommençant le cycle. Les valeurs élevées se traduisent par des rendus plus rapides, mais produisent un mouvement plus saccadé. La valeur par défaut est 1.

-mem_usage image_cache_percent max_mem_percent

où i ma ge _ c a ch e _ p e rcen t spécifie le pourcentage maximal de mémoire utilisé pour la mise en mémoire cache des images/métrages déjà rendus et m a x _ m e m_percent spécifie le pourcentage total de mémoire pouvant être utilisé par After Effects.

-v verbose_flag

où ver bose_flag spécifie le type de messages signalés. Les valeurs possibles sont E R RO R S (affiche uniquement les erreurs fatales et les problèmes) ou E R ROR S _ AN D _ P RO G R E S S (affiche également l’état d’avancement du rendu). La valeur par défaut est E R ROR S _ AN D _ P RO G R E S S .

Comment utiliser l’aide

Page précédente

16

16

Aide d’Adobe After Effects

Ecriture de scripts

Comment utiliser l’aide

Page précédente

Argument

Utilisation

-close close_flag

où cl os e _ fl a g indique si le projet doit être fermé une fois le rendu terminé et si les modifications doivent être enregistrées.

17

Si cl o s e _ fl a g est D O _ N OT _ S AV E _ C HAN G E S , le projet est fermé sans enregistrer les modifications. Si cl o s e _ fl a g est S AV E _ C HAN G E S , le projet est fermé et les modifications sont sauvegardées. Si clos e _ fl a g est D O_ N OT _ C LO S E , le projet est laissé ouvert ; toutefois, il n’est laissé ouvert que dans le cas où une instance d’After Effects déjà en cours d’exécution est utilisée puisque les nouvelles invocations d’After Effects doivent toujours être fermées et quittées une fois le rendu terminé. La valeur par défaut est D O_ N OT _ S AV E _ C HAN G E S . -sound sound_flag

où so un d _ fl a g indique si un son doit être émis lorsque le rendu est terminé. Les valeurs possibles sont O N ou O F F. La valeur par défaut est O F F.

-version

Affiche le numéro de version de aerender sur la console. Ne réalise pas de rendu.

Exemples Pour rendre uniquement la composition 1 (Comp 1) dans un fichier défini, entrez : aerender -project c:\projects\proj1.aep -comp "Comp 1" -output c:\output\proj1\proj1.avi

Pour rendre l’intégralité de la file d’attente en l’état dans le fichier de projet, entrez : aerender -project c:\projects\proj1.aep

Pour rendre les images 1 à 10 à l’aide d’un rendu multimachine, entrez : aerender -project c:\projects\proj1.aep -comp "Comp 1" -s 1 -e 10 -RStemplate "Multi-Machine Settings" -OMtemplate "Multi-Machine Sequence" -output c:\output\proj1\frames[####].psd

Comment utiliser l’aide

Page précédente

17

Aide d’Adobe After Effects

Comment utiliser l’aide

Débogage JavaScript

Page précédente

18

Débogage JavaScript Cette section décrit la fenêtre de débogage JavaScript qui apparaît lorsque la préférence Activer le débogage JavaScript est sélectionnée dans la boîte de dialogue des préférences générales (par défaut, elle est désélectionnée) et en cas d’erreur lors de l’exécution d’un script. A B

C

D

E

F

G

H

I

J

K

Fenêtre de débogage JavaScript A. Vue de trace de pile B. Reprise C. Pause D. Arrêt E. Pas à pas F. Entrer G. Sortir H. Affichage des points de rupture I. Ligne de commande J. Vue de sortie de débogage K. Vue de la source JavaScript

La trace de pile courante apparaît dans le volet supérieur gauche de la fenêtre de débogage JavaScript. Cette vue de trace de pile affiche la hiérarchie appelante au moment du point de rupture. Le fait de cliquer deux fois sur une ligne dans cette vue modifie l’étendue actuelle et permet d’inspecter et de modifier les données spécifiques d’étendue. Toute sortie de débogage apparaît dans le volet supérieur droit de la fenêtre de débogage JavaScript. En particulier, la sortie de la méthode print de l’objet $ apparaît dans cette vue de sortie de débogage.

Comment utiliser l’aide

Page précédente

18

Aide d’Adobe After Effects

Comment utiliser l’aide

Débogage JavaScript

Page précédente

19

La source JavaScript en cours d’exécution apparaît dans le volet inférieur de la fenêtre de débogage JavaScript. Le fait de cliquer deux fois sur une ligne dans cette vue de la source JavaScript insère ou supprime un point de rupture inconditionnel sur cette ligne. Ainsi, si un point de rupture est actif pour cette ligne, le fait de cliquer deux fois sur la ligne annule le point de rupture, et inversement. Les numéros de ligne indiqués dans la partie gauche affichent un point rouge pour toutes les lignes comportant un point de rupture. Si la préférence Activer le débogage JavaScript est désélectionnée dans la boîte de dialogue des préférences générales, un message d’erreur s’affiche mais pas la fenêtre de débogage JavaScript elle-même. Cette configuration est habituellement utilisée dans les situations où les rôles professionnels sont répartis entre les personnes écrivant et administrant les scripts (directeurs techniques, administrateurs système, etc.) et celles les utilisant (l’artiste ou les animateurs). Si vous rédigez et déboguez vos propres scripts, vous devez activer l’outil de débogage JavaScript.

Contrôle d’exécution de code dans l’outil de débogage JavaScript Cette section décrit les boutons qui commandent l’exécution du code lorsque la fenêtre de débogage JavaScript est active. La plupart de ces boutons fournissent également un raccourci clavier.

Reprise Ctrl + R (Windows) Cmde + R (Mac OS) Reprend l’exécution du script, la fenêtre de débogage JavaScript étant ouverte. Une fois le script terminé, l’application ferme automatiquement la fenêtre de débogage JavaScript. L’exécution du script peut également être reprise en fermant manuellement la fenêtre de débogage. Ce bouton est activé lorsque l’exécution du script est mise sur pause ou arrêtée.

Pause Ctrl + P (Windows) Cmde + P (Mac OS) Interrompt temporairement le script en cours d’exécution et réactive le débogage JavaScript. Ce bouton est activé lorsqu’un script est cours d’exécution.

Comment utiliser l’aide

Page précédente

19

Aide d’Adobe After Effects

Comment utiliser l’aide

Débogage JavaScript

Page précédente

20

Arrêt Ctrl + K (Windows) Cmde + K (Mac OS) Interrompt l’exécution du script et génère une erreur d’exécution. Ce bouton est activé lorsqu’un script est cours d’exécution.

Pas à Pas Ctrl + S (Windows) Cmde + S (Mac OS) Interrompt le script après l’exécution d’une seule instruction JavaScript du script. Si l’instruction appelle une fonction JavaScript, celle-ci est entièrement exécutée avant l’interruption du script.

Entrer Ctrl + T (Windows) Cmde + T (Mac OS) Interrompt le script après l’exécution d’une seule instruction JavaScript dans le script ou après l’exécution d’une seule instruction dans toute fonction JavaScript appelée par le script.

Sortir Ctrl + U (Windows) Cmde + U (Mac OS) Lorsque le débogage JavaScript est mis sur pause dans le corps d’une fonction JavaScript, le fait de cliquer sur ce bouton reprend l’exécution du script jusqu’à ce que la fonction revienne. Lorsque la pause du débogage JavaScript intervient en dehors du corps d’une fonction, le fait de cliquer sur ce bouton reprend l’exécution du script jusqu’à sa fin.

Affichage des points de rupture du script. Affiche la fenêtre des points de rupture de script.

Utilisation du champ d’entrée de ligne de commande JavaScript Vous pouvez utiliser le champ d’entrée de ligne de commande de l’outil de débogage JavaScript pour entrer et exécuter du code JavaScript de façon interactive dans une étendue de pile spécifiée. Les commandes entrées dans ce champ sont exécutées dans un délai d’une seconde. Si l’exécution d’une commande prend plus d’une seconde, le script se termine et génère une erreur de temporisation.

Comment utiliser l’aide

Page précédente

20

Aide d’Adobe After Effects

Comment utiliser l’aide

Débogage JavaScript

Page précédente

21

Champ d’entrée de ligne de commande Entrez une instruction JavaScript dans ce champ à exécuter dans l’étendue de pile de la ligne en surbrillance dans la vue Trace de pile. Une fois l’expression JavaScript entrée, vous pouvez l’exécuter en cliquant sur le bouton d’entrée de ligne de commande ou en appuyant sur la touche Entrée. Cliquez sur le bouton en regard du champ ou appuyez sur Entrée pour exécuter le code JavaScript dans le champ d’entrée de ligne de commande. L’application exécute le contenu du champ d’entrée de ligne de commande dans l’étendue de pile de la ligne en surbrillance dans la vue Trace de pile. Le champ d’entrée de ligne de commande accepte tout code JavaScript et est ainsi pratique à utiliser pour inspecter ou modifier le contenu des variables. Remarque : pour afficher la liste du contenu d’un objet comme s’il s’agissait de code source JavaScript, entrez la commande object.toSource().

Définition de points de rupture Vous pouvez définir des points de rupture dans l’outil de débogage JavaScript lui-même, en appelant des méthodes de l’objet $ ou en les définissant dans votre code JavaScript.

Définition de points de rupture dans la fenêtre de débogage JavaScript Lorsque la fenêtre de débogage JavaScript est active, vous pouvez cliquer deux fois sur une ligne dans la vue source JavaScript pour définir ou supprimer un point de rupture sur cette ligne. Vous avez également la possibilité de cliquer sur le bouton d’affichage des points de rupture de script pour afficher la fenêtre correspondante et y définir ou annuler des points de rupture, tel qu’expliqué dans la section « Fenêtre des points de rupture de script », page 22.

Définition de points de rupture dans le code JavaScript L’ajout de l’instruction de débogage à un script définit un point de rupture inconditionnel. Par exemple, le code suivant entraîne l’interruption du script et affiche la fenêtre de débogage JavaScript dès l’entrée dans la fonction setupBox. function setupBox(box) { // break unconditionally at the next line debugger; box.width = 48; box.height = 48; box.url = "none"; }

Pour exécuter un point de rupture en code d’exécution, appelez la méthode $.bp(), comme indiqué dans l’exemple suivant : function setupBox(box) { box.width = (box.width == undefined) ? $.bp() : 48; box.height = (box.height == undefined) ? $.bp() : 48; box.url = (box.url == undefined) ? $.bp() : "none"; }

Comment utiliser l’aide

Page précédente

21

Aide d’Adobe After Effects

Débogage JavaScript

Comment utiliser l’aide

Page précédente

22

Cet exemple ouvre le débogage JavaScript dès l’instant où l’un des attributs width, height ou url de l’élément personnalisé ne sont pas définis. Naturellement, vous n’incluriez pas d’appels de méthode bp dans un code de production, celle-ci étant plus appropriée pour le code d’expédition afin de définir des valeurs par défaut pour les propriétés non définies, comme le montre l’exemple précédent.

Fenêtre des points de rupture de script L’affichage de la fenêtre des points de rupture de script est commandé par le bouton des points de rupture de script dans la fenêtre de débogage JavaScript. Cette fenêtre affiche tous les points de rupture définis. Elle n’affiche pas les points de rupture temporaires, ni les points de rupture définis par l’instruction de débogage dans le code JavaScript. La fenêtre des points de rupture de script comporte les options suivantes : •

Le champ de ligne contient le numéro de ligne du point de rupture.



Le champ de condition peut contenir une expression JavaScript pour déterminer le moment où le point de rupture est atteint. Si l’expression détermine la condition comme fausse (false), le point de rupture n’est pas exécuté.



Les points de rupture définis dans cette fenêtre sont conservés pendant plusieurs exécutions d’un script. Ces points de rupture sont supprimés lorsque l’application est fermée ou lorsqu’un script est rechargé.

Pour définir un point de rupture dans la fenêtre des points de rupture de script, procédez comme suit : 1

Créez un nouveau point de rupture ou cliquez sur le point de rupture à modifier.

Entrez un numéro de ligne dans le champ de numéro de ligne ou modifiez le numéro de ligne existant. 2

3 Eventuellement, entrez une condition telle que (i>5) dans le champ de condition. Il peut s’agir de n’importe quelle expression JavaScript valide. Si le résultat de l’évaluation de l’expression est vraie (true), le point de rupture s’active.

Objet $ L’objet $ (objet de débogage) fournit des propriétés et des méthodes que vous pouvez utiliser pour déboguer votre code JavaScript. Par exemple, vous pouvez appeler ses méthodes pour insérer ou annuler des points de rupture de façon programmatique, ou pour changer la version de langage du script en cours d’exécution. L’objet de débogage fournit également des propriétés contenant des informations sur la version du système d’exploitation de la plate-forme hôte. Remarque : l’objet $ n’est pas un objet JavaScript standard. Propriétés Nom

Type

Description

error

Erreur

Extrait la dernière erreur d’exécution. La lecture de cette propriété renvoie un objet Error contenant des informations sur la dernière erreur d’exécution.

Comment utiliser l’aide

Page précédente

22

Aide d’Adobe After Effects

Débogage JavaScript

Comment utiliser l’aide

Page précédente

23

version

Chaîne

Renvoie le numéro de version du moteur JavaScript sous la forme d’un numéro en trois parties. Exemple : "3.1.11". Lecture seule.

os

Chaîne

Renvoie la version du système d’exploitation en cours. Lecture seule.

Méthode de sortie de débogage write (text, …); writeln (text, …);

Ecrit la chaîne fournie dans la fenêtre de sortie de débogage. La méthode writeln ajoute un caractère New Line à ses arguments. Paramètres text

Chaîne

Tous les paramètres sont concaténés en une chaîne unique.

Renvoi Aucun.

Méthode d’annulation de point de rupture clearbp (scriptletName, line);

Supprimer un point de rupture. Le point de rupture est défini par le nom du scriptlet ou de la fonction et par le numéro de la ligne. Si le nom du scriptlet est la chaîne vide ou est absent, le nom du scriptlet en cours d’exécution est utilisé. Si le numéro de la ligne est zéro ou n’est pas fourni, le numéro de la ligne en cours est utilisé. Ainsi, l’appel $.clearbp() sans paramètre annule un point de rupture à la position en cours. La chaîne spéciale "NEXTCALL" en tant que nom de scriptlet entraîne l’annulation d’un point de rupture au prochain appel de fonction. Paramètres scriptletName

Chaîne

Nom du scriptlet dans lequel le point de rupture doit être est annulé.

line

Valeur numérique

Numéro de ligne sur laquelle le point de rupture doit être annulé.

Renvoi Aucun.

Méthode d’exécution de point de rupture bp([condition]);

Comment utiliser l’aide

Page précédente

23

Aide d’Adobe After Effects

Débogage JavaScript

Comment utiliser l’aide

Page précédente

24

Exécute un point de rupture à la position en cours. Une condition peut éventuellement être fournie. La condition est une chaîne d’expression JavaScript évaluée avant l’exécution du point de rupture. Le point de rupture n’est exécuté que si l’expression renvoie la valeur true. Si aucune condition n’est fournie, l’utilisation de l’instruction de débogage est recommandée à la place, car il s’agit d’une instruction JavaScript standard plus fréquemment prise en charge. Paramètres condition

Chaîne

Chaîne d’expression JavaScript facultative évaluée avant l’exécution du point de rupture. Pour activer le point de rupture, l’expression doit évaluer l’équivalent de true.

Renvoi Aucun.

Méthode de nettoyage de mémoire gc ()

Lance un nettoyage de mémoire. Le nettoyage de mémoire est le processus par lequel l’interpréteur JavaScript nettoie les espaces de mémoire qu’il n’utilise plus. Cette opération est automatique. Il peut être utile de la lancer lors de certains débogages de script. Renvoi Aucun.

Comment utiliser l’aide

Page précédente

24

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

25

Référence Ce chapitre énumère et décrit la syntaxe (mots-clés, instructions, opérateurs, classes, objets, méthodes, attributs et fonctions globales) spécifique du moteur de création de scripts After Effects. Le moteur de création de script After Effects prend en charge la 3e édition de la norme ECMA-262, y compris ses conventions de notation et lexicales, ses types, objets, expressions et instructions. Pour obtenir une liste complète des mots-clés et opérateurs inclus avec ECMAScript, reportez-vous au document Ecma-262.pdf, disponible à l’adresse suivante : www.ecma-international.org/publications/standards/ECMA-262.HTM Pour avoir une vue générale des mots-clés et instructions les plus courants disponibles en ECMA-262, reportez-vous à la section « Mots-clés et syntaxe d’instructions », page 10.

Objets, méthodes, attributs et fonctions globales Au fil de votre lecture de cette section de référence, classée par ordre alphabétique en fonction des groupes d’objets, vous pouvez vous reporter aux schémas suivants pour avoir une vue générale de la position des différents objets dans la hiérarchie et de leur correspondance dans l’interface utilisateur.

système

application

paramètres

fichier

item(s) (élément(s))

renderQueueItem(s) (élément(s) de file d’attente de rendu) outputModule(s) (module(s) de sortie)

socket

il existe 3 types pour élément(s) :

projet compItem (composition)

renderQueue (file d’attente de rendu)

dossier

layer(s) (calque(s))

footageItem (métrage)

OU

proxySource (source de doublure)

propriétés

mainSource (source principale)

folderItem (dossier)

OU

proxySource

ITEM(S) (ELEMENT (S))

il existe 3 types pour mainSource & proxySource : solidSource (source solide)

couleur

OU

placeholderSource (source de pseudo-élément)

OU

source de fichier

fichier

Schéma hiérarchique des principaux objets de création de scripts After Effects

Comment utiliser l’aide

Page précédente

25

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

26

La hiérarchie d’objets pour la création de scripts correspond à la hiérarchie de l’interface utilisateur. L’application contient une fenêtre de projet, elle-même contenant une composition avec un calque. La source du calque peut être un fichier de métrage, un pseudo-élément ou un solide, et figure également dans la fenêtre de projet. Le calque contient des paramètres appelés Propriétés, qui peuvent contenir des images clés individuelles. La file d’attente de rendu contient des éléments de file d’attente de rendu, ainsi que des paramètres de rendu et des modules de sortie. Toutes ces règles sont directement analogues à la création de script.

Attributs et propriétés Notez que dans ECMAScript et JavaScript, un morceau de données désigné d’un certain type est habituellement appelé propriété. Toutefois, After Effects utilise déjà une définition distincte de « propriété » qui est la valeur éditable spécifique contenue dans un calque. Par conséquent, dans cette section, nous utilisons le terme synonyme « attribut » pour évoquer ces morceaux de données.

Fonctions globales Cette section décrit les fonctions disponibles au niveau global spécifiques à After Effects. Tout objet ou fonction JavaScript peut appeler les fonctions décrites dans cette section.

Comment utiliser l’aide

Page précédente

26

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

27

Fonctions Fonction

Référence

Description

alert()

voir section « Fonction globale alert() », page 27

affiche une boîte de dialogue d’alerte comportant une chaîne de texte spécifiée

prompt()

voir section « Fonction globale prompt() », page 29

ouvre une boîte de dialogue comportant une zone de texte dans laquelle l’utilisateur peut entrer une chaîne de texte

write()

voir section « Fonction globale write() », page 30

écrit la sortie dans la palette Informations, sans ajout de saut de ligne

writeLn()

voir section « Fonction globale writeLn() », page 30

écrit la sortie dans la palette Informations, en ajoutant un saut de ligne à la fin

clearOutput()

voir section « Fonction globale clearOutput() », page 28

efface la palette Informations

confirm()

voir section « Fonction globale confirm() », page 28

affiche une boîte de dialogue modale et des boutons oui/non d’invite utilisateur, lesquels effacent la boîte de dialogue et renvoient un booléen

fileGetDialog()

voir section « Fonction globale fileGetDialog() », page 28

affiche la boîte de dialogue Ouvrir standard de la plate-forme.

filePutDialog()

voir section « Fonction globale filePutDialog() », page 29

affiche la boîte de dialogue Enregistrer standard de la plateforme

folderGetDialog()

voir section « Fonction globale folderGetDialog() », page 29

affiche une boîte de dialogue dans laquelle l’utilisateur peut sélectionner un dossier

Fonction globale alert() alert(text)

Description La fonction globale Alert ouvre une boîte de dialogue d’alerte contenant un texte d’alerte. L’utilisateur peut alors cliquer sur OK pour fermer la fenêtre. Paramètres text

Comment utiliser l’aide

chaîne de texte affichée dans la boîte de dialogue, pouvant contenir jusqu’à 240 caractères

Page précédente

27

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

28

Exemple alert ( "CoSA Lives!");

Fonction globale clearOutput() clearOutput()

Description La fonction globale clearOutput efface la sortie dans la palette Info. Paramètres Aucun.

Fonction globale confirm() confirm(text)

Description La fonction globale Confirm affiche une boîte de dialogue modale et des boutons oui/non d’invite utilisateur, qui effacent la boîte de dialogue. Ces boutons renvoient un booléen ; true si oui, false si non. Paramètres text

chaîne de texte ; l’interface utilisateur Mac OS peut afficher 256 caractères, celle de Windows, 30 caractères

Renvoi Booléen. Exemple var shouldAdd = confirm("Add to Render Queue?"); if (shouldAdd == "true"){ proj.renderQueue.items.add(myCompItem); }

Fonction globale fileGetDialog() fileGetDialog(prompt,typeList)

Description La fonction globale fileGetDialog affiche la boîte de dialogue Ouvrir standard de la plateforme sur laquelle After Effects est exécuté. typeList est une liste de types de fichiers Mac OS à quatre caractères et délimités par des points-virgules, suivis des extensions de fichiers Windows. Par exemple, une valeur « EggP aep » pour cet argument spécifie que la boîte de dialogue Ouvrir va uniquement afficher les éléments du projet After Effects ; les autres types de fichier seront grisés. Paramètres prompt

message affiché sur la barre de titre de la boîte de dialogue ; tronqué si trop long

typeList

valeur spécifique à la plate-forme indiquant une liste de types de fichiers à afficher

Comment utiliser l’aide

Page précédente

28

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

29

Renvoi Objet File, ou valeur nulle si l’utilisateur annule la boîte de dialogue.

Fonction globale filePutDialog() filePutDialog(prompt,default,type)

Description La fonction globale filePutDialog affiche la boîte de dialogue Enregistrer standard de la plate-forme sur laquelle After Effects est exécuté. Paramètres prompt

message affiché sur la barre de titre de la boîte de dialogue ; tronqué si trop long

default

nom de fichier par défaut à afficher dans la boîte de dialogue Enregistrer ; cette valeur doit observer les conventions de dénominations de fichiers de la plate-forme sur laquelle After Effects est exécuté

type

type de fichier spécifié

Renvoi Objet File, ou valeur nulle si l’utilisateur annule la boîte de dialogue.

Fonction globale folderGetDialog() folderGetDialog(prompt)

Description La fonction globale folderGetDialog affiche une boîte de dialogue dans laquelle l’utilisateur peut sélectionner un dossier. Paramètres message affiché sur la barre de titre de la boîte de dialogue ; tronqué si trop long

prompt

Renvoi Objet Folder, ou valeur nulle si l’utilisateur annule la boîte de dialogue.

Fonction globale prompt() prompt(prompt, default)

Description La fonction globale prompt ouvre une boîte de dialogue comportant une zone de texte dans laquelle l’utilisateur peut entrer une chaîne de texte. La chaîne de texte est renvoyée en tant que valeur, ou est nulle si la boîte de dialogue est annulée. Paramètres prompt

chaîne de texte apparaissant dans la boîte de dialogue

default

chaîne de texte apparaissant par défaut dans la zone de texte

Comment utiliser l’aide

Page précédente

29

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

30

Renvoi Chaîne, ou valeur nulle si la boîte de dialogue est annulée. Lecture seule. Exemple // presuming a project loaded with at least one comp is open: var myCompItem = app.project.item(1); var newName = prompt( "What would you like to name the comp?"); // rename it if (newName) { //if the user cancels, newName is null myCompItem.name = newName; // newName now holds a string }

Fonction globale write() write(text)

Description La fonction globale write écrit la sortie vers la palette Informations, sans ajouter de changement de ligne. Paramètres text

chaîne de texte ; tronquée si trop longue pour la palette Informations

Exemple write(“This text appears in Info palette.”);

Voir aussi « Fonction globale writeLn() », page 30

Fonction globale writeLn() writeLn(text)

Description La fonction globale write écrit la sortie dans la palette Informations et ajoute un changement de ligne à la fin. Paramètres text

chaîne de texte

Exemple writeLn(“This line of text appears in the console window with a line break at the end.”);

Voir aussi « TextDocument », page 196

Comment utiliser l’aide

Page précédente

30

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

31

Objet Application app.

Description L’objet global application (app) permet l’accès aux données et à la fonctionnalité dans l’application After Effects. Les attributs de l’objet Application fournissent l’accès aux objets spécifiques dans After Effects. Les méthodes de l’objet Application peuvent créer des documents, ouvrir des documents existants, contrôler le mode Dossier de contrôle, vider la mémoire et quitter l’application After Effects. Lors de la fermeture de l’application After Effects, celle-ci ferme le projet ouvert en demandant à l’utilisateur d’enregistrer ou d’ignorer les modifications, et crée un fichier de projet comme nécessaire. Attributs Attribut

Référence

project

voir sections « Attribut instance du projet After Effects en Application project », page 39 cours et de tous les attributs et et « Objet Project », page 134 méthodes lui étant associés

language

voir section « Attribut Application language », page 37

version

voir section « Attribut identifie le numéro de version de Application version », page 42 l’application After Effects

serialNumber

voir section « Attribut application serialNumber », page 41

identifie le numéro de série de l’installation After Effects

registeredName

voir « Attribut Application registeredName », page 40

identifie le nom sous lequel l’installation After Effects est enregistrée

registeredCompany

voir section « Attribut Application registeredCompany », page 40

identifie la société à laquelle l’installation After Effects est enregistrée

buildName

voir section « Attribut Application buildName », page 34

identifie le nom de cette compilation de l’application

buildNumber

voir section « Attribut Application buildNumber », page 34

identifie le numéro de cette compilation de l’application

isProfessionalVersion

voir section « Attribut Application isProfessionalVersion », page 36

identifie si la version d’After Effects est la version Professional

Comment utiliser l’aide

Description

identifie la langue dans laquelle l’application est exécutée

Page précédente

31

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

32

Attribut

Référence

Description

isWatchFolder

voir section « Attribut Application isWatchFolder », page 37

booléen renvoyant true lorsque l’application locale est exécutée en mode Dossier de contrôle

isRenderEngine

voir section « Attribut identifie si l’application Application isRenderEngine », After Effects locale est installée en page 37 tant que moteur de rendu

settings

voir sections « Attribut appelle les paramètres dans Application settings », After Effects pouvant être définis page 42 et « Objet Settings », par le biais de la création de script page 187

onError

voir section « Attribut Application onError », page 38

rappel appelé lorsqu’une erreur survient dans l’application

exitCode

voir section « Attribut Application exitCode », page 36

Utilisé lors de l’exécution de script en externe (c’est-à-dire à partir de la ligne de commande ou AppleScript). défini à zéro, indique qu’aucune erreur n’est survenue ; défini à un nombre positif, indique qu’une erreur est survenue lors de l’exécution du script.

exitAfterLaunchAndEval

voir section « Attribut Application exitAfterLaunchAndEval », page 36

indique si l’application doit rester ouverte après l’exécution d’un script à partir de la ligne de commande sous Windows

Méthode

Référence

Description

newProject()

voir section « Méthode Application newProject() », page 38

ouvre un nouveau projet dans After Effects

open()

voir section « Méthode ouvre un projet ou une boîte de Application open() », page 38 dialogue de projet ouvert

quit()

voir section « Méthode Application quit() », page 40

quitte l’application

watchFolder()

voir section « Méthode application watchFolder() », page 42

démarre le mode Dossier de contrôle ; ne renvoie rien tant que ce mode n’est pas désactivé

pauseWatchFolder()

voir section « Méthode Application pauseWatchFolder() », page 39

interrompt temporairement le processus de dossier de contrôle en cours

Méthodes

Comment utiliser l’aide

Page précédente

32

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

33

Méthode

Référence

Description

endWatchFolder()

voir section « Méthode Application endWatchFolder() », page 35

met fin au processus de dossier de contrôle en cours

purge()

voir section « Méthode purge un type ciblé d’informations Application purge() », page 39 mises en mémoire cache (reproduit les options de la commande Purger du menu Edition)

beginUndoGroup()

voir section « Méthode groupe les actions qui la suivent en Application une seule étape définitive beginUndoGroup() », page 34

endUndoGroup()

voir section « Méthode Application endUndoGroup() », page 35

termine un groupe d’annulation ; nécessaire seulement lorsqu’un script contient plusieurs groupes d’annulation

beginSuppressDialogs()

voir section « Méthode Application beginSuppressDialogs() », page 33

commence la suppression des boîtes de dialogue dans l’interface utilisateur

endSuppressDialogs()

voir section « Méthode Application endSuppressDialogs() », page 34

met fin à la suppression de boîtes de dialogues dans l’interface utilisateur

setMemoryUsageLimits()

voir section « Méthode Application setMemoryUsageLimits() », page 41

définit les limites d’utilisation de mémoire, comme dans l’onglet des préférences du cache

setSavePreferencesOnQuit( )

voir section « Méthode indique si les préférences doivent Application être enregistrées lorsque setSavePreferencesOnQuit() » l’application est quittée , page 41

Méthode Application beginSuppressDialogs() app.beginSuppressDialogs()

Description Cette méthode commence la suppression des boîtes de dialogue dans l’interface utilisateur. Paramètres Aucun. Renvoi Aucun.

Comment utiliser l’aide

Page précédente

33

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

34

Méthode Application beginUndoGroup() app.beginUndoGroup(undoString)

Description Un groupe d’annulation autorise un script à grouper de façon logique toutes ses actions en tant qu’action unique définitive (à utiliser dans les éléments de menu Edition > Annuler/Rétablir). Doit être utilisé en association avec la méthode application.endUndoGroup(). Notez que les paires beginUndoGroup() et endUndoGroup() peuvent être imbriquées. Les groupes dans les groupes deviennent partie intégrante du plus grand groupe et seront annulés correctement. Dans de tels cas, les noms des groupes internes sont ignorés. Paramètres undoString

(obligatoire) texte qui apparaîtra pour la commande Annuler dans le menu Edition (c’est-à-dire Annuler u n doS t r i n g )

Voir aussi « Méthode Application endUndoGroup() », page 35

Attribut Application buildName app.buildName

Description L’attribut buildName identifie le nom de la compilation d’After Effects en cours d’exécution. Adobe utilise principalement cet attribut pour les essais et le dépannage. Type Chaîne ; lecture seule.

Attribut Application buildNumber app.buildNumber

Description L’attribut buildNumber identifie le numéro de la compilation d’After Effects en cours d’exécution. Adobe utilise principalement cet attribut pour les essais et le dépannage. Type Entier ; lecture seule.

Méthode Application endSuppressDialogs() app.endSuppressDialogs(alert)

Description Cette méthode met fin à la suppression des boîtes de dialogue dans l’interface utilisateur. Elle ne doit être appelée que si beginSuppressDialogs() l’a préalablement été. Si l’argument alert en entrée est vrai et si une erreur est survenue entre les appels de beginSuppressDialogs() et de endSuppressDialogs(), ce message d’erreur s’affiche.

Comment utiliser l’aide

Page précédente

34

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

35

Paramètres alert

booléen ; indique si les erreurs survenues après beginSuppressDialogs() doivent être affichées

Voir aussi « Méthode Application beginSuppressDialogs() », page 33

Méthode Application endUndoGroup() app.endUndoGroup()

Description Cette méthode termine le groupe d’annulation commencé par la méthode app.beginUndoGroup(). Vous pouvez utiliser cette méthode pour placer une fin de groupe d’annulation au milieu d’un script si vous souhaitez utiliser plusieurs groupes d’annulation pour un seul script. Si vous n’utilisez qu’un seul groupe d’annulation pour un script donné, vous n’avez pas besoin d’utiliser cette méthode. En son absence à la fin d’un script, le système fermera le groupe d’annulation automatiquement. Le fait d’appeler cette méthode sans avoir défini de méthode beginUndoGroup() génère une erreur. Paramètres Aucun. Renvoi Aucun. Voir aussi « Méthode Application beginUndoGroup() », page 34

Méthode Application endWatchFolder() app.endWatchFolder()

Description La méthode endWatchFolder() met fin au mode Dossier de contrôle. Paramètres Aucun. Voir aussi « Attribut Application version », page 42 « Méthode Application pauseWatchFolder() », page 39

Comment utiliser l’aide

Page précédente

35

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

36

Attribut Application exitAfterLaunchAndEval app.exitAfterLaunchAndEval

Description Cet attribut n’est utilisé que lors de l’exécution d’un script à partir d’une ligne de commande sous Windows. Lorsque l’application est lancée à partir de la ligne de commande, si l’indicateur de ligne de commande - r ou - s est utilisé, l’application exécute un script (à partir d’un fichier et d’une chaîne, respectivement). Si cet attribut est défini sur true, After Effects quitte après l’exécution du script ; s’il est défini sur false, l’application reste ouverte. Notez que cet attribut n’a d’effet que si After Effects est exécuté et n’a aucun effet sur Mac OS. Type Booléen ; lecture/écriture.

Attribut Application exitCode app.exitCode

Description L’attribut exitCode n’est utilisé que lors de l’exécution d’un script en dehors d’After Effects (à partir d’une ligne de commande ou d’AppleScript). Sur Mac OS et sous Windows, exitCode est défini sur 0 (EXIT_SUCCESS) au début de chaque évaluation de script. En cas d’erreur lors de l’exécution du script, exitCode sera défini à un nombre entier positif. Type Entier ; lecture/écriture. Exemple app.exitCode = 2; //on quit, if value is 2, no error has occurred

Attribut Application isProfessionalVersion app.isProfessionalVersion

Description L’attribut isProfessionalVersion est un booléen utilisé pour déterminer si l’application After Effects installée localement est la version Standard ou Professional. Type Booléen ; lecture seule. Exemple var PB = app.isProductionBundle; alert("It is " + PB + " that you are running the Production Bundle.");

Comment utiliser l’aide

Page précédente

36

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

37

Attribut Application isRenderEngine app.isRenderEngine

Description L’attribut isRenderEngine est un booléen utilisé pour déterminer si une installation d’After Effects est une installation Moteur de rendu uniquement. Type Booléen ; lecture seule.

Attribut Application isWatchFolder app.isWatchFolder

Description L’attribut isWatchFolder est un booléen utilisé pour déterminer si la boîte de dialogue Dossier de contrôle est affichée actuellement (et si l’application est en train de contrôler un dossier pour le rendu). Il renvoie true lorsque la boîte de dialogue Dossier de contrôle est ouverte. Type Booléen ; lecture seule.

Attribut Application language app.language

Description L’attribut language indique dans quelle langue After Effects est exécuté. Les codes de l’attribut de langue sont les suivants : •

Language.ENGLISH



Language.FRENCH



Language.GERMAN



Language.JAPANESE

Type Type de langue énuméré (voir liste ci-dessus). Exemple var lang = app.language; if (lang == Language.JAPANESE){ alert("After Effects is running in Japanese.")}; else if (lang == Language.ENGLISH){ alert("After Effects is running in English.")}; else if (lang == Language.FRENCH){ alert("After Effects is running in French.")}; else{ alert("After Effects is running in German.") };

Comment utiliser l’aide

Page précédente

37

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

38

Méthode Application newProject() app.newProject()

Description La méthode newProject ouvre un nouveau projet dans After Effects, en reproduisant la commande de menu Fichier > Créer > Nouveau projet. Si un projet est déjà ouvert et a été modifié, un message invite l’utilisateur à le sauvegarder. Utilisez app.project.close(CloseOptions.DO_NOT_SAVE_CHANGES) pour fermer un projet ouvert avant d’en ouvrir un nouveau. Paramètres Aucun. Renvoi Objet Project ; nul si l’utilisateur annule une boîte de dialogue Enregistrer en réaction au fait qu’un projet ouvert a été modifié depuis le dernier enregistrement. Exemple app.project.close(CloseOptions.DO_NOT_SAVE_CHANGES); app.newProject();

Voir aussi « Méthode Project close() », page 137

Attribut Application onError app.onError

Description L’attribut onError prend une fonction pour exécuter une action lorsqu’une erreur survient. En créant une fonction et en l’attribuant à onError, il est possible de réagir à l’erreur systématiquement, par exemple en fermant et redémarrant l’application et en notant l’erreur dans un fichier journal si elle est survenue en cours de rendu. Type Fonction prenant une chaîne ou valeur nulle si aucune fonction n’est attribuée. Exemple function err(errString) ( alert(errString); ) app.onError = err

Méthode Application open() app.open() app.open(file)

Description La méthode open() ouvre un projet. Si le paramètre file est nul (c’est-à-dire si aucun argument n’est utilisé), une boîte de dialogue s’affiche pour que l’utilisateur sélectionne et ouvre un fichier.

Comment utiliser l’aide

Page précédente

38

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

39

Paramètres file

(Facultatif) Objet file en cours d’ouverture

Renvoi Objet Project (le fichier spécifié en tant que paramètre), ou valeur nulle si l’utilisateur annule la boîte de dialogue Ouvrir. Exemple var my_file = new File("../my_folder/my_test.aep"); if (my_file.exist){ new_project = app.open(my_file); if (new_project){ alert(new_project.file.name); } }

Méthode Application pauseWatchFolder() app.pauseWatchFolder(pause)

Description La méthode pauseWatchFolder() interrompt temporairement la recherche du dossier cible pour les éléments de rendu. Paramètres pause

booléen (mis en attente - true ou false)

Voir aussi « Attribut Application version », page 42 « Méthode Application endWatchFolder() », page 35

Attribut Application project app.project

Description Cet attribut correspond au projet en cours. Pour plus d’informations sur le contenu de l’objet Project, reportez-vous à la section « Objet Project », page 134. Type Projet ; lecture seule.

Méthode Application purge() app.purge(target)

Description La méthode purge reproduit la fonctionnalité et les options cible des options de la commande Purger du menu Edition. Le paramètre target contient la zone de mémoire à purger ; les options de target sont décrites en tant que variables énumérées ci-dessous.

Comment utiliser l’aide

Page précédente

39

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

40

Paramètres target

type d’éléments à purger de la mémoire ; utilisez l’un des types énumérés cidessous

Types énumérés PurgeTarget.ALL_CACHES

purge toutes les données qu’After Effects a mises en mémoire cache dans la mémoire physique

PurgeTarget.UNDO_CACHES

purge toutes les données sauvegardées dans le cache d’annulation

PurgeTarget.SNAPSHOT_CACHES

purge toutes les données mises en cache en tant qu’instantanés de composition/calque

PurgeTarget.IMAGE_CACHES

purge toutes les données d’image sauvegardées

Méthode Application quit() app.quit()

Description La méthode quit quitte l’application. Paramètres Aucun. Renvoi Aucun.

Attribut Application registeredCompany app.registeredCompany

Description Chaîne de texte ; nom (le cas échéant) entré par l’utilisateur de l’application comme société enregistrée au moment de l’installation. Type Chaîne de texte ; lecture seule. Exemple var company = app.registeredCompany; alert(“Your company name is “ + company + “.”);

Attribut Application registeredName app.registeredName

Description L’attribut registeredName contient la chaîne de texte que l’utilisateur de l’application a entrée comme nom enregistré au moment de l’installation. Type Chaîne de texte ; lecture seule. Comment utiliser l’aide

Page précédente

40

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

41

Exemple var userName = app.registeredName; confirm(“Are you “ + userName + “?”);

Attribut application serialNumber app.serialNumber

Description L’attribut serialNumber contient une chaîne alphanumérique qui est le numéro de série de la version installée d’After Effects. Type Chaîne ; lecture seule. Exemple var serial = app.serialNumber; alert("This copy is serial number " + serial);

Méthode Application setMemoryUsageLimits() app.setMemoryUsageLimits(imageCachePercentage, maximumMemoryPercentage)

Description Cette méthode définit les limites d’utilisation de mémoire, comme dans l’onglet des préférences du cache Paramètres imageCachePercentage

valeur de la virgule flottante ; pourcentage de mémoire assigné au cache image

maximumMemoryPercentage

valeur de la virgule flottante ; pourcentage d’utilisation maximale de mémoire

Renvoi Aucun.

Méthode Application setSavePreferencesOnQuit() app.setSavePreferencesOnQuit(doSave)

Description Cette méthode définit l’alternance qui détermine si les préférences doivent être enregistrées à la fermeture de l’application (quit). Paramètres doSave

booléen ; s’il est défini sur true, les préférences sont enregistrées à la fermeture

Renvoi Aucun.

Comment utiliser l’aide

Page précédente

41

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

42

Attribut Application settings app.settings

Description Cet attribut contient les paramètres en cours. Pour plus d’informations sur le contenu de l’objet Settings, reportez-vous à la section « Objet Settings », page 187. Type Paramètres ; lecture seule.

Attribut Application version app.version

Description L’attribut version renvoie une chaîne alphanumérique indiquant la version d’After Effects en cours d’exécution. Type Chaîne ; lecture seule. Exemple var ver = app.version; alert("This machine is running version " + ver + " of After Effects.");

Méthode application watchFolder() app.watchFolder(folder_object_to_watch)

Description La méthode watchFolder() démarre un processus de dossier de contrôle (rendu en réseau) pointant vers un dossier spécifié. Paramètres folder_object_to_watch

objet Folder à contrôler

Exemple var theFolder = new Folder(“c:\\tool”); app.watchFolder(theFolder);

Voir aussi « Méthode Application endWatchFolder() », page 35 « Méthode Application pauseWatchFolder() », page 39

Objet AVItem app.project.item(index)

Description L’objet AVitem fournit l’accès aux attributs et aux méthodes des fichiers audiovisuels importés dans After Effects. Comment utiliser l’aide

Page précédente

42

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

43

AVItem est la classe de base de CompItem et de FootageItem, de sorte que les attributs et les méthodes AVItem sont également disponibles pour l’utilisation de CompItem et de FootageItem. Attributs Attribut

Référence

name

voir section « Attribut AVItem nom de l’objet, tel qu’affiché dans name », page 47 la fenêtre de projet

width

voir section « Attribut AVItem entier [1 ..30 000] décrivant la width », page 50 largeur de l’élément, en pixels

height

voir section « Attribut AVItem entier [1 .. 30 000] décrivant la height », page 46 hauteur de l’élément, en pixels

pixelAspect

voir section « Attribut AVItem format des pixels ; valeur de la pixelAspect », page 47 virgule flottante [0.01 ..100]

frameRate

voir section « Attribut AVItem cadence d’image de l’AVItem frameRate », page 46 [1..99]

frameDuration

voir section « Attribut AVItem cadence d’image pour l’AVItem [1/ frameDuration », page 45 99 .. 1 ]

duration

voir section « Attribut AVItem durée de l’AVItem, en secondes [0 .. duration », page 45 10 800]

useProxy

voir section « Attribut AVItem booléen indiquant si une source de useProxy », page 50 doublure doit être utilisée pour cet élément

proxySource

voir section « Attribut AVItem FootageItem utilisé comme proxySource », page 47 doublure de l’AVItem ; lecture seule

time

voir section « Attribut AVItem instant courant de l’AVItem, en time », page 50 secondes

usedIn

voir section « Attribut AVItem tableau contenant toutes les usedIn », page 50 compositions utilisant cet AVItem

hasVideo

voir section « Attribut AVItem true si l’AVItem possède un hasVideo », page 46 composant audio

hasAudio

voir section « Attribut AVItem true si l’AVItem possède un hasAudio », page 46 composant vidéo

footageMissing

voir section « Attribut AVItem true si l’AVItem est introuvable ou footageMissing », page 45 s’il s’agit d’un pseudo-élément

Comment utiliser l’aide

Description

Page précédente

43

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

44

Attributs de l’objet Item (voir section « Objet Item », page 107) Attribut

Référence

Description

name

voir section « Attribut Item name », page 109

nom de l’objet, tel qu’affiché dans la fenêtre de projet

comment

voir section « Attribut Item comment », page 109

chaîne contenant un commentaire

id

voir section « Attribut Item id », page 109

ID d’entier unique pour cet élément

parentFolder

voir section « Attribut Item parentFolder », page 109

dossier parent de cet élément

selected

voir section « Attribut Item selected », page 110

true si cet élément est actuellement sélectionné

typeName

voir section « Attribut Item typeName », page 110

chaîne correspondant au type d’élément

Méthode

Référence

Description

setProxy()

voir section « Méthode AVItem setProxy() », page 48

définit une doublure pour l’AVItem

setProxyWithSequence()

voir section « Méthode AVItem setProxyWithSequence() », page 49

définit une séquence comme doublure pour l’AVItem

setProxyWithSolid()

voir section « Méthode définit un solide comme doublure AVItem setProxyWithSolid() », (fonction uniquement disponible page 49 par le biais de la création de script)

setProxyWithPlaceholder()

voir section « Méthode AVItem setProxyWithPlaceholder() », page 48

définit un pseudo-élément comme doublure

setProxyToNone()

voir section « Méthode AVItem setProxyToNone() », page 48

supprime la doublure

Méthodes

Méthode de l’objet Item (voir section « Objet Item », page 107) Méthode

Référence

Description

remove()

voir section « Méthode Item remove() », page 109

supprime l’élément du projet

Comment utiliser l’aide

Page précédente

44

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

45

Attribut AVItem duration app.project.item(index).duration

Description L’attribut duration renvoie la durée de l’élément, en secondes. Cet attribut est en lecture seule sauf s’il s’agit d’un CompItem. La plage des valeurs autorisées est [0..10 800]. Dans un FootageItem, l’attribut duration est lié à la durée de la source principale ; dans un CompItem, il est lié à la durée de la composition. Cette valeur peut uniquement être écrite dans un CompItem. Vous ne devez pas modifier sa valeur si l’élément est un FootageItem. Remarque : les éléments de métrage fixe ont une durée de 0. Type valeur de la virgule flottante ; secondes. Lecture/écriture lorsque l’élément est un CompItem ; sinon, lecture seule.

Attribut AVItem footageMissing app.project.item(index).footageMissing

Description L’attribut footageMissing est true si l’AVItem est introuvable ou s’il s’agit d’un pseudoélément. Type Booléen ; lecture seule.

Attribut AVItem frameDuration app.project.item(index).frameDuration

Description L’attribut frameDuration renvoie la longueur, en secondes, d’une image pour cet AVItem. La plage des valeurs autorisées est [1/99 .. 1 ] Réciproque de la cadence d’images. Lorsque vous définissez la durée de l’image, en réalité vous stockez la réciproque en tant que nouvelle cadence. Lorsque vous lisez la valeur, vous extrayez la réciproque de la cadence d’image. Par conséquent, si vous définissez puis obtenez une valeur de durée d’image indivisible régulièrement par 1,0 (par exemple, 0,3), la valeur que vous obtiendrez sera proche, mais pas exactement identique, en raison de limitations numériques, (1 / ( 1 / 0.3) ) != 0.3, mais plutôt proche de 0,3. Si l’AVItem est un FootageItem, cet attribut est en lecture seule. Dans le cas d’un FootageItem, vous devez écrire dans le conformFrameRate de la source principale afin de modifier la cadence, et par conséquent la durée d’image. Type valeur de la virgule flottante ; secondes. Lecture/écriture ou lecture seule si l’AVItem est un FootageItem.

Comment utiliser l’aide

Page précédente

45

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

46

Attribut AVItem frameRate app.project.item(index).frameRate

Description L’attribut frameRate renvoie la cadence d’image de l’AVItem. La plage des valeurs autorisées est [1..99]. Si l’AVItem est un CompItem, cette valeur correspond à la cadence de la composition. Si l’AVItem est un FootageItem, cette valeur correspond au displayFrameRate de la source principale et est en lecture seule. Dans le cas d’un FootageItem, vous devez écrire dans le conformFrameRate de la source principale afin de modifier la cadence d’image. Type Valeur de la virgule flottante ; images par seconde. Lecture/écriture ou lecture seule si l’AVItem est un FootageItem.

Attribut AVItem hasAudio app.project.item(index).hasAudio

Description L’attribut hasAudio est true si l’AVItem possède un composant audio. Dans le cas d’un CompItem, la valeur correspond à la valeur de la composition. Dans le cas d’un FootageItem, la valeur correspond à la valeur de la source principale. Type Booléen ; lecture seule.

Attribut AVItem hasVideo app.project.item(index).hasVideo

Description L’attribut hasVideo est true si l’AVItem possède un composant vidéo. Dans le cas d’un CompItem, la valeur correspond à la valeur de la composition. Dans le cas d’un FootageItem, la valeur correspond à la valeur de la source principale. Type Booléen ; lecture seule.

Attribut AVItem height app.project.item(index).height

Description L’attribut height correspond à la hauteur de l’élément, en pixels.

Comment utiliser l’aide

Page précédente

46

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

47

La plage des valeurs autorisées est [1 ..30 000]. Dans un FootageItem, l’attribut height est lié à la hauteur de la source principale ; dans un CompItem, il est lié à la hauteur de la composition. Il est permis de modifier la hauteur d’un CompItem ou d’un FootageItem dont la source principale est une SolidSource. En revanche, vous ne devez pas modifier la hauteur si l’élément est un FootageItem dont la source principale n’est pas une SolidSource. Type Entier ; lecture seule sauf s’il s’agit d’un CompItem.

Attribut AVItem name app.project.item(index).name

Description L’attribut name correspond au nom de l’objet tel qu’affiché dans la fenêtre de projet. Dans un FootageItem, le nom est lié à la source principale. Vous ne devez pas modifier le nom si la source principale est une FileSource ; en effet, cela associerait le nom à celui du ou des fichiers, et il ne pourrait pas être modifié. Type Chaîne ; lecture/écriture.

Attribut AVItem pixelAspect app.project.item(index).pixelAspect

Description L’attribut pixelAspect détermine le format des pixels d’un élément donné. La plage des valeurs autorisées est [0.01 .. 100]. Dans un FootageItem, l’attribut pixelAspect est lié au format des pixels de la source principale ; dans un CompItem, il est lié au format des pixels de la composition. Certaines valeurs pixelAspect sont connues d’After Effects et sont stockées/extraites avec précision. Ces valeurs sont celles de la série { 1, 0.9, 1.2, 1.07, 1.42, 2, 0.95, 1.9 }. Les autres valeurs peuvent subir de légères erreurs d’arrondi lorsque vous les définissez et les extrayez. Par conséquent, la valeur que vous extrayez après la définition peut être légèrement différente de celle que vous avez fournie. Type Valeur de la virgule flottante ; lecture seule sauf s’il s’agit d’un CompItem.

Attribut AVItem proxySource app.project.item(index).proxySource

Description L’attribut proxySource est le FootageSource utilisé comme doublure. Cet attribut est en lecture seule, mais il peut être modifié en appelant l’une des méthodes AVItem qui modifient la source de la doublure, à savoir setProxy(), setProxyWithSequence(), setProxyWithSolid() et setProxyWithPlaceholder().

Comment utiliser l’aide

Page précédente

47

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

48

Type FootageSource ; lecture seule.

Méthode AVItem setProxy() app.project.item(index).setProxy(File file)

Description La méthode setProxy définit un fichier comme doublure d’un AVItem. Elle charge ce fichier dans un FileSource et l’établit comme nouvelle source de doublure. Elle ne conserve pas les paramètres d’interprétation et utilise la préférence utilisateur à la place. Cette attitude est différente de ce qui se produit avec la source principale d’un métrage, mais les deux se comportent de la même façon que l’interface utilisateur. Si le fichier comporte une couche alpha non identifiée et si la préférence utilisateur spécifie d’afficher un message indiquant quoi faire à l’utilisateur, la création de script devine l’interprétation alpha au lieu de la demander à l’utilisateur. Après avoir changé la source de la doublure, cette méthode définit la valeur de useProxy sur true. Paramètres File

fichier à utiliser en tant que proxy

Renvoi Aucun.

Méthode AVItem setProxyToNone() app.project.item(index).setProxyToNone()

Description La méthode setProxyToNone supprime la doublure de cet AVItem. Suite à cela, la valeur de proxySource est nulle. Renvoi Aucun.

Méthode AVItem setProxyWithPlaceholder() app.project.item(index).setProxyWithPlaceholder(name, width, height, frameRate, duration)

Description La méthode setProxyWithPlaceholder crée une PlaceholderSource avec des spécifications en fonction des arguments en entrée et décrit cela comme la nouvelle proxySource. Notez qu’il n’existe pas de moyen direct de définir un pseudo-élément en tant que doublure dans l’interface utilisateur ; ce comportement se produit lorsqu’une doublure a été définie, puis déplacée ou supprimée. Cette méthode ne conserve pas les paramètres d’interprétation. Une fois que la source de la doublure a été modifiée, la valeur de useProxy est définie sur true.

Comment utiliser l’aide

Page précédente

48

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

49

Paramètres name

chaîne de texte

width, height

dimensions de solide, en pixels [4..30 000]

frameRate

images par seconde [1..99]

duration

longueur en secondes [0..10 800] (jusqu’à 3 heures)

Renvoi Aucun.

Méthode AVItem setProxyWithSequence() app.project.item(index).setProxyWithSequence(file, forceAlphabetical)

Description La méthode setProxy charge la séquence donnée dans une FileSource et l’établit comme nouvelle source de doublure. Elle charge la séquence donnée dans une FileSource et l’établit comme nouvelle source de doublure. Elle ne conserve pas les paramètres d’interprétation et utilise la préférence utilisateur à la place. Si le fichier comporte une couche alpha non identifiée et si la préférence utilisateur spécifie d’afficher un message indiquant quoi faire à l’utilisateur, la création de script devine l’interprétation alpha au lieu de la demander à l’utilisateur. Paramètres File

fichier à utiliser en tant que doublure.

forceAlphabetical

booléen indiquant si l’option d’ordre alphabétique doit être utilisée

Renvoi Aucun.

Méthode AVItem setProxyWithSolid() app.project.item(index).setProxyWithSolid(color, name, width, height, pixelAspect)

Description La méthode setProxyWithSolid crée une SolidSource avec des spécifications en fonction des arguments en entrée et établit cette SolidSource comme la nouvelle proxySource. Notez que l’interface utilisateur n’offre aucun moyen de définir un solide comme doublure ; cette fonction n’est disponible que par le biais de la création de script. Cette méthode ne conserve pas les paramètres d’interprétation. Une fois que la source de la doublure a été modifiée, la valeur de useProxy est définie sur true.

Comment utiliser l’aide

Page précédente

49

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

50

Paramètres color

tableau de trois valeurs de virgule flottante comprises dans la plage [0..1] (valeurs rouge, vert et bleu)

width, height

dimension de solide, en pixels [1..30 000]

pixelAspect

format des pixels du solide [0.01 .. 100]

Renvoi Aucun.

Attribut AVItem time app.project.item(index).time

Description L’attribut time correspond à l’instant courant de l’élément lorsqu’il est directement prévisualisé à partir de la fenêtre de projet. Vous ne devez pas le définir sur un métrage dont la source principale est fixe (c’est-à-dire si mainSource.isStill est true). Type Valeur de la virgule flottante ; lecture/écriture.

Attribut AVItem usedIn app.project.item(index).usedIn

Description L’attribut usedIn est un tableau contenant tous les CompItems qui utilisent cet AVItem. Remarque : la valeur renvoyée n’est pas mise à jour automatiquement pour refléter les changements qui se produisent une fois que vous l’avez extraite. Ainsi, si vous extrayez usedIn, puis ajoutez cet élément dans une autre composition, vous devez de nouveau extraire usedIn pour obtenir un tableau incluant la nouvelle composition. Type Tableau de CompItem ; lecture seule.

Attribut AVItem useProxy app.project.item(index).useProxy

Description L’attribut useProxy détermine si une doublure doit être utilisée pour l’élément. Type Booléen ; lecture/écriture.

Attribut AVItem width app.project.item(index).width

Comment utiliser l’aide

Page précédente

50

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

51

Description L’attribut width spécifie la largeur de l’élément, en pixels. La plage des valeurs autorisées est [1 ..30 000]. Dans un FootageItem, l’attribut width est lié à la largeur de la source principale ; dans un CompItem, il est lié à la largeur de la composition. Il est permis de modifier la largeur d’un CompItem ou d’un FootageItem dont la source principale est une SolidSource. En revanche, vous ne devez pas modifier la largeur si l’élément est un FootageItem dont la source principale n’est pas une SolidSource. Type Entier ; lecture seule sauf s’il s’agit d’un CompItem.

Objet AVLayer app.project.layer(index)

Description L’objet AVLayer fournit une interface aux calques contenant des AVItems (calques de composition, de métrage, solide, de texte et de son). AVLayer étant une sous-classe de Layer, toutes les méthodes et tous les attributs de Layer, outre ceux énumérés ci-dessous, sont disponibles lorsque vous utilisez AVLayer. Attributs Attribut

Référence

source

voir section « Attribut AVLayer élément source pour ce calque source », page 58

isNameFromSource

voir section « Attribut AVLayer true si le calque ne possède pas de isNameFromSource », nom explicitement défini, mais page 57 contient une source nommée

height

voir section « Attribut AVLayer hauteur du calque, en pixels height », page 57

width

voir section « Attribut AVLayer largeur du calque, en pixels width », page 59

audioEnabled

voir section « Attribut AVLayer true si l’audio du calque est activé audioEnabled », page 54

motionBlur

voir section « Attribut AVLayer true si le flou directionnel du motionBlur », page 57 calque est activé

effectsActive

voir section « Attribut AVLayer true si les effets du calque sont effectsActive », page 56 actifs

adjustmentLayer

voir section « Attribut AVLayer true s’il s’agit d’un calque d’effets adjustmentLayer », page 53

guideLayer

voir section « Attribut AVLayer indique si cet AVLayer est un guideLayer », page 56 calque repère

Comment utiliser l’aide

Description

Page précédente

51

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

52

Attribut

Référence

threeDLayer

voir section « Attribut AVLayer true s’il s’agit d’un calque 3D threeDLayer », page 58

canSetCollapseTransformat ion

voir section « Attribut AVLayer true s’il est permis de modifier la canSetCollapseTransformatio valeur de collapseTransformation n », page 55 sur ce calque

collapseTransformation

voir section « Attribut AVLayer true si la condensation des collapseTransformation », transformations est activée page 55

frameBlending

voir section « Attribut AVLayer true si l’interpolation est activée frameBlending », page 56

canSetTimeRemapEnabled

voir section « Attribut AVLayer true s’il est permis de modifier la canSetTimeRemapEnabled », valeur de timeRemap page 55

timeRemapEnabled

voir section « Attribut AVLayer true si le remappage temporel est timeRemapEnabled », activé pour ce calque page 58

hasAudio

voir section « Attribut AVLayer true si le calque contient un hasAudio », page 56 composant audio

audioActive

voir section « Attribut AVLayer true si le composant audio du audioActive », page 53 calque est actif à l’instant courant

blendingMode

voir section « Attribut AVLayer mode de fusion du calque blendingMode », page 54

preserveTransparency

voir section « Attribut AVLayer true si l’option Préserver la preserveTransparency », transparence est activée page 57

trackMatteType

voir section « Attribut AVLayer si le calque comporte un cache par trackMatteType », page 58 approche, spécifie la manière dont il sera appliqué

isTrackMatte

voir section « Attribut AVLayer true si le calque est utilisé comme isTrackMatte », page 57 cache par approche pour le calque sous-jacent

hasTrackMatte

voir section « Attribut AVLayer true si le calque immédiatement hasTrackMatte », page 56 supérieur est utilisé comme cache par approche sur ce calque

quality

voir section « Attribut AVLayer définition des paramètres de quality », page 58 qualité du calque

guideLayer

voir section « Attribut AVLayer true si le calque est un calque guideLayer », page 56 repère

Comment utiliser l’aide

Description

Page précédente

52

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

53

Méthode Méthode

Référence

Description

audioActiveAtTime()

voir section « Méthode AVLayer audioActiveAtTime() », page 53

informe si le composant audio de ce calque est actif à un instant donné

Exemple Si le premier élément du projet est un CompItem et si le premier calque de ce CompItem est un AVLayer, le code suivant définit la qualité du calque, son instant de début (startTime) et son point d’entrée. var firstLayer = app.project.item(1).layer(1); firstLayer.quality = LayerQuality.BEST; firstLayer.startTime = 1; firstLayer.inPoint = 2;

Attribut AVLayer adjustmentLayer app.project.item(index).adjustmentLayer

Description L’attribut adjustmentLayer renvoie une valeur true si le calque est un calque d’effets. Type Booléen ; lecture/écriture.

Attribut AVLayer audioActive app.project.item(index).audioActive

Description L’attribut audioActive renvoie une valeur true si le composant audio du calque est actif à l’instant courant. Pour que la valeur soit true, audioEnabled doit également être true, aucun autre calque comportant de l’audio ne doit être en isolation sauf si ce calque l’est aussi, et l’instant donné doit être compris entre le point d’entrée et le point de sortie de ce calque. Type Booléen ; lecture seule.

Méthode AVLayer audioActiveAtTime() app.project.item(index).audioActiveAtTime(time)

Description La méthode audioActiveAtTime informe si le composant audio de ce calque sera actif à un instant donné. Pour que la valeur soit true, l’attribut audioEnabled du calque doit également être true, aucun autre calque contenant de l’audio ne doit être en isolation sauf si ce calque l’est aussi, et l’instant donné doit être compris entre le point d’entrée et le point de sortie de ce calque. Comment utiliser l’aide

Page précédente

53

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

54

Paramètres time

temps, en secondes (valeur de la virgule flottante)

Renvoi Booléen.

Attribut AVLayer audioEnabled app.project.item(index).audioEnabled

Description L’attribut audioEnabled est true si l’audio du calque est activé. Cet attribut correspond au bouton de haut-parleur de l’interface utilisateur. Type Booléen ; lecture/écriture.

Attribut AVLayer blendingMode app.project.item(index).blendingMode.

Description Le blendingMode est le mode de fusion du calque. Type Type énuméré (lecture/écriture) ; l’un des suivants : BlendingMode.ADD BlendingMode.ALPHA_ADD BlendingMode.CLASSIC_COLOR_BURN BlendingMode.CLASSIC_COLOR_DODGE BlendingMode.CLASSIC_DIFFERENCE BlendingMode.COLOR BlendingMode.COLOR_BURN BlendingMode.COLOR_DODGE BlendingMode.DANCING_DISSOLVE BlendingMode.DARKEN BlendingMode.DIFFERENCE BlendingMode.DISSOLVE BlendingMode.EXCLUSION BlendingMode.HARD_LIGHT BlendingMode.HARD_MIX BlendingMode.HUE BlendingMode.LIGHTEN

Comment utiliser l’aide

Page précédente

54

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

55

BlendingMode.LINEAR_BURN BlendingMode.LINEAR_DODGE BlendingMode.LINEAR_LIGHT BlendingMode.LUMINESCENT_PREMUL BlendingMode.LUMINOSITY BlendingMode.MULTIPLY BlendingMode.NORMAL BlendingMode.OVERLAY BlendingMode.PIN_LIGHT BlendingMode.SATURATION BlendingMode.SCREEN BlendingMode.SILHOUETE_ALPHA BlendingMode.SILHOUETTE_LUMA BlendingMode.SOFT_LIGHT BlendingMode.STENCIL_ALPHA BlendingMode.STENCIL_LUMA BlendingMode.VIVID_LIGHT

Attribut AVLayer canSetCollapseTransformation app.project.item(index).canSetCollapseTransformation

Description L’attribut canSetCollapseTransformation renvoie une valeur true s’il est permis de modifier la valeur de l’attribut collapseTransformation sur ce calque. Type Booléen ; lecture seule.

Attribut AVLayer canSetTimeRemapEnabled app.project.item(index).canSetTimeRemapEnabled

Description L’attribut canSetTimeRemapEnabled renvoie une valeur true s’il est permis de modifier la valeur de l’attribut timeRemapEnabled sur ce calque. Type Booléen ; lecture seule.

Attribut AVLayer collapseTransformation app.project.item(index).collapseTransformation

Description L’attribut collapseTransformation renvoie une valeur true si la condensation des transformations est activée pour ce calque.

Comment utiliser l’aide

Page précédente

55

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

56

Type Booléen ; lecture/écriture.

Attribut AVLayer effectsActive app.project.item(index).effectsActive

Description L’attribut effectsActive renvoie une valeur true si les effets du calque sont activés. Type Booléen ; lecture/écriture.

Attribut AVLayer frameBlending app.project.item(index).frameBlending

Description L’attribut frameBlending renvoie une valeur true si le mode de fusion est activé. Type Booléen ; lecture/écriture.

Attribut AVLayer guideLayer app.project.item(index).guideLayer

Description Cet attribut renvoie une valeur true si le calque est un calque repère. Type Booléen ; lecture seule.

Attribut AVLayer hasAudio app.project.item(index).hasAudio

Description L’attribut hasAudio contient une valeur true si le calque contient un composant audio, qu’il soit en isolation ou que l’attribut audioEnabled soit true. Type Booléen ; lecture seule.

Attribut AVLayer hasTrackMatte app.project.item(index).hasTrackMatte

Description L’attribut hasTrackMatte renvoie une valeur true si le calque supérieur à ce calque est utilisé comme cache par approche sur ce calque. S’il renvoie la valeur true, le trackMatteType de ce calque définit la façon dont le cache est appliqué. Type Booléen ; lecture seule.

Comment utiliser l’aide

Page précédente

56

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

57

Attribut AVLayer height app.project.item(index).height

Description L’attribut height correspond à la hauteur du calque, en pixels. Type Valeur du la virgule flottante ; lecture seule.

Attribut AVLayer isNameFromSource app.project.item(index).isNameFromSource

Description L’attribut isNameFromSource renvoie une valeur true si le calque ne possède pas de nom explicitement défini, mais contient une source nommée. Dans ce cas, layer.name est identique à layer.source.name. Il renvoie la valeur false si le calque possède un nom explicitement défini ou si ni le calque ni la source du calque ne portent un nom. Type Booléen ; lecture seule.

Attribut AVLayer isTrackMatte app.project.item(index).isTrackMatte

Description L’attribut isTrackMatte renvoie une valeur true si ce calque est utilisé en tant que cache par approche pour le calque inférieur. Type Booléen ; lecture seule.

Attribut AVLayer motionBlur app.project.item(index).motionBlur

Description L’attribut motionBlur renvoie une valeur true si le flou directionnel est activé. Type Booléen ; lecture/écriture.

Attribut AVLayer preserveTransparency app.project.item(index).preserveTransparency

Description L’attribut preserveTransparency renvoie une valeur true si l’option Préserver la transparence est activée pour le calque. Type Booléen ; lecture/écriture.

Comment utiliser l’aide

Page précédente

57

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

58

Attribut AVLayer quality app.project.item(index).quality.

Description L’attribut quality correspond à la qualité d’un calque indiquant comment ce calque doit paraître. Type Type énuméré (lecture/écriture) ; l’un des suivants : LayerQuality.BEST LayerQuality.DRAFT LayerQuality.WIREFRAME

Attribut AVLayer source app.project.item(index).source

Description L’attribut source est l’AVItem source pour ce calque. Dans un calque de texte, la valeur de la source est nulle. Type AVItem ; lecture seule.

Attribut AVLayer threeDLayer app.project.item(index).threeDLayer

Description L’attribut threeDLayer est true s’il s’agit d’un calque 3D. Type Booléen ; lecture/écriture.

Attribut AVLayer timeRemapEnabled app.project.item(index).timeRemapEnabled

Description L’attribut timeRemapEnabled est true si le remappage temporel est activé sur ce calque. Type Booléen ; lecture/écriture.

Attribut AVLayer trackMatteType app.project.item(index).trackMatteType

Description Si ce calque comporte un cache par approche, le trackMatteType spécifie la façon dont le cache par approche sera appliqué. Type Type énuméré (lecture/écriture) ; l’un des suivants :

Comment utiliser l’aide

Page précédente

58

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

59

TrackMatteType.ALPHA TrackMatteType.ALPHA_INVERTED TrackMatteType.LUMA TrackMatteType.LUMA_INVERTED TrackMatteType.NO_TRACK_MATTE

Attribut AVLayer width app.project.item(index).width

Description L’attribut width correspond à la largeur du calque, en pixels. Type Valeur du la virgule flottante ; lecture seule.

Objet Collection Description Un objet Collection agit comme un tableau donnant accès à ses éléments au moyen d’un index. De la même façon qu’un tableau, une collection associe un jeu d’objets ou de valeurs en tant que groupe logique, et fournit un accès aléatoire à ces objets ou valeurs. La plupart des objets collection sont toutefois en lecture seule. Vous ne leur attribuez pas les objets vous-même. Leur contenu est automatiquement mis à jour au fil des créations ou suppressions d’objets. La numérotation d’index d’une collection commence par 1, et non par 0. Objets Objet

Référence

Description

ItemCo l l e c t i o n

voir section « ItemCollection », page 110

collection de tous les éléments (fichiers importés, dossiers, solides, etc.) se trouvant dans la fenêtre de projet

LayerCo l l e c t i o n

voir section « LayerCollection », page 121

contient tous les calques d’une composition

O M Co l l e c t i o n

voir section « OMCollection », contient tous les éléments page 132 OutputModule du projet

RQ Item Co l l e c t i o n

voir section « RQItemCollection », page 180

contient tous les éléments RenderQueue du projet

Attributs length

Comment utiliser l’aide

nombre d’objets contenus dans la collection (concerne toutes les collections)

Page précédente

59

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

60

Méthodes []

extrait un ou plusieurs objets de la collection au moyen du numéro d’index correspondant

Objet CompItem app.project.item(index)

Description L’objet CompItem fournit l’accès aux attributs et méthodes des compositions. Ceux-ci sont accessibles par le biais de leur numéro d’index. Attributs Attribut

Référence

Description

frameDuration

voir section « Attribut CompItem frameDuration », page 65

Durée d’une seule image, exprimée en secondes. Il s’agit de l’inverse de la cadence.

workAreaStart

voir section « Attribut CompItem workAreaStart », page 69

heure de début de la zone de travail (en secondes)

workAreaDuration

voir section « Attribut durée de la zone de travail (en CompItem secondes) workAreaDuration », page 68

numLayers

voir section « Attribut CompItem numLayers », page 66

nombre de calques dans le CompItem

hideShyLayers

voir section « Attribut CompItem hideShyLayers », page 65

correspond à la valeur du bouton servant à masquer tous les calques discrets dans la fenêtre de composition

motionBlur

voir section « Attribut CompItem motionBlur », page 66

si true, le flou directionnel est activé pour cette composition

draft3d

voir section « Attribut définit le mode d’affichage 3D sur CompItem draft3d », page 64 la qualité Ebauche

frameBlending

voir section « Attribut CompItem frameBlending », page 65

si true, le filtrage temporel est activé pour cette composition

preserveNestedFrameRate

voir section « Attribut CompItem preserveNestedFrameRate », page 67

booléen déterminant si la cadence d’image de compositions imbriquées doit être préservée

Comment utiliser l’aide

Page précédente

60

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

61

Attribut

Référence

Description

preserveNestedResolution

voir section « Attribut CompItem preserveNestedResolution », page 67

booléen déterminant si la résolution des compositions imbriquées doit être préservée

bgColor

voir section « Attribut couleur de fond de la composition CompItem bgColor », page 64

activeCamera

voir section « Attribut CompItem activeCamera », page 63

calque de caméra actif

displayStartTime

voir section « Attribut CompItem displayStartTime », page 64

modifie l’affichage de l’heure de début dans la fenêtre Montage

resolutionFactor

voir section « Attribut tableau d’entiers déterminant le CompItem resolutionFactor », facteur par lequel la résolution x et page 67 y de la fenêtre de composition est sous-échantillonnée

shutterAngle

voir section « Attribut CompItem shutterAngle », page 68

valeur entière (0 - 720) déterminant l’angle obturateur de la caméra

shutterPhase

voir section « Attribut CompItem shutterPhase », page 68

valeur entière (0 - 360) déterminant la phase d’obturateur de la caméra

layers

voir section « LayerCollection », page 121

LayerCollection contenant les calques du compItem

selectedLayers

voir section « Attribut CompItem selectedLayers », page 67

tableau contenant tous les calques sélectionnés

selectedProperties

voir section « Attribut tableau contenant toutes les CompItem propriétés sélectionnées selectedProperties », page 68

Attributs hérités de l’objet Item et de l’objet AVItem (voir sections « Objet Item », page 107 et « Objet AVItem », page 42) Attribut

Référence

Description

name

voir section « Attribut Item name », page 109

nom de l’objet, tel qu’affiché dans la fenêtre de projet

comment

voir section « Attribut Item comment », page 109

chaîne contenant un commentaire

id

voir section « Attribut Item id », page 109

ID d’entier unique pour cet élément

Comment utiliser l’aide

Page précédente

61

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

62

Attribut

Référence

Description

parentFolder

voir section « Attribut Item parentFolder », page 109

dossier parent de cet élément

selected

voir section « Attribut Item selected », page 110

true si cet élément est actuellement sélectionné

typeName

voir section « Attribut Item typeName », page 110

chaîne correspondant au type d’élément

width

voir section « Attribut AVItem entier [1 ..30 000] décrivant la width », page 50 largeur de l’élément, en pixels

height

voir section « Attribut AVItem entier [1 .. 30 000] décrivant la height », page 46 hauteur de l’élément, en pixels

pixelAspect

voir section « Attribut AVItem format des pixels ; valeur de la pixelAspect », page 47 virgule flottante [0.01 ..100]

frameRate

voir section « Attribut AVItem cadence d’image de l’AVItem frameRate », page 46 [1..99]

frameDuration

voir section « Attribut AVItem cadence d’image pour l’AVItem [1/ frameDuration », page 45 99 .. 1 ]

duration

voir section « Attribut AVItem durée de l’AVItem, en secondes [0 .. duration », page 45 10 800]

useProxy

voir section « Attribut AVItem booléen indiquant si une source de useProxy », page 50 doublure doit être utilisée pour cet élément

proxySource

voir section « Attribut AVItem FootageItem utilisé comme proxySource », page 47 doublure de l’AVItem ; lecture seule

time

voir section « Attribut AVItem instant courant de l’AVItem, en time », page 50 secondes

usedIn

voir section « Attribut AVItem tableau contenant toutes les usedIn », page 50 compositions utilisant cet AVItem

hasVideo

voir section « Attribut AVItem true si l’AVItem possède un hasVideo », page 46 composant audio

hasAudio

voir section « Attribut AVItem true si l’AVItem possède un hasAudio », page 46 composant vidéo

footageMissing

voir section « Attribut AVItem true si l’AVItem est introuvable ou footageMissing », page 45 s’il s’agit d’un pseudo-élément

Comment utiliser l’aide

Page précédente

62

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

63

Méthodes Méthode

Référence

Description

duplicate()

voir section « Méthode CompItem duplicate() », page 64

crée et renvoie un doublon de cet élément de composition

layer()

voir section « Méthode CompItem layer() », page 65

renvoie le calque en utilisant l’index, l’index relatif ou le nom

Méthodes héritées de l’objet Item et de l’objet AVItem (voir sections « Objet Item », page 107 et « Objet AVItem », page 42) Méthode

Référence

Description

remove()

voir section « Méthode Item remove() », page 109

supprime l’élément du projet

setProxy()

voir section « Méthode AVItem setProxy() », page 48

définit une doublure pour l’AVItem

setProxyWithSequence()

voir section « Méthode AVItem setProxyWithSequence() », page 49

définit une séquence comme doublure pour l’AVItem

setProxyWithSolid()

voir section « Méthode définit un solide comme doublure AVItem setProxyWithSolid() », (fonction uniquement disponible page 49 par le biais de la création de script)

setProxyWithPlaceholder()

voir section « Méthode AVItem setProxyWithPlaceholder() », page 48

définit un pseudo-élément comme doublure

setProxyToNone()

voir section « Méthode AVItem setProxyToNone() », page 48

supprime la doublure

Exemple Etant donné que le premier élément du projet est un élément de composition, le code suivant génèrerait deux alertes. La première afficherait le nombre de calques contenus dans le CompItem, et la deuxième le nom du dernier calque du CompItem. var firstComp = app.project.item(1); alert( "number of layers is " + firstComp.numLayers ); alert( "name of last layer is " + firstComp.layer(firstComp.numLayers).name );

Attribut CompItem activeCamera app.project.item(index).activeCamera

Comment utiliser l’aide

Page précédente

63

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

64

Description L’attribut activeCamera correspond au calque de caméra au premier plan activé. La valeur renvoyée est nulle si la composition ne contient aucun calque de caméra activé. Type Calque ; lecture seule.

Attribut CompItem bgColor app.project.item(index).bgColor

Description L’attribut bgColor définit la couleur de fond de la composition. La valeur doit être un tableau contenant trois valeurs de virgule flottante comprises dans la plage [0..1] pour rouge, vert et bleu. Type Tableau de trois valeurs de virgule flottante comprises entre 0 et 1 : [R, V, B) ; lecture/ écriture.

Attribut CompItem displayStartTime app.project.item(index).displayStartTime

Description L’attribut displayStartTime correspond à l’heure, en secondes, définie au début de la composition. Elle est équivalente à la valeur du code temporel initial ou de la première image définie dans la fenêtre des paramètres de composition, exprimée en secondes. La plage des valeurs autorisées est [0...86 339] (86 339 correspondant à 25 heures moins 1 seconde). Type Valeur de la virgule flottante ; temps, en secondes. Lecture/écriture.

Attribut CompItem draft3d app.project.item(index).draft3d

Description L’attribut draft3d détermine si le mode Ebauche 3D est activé pour la fenêtre de composition. Sa valeur correspond à celle du bouton draft3d de la fenêtre de composition. Type Booléen ; si true, active le mode Ebauche 3D. Lecture/écriture.

Méthode CompItem duplicate() app.project.item(index).duplicate()

Description La méthode duplicate() crée et renvoie un doublon de cet élément de composition. Le doublon contient les mêmes calques que l’original.

Comment utiliser l’aide

Page précédente

64

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

65

Paramètres Aucun. Renvoi CompItem.

Attribut CompItem frameBlending app.project.item(index).frameBlending

Description L’attribut frameBlending détermine si l’interpolation d’images est activée pour cette composition. Sa valeur correspond à celle du bouton d’interpolation dans la fenêtre de composition. Type Booléen ; si true, l’interpolation d’images est activée ; lecture/écriture.

Attribut CompItem frameDuration app.project.item(index).frameDuration

Description L’attribut frameDuration renvoie la durée d’une image, exprimée en secondes. Il s’agit de l’inverse de la cadence (ou images par seconde). Cet attribut est en lecture seule. Type Valeur du la virgule flottante ; lecture seule.

Attribut CompItem hideShyLayers app.project.item(index).hideShyLayers

Description L’attribut hideShyLayers détermine si les calques discrets doivent être visibles dans la fenêtre Montage. Sa valeur correspond à celle du bouton servant à masquer tous les calques discrets dans la fenêtre de composition. Si false, seuls les calques pour lesquels « shy » est défini sur false seront affichés. Si true, tous les calques seront affichés, quelle que soit la valeur de leurs attributs « shy ». Type Booléen ; si true, les calques discrets sont visibles. Lecture/écriture.

Méthode CompItem layer() app.project.item(index).layer(index) app.project.item(index).layer(otherLayer, relIndex) app.project.item(index).layer(name)

Description La méthode layer() renvoie un objet de calque défini. Utilisée avec la syntaxe layer(int index), cette méthode renvoie le calque avec l’index donné. L’index donné doit être compris dans la plage [1,numLayers], où numLayers correspond au nombre de calques de la composition. Comment utiliser l’aide

Page précédente

65

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

66

Utilisée avec la syntaxe l ayer(Layer otherLayer, int re lIndex), cette méthode renvoie le calque dont l’index est celui de otherlayer donné ajouté au relindex donné. Relindex doit être compris dans la plage [(1-otherlayer.index), (numlayers-otherlayer.index)]. Utilisée avec la syntaxe l ayer(S t r i n g n a m e ) , cette méthode renvoie le calque dans le CompItem dont le nom correspond au nom donné. Paramètres Notez qu’il existe trois types d’utilisation distincts possibles avec calque, chacun utilisant une syntaxe unique : index

numéro d’index du calque défini ; entier

ou otherLayer

numéro d’index du calque auquel un décalage sera appliqué

relIndex

position relative du calque ; différence entre les deux numéros d’index, exprimée par un nombre entier

ou name

nom du numéro spécifié ; chaîne de texte

Renvoi Objet Layer.

Attribut CompItem layers app.project.item(index).layers

Description L’attribut layers contient la LayerCollection pour cette composition. Type LayerCollection. Lecture seule.

Attribut CompItem motionBlur app.project.item(index).motionBlur

Description L’attribut motionBlur détermine si le flou directionnel doit être activé pour la composition. Sa valeur correspond à celle du bouton de flou directionnel de la fenêtre de composition. Type Booléen ; si true, le flou directionnel est activé. Lecture/écriture.

Attribut CompItem numLayers app.project.item(index).numLayers

Description L’attribut numLayers correspond au nombre de calques contenus dans le CompItem. Cette valeur est toujours identique à la longueur de la LayerCollection.

Comment utiliser l’aide

Page précédente

66

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

67

Type Entier. Lecture seule.

Attribut CompItem preserveNestedFrameRate app.project.item(index).preserveNestedFrameRate

Description L’attribut preserveNestedFrameRate détermine si la cadence d’images des compositions imbriquées est préservée dans la composition en cours. Sa valeur correspond à celle de l’option Préserver la cadence (compositions imbriquées ou en file d’attente de rendu) de l’onglet Avancé de la boîte de dialogue Paramètres de composition. Type Booléen ; si true, la cadence d’image des compositions imbriquées est préservée. Lecture/ écriture.

Attribut CompItem preserveNestedResolution app.project.item(index).preserveNestedResolution

Description L’attribut preserveNestedResolution détermine si la résolution des compositions imbriquées est préservée dans la composition en cours. Sa valeur correspond à celle de l’option Préserver la résolution (compositions imbriquées) de l’onglet Avancé de la boîte de dialogue Paramètres de composition. Type Booléen ; si true, la cadence d’image des compositions imbriquées est préservée. Lecture/ écriture.

Attribut CompItem resolutionFactor app.project.item(index).resolutionFactor

Description L’attribut resolutionFactor définit la résolution d’échantillonnage de la composition pour le rendu. Chacune des deux valeurs du tableau indique le nombre de pixels à ignorer lors de l’échantillonnage dans l’une des deux directions. Le premier numéro détermine l’échantillonnage horizontal, le second l’échantillonnage vertical. Chacun des deux entiers doit être compris dans la plage de valeurs [1..99]. La résolution intégrale est [1,1], la demirésolution [2,2] et la résolution d’un quart [4,4]. La valeur par défaut est [1,1]. Type Tableau de deux entiers, décrivant le facteur de résolution de sous-échantillonnage de x et y ; lecture/écriture.

Attribut CompItem selectedLayers app.project.item(index).selectedLayers

Comment utiliser l’aide

Page précédente

67

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

68

Description Cet attribut génère un tableau contenant tous les calques sélectionnés dans cet CompItem. Type Tableau d’objets Layer ; lecture seule.

Attribut CompItem selectedProperties app.project.item(index).selectedProperties

Description Cet attribut génère un tableau contenant tous les objets Property et PropertyGroup sélectionnés dans cet CompItem. Type Tableau d’objets Property et PropertyGroup ; lecture seule.

Attribut CompItem shutterAngle app.project.item(index).shutterAngle

Description L’attribut shutterAngle détermine le réglage de l’angle obturateur pour la composition. Ce réglage correspond à l’angle obturateur défini sur l’onglet Avancé de la boîte de dialogue Paramètres de composition. La plage des valeurs entières autorisées est 0 - 720. Type Valeur entière (comprise entre 0 et 720). Lecture/écriture.

Attribut CompItem shutterPhase app.project.item(index).shutterPhase

Description L’attribut shutterPhase détermine le réglage de la phase d’obturateur pour la composition. Ce réglage correspond à la phase d’obturateur définie sur l’onglet Avancé de la boîte de dialogue Paramètres de composition. La plage des valeurs entières autorisées est 0 - 360. Type Valeur entière (comprise entre -360 et 360). Lecture/écriture.

Attribut CompItem workAreaDuration app.project.item(index).workAreaDuration

Description L’attribut workAreaDuration détermine la durée, en secondes, de la zone de travail. Cette valeur correspond à la différence entre le point de début de la zone de travail de composition et le point de fin. Type Valeur de la virgule flottante ; temps, en secondes. Lecture/écriture.

Comment utiliser l’aide

Page précédente

68

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

69

Attribut CompItem workAreaStart app.project.item(index).workAreaStart

Description L’attribut workAreaStart détermine le moment, en secondes, où la zone de travail de composition commence. Type Valeur de la virgule flottante ; temps, en secondes. Lecture/écriture.

Classe File La classe File contient les méthodes et les attributs communs aux objets File. Un objet File correspond à un fichier disque. Cette classe inclut également des attributs et des méthodes dans la classe FileSystem, car ceux-ci s’appliquent aussi bien aux fichiers qu’aux dossiers. Attributs de classe hérités de l’objet FileSource (voir section « Objet FileSource », page 80) Attribut de classe

Référence

Description

fs

voir section « Attribut de nom du système de fichiers ; classe FileSystem fs », page 82 lecture seule

Méthodes Méthode

Référence

Description

File() new File()

voir section « Méthode de classe File() », page 70

construit un nouvel objet File

openDialog()

voir section « Méthode de classe File openDialog() », page 76

ouvre la boîte de dialogue du système d’exploitation intégrée pour sélectionner un fichier existant à ouvrir

saveDialog()

voir section « Méthode de classe File saveDialog() », page 77

ouvre la boîte de dialogue du système d’exploitation intégrée pour sélectionner un nom de fichier à y enregistrer

Méthodes de classe héritées de l’objet FileSource (voir section « Objet FileSource », page 80) Méthode de classe

Référence

Description

decode()

voir section « Méthode de classe FileSystem decode() », page 82

décode la chaîne d’entrée à partir de UTF-8

Comment utiliser l’aide

Page précédente

69

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

70

Méthode de classe

Référence

Description

encode()

voir section « Méthode de classe FileSystem encode() », page 82

encode la chaîne d’entrée en UTF8

Méthode de classe File() File(path) new File(path)

Description Cette fonction construit un nouvel objet File. Si le nom de chemin donné se rapporte à un dossier déjà existant, un objet Folder est renvoyé à la place. La séquence CRLF est prédéfinie avec les valeurs par défaut du système et l’encodage est prédéfini avec l’encodage système par défaut. Paramètres Chemin, exprimé en tant que chaîne. S’il est manquant, un nom temporaire est généré. Renvoi File (ou Folder si le chemin fait référence à un dossier existant).

Objet File File(“path”)

Description L’objet File contient des méthodes et des attributs communs aux objets File. Un objet Folder correspond à un dossier. Cette objet inclut également des attributs et des méthodes dans l’objet FileSystem, car ceux-ci s’appliquent aussi bien aux fichiers qu’aux dossiers. Attributs Attribut

Référence

Description

creator

voir section « Attribut File creator », page 73

Créateur de fichiers Macintosh en tant que chaîne de quatre caractères

encoding

voir section « Attribut File encoding », page 74

obtient ou définit l’encodage pour les opérations de lecture/écriture dont il est suivi

eof

voir section « Attribut File eof », page 74

possède la valeur true si une tentative de lecture a entraîné la position en cours derrière la fin du fichier

hidden

voir section « Attribut File hidden », page 74

défini sur true si le fichier est invisible

Comment utiliser l’aide

Page précédente

70

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

71

Attribut

Référence

Description

length

voir section « Attribut File length », page 74

taille du fichier, en octets

lineFeed

voir section « Attribut File lineFeed », page 75

façon dont les caractères de changement de ligne sont écrits

readonly

voir section « Attribut File readonly », page 77

une fois défini, empêche toute modification ou suppression du fichier

type

voir section « Attribut File type », page 79

type de fichier Macintosh en tant que chaîne de quatre caractères

Attributs hérités de l’objet FileSystem (voir section « Objet FileSystem », page 83) Attribut

Référence

Description

absoluteURI

voir section « Attribut FileSystem absoluteURI », page 85

nom de chemin complet pour l’objet en notation URI

alias

voir section « Attribut FileSystem alias », page 85

renvoie true si l’objet fait référence à un alias de système de fichiers

created

voir section « Attribut date de création de l’objet FileSystem created », page 85

error

voir section « Attribut FileSystem error », page 86

contient un message décrivant la dernière erreur de système de fichiers

exists

voir section « Attribut FileSystem exists », page 86

renvoie true si le nom de chemin de cet objet fait référence à un fichier ou dossier existant

fsName

voir section « Attribut nom de l’objet spécifique au FileSystem fsName », page 86 système de fichiers en tant que nom de chemin complet

modified

voir section « Attribut FileSystem modified », page 87

date de la dernière modification de l’objet

name

voir section « Attribut FileSystem name », page 87

nom de l’objet sans spécification du chemin

parent

voir section « Attribut FileSystem parent », page 87

objet folder contenant cet objet

path

voir section « Attribut FileSystem path », page 87

partie chemin de l’URI absolue

Comment utiliser l’aide

Page précédente

71

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

72

Attribut

Référence

Description

relativeURI

voir section « Attribut FileSystem relativeURI », page 87

nom de chemin de l’objet en notation URI, relatif au dossier en cours

Méthode

Référence

Description

close()

voir section « Méthode File close() », page 73

ferme le fichier ouvert

copy()

voir section « Méthode File copy() », page 73

copie le fichier à l’emplacement donné

open()

voir section « Méthode File open() », page 75

ouvre le fichier pour y effectuer les opérations de lecture/écriture qui suivent

read()

voir section « Méthode File read() », page 76

lit le contenu du fichier à partir de la position en cours

readch()

voir section « Méthode File readch() », page 77

lit un caractère de texte

readln()

voir section « Méthode File readln() », page 77

lit une ligne de texte

seek()

voir section « Méthode File seek() », page 78

recherche jusqu’à une certaine position dans le fichier

tell()

voir section « Méthode File tell() », page 79

renvoie la position en cours dans le fichier en tant que décalage en octets

write()

voir section « Méthode File write() », page 79

écrit la chaîne donnée dans le fichier

writeln()

voir section « Méthode File writeln() », page 80

écrit la chaîne donnée dans le fichier et ajoute une séquence de changement de ligne

Méthodes

Méthodes héritées de l’objet FileSystem (voir section « Objet FileSystem », page 83) Méthode

Référence

getRelativeURI()

voir section « Méthode calcule et renvoie l’URI relative, FileSystem getRelativeURI() », pour un chemin de base donné, en page 86 notation URI

remove()

voir section « Méthode FileSystem remove() », page 88

Comment utiliser l’aide

Description

supprime le fichier ou le dossier représenté par cet objet

Page précédente

72

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

73

Méthode

Référence

Description

rename()

voir section « Méthode FileSystem rename() », page 88

renomme l’objet avec le nouveau nom

resolve()

voir section « Méthode FileSystem resolve() », page 88

tente de résoudre l’alias du système de fichiers vers lequel pointe cet objet

Méthode File close() File(path).close()

Description La méthode close() ferme le fichier ouvert. La valeur renvoyée est true si le fichier a bien été fermé ou false en cas d’erreurs d’E/S. Paramètres Aucun. Renvoi Booléen.

Méthode File copy() File(path).copy(target)

Description La méthode close() copie le fichier dans l’emplacement donné. Vous pouvez fournir un nom de chemin URI, ainsi qu’un autre objet File. Si un fichier est présent à l’emplacement de destination, il est remplacé. La méthode renvoie la valeur true si la copie s’est déroulée correctement et la valeur false dans le cas inverse. La méthode résout tous les alias pour trouver le fichier source. Paramètres target

Objet File ou chaîne spécifiant l’emplacement de destination

Renvoi Booléen.

Attribut File creator File(path).creator

Description L’attribut creator est le créateur de fichier Macintosh en tant que chaîne de quatre caractères. Sous Windows, la valeur renvoyée est toujours « ???? ». Type Chaîne ; lecture seule.

Comment utiliser l’aide

Page précédente

73

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

74

Attribut File encoding File(path).encoding

Description L’attribut encoding obtient ou définit l’encodage pour les opérations de lecture/écriture qui suivent. L’encodage est l’une des différentes constantes prédéfinies qui suivent les noms d’encodage Internet courants. Les noms valides sont UCS-2, X-SJIS, ISO-8851-9, ASCII ou similaires. Un encodeur spécial, BINARY, est utilisé pour lire les fichiers binaires. Cet encodeur stocke chaque octet du fichier en tant que caractère Unicode, quel que soit l’encodage. Lors de l’écriture, l’octet inférieur de chaque caractère Unicode est traité en tant qu’octet unique à écrire. Voir section « Noms d’encodage », page 253 pour obtenir une liste des encodages. Si un encodage non reconnu est utilisé, l’encodage par défaut du système est appliqué. Type Chaîne ; lecture/écriture.

Attribut File eof File(path).eof

Description L’attribut File eof possède la valeur true si une tentative de lecture a entraîné la position en cours après la fin du fichier. Si le fichier n’est pas ouvert, la valeur est true. Type Booléen ; lecture seule.

Attribut File hidden File(path).hidden

Description L’attribut File hidden possède la valeur true si le fichier est invisible. L’attribution d’une valeur booléenne définit ou efface cet attribut. Type Booléen ; lecture/écriture.

Attribut File length File(path).length

Description L’attribut File length correspond à la taille du fichier en octets. Lors de la définition de la taille du fichier, le fichier ne doit pas être ouvert. Type Nombre ; lecture seule.

Comment utiliser l’aide

Page précédente

74

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

75

Attribut File lineFeed File(path).lineFeed

Description L’attribut File lineFeed détermine la façon dont les caractères de changement de ligne sont écrits. Les trois valeurs possibles sont macintosh, unix ou windows (en réalité, seul le premier caractère est interprété). Type Chaîne (trois possibilités : macintosh, unix, windows) ; lecture/écriture.

Méthode File open() File(path).open(mode, type, creator)

Description La méthode File open() ouvre le fichier pour les opérations de lecture/écriture qui suivent. Les arguments type et creator sont facultatifs et propres à Macintosh ; ils spécifient le type de fichier et le créateur en tant que deux chaînes de quatre caractères. Ils sont utilisés si le fichier est nouvellement créé. Sur les autres plates-formes, ils sont ignorés. Lorsque open() est utilisé pour ouvrir un fichier en lecture, la méthode tente de détecter l’encodage du fichier ouvert. Elle lit quelques octets à la position en cours et essaie de détecter le caractère Byte Order Mark 0xFFFE. Si elle le trouve, la position en cours est avancée après le caractère détecté et la propriété d’encodage est définie sur l’une des chaînes UCS-2BE, UCS-2LE, UCS4-BE, UCS-4LE ou UTF-8. Si le caractère marqueur n’est pas trouvé, la méthode vérifie la présence d’octets zéro à l’emplacement en cours et fait une supposition sur l’un des formats ci-dessus (sauf UTF-8). Si tout échoue, la propriété d’encodage est définie à l’encodage système. La méthode résout tous les alias pour trouver le fichier. Soyez vigilant si vous essayez d’ouvrir un fichier plusieurs fois. Généralement, le système d’exploitation permet cette opération, mais si vous commencez à écrire dans le fichier en utilisant deux objets File, vous risquez de détruire vos données. La valeur renvoyée est true si le fichier a été ouvert et false dans le cas contraire. Paramètres mode

r, w ou e : r (read) Ouvre le fichier en lecture. Si le fichier n’existe pas ou est introuvable, l’appel échoue. w (write) Ouvre un fichier vide pour l’écriture. Si le fichier existe, son contenu est détruit. e (edit) Ouvre en lecture et écriture un fichier existant.

type

Type de fichier Macintosh ; chaîne de caractères de quatre octets ; ignoré sur les systèmes d’exploitation autres que Macintosh.

creator

Créateur de fichier Macintosh ; chaîne de caractères de quatre octets ; ignoré sur les systèmes d’exploitation autres que Macintosh.

Comment utiliser l’aide

Page précédente

75

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

76

Renvoi Booléen.

Méthode de classe File openDialog() File.openDialog(prompt, select)

Description La méthode de classe File.openDialog présente la boîte de dialogue Ouvrir standard de la plate-forme sur laquelle After Effects est exécuté. Cette méthode fait quelque peu double emploi avec la fonction globale fileGetDialog(), plus facile à utiliser. Paramètres prompt

Message d’invite facultatif (exprimé sous forme de chaîne) affiché en tant que partie intégrante de la boîte de dialogue si celle-ci permet l’affichage d’un message supplémentaire.

select

Argument autorisant la pré-sélection des fichiers affichés par la boîte de dialogue. Cet argument est différent sur Mac OS et sous Windows.

select (Win)

La chaîne de sélection Windows est en fait une liste des types de fichiers, accompagnés d’un texte explicatif. Cette liste est affichée au bas de la boîte de dialogue sous la forme d’une zone de liste déroulante pour permettre à l’utilisateur de sélectionner les types de fichiers à afficher. Les éléments de cette liste sont séparés par des virgules. Chaque élément commence par le texte descriptif, suivi du signe deux-points (:) et des masques de recherche de fichier pour ce texte. Chaque masque de recherche est délimité par un point-virgule. Une liste de sélection ayant autorisé la sélection de tous les fichiers texte (*.TXT et *.DOC) ou de tous les fichiers ressemblerait à ceci : Fichiers texte :*.TXT;*.DOC,Tous les fichiers :* Le caractère astérisque seul est un pseudo-élément pour tous les fichiers.

select (Mac OS)

Sur Mac OS, le deuxième argument facultatif est une fonction de rappel. Cette fonction prend un seul argument, un objet File. Une fois la boîte de dialogue définie, elle appelle sa fonction de rappel pour chaque fichier prêt à être affiché. Si la fonction renvoie autre chose que true, le fichier n’est pas affiché. Cela n’est vrai que pour la méthode openDialog() ; la méthode saveDialog() ignore cette méthode de rappel.

Renvoi Objet File, ou valeur nulle si l’utilisateur annule la boîte de dialogue. Voir aussi « Objet FileSource », page 80.

Méthode File read() File(path).read(chars)

Description La méthode File read() lit le contenu du fichier à partir de la position en cours. Renvoie une chaîne contenant jusqu’au nombre de caractères supposés être lus.

Comment utiliser l’aide

Page précédente

76

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

77

Paramètres chars

Nombre de caractères à lire, exprimé par un nombre entier. Si le nombre de caractères à lire n’est pas fourni, le fichier entier est lu en une seule grande partie, commençant à la position en cours. Si le fichier est encodé, plusieurs octets peuvent être lus pour créer des caractères Unicode uniques.

Renvoi Chaîne.

Méthode File readch() File(path).readch()

Description La méthode File readch() lit un seul caractère de texte. Les changements de ligne sont reconnus en tant que paires CR, LF, CRLF ou LFCR. Si le fichier est encodé, plusieurs octets peuvent être lus pour créer des caractères Unicode uniques. Paramètres Aucun. Renvoi Chaîne.

Méthode File readln() File(path).readln()

Description La méthode File readch() lit une ligne de texte. Les changements de ligne sont reconnus en tant que paires CR, LF, CRLF ou LFCR. Si le fichier est encodé, plusieurs octets peuvent être lus pour créer des caractères Unicode uniques. Paramètres Aucun. Renvoi Chaîne.

Attribut File readonly File(path).readonly

Description Une fois défini, l’attribut File readonly empêche le fichier d’être modifié ou supprimé. Type Booléen ; lecture/écriture.

Méthode de classe File saveDialog() File.saveDialog(prompt, select)

Comment utiliser l’aide

Page précédente

77

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

78

Description La méthode de classe File.openDialog présente la boîte de dialogue Enregistrer standard de la plate-forme sur laquelle After Effects est exécuté. Cette méthode fait quelque peu double emploi avec la fonction filePutDialog(), plus facile à utiliser. Paramètres prompt

Message d’invite facultatif (exprimé sous forme de chaîne) affiché en tant que partie intégrante de la boîte de dialogue si celle-ci permet l’affichage d’un message supplémentaire.

select

Argument autorisant la pré-sélection des fichiers affichés par la boîte de dialogue. Cet argument est différent sur Mac OS et sous Windows.

select (Win)

La chaîne de sélection Windows est en fait une liste des types de fichiers, accompagnés d’un texte explicatif. Cette liste est affichée au bas de la boîte de dialogue sous la forme d’une zone de liste déroulante pour permettre à l’utilisateur de sélectionner les types de fichiers à afficher. Les éléments de cette liste sont séparés par des virgules. Chaque élément commence par le texte descriptif, suivi du signe deux-points (:) et des masques de recherche de fichier pour ce texte. Chaque masque de recherche est délimité par un point-virgule. Une liste de sélection ayant autorisé la sélection de tous les fichiers texte (*.TXT et *.DOC) ou de tous les fichiers ressemblerait à ceci : Fichiers texte :*.TXT;*.DOC,Tous les fichiers :* Le caractère astérisque seul est un pseudo-élément pour tous les fichiers.

select (Mac OS)

Sur Mac OS, le deuxième argument facultatif est une fonction de rappel. Cette fonction prend un seul argument, un objet File. Une fois la boîte de dialogue définie, elle appelle sa fonction de rappel pour chaque fichier prêt à être affiché. Si la fonction renvoie autre chose que true, le fichier n’est pas affiché. Cela n’est vrai que pour la méthode openDialog() ; la méthode saveDialog() ignore cette méthode de rappel.

Renvoi Objet File, ou valeur nulle si l’utilisateur annule la boîte de dialogue. Voir aussi « Fonction globale filePutDialog() », page 29

Méthode File seek() File(path).seek(pos, mode)

Description La méthode File seek() recherche une position donnée dans le fichier. Cette méthode ne permet pas la recherche de positions inférieures à 0 ou supérieures à la taille de fichier en cours.

Comment utiliser l’aide

Page précédente

78

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

79

Paramètres pos

nouvelle position en cours dans le fichier en tant que décalage en octets (un entier), dépendant du mode de recherche

mode

mode de recherche (0 = recherche jusqu’à la position absolue, 1 = recherche relative jusqu’à la position en cours, 2 = recherche vers l’arrière à partir de la fin du fichier)

Renvoi Booléen ; true si la position a été modifiée.

Méthode File tell() File(path).tell()

Description La méthode File tell() renvoie la position en cours dans le fichier en tant que décalage en octets. Paramètres Aucun. Renvoi Entier.

Attribut File type File(path).type

Description L’attribut File type contient le type de fichier Macintosh en tant que chaîne de quatre caractères. Sur Mac OS, renvoie le type de fichier. Sous Windows, renvoie « appl » pour les fichiers .EXE, « shlb » pour les fichiers .DLL et « TEXT » pour tout autre fichier. Si le fichier n’existe pas, le type de fichier est « ???? ». Type Booléen ; lecture seule.

Méthode File write() File(path).write(text, ...)

Description La méthode File write() écrit une chaîne donnée dans le fichier. Les paramètres de cette fonction sont concaténés en une seule chaîne. Renvoie true une fois terminé. Pour les fichiers encodés, l’écriture d’un caractère Unicode unique peut résulter en l’écriture de plusieurs octets. Veillez à ne pas écrire dans un fichier ouvert dans une autre application ou un autre objet. Cela risque, en effet, d’entraîner une perte de données, étant donné qu’une deuxième écriture émise à partir d’un autre objet File peut remplacer les données existantes.

Comment utiliser l’aide

Page précédente

79

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

80

Paramètres text

Chaîne ou ensemble de chaînes. Tous les arguments sont concaténés pour former la chaîne à écrire.

Renvoi Booléen.

Méthode File writeln() File(path).writeln(text, ...)

Description La méthode File writeIn() écrit une chaîne donnée dans le fichier. Les paramètres de cette fonction sont concaténés en une seule chaîne, et une séquence de changement de ligne est ajoutée. Renvoie true une fois terminé. Si le fichier est encodé, plusieurs octets peuvent être lus pour créer des caractères Unicode uniques. Paramètres text

Chaîne ou ensemble de chaînes. Tous les arguments sont concaténés pour former la chaîne à écrire.

Renvoi Booléen.

Objet FileSource app.project.item(index).mainSource app.project.item(index).proxySource

Description FileSource décrit le métrage issu d’un fichier. Il s’agit d’une sous-classe de FootageSource ; par conséquent, elle hérite de l’ensemble des attributs et méthodes de la FootageSource. Attributs Attribut

Référence

Description

file

voir section « Attribut FileSource file », page 81

indique le fichier qui définit cette FileSource

Méthode

Référence

Description

reload()

voir section « Méthode recharge la ressource du fichier FileSource reload() », page 81

Méthodes

Attribut FileSource file app.project.file

Comment utiliser l’aide

Page précédente

80

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

81

Description L’attribut FileSource file indique le fichier qui définit cette FileSource. Cet attribut est en lecture seule. Notez qu’il existe d’autres moyens de modifier le fichier. Si cette FootageSource est une proxySource d’un AVItem, vous pouvez appeler setProxy() ou setProxyWithSequence() pour modifier les fichiers. Si cette FootageSource est une source principale d’un FootageItem, vous pouvez appeler replace() ou replaceWithSequence() pour changer les fichiers. Type Fichier ; lecture seule.

Méthode FileSource reload() app.project.mainSource.reload()

Description La méthode FileSource reload() recharge la ressource du fichier. Cette méthode peut uniquement être appelée sur une mainSource, et non sur une proxySource. Paramètres Aucun. Renvoi Aucun.

Classe FileSystem File. Folder.

Description La classe FileSystem contient des méthodes et des attributs communs aux objets File et Folder. Un objet File correspond à un fichier de disque, alors qu’un objet Folder correspond à un dossier. Cet attribut et ces méthodes diffèrent de celles se trouvant sous le FileSystemObject par le fait qu’ils peuvent être appliqués sans faire référence à une instance de fichier ou de dossier particulière. Attributs de classe Attribut de classe

Référence

fs

voir section « Attribut de nom du système de fichiers ; classe FileSystem fs », page 82 lecture seule.

Comment utiliser l’aide

Description

Page précédente

81

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

82

Méthodes de classe Méthode de classe

Référence

Description

decode()

voir section « Méthode de classe FileSystem decode() », page 82

décode la chaîne d’entrée à partir de UTF-8

encode()

voir section « Méthode de classe FileSystem encode() », page 82

encode la chaîne d’entrée en UTF8

Méthode de classe FileSystem decode() File.decode(string) Folder.decode(string)

Description La méthode de classe decode() de File ou de Folder décode les caractères échappés, puis les interprète en tant que UTF-8. Paramètres string

chaîne à décoder

Renvoi Chaîne. Voir aussi « Méthode de classe FileSystem encode() », page 82

Méthode de classe FileSystem encode() File.encode(string) Folder.encode(string)

Description La méthode de classe encode() de File ou de Folder convertit la chaîne en entrée au format UTF-8, puis l’encode de manière à ce que tous ses caractères soient utilisables dans une URI (ou URL). Paramètres string

chaîne à encoder

Renvoi Chaîne. Voir aussi « Attribut FileSystem alias », page 85

Attribut de classe FileSystem fs File.fs Folder.fs

Comment utiliser l’aide

Page précédente

82

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

83

Description L’attribut de classe fs de File ou Folder contient le nom du système de fichiers (système d’exploitation). Les valeurs possibles sont Windows ou Macintosh. Type Chaîne ; lecture seule. Exemple write("The local file system is " + File.fs);

Objet FileSystem File(“path”). Folder(“path”).

Description L’objet FileSystem contient des méthodes et des attributs communs aux objets File et Folder. Un objet File correspond à un fichier de disque, alors qu’un objet Folder correspond à un dossier. FileSystem est un nom utilisé pour faire référence aux dossiers comme aux fichiers. Ces attributs et méthodes diffèrent de celles se trouvant sous la classe FileSystem Class par le fait qu’elles ne peuvent pas être appliquées sans faire référence à une instance de fichier ou de dossier particulière, exprimée sous la forme du chemin vers ce fichier ou dossier. Vous pouvez utiliser les noms de chemin absolus et les noms de chemins relatifs. Les noms de chemin absolus commencent par une ou deux barres obliques. Ces noms de chemin décrivent le chemin complet depuis le dossier racine jusqu’au fichier ou dossier dont il est question. Les noms de chemin relatifs commencent à partir d’un emplacement connu, le dossier en cours. Un nom de chemin relatif commence soit par un nom de dossier, soit par l’un des noms spéciaux « . » et « .. ». Le nom « . » fait référence au dossier en cours, et le nom « .. » au répertoire parent. La barre oblique est utilisée pour délimiter les différents éléments du chemin. Les caractères spéciaux sont encodés avec la notation UTF-8. Les objets FileSystem prennent en charge une convention commune. Un nom de volume peut être la première partie d’un chemin absolu. Les objets savent où rechercher les noms de volume sur Mac OS et sous Windows, et ils traduisent les noms de volume en conséquence. Les noms de chemin peuvent également commencer par le caractère tilde (~). Ce caractère correspond au répertoire de base de l’utilisateur (Mac OS). Sous Windows, un répertoire avec la variable d’environnement HOME ou, à défaut, le poste utilisé comme répertoire de base. Le tableau suivant illustre la façon dont l’élément racine d’un nom de fichier complet est utilisé sur différents systèmes de fichiers. Dans ces exemples, l’unité en cours est C: sous Windows et Macintosh HD sur Mac OS. URI

Nom Windows

Nom Mac OS

/d/dir/name.ext

D:\dir\nom.ext

Macintosh HD:d:dir:nom.ext

/Macintosh HD/dir/name.ext

C:\Macintosh HD\dir\nom.ext

Macintosh HD:dir:nom.ext

Comment utiliser l’aide

Page précédente

83

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

84

Ainsi, si vous devez utiliser un script avec la notation URI sur Mac OS et Windows, essayez d’utiliser les noms de chemin relatifs ou de dériver vos noms de chemin du répertoire de base. Si ce n’est pas possible, il est conseillé d’utiliser des alias Mac OS X et des noms UNC sous Windows, et de stocker les fichiers sur une machine distante de la machine Windows sur laquelle le script est exécuté. Attributs Attribut

Référence

Description

absoluteURI

voir section « Attribut FileSystem absoluteURI », page 85

nom de chemin complet pour l’objet en notation URI

alias

voir section « Attribut FileSystem alias », page 85

renvoie true si l’objet fait référence à un alias de système de fichiers

created

voir section « Attribut date de création de l’objet FileSystem created », page 85

error

voir section « Attribut FileSystem error », page 86

contient un message décrivant la dernière erreur de système de fichiers

exists

voir section « Attribut FileSystem exists », page 86

renvoie true si le nom de chemin de cet objet fait référence à un fichier ou dossier existant

fsName

voir section « Attribut nom de l’objet spécifique au FileSystem fsName », page 86 système de fichiers en tant que nom de chemin complet

modified

voir section « Attribut FileSystem modified », page 87

date de la dernière modification de l’objet

name

voir section « Attribut FileSystem name », page 87

nom de l’objet sans spécification du chemin

parent

voir section « Attribut FileSystem parent », page 87

objet folder contenant cet objet

path

voir section « Attribut FileSystem path », page 87

partie chemin de l’URI absolue

relativeURI

voir section « Attribut FileSystem relativeURI », page 87

nom de chemin de l’objet en notation URI, relatif au dossier en cours

Comment utiliser l’aide

Page précédente

84

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

85

Méthodes Méthode

Référence

Description

getRelativeURI()

voir section « Méthode calcule et renvoie l’URI relative, FileSystem getRelativeURI() », pour un chemin de base donné, en page 86 notation URI

remove()

voir section « Méthode FileSystem remove() », page 88

supprime le fichier ou le dossier représenté par cet objet

rename()

voir section « Méthode FileSystem rename() », page 88

renomme l’objet avec le nouveau nom

resolve()

voir section « Méthode FileSystem resolve() », page 88

tente de résoudre l’alias du système de fichiers vers lequel pointe cet objet

Attribut FileSystem absoluteURI File(path).absoluteURI Folder(path).absoluteURI

Description L’attribut absoluteURI de File ou Folder correspond au nom de chemin complet de l’objet en notation URI. Type Chaîne ; lecture seule.

Attribut FileSystem alias File(path).alias Folder(path).alias

Description L’attribut alias de File ou Folder renvoie true si l’objet fait référence à un alias de système de fichiers. Type Booléen ; lecture seule.

Attribut FileSystem created File(path).created Folder(path).created

Description L’attribut created de File ou Folder correspond à la date de création de l’objet. Si l’objet ne fait pas référence à un dossier ou à un fichier contenu sur le disque, la valeur est nulle.

Comment utiliser l’aide

Page précédente

85

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

86

Type Date, ou valeur nulle si l’objet ne fait pas référence à un fichier ou à dossier sur le disque ; lecture seule.

Attribut FileSystem error File(path).error Folder(path).error

Description L’attribut error de File ou Folder contient un message décrivant la dernière erreur du système de fichiers. Le fait de définir cette valeur efface tout message d’erreur et rétablit le bit d’erreur pour les fichiers ouverts. Type Booléen ; lecture/écriture (l’écriture rétablit le bit d’erreur).

Attribut FileSystem exists File(path).exists Folder(path).exists

Description L’attribut exists de File ou Folder renvoie true si le nom de chemin ce cet objet fait référence à un fichier ou un dossier déjà existant. Type Booléen ; lecture seule.

Attribut FileSystem fsName File(path).fsName Folder(path).fsName

Description L’attribut fsName de File ou Folder est le nom spécifique au système de fichiers de cet objet en tant que nom de chemin complet. Type Chaîne ; lecture seule.

Méthode FileSystem getRelativeURI() File(path).getRelativeURI(string) Folder(path).getRelativeURI(string)

Description La méthode getRelativeURI() de File ou Folder calcule et renvoie l’URI relative, pour un chemin de base donné, en notation URI. Si le chemin de base est omis, le chemin pris en compte est celui du dossier en cours. Paramètres string

Comment utiliser l’aide

chemin de base en notation URI

Page précédente

86

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

87

Renvoi Chaîne.

Attribut FileSystem modified File(path).modified Folder(path).modified

Description L’attribut modified de File ou Folder correspond à la date de la dernière modification de l’objet. Si l’objet ne fait pas référence à un dossier ou à un fichier contenu sur le disque, la valeur est nulle. Type Date, ou valeur nulle si aucun objet FileSystem n’est référencé ; lecture seule.

Attribut FileSystem name File(path).name Folder(path).name

Description L’attribut name de File ou Folder correspond au nom de l’objet sans précision de chemin. Type Chaîne ; lecture seule.

Attribut FileSystem parent File(path).parent Folder(path).parent

Description L’attribut parent de File ou Folder correspond à l’objet folder contenant cet objet. Si l’objet est déjà le dossier racine d’un volume, la valeur de propriété est nulle. Type Dossier, ou valeur nulle si l’objet n’a pas de parent ; lecture seule.

Attribut FileSystem path File(path).path Folder(path).path

Description L’attribut path de File ou Folder correspond à la partie chemin de l’URI absolue. Si le nom n’a pas de chemin, cette propriété contient la chaîne vide. Type Chaîne, vide si le nom n’a pas de chemin ; lecture seule.

Attribut FileSystem relativeURI File(path).relativeURI Folder(path).relativeURI

Comment utiliser l’aide

Page précédente

87

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

88

Description L’attribut relativeURI de File ou de Folder correspond au nom de chemin de l’objet en notation URI, relatif au dossier en cours. Type Chaîne ; lecture seule.

Méthode FileSystem remove() File(path).remove() Folder(path).remove()

Description La méthode remove() de File ou Folder supprime le fichier ou dossier représenté par ce dossier. Les dossiers doivent être vides avant de pouvoir être supprimés. La valeur renvoyée est true si le fichier ou dossier a été supprimé. IMPORTANT : la méthode remove() supprime immédiatement le fichier ou dossier référencé. Elle ne déplace pas le fichier ou le dossier référencé vers la corbeille système. Les effets de la méthode remove ne peuvent pas être annulés. Il est conseillé d’afficher un message demandant à l’utilisateur l’autorisation de supprimer un fichier ou un dossier avant de le supprimer. La méthode ne résout pas les alias ; elle supprime le fichier alias même. Paramètres Aucun. Renvoi Booléen.

Méthode FileSystem rename() File(path).rename(string) Folder(path).rename(string)

Description La méthode rename() de File ou Folder renomme l’objet avec un nouveau nom. Le nouveau nom ne doit pas avoir de chemin. Cette méthode renvoie true si l’objet a été renommé. La méthode ne résout pas les alias ; elle renomme le fichier alias. Paramètres string

nouveau nom de l’objet

Renvoi Booléen.

Méthode FileSystem resolve() File(path).resolve() Folder(path).resolve()

Comment utiliser l’aide

Page précédente

88

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

89

Description La méthode resolve() de File ou Folder tente de résoudre l’alias de système de fichiers vers lequel pointe vers cet objet. En cas de réussite, un nouvel objet File ou Folder est renvoyé, pointant sur l’élément de système de fichiers résolu. Si l’objet n’est pas un alias ou si l’alias n’a pas pu être résolu, la valeur renvoyée est nulle. Paramètres Aucun. Renvoi Objet FileSystem (File ou Folder) ou valeur nulle en l’absence d’alias.

Classe Folder Folder.

Description La classe Folder contient les méthodes et les attributs communs aux objets Folder. Un objet Folder correspond à un dossier. Cette classe inclut également tous les attributs et méthodes contenus dans la classe FileSystem, car ceux-ci s’appliquent aussi bien aux dossiers qu’aux fichiers. Attributs Attribut

Référence

Description

current

voir section « Attribut de classe Folder current », page 90

le dossier en cours est renvoyé en tant qu’objet Folder

startup

voir section « Attribut de classe Folder startup », page 91

dossier contenant l’image exécutable de l’application exécutée

system

voir section « Attribut de classe Folder system », page 91

dossier contenant les fichiers du système d’exploitation

temp

voir section « Attribut de dossier par défaut destiné aux classe Folder temp », page 91 fichiers temporaires

trash

voir section « Attribut de classe Folder trash », page 92

dossier contenant les éléments supprimés

Attributs de classe de l’objet FileSystem (voir section « Objet FileSystem », page 83) Attribut de classe

Référence

fs

voir section « Attribut de nom du système de fichiers ; classe FileSystem fs », page 82 lecture seule.

Comment utiliser l’aide

Description

Page précédente

89

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

90

Méthodes Méthode

Référence

Description

Folder() new Folder()

voir section « Méthode Folder construit un nouvel objet Folder create() », page 93

selectDialog()

voir section « Méthode de ouvre une boîte de dialogue vous classe Folder selectDialog() », permettant de sélectionner un page 91 dossier à l’aide de la boîte de dialogue de sélection de dossiers spécifique au système d’exploitation

Méthodes de classe de l’objet FileSystem (voir section « Objet FileSystem », page 83) Méthode de classe

Référence

Description

decode()

voir section « Méthode de classe FileSystem decode() », page 82

décode la chaîne d’entrée à partir de UTF-8

encode()

voir section « Méthode de classe FileSystem encode() », page 82

encode la chaîne d’entrée en UTF8

Méthode de classe Folder() Folder(path) new Folder(path)

Description Cette fonction construit un nouvel objet Folder. Si le nom de chemin donné se rapporte à un fichier de disque déjà existant, un objet File est renvoyé à la place. Il n’est pas nécessaire que le dossier auquel le nom de chemin se rapporte existe. Si l’argument est omis, un nom temporaire est généré. Paramètres path

chemin du dossier créé, exprimé sous forme de chaîne

Renvoi Folder (ou File si le chemin se rapporte à un fichier existant).

Attribut de classe Folder current Folder.current

Description L’attribut current de Folder est le dossier en cours. Il est renvoyé en tant qu’objet Folder. L’attribution d’un objet Folder ou d’une chaîne contenant le nouveau nom de chemin définit le dossier en cours.

Comment utiliser l’aide

Page précédente

90

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

91

Type Folder ; lecture/écriture.

Méthode de classe Folder selectDialog() Folder.selectDialog(prompt, preset)

Description La méthode Folder SelectDialog() ouvre une boîte de dialogue vous permettant de sélectionner un dossier à l’aide de la boîte de dialogue de sélection de dossiers spécifique à la plate-forme. Les deux arguments sont facultatifs. Paramètres prompt

Chaîne

affiche un texte d’invite si la boîte de dialogue permet l’affichage de ce type de message ; facultatif

preset

Folder

dossier pré-sélectionné lorsque la boîte de dialogue s’ouvre

Renvoi Objet Folder pointant vers le dossier sélectionné, ou valeur nulle si l’utilisateur annule la boîte de dialogue.

Attribut de classe Folder startup Folder.startup

Description L’attribut startup de Folder correspond au dossier contenant l’image exécutable de l’application en cours d’exécution. Type Dossier ; lecture seule.

Attribut de classe Folder system Folder.system

Description L’attribut system de Folder correspond au dossier contenant les fichiers du système d’exploitation. Type Dossier ; lecture seule.

Attribut de classe Folder temp Folder.temp

Description L’attribut temp de Folder correspond au dossier par défaut destiné aux fichiers temporaires.

Comment utiliser l’aide

Page précédente

91

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

92

Type Dossier ; lecture seule.

Attribut de classe Folder trash Folder.trash

Description L’attribut trash de Folder correspond au dossier contenant les éléments supprimés. Type Dossier ; lecture seule.

Objet Folder Folder(“path”).

Description L’objet Folder contient les méthodes et les attributs communs aux objets Folder. Un objet Folder correspond à un dossier. Cet objet inclut également tous les attributs et méthodes contenus dans l’objet FileSystem, car ceux-ci s’appliquent aussi bien aux dossiers qu’aux fichiers. Attributs hérités de l’objet FileSystem (voir section « Objet FileSystem », page 83) Attribut

Référence

Description

absoluteURI

voir section « Attribut FileSystem absoluteURI », page 85

nom de chemin complet pour l’objet en notation URI

alias

voir section « Attribut FileSystem alias », page 85

renvoie true si l’objet fait référence à un alias de système de fichiers

created

voir section « Attribut date de création de l’objet FileSystem created », page 85

error

voir section « Attribut FileSystem error », page 86

contient un message décrivant la dernière erreur de système de fichiers

exists

voir section « Attribut FileSystem exists », page 86

renvoie true si le nom de chemin de cet objet fait référence à un fichier ou dossier existant

fsName

voir section « Attribut nom de l’objet spécifique au FileSystem fsName », page 86 système de fichiers en tant que nom de chemin complet

modified

voir section « Attribut FileSystem modified », page 87

Comment utiliser l’aide

date de la dernière modification de l’objet

Page précédente

92

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

93

Attribut

Référence

Description

name

voir section « Attribut FileSystem name », page 87

nom de l’objet sans spécification du chemin

parent

voir section « Attribut FileSystem parent », page 87

objet folder contenant cet objet

path

voir section « Attribut FileSystem path », page 87

partie chemin de l’URI absolue

relativeURI

voir section « Attribut FileSystem relativeURI », page 87

nom de chemin de l’objet en notation URI, relatif au dossier en cours

Méthode

Référence

Description

create()

voir section « Méthode Folder tente de créer un dossier à create() », page 93 l’emplacement vers lequel pointe le nom de chemin

getFiles()

voir section « Méthode Folder obtient une liste des objets File et getFiles() », page 94 Folder contenus dans l’objet folder

Méthodes

Méthodes héritées de l’objet FileSystem (voir section « Objet FileSystem », page 83) Méthode

Référence

Description

getRelativeURI()

voir section « Méthode calcule et renvoie l’URI relative, FileSystem getRelativeURI() », pour un chemin de base donné, en page 86 notation URI

remove()

voir section « Méthode FileSystem remove() », page 88

supprime le fichier ou le dossier représenté par cet objet

rename()

voir section « Méthode FileSystem rename() », page 88

renomme l’objet avec le nouveau nom

resolve()

voir section « Méthode FileSystem resolve() », page 88

tente de résoudre l’alias du système de fichiers vers lequel pointe cet objet

Méthode Folder create() Folder(path).create()

Description La méthode create() tente de créer un dossier à l’emplacement vers lequel pointe le nom de chemin.

Comment utiliser l’aide

Page précédente

93

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

94

Paramètres Aucun. Renvoi Booléen ; true si le dossier a été créé.

Méthode Folder getFiles() Folder.getFiles(mask)

Description La méthode Folder getFiles() renvoie une liste des objets File et Folder contenus dans l’objet folder. Le paramètre mask correspond au masque de recherche pour les noms de fichiers, exprimé sous forme de chaîne. Il peut contenir des points d’interrogation et des astérisques et est prédéfini à * pour rechercher tous les fichiers. L’autre solution consiste à fournir une fonction. Cette fonction est appelée avec un objet File ou Folder pour chaque fichier ou dossier contenu dans la recherche de répertoire. Si la fonction renvoie la valeur true, l’objet est ajouté au tableau. Sous Windows, tous les alias se terminent par l’extension .lnk. Cette extension est retirée du nom de fichier afin de préserver la compatibilité avec les autres systèmes d’exploitation. Vous pouvez toutefois rechercher tous les alias en fournissant le masque de recherche *.lnk. Cela n’est cependant pas recommandé car il n’est pas transférable. Paramètres mask

Chaîne

masque de recherche pour les noms de fichiers (voir ci-dessus)

Renvoi Tableau d’objets File et Folder ou valeur nulle, si le dossier n’existe pas.

Objet FolderItem app.project.FolderItem

Description L’objet FolderItem correspond à tout dossier de votre fenêtre de projet. Il peut contenir différents types d’éléments (métrage, compositions, solides), ainsi que d’autres dossiers. Attributs Attribut

Référence

Description

items

voir section « Attribut FolderItem items », page 95

ItemCollection représentant le contenu de ce FolderItem

numItems

voir section « Attribut FolderItem numItems », page 96

nombre d’éléments contenus dans le FolderItem

Comment utiliser l’aide

Page précédente

94

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

95

Méthodes Méthode

Référence

Description

item()

voir section « Méthode FolderItem item() », page 95

renvoie un élément

Exemple Etant donné que le deuxième élément du projet est un FolderItem, le code suivant génère une alerte pour chaque élément de niveau supérieur dans le dossier. L’alerte affiche le nom de chaque élément de niveau supérieur. var secondItem = app.project.item(2); if ( !(secondItem instanceof FolderItem) ) { alert( "problem: second item is not a folder"); } else { for (i = 1; i <= secondItem.numItems; i++ ) { alert( "item number " + i + " within the folder is named " + secondItem.item(i).name); } }

Méthode FolderItem item() app.project.folderItem.item(index)

Description La méthode FolderItem item() renvoie l’élément de niveau supérieur de ce FolderItem avec l’index donné. Notez que le « niveau supérieur » indique le niveau dans le dossier, mais pas nécessairement dans le projet. Paramètres index

Entier

numéro d’index du FolderItem

Renvoi Elément.

Attribut FolderItem items app.project.folderItem.items

Description L’attribut items est la ItemCollection qui représente le contenu de ce FolderItem. Contrairement à la ItemCollection possédée par l’objet Project, la ItemCollection d’un FolderItem ne contient que les éléments de niveau supérieur dans le FolderItem. Notez que le « niveau supérieur » indique le niveau dans le dossier, mais pas nécessairement dans le projet. L’unique cas où les éléments de niveau supérieur du FolderItem sont également les éléments de niveau supérieur du projet est celui du rootFolder. Type ItemCollection ; lecture seule. Comment utiliser l’aide

Page précédente

95

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

96

Attribut FolderItem numItems app.project.folderItem.numItems

Description L’attribut numItems est le nombre d’éléments contenus dans le FolderItem. Ce nombre correspond au nombre d’éléments de niveau supérieur dans le dossier. Autrement dit, si ce FolderItem contient un autre FolderItem, ce dernier est compté comme un seul élément, même s’il contient des sous-éléments. Type Entier ; lecture seule.

Objet FootageItem app.project.item(index) app.project.items[index]

Description L’objet FootageItem représente un élément de métrage importé dans le projet, qui apparaît dans la fenêtre de projet. Attributs Attribut

Référence

Description

file

voir section « Attribut FootageItem file », page 97

fichier source du métrage

mainSource

voir section « Attribut FootageItem mainSource », page 97

contient tous les paramètres liés à l’élément de métrage

Méthode

Référence

Description

replace()

voir section « Méthode FootageItem replace() », page 97

remplace un fichier de métrage par un autre fichier de métrage

replaceWithPlaceholder()

voir section « Méthode FootageItem replaceWithPlaceholder() », page 98

remplace un fichier de métrage par un objet pseudo-élément

replaceWithSequence()

voir section « Méthode FootageItem replaceWithSequence() », page 98

remplace un fichier de métrage par une séquence d’images

Méthodes

Comment utiliser l’aide

Page précédente

96

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

97

Méthode

Référence

Description

replaceWithSolid()

voir section « Méthode FootageItem replaceWithSolid() », page 99

remplace un fichier de métrage par un solide

Attribut FootageItem file app.project.item(index).file

Description L’attribut file est l’objet File du fichier source du métrage. Si la source principale d’un FootageItem est une FileSource, ce fichier est le même que mainSource.file. Sinon, la valeur est nulle. Type Objet File (ou valeur nulle si la source principale n’est pas une FileSource) ; lecture seule.

Attribut FootageItem mainSource app.project.item(index).mainSource.

Description L’attribut footage item mainSource contient tous les paramètres liés à cet élément de métrage, y compris ceux habituellement accessibles par le biais de la boîte de dialogue Interpréter un métrage. Voir aussi FootageSource (et ses trois types, c’est-à-dire SolidSource, FileSource et PlaceholderSource). Cet attribut est en lecture seule, mais il peut être modifié en appelant l’une des méthodes FootageItem qui modifient la source du métrage, c’est-à-dire les méthodes replace(), replaceWithSequence(), replaceWithSolid() et replaceWithPlaceholder(). Type FootageSource. Lecture seule.

Méthode FootageItem replace() app.project.item(index).replace(file)

Description La méthode FootageItem replace() remplace le FootageItem par le fichier indiqué en tant que paramètre. Dans After Effects 6.5, outre le chargement du fichier donné, cette méthode effectue les opérations suivantes : • Définit la source principale (mainSource) sur une nouvelle valeur reflétant le contenu du nouveau fichier. • Définit les attributs name, width, height, frameDuration et duration, définis dans la classe AVItem de base, en fonction du contenu du fichier. • Conserve les paramètres d’interprétation de la source principale précédente. • Identifie la couche alpha si replace() est appelé avec un fichier comportant une couche alpha non identifiée.

Comment utiliser l’aide

Page précédente

97

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

98

Paramètres file

Objet File

Méthode FootageItem replaceWithPlaceholder() app.project.item(index).replaceWithPlaceholder(name, width, height, frameRate, duration)

Description La méthode FootageItem replaceWithSequence() remplace le FootageItem par la séquence d’image indiquée en tant que paramètre. Dans After Effects 6.5, outre le chargement du fichier donné, cette méthode effectue les opérations suivantes : • Définit la source principale (mainSource) sur une nouvelle valeur reflétant le contenu du nouveau fichier. • Définit les attributs name, width, height, frameDuration et duration, définis dans la classe AVItem de base, en fonction du contenu du fichier. • Conserve les paramètres d’interprétation de la source principale précédente. • Identifie la couche alpha si replace() est appelé avec un fichier comportant une couche alpha non identifiée. Paramètres name

string

nom du pseudo-élément

width

entier

largeur du pseudo-élément [4..30 000]

height

entier

hauteur du pseudo-élément [4..30 000]

frameRate

Valeur de la virgule flottante

cadence d’image du pseudo-élément [1..99]

duration

Valeur de la virgule flottante

durée du pseudo-élément [0..10 800]

Méthode FootageItem replaceWithSequence() app.project.item(index).replaceWithSequence(file, forceAlphabetical)

Description La méthode FootageItem replaceWithSequence() remplace le FootageItem par la séquence d’image indiquée en tant que paramètre. Dans After Effects 6.5, outre le chargement du fichier donné, cette méthode effectue les opérations suivantes : • Définit la source principale (mainSource) sur une nouvelle valeur reflétant le contenu du nouveau fichier. • Définit les attributs name, width, height, frameDuration et duration, définis dans la classe AVItem de base, en fonction du contenu du fichier. • Conserve les paramètres d’interprétation de la source principale précédente.

Comment utiliser l’aide

Page précédente

98

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

99

• Identifie la couche alpha si replace() est appelé avec un fichier comportant une couche alpha non identifiée. Paramètres file

Objet File

fichier de remplacement

forceAlphabetical

booléen

une valeur true équivaut à activer l’option Ordre alphabétique dans la boîte de dialogue Fichier > Remplacer le métrage > Fichier.

Méthode FootageItem replaceWithSolid() app.project.item(index).replaceWithSolid(color, name, width, height, pixelAspect)

Description La méthode FootageItem replaceWithSequence() remplace le FootageItem par la séquence d’image indiquée en tant que paramètre. Dans After Effects 6.5, outre le chargement du fichier donné, cette méthode effectue les opérations suivantes : • Définit la source principale (mainSource) sur une nouvelle valeur reflétant le contenu du nouveau fichier. • Définit les attributs name, width, height, frameDuration et duration, définis dans la classe AVItem de base, en fonction du contenu du fichier. • Conserve les paramètres d’interprétation de la source principale précédente. • Identifie la couche alpha si replace() est appelé avec un fichier comportant une couche alpha non identifiée. Paramètres color

Tableau de valeurs de la virgule flottante

couleur du solide (tableau de quatre valeurs de la virgule flottante de 0 à 1 : [R, V, B, A])

name

string

nom du solide

width

entier

largeur du solide [4..30 000]

height

entier

hauteur du solide [4..30 000]

pixelAspect

Valeur de la virgule flottante

format des pixels du solide [0.01..100]

Objet FootageSource app.project.item(index).mainSource. app.project.item(index).proxySource.

Description L’objet FootageSource contient des informations décrivant la source d’un métrage. Il est utilisé pour contenir la source principale d’un FootageItem ou la source de doublure d’un AVItem. AVItem est la classe de base de FootageItem et CompItem ; par conséquent, la source de la doublure apparaît dans ces deux types d’élément. Comment utiliser l’aide

Page précédente

99

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

100

Attributs Attribut

Référence

Description

hasAlpha

voir section « Attribut FootageSource hasAlpha », page 103

spécifie si une séquence ou une doublure de métrage inclut une couche alpha

alphaMode

voir section « Attribut définit le mode d’une couche FootageSource alphaMode », alpha page 101

premulColor

voir section « Attribut FootageSource premulColor », page 104

invertAlpha

voir section « Attribut indique si une couche alpha d’une FootageSource invertAlpha », séquence de métrage ou d’une page 103 doublure doit être inversée

isStill

voir section « Attribut FootageSource isStill », page 104

indique si le métrage est une image fixe

fieldSeparationType

voir section « Attribut FootageSource fieldSeparationType », page 102

définit le type de séparation de trame

highQualityFieldSeparatio n

voir section « Attribut définit la façon dont les trames FootageSource doivent être séparées dans un highQualityFieldSeparation », métrage non fixe. page 103

removePulldown

voir section « Attribut FootageSource removePulldown », page 105

définit le type de conversion du métrage

loop

voir section « Attribut FootageSource loop », page 104

définit le nombre de boucles d’une séquence d’images

nativeFrameRate

voir section « Attribut FootageSource nativeFrameRate », page 104

cadence native du métrage

displayFrameRate

voir section « Attribut cadence effective telle qu’affichée et rendue par After Effects dans les FootageSource displayFrameRate », page 102 compositions

conformFrameRate

voir section « Attribut FootageSource conformFrameRate », page 101

Comment utiliser l’aide

définit la couleur à prémultiplier

définit la cadence à laquelle le métrage doit se conformer

Page précédente

100

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

101

Méthodes Méthode

Référence

Description

guessAlphaMode()

voir section « Méthode FootageSource guessAlphaMode() », page 102

identifie le paramètre alphaMode

guessPulldown()

voir section « Méthode FootageSource guessPulldown() », page 102

identifie le paramètre pulldownType

Attribut FootageSource alphaMode app.project.item(index).mainSource.alphaMode app.project.item(index).proxySource.alphaMode

Description L’attribut alphaMode de la footageSource définit la façon dont les informations alpha contenues dans le métrage doivent être interprétées. Si hasAlpha est false, cet attribut est sans effet. Type Mode Alpha ; l’un des suivants (lecture/écriture) : AlphaMode.IGNORE AlphaMode.STRAIGHT AlphaMode.PREMULTIPLIED

Attribut FootageSource conformFrameRate app.project.item(index).mainSource.conformFrameRate app.project.item(index).proxySource.conformFrameRate

Description L’attribut conformFrameRate de FootageSource détermine une cadence d’images à utiliser à la place de la nativeFrameRate. S’il est défini sur 0, la nativeFrameRate sera utilisée à la place. La plage des valeurs autorisées est [0 .. 99.0]. Vous ne devez pas définir cette valeur si FootageSource.isStill est true. Vous ne devez pas définir cette valeur sur 0 si removePulldown n’est pas défini sur PulldownPhase.OFF. Si la valeur est 0 lorsque vous définissez removePulldown sur une valeur différente de PulldownPhase.OFF, cette valeur sera par défaut équivalente à la nativeFrameRate. Type Valeur de la virgule flottante ; lecture/écriture.

Attribut FootageSource displayFrameRate app.project.item(index).mainSource.displayFrameRate app.project.item(index).proxySource.displayFrameRate

Description L’attribut displayFrameRate de la FootageSource correspond à la cadence d’images réelle affichée et rendue par After Effects dans les compositions.

Comment utiliser l’aide

Page précédente

101

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

102

Si removePulldown est PulldownPhase.OFF, il s’agit de la conformFrameRate (si elle est différente de zéro) ou de la nativeFrameRate (si conformFrameRate est 0). Si removePulldown est différent de PulldownPhase.OFF, il s’agit de (0,8 * conformFrameRate), la cadence réelle après suppression d’une image sur cinq. Type Valeur du la virgule flottante ; lecture seule.

Attribut FootageSource fieldSeparationType app.project.item(index).mainSource.fieldSeparationType app.project.item(index).proxySource.fieldSeparationType

Description L’attribut fieldSeparationType de FootageSource définit la façon dont les trames doivent être séparées dans un métrage non fixe. Vous ne devez pas écrire cet attribut si isStill est true. Vous ne devez pas définir cette valeur sur FieldSeparationType.OFF si removePulldown est différent de PulldownPhase.OFF. Vous devez remplacer removePulldown par PulldownPhase.OFF, puis définir le fieldSeparationType sur FieldSeparationType.OFF. Types énumérés FieldSeparationType (lecture/écriture) ; l’un des suivants : AUCUN UPPER_FIELD_FIRST LOWER_FIELD_FIRST

Méthode FootageSource guessAlphaMode() app.project.item(index).mainSource.guessAlphaMode() app.project.item(index).proxySource.guessAlphaMode()

Description La méthode guessAlphaMode() définit alphaMode, premulColor et invertAlpha sur les identifications les plus proches pour cette source de métrage. Si hasAlpha est false, aucun changement n’est effectué. Paramètres Aucun. Renvoi Aucun.

Méthode FootageSource guessPulldown() app.project.item(index).mainSource.guessPulldown(method) app.project.item(index).proxySource.guessPulldown(method)

Description La méthode guessPulldown() définit le fieldSeparationType et la removePulldown sur les identifications les plus proches pour cette source de métrage. Si isStill est true, aucun changement n’est effectué.

Comment utiliser l’aide

Page précédente

102

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

103

Paramètres PulldownMetho d

utilisé en tant qu’argument d’entrée pour la méthode guessPulldown() d’une FootageSource ; l’un des types énumérés ci-dessous

Types énumérés PULLDOWN_3_2

utilise la méthode de conversion 3:2

ADVANCE_24P

utilise la méthode Advance 24p

Renvoi Aucun.

Attribut FootageSource hasAlpha app.project.item(index).mainSource.hasAlpha app.project.item(index).proxySource.hasAlpha

Description L’attribut hasAlpha de FootageSource est true si le métrage possède un composant alpha. Si true, les attributs alphaMode, invertAlpha et premulColor auront une importance. Si false, ces trois champs n’ont pas d’importance pour le métrage. Type Booléen ; true si alpha existe. Lecture seule.

Attribut FootageSource highQualityFieldSeparation app.project.item(index).mainSource.highQualityFieldSeparation app.project.item(index).proxySource.highQualityFieldSeparation

Description L’attribut highQualityFieldSeparation de FootageSource indique si After Effects doit utiliser des algorithmes particuliers pour déterminer la façon d’effectuer la séparation de trame. Vous ne devez pas écrire cet attribut si isStill est true. Vous ne devez pas écrire cet attribut si fieldSeparationType est FieldSeparationType.OFF. Type Booléen ; true si la haute qualité est activée. Lecture/écriture.

Attribut FootageSource invertAlpha app.project.item(index).mainSource.invertAlpha app.project.item(index).proxySource.invertAlpha

Description L’attribut invertAlpha de footageSource détermine si une couche alpha d’une séquence de métrage ou d’une doublure doit être inversée. Cet attribut n’est valide qu’en présence d’une couche alpha. Si hasAlpha est false ou si alphaMode est AlphaMode.IGNORE, cet attribut n’a pas d’importance.

Comment utiliser l’aide

Page précédente

103

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

104

Type Booléen ; true si la couche alpha est inversée. Lecture/écriture.

Attribut FootageSource isStill app.project.item(index).mainSource.isStill app.project.item(index).proxySource.isStill

Description L’attribut isStill de footageSource indique si le métrage est fixe ou comporte un composant temporel. Les fichiers JPEG, les solides et les pseudo-éléments d’une durée de 0 sont des métrages fixes. Les fichiers de films, les fichiers son, les séquences et les pseudo-éléments d’une durée différente de zéro sont des métrages non fixes. Type Booléen ; true s’il s’agit d’une image fixe. Lecture seule.

Attribut FootageSource loop app.project.item(index).mainSource.loop app.project.item(index).proxySource.loop

Description L’attribut loop de footageSource définit le nombre de lectures consécutives du métrage lors de son utilisation dans une composition. La plage des valeurs autorisées est [1 .. 9999], où 1 est la valeur par défaut. Vous ne devez pas écrire cet attribut si isStill est true. Type Entier ; nombre de boucles de la séquence. Lecture/écriture.

Attribut FootageSource nativeFrameRate app.project.item(index).mainSource.nativeFrameRate app.project.item(index).proxySource.nativeFrameRate

Description L’attribut nativeFrameRate de footageSource correspond à la cadence native du métrage. Type Valeur de la virgule flottante. Lecture/écriture.

Attribut FootageSource premulColor app.project.item(index).mainSource.premulColor app.project.item(index).proxySource.premulColor

Description L’attribut premulColor de footageSource détermine la couleur à prémultiplier. Cet attribut n’est valide que si l’alphaType est défini sur PREMULTIPLIED.

Comment utiliser l’aide

Page précédente

104

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

105

Type Couleur (tableau de quatre valeurs de virgule flottante comprises entre 0 et 1 : [R, V, B, A]) ; lecture/écriture.

Attribut FootageSource removePulldown app.project.item(index).mainSource.removePulldown app.project.item(index).proxySource.removePulldown

Description L’attribut removePulldown des informations de fichier de métrage indique la manière dont les conversions doivent être supprimées lorsque la séparation de trame est utilisée. Vous ne devez pas écrire cet attribut si isStill est true. Vous ne devez pas définir cet attribut sur une valeur différente de PulldownPhase.OFF si le fieldSeparationType est FieldSeparationType.OFF. Le fieldSeparationType doit d’abord être modifié. Type énuméré Phase de conversion (lecture/écriture) ; l’une des suivantes : RemovePulldown.OFF RemovePulldown.WSSWW RemovePulldown.SSWWW RemovePulldown.SWWWS RemovePulldown.WWWSS RemovePulldown.WWSSW RemovePulldown.WSSWW_24P_ADVANCE RemovePulldown.SSWWW_24P_ADVANCE RemovePulldown.SWWWS_24P_ADVANCE RemovePulldown.WWWSS_24P_ADVANCE RemovePulldown.WWSSW_24P_ADVANCE

Objet ImportOptions new ImportOptions(); new ImportOptions(File);

Description L’objet ImportOptions fournit la possibilité de créer, modifier et accéder aux options de la méthode importFile(). Vous pouvez créer ImportOptions à l’aide de l’un de deux constructeurs, l’un prenant des arguments, l’autre n’en prenant pas. Constructeurs Si importFile() est défini sans arguments, il contient un « file » qui n’existe pas s’il n’est pas défini dans une autre instruction : new ImportOptions().file = new File("myfile.psd");

Sinon, importFile peut être défini avec un seul argument, lequel est un objet File : var my_io = new ImportOptions( new File( "myfile.psd" ) );

Comment utiliser l’aide

Page précédente

105

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

106

Attributs Attributs

Référence

Description

importAs

voir section « Attribut ImportOptions importAs », page 107

contient ImportAsType

sequence

voir section « Attribut ImportOptions sequence », page 107

booléen servant à déterminer si une séquence ou un fichier seul est importé

forceAlphabetical

voir section « Attribut booléen servant à déterminer si ImportOptions l’option Ordre alphabétique est forceAlphabetical », page 107 activée

file

voir section « Attribut ImportOptions file », page 106

fichier à importer

Méthode

Référence

Description

canImportAs()

voir section « Méthode ImportOptions canImportAs() », page 106

définit l’objet ImportAsType, en permettant à l’entrée d’être limitée à un type particulier

Méthodes

Méthode ImportOptions canImportAs() importOptions.canImportAs(ImportAsType)

Description La méthode canImportAs() est utilisée pour déterminer si un fichier donné peut être importé en tant que ImportAsType donné, transmis en tant qu’argument. Paramètres ImportAsType ; l’un des suivants : ImportAsType.COMP ImportAsType.FOOTAGE ImportAsType.COMP_CROPPED_LAYERS ImportAsType.PROJECT

Renvoi Booléen. Exemple var io = new ImportOptions( File(“c:\\foo.psd”)); io.canImportAs( ImportAsType.COMP )

Attribut ImportOptions file importOptions.file

Comment utiliser l’aide

Page précédente

106

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

107

Description L’attribut file définit le fichier à importer. Utilisé pour obtenir ou modifier le fichier défini dans le constructeur. Type Fichier ; lecture/écriture.

Attribut ImportOptions forceAlphabetical importOptions.forceAlphabetical

Description L’attribut forceAlphabetical est un booléen. Une valeur true équivaut à activer l’option Ordre alphabétique de la boîte de dialogue Fichier > Importer > Fichier. Type Booléen ; lecture/écriture.

Attribut ImportOptions importAs importOptions.importAs

Description L’attribut importAs contient le importAsType pour le fichier à importer. Vous pouvez le spécifier en définissant un fichier du type que vous souhaitez importer en tant qu’argument. Type énuméré ImportAsType ; lecture/écriture. L’un des suivants : ImportAsType.COMP_CROPPED_LAYERS ImportAsType.FOOTAGE ImportAsType.COMP ImportAsType.PROJECT

Attribut ImportOptions sequence importOptions.sequence

Description L’attribut sequence est un booléen ; il détermine si une séquence ou un fichier seul est importé. Type Booléen ; lecture/écriture.

Objet Item app.project.item(index) app.project.items[index]

Description L’objet Item représente un élément pouvant apparaître dans la fenêtre de projet. FootageItem, CompItem et FolderItem sont tous des types d’Item.

Comment utiliser l’aide

Page précédente

107

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

108

Notez que la numérotation de l’index pour item commence à 1, et non à 0. Attributs Attributs

Référence

Description

name

voir section « Attribut Item name », page 109

nom de l’objet, tel qu’affiché dans la fenêtre de projet

comment

voir section « Attribut Item comment », page 109

chaîne contenant un commentaire

id

voir section « Attribut Item id », page 109

ID d’entier unique pour cet élément

parentFolder

voir section « Attribut Item parentFolder », page 109

dossier parent de cet élément

selected

voir section « Attribut Item selected », page 110

true si cet élément est actuellement sélectionné

typeName

voir section « Attribut Item typeName », page 110

chaîne correspondant au type d’élément

Méthode

Référence

Description

remove()

voir section « Méthode Item remove() », page 109

supprime l’élément du projet

Méthodes

Exemple L’exemple suivant obtient le deuxième élément du projet et vérifie que le typeName de cet élément est « Folder ». Il supprime ensuite de ce dossier tout élément solide de niveau supérieur n’étant pas actuellement sélectionné. L’exemple vérifie, par ailleurs, que le parentFolder pour chaque élément du dossier soit correct. v ar my Folder = app. project.item(2); if (myFolder.t y p eName != "Folder" ) { aler t("er ror : second item is not a folder"); } else { var numInFolder = my Folder.numItems; // Always r un loops backwards when deleting thing s: for(i = numInFolder ; i >= 1; i--) { var curItem = my Folder.item(i); if ( curItem.parentFolder != my Folder) { aler t("er ror w ithin AE: the parentFolder is not set cor rectly"); } else { i f ( ! c u r Item . s e l e c te d & & c u r Item . t y p e Na m e = = " Fo o t a g e " ) { / / A h a ! a n u n s e l e c te d s o l i d . curItem.remove(); } } } }

Comment utiliser l’aide

Page précédente

108

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

109

Attribut Item comment app.project.item(index).comment

Description L’attribut item comment est une chaîne contenant un commentaire, d’une taille maximale de 15 999 octets après toute conversion d’encodage. Ce commentaire est uniquement destiné à l’utilisateur ; il n’influe aucunement sur l’apparence et le comportement de l’élément. Type Chaîne ; lecture/écriture.

Attribut Item id app.project.item(index).id

Description L’attribut item ID est un numéro d’identification unique et persistant utilisé pour identifier un élément entre les sessions. La valeur de l’ID ne change pas, y compris une fois que le projet est enregistré dans un fichier et lu ultérieurement. Un ID est par conséquent effectivement permanent excepté lors de l’importation d’un projet dans un autre projet, auquel cas les nouveaux ID sont attribués aux nouveaux éléments importés. Type Entier ; lecture seule.

Attribut Item name app.project.item(index).name

Description L’attribut item name correspond au nom de l’élément, tel qu’il apparaît dans la fenêtre de projet. Type Chaîne ; lecture/écriture.

Attribut Item parentFolder app.project.item(index).parentFolder

Description L’attribut Parent Folder génère le dossier contenant l’élément sélectionné. Si cet élément se trouve au niveau supérieur du projet, le parentFolder est le dossier racine du projet (app.project.rootFolder). Type FolderItem ; lecture seule.

Méthode Item remove() app.project.item(index).remove()

Comment utiliser l’aide

Page précédente

109

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

110

Description La méthode Item remove() supprime cet élément de la fenêtre de projet. Si l’élément est un FolderItem, tous les éléments contenus dans le dossier sont également supprimés. Paramètres Aucun. Renvoi Aucun.

Attribut Item selected app.project.item(index).selected

Description L’attribut selected détermine si un élément est sélectionné ou non. Plusieurs éléments peuvent être sélectionnés simultanément à un moment donné. L’attribut selected est true si cet élément est actuellement sélectionné. Le fait de définir cet attribut sur true sélectionne l’élément. Type Booléen ; lecture/écriture.

Attribut Item typeName app.project.item(index).typeName

Description L’attribut typeName est une chaîne représentant un nom du type lisible par l’utilisateur. Il s’agit par exemple de Folder, Footage et Composition. Type Chaîne ; lecture seule.

ItemCollection app.project.items

Description L’objet ItemCollection représente une collection d’éléments. La ItemCollection appartenant à un objet Project représente tous les éléments contenus dans le projet. La ItemCollection appartenant à un objet FolderItem représente tous les éléments contenus dans ce dossier. Attributs length

nombre d’objets contenus dans la collection (concerne toutes les collections)

Méthodes []

Comment utiliser l’aide

extrait un ou plusieurs objets de la collection au moyen du numéro d’index correspondant

Page précédente

110

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

addComp()

Page précédente

111

crée un nouveau CompItem et l’ajoute à l’ItemCollection

Méthode ItemCollection addComp() app.project.ItemCollection.addComp(name, width, height, pixelAspect, duration, frameRate)

Description La méthode itemCollection addcomp() crée un nouvel élément de composition et l’ajoute à l’ItemCollection. Si l’ItemCollection appartient au projet ou au dossier racine, le parentFolder de la nouvelle composition est le dossier racine. Sinon, il s’agit du FolderItem possédant l’ItemCollection. Paramètres name

string

nom de la nouvelle composition

width

entier

largeur de la nouvelle composition [4.. 30 000]

height

entier

hauteur de la nouvelle composition [4.. 30 000]

pixelAspect

valeur de la virgule flottante

format des pixels du solide [0.01..100]

duration

valeur de la virgule flottante

durée de la nouvelle composition [0 .. 10 800 ]

frameRate

valeur de la virgule flottante

cadence d’images de la nouvelle composition [1 .. 99]

Renvoi CompItem.

Objet KeyframeEase L’objet KeyframeEase définit le paramètre KeyframeEase d’une image clé, lequel est déterminé par ses paramètres de vitesse et d’influence. Attributs Attribut

Référence

Description

speed

voir section « Attribut KeyframeEase speed », page 112

correspond au paramètre de vitesse d’une image clé

influence

voir section « Attribut KeyframeEase influence », page 112

correspond au paramètre d’influence d’une image clé dans la plage [0.1..100.0]

Comment utiliser l’aide

Page précédente

111

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

112

Méthode Méthode

Référence

Description

keyframeEase()

voir section « Méthode KeyframeEase keyframeEase() », page 112

renvoie un lissage d’image clé

Méthode KeyframeEase keyframeEase() myKey.keyframeEase(speed, influence)

Description Ce constructeur crée une valeur KeyframeEase. Les deux paramètres sont requis. Notez que pour les propriétés 2D et 3D non spatiales, vous devez définir un lissage à l’approche et un lissage à l’éloignement pour chaque dimension (voir l’exemple ci-dessous). Notez également qu’il existe deux types de lissage, le temporel et le spatial. Paramètres speed

Valeur de la virgule flottante ; vitesse de l’image clé

influence

Valeur de la virgule flottante comprise dans la plage [0.1..100.0] ; influence de l’image clé

Renvoi Aucun. Exemple var easeIn = new KeyframeEase(0.5, 50); var easeOut = new KeyfreameEase(0.75, 85); myPositionProperty.setTemporalEaseAtKey(2, [easeIn], [easeOut]);

Attribut KeyframeEase influence myKey,KeyframeEase.influence

Description Cet attribut définit la valeur de l’influence de l’image clé. La plage des valeurs autorisées est 0.1 - 100.0. Type Valeur de la virgule flottante ; lecture/écriture.

Attribut KeyframeEase speed myKey,KeyframeEase.speed

Description Cet attribut définit la valeur de la vitesse de l’image clé. Type Valeur de la virgule flottante ; lecture/écriture.

Comment utiliser l’aide

Page précédente

112

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

113

Objet Layer app.project.item(index).layer(index)

Description L’objet Layer fournit l’accès à un calque contenu dans des compositions. Cet accès est possible au moyen d’un numéro d’index ou d’une chaîne de nom. Les calques AV (calques de composition, calques de métrage, etc.) sont représentés en tant qu’objets AVLayer. AVLayer est une sous-classe de Layer qui contient des méthodes et des attributs supplémentaires (pour plus d’informations, voir section « Objet AVLayer », page 51). L’objet Layer est dérivé de PropertyGroup. Tous les attributs des objets PropertyBase et PropertyGroup sont également disponibles sur les Layers. Attributs Attribut

Référence

Description

index

voir section « Attribut Layer index », page 116

index du calque, compris dans la plage [1,numLayers]

name

voir section « Attribut Layer name », page 118

nom du calque

parent

voir section « Attribut Layer parent », page 119

parent de ce calque

time

voir section « Attribut Layer time », page 121

instant courant du calque

startTime

voir section « Attribut Layer startTime », page 120

instant de début du calque, exprimé en temps de composition

stretch

voir section « Attribut Layer stretch », page 120

extension temporelle, exprimée en pourcentage

inPoint

voir section « Attribut Layer inPoint », page 117

point d’entrée du calque, exprimé en temps de composition

outPoint

voir section « Attribut Layer outPoint », page 118

point de sortie du calque, exprimé en temps de composition

enabled

voir section « Attribut Layer enabled », page 116

true si le calque est activé

solo

voir section « Attribut Layer solo », page 120

true si le calque est isolé

shy

voir section « Attribut Layer shy », page 120

true si le calque est discret

locked

voir section « Attribut Layer locked », page 117

true si le calque est verrouillé

Comment utiliser l’aide

Page précédente

113

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

114

Attribut

Référence

Description

hasVideo

voir section « Attribut Layer hasVideo », page 116

true si le calque contient un composant vidéo

active

voir section « Attribut Layer active », page 115

true si le calque est actif à l’instant courant

nullLayer

voir section « Attribut Layer nullLayer », page 118

true s’il s’agit d’un calque nul

selectedProperties

voir section « Attribut Layer selectedProperties », page 119

tableau contenant tous les objets Property et PropertyGroup sélectionnés dans Layer

Méthode

Référence

Description

remove()

voir section « Méthode Layer remove() », page 119

supprime le calque de la composition

moveToBeginning()

voir section « Méthode Layer moveToBeginning() », page 117

déplace le calque vers le haut de la composition (premier calque)

moveToEnd()

voir section « Méthode Layer moveToEnd() », page 118

déplace le calque vers le bas de la composition (dernier calque)

moveAfter()

voir section « Méthode Layer moveAfter() », page 117

déplace le calque sous un autre calque ayant été défini

moveBefore()

voir section « Méthode Layer moveBefore() », page 117

déplace le calque au-dessus d’un autre calque ayant été défini

duplicate()

voir section « Méthode Layer duplicate() », page 116

duplique le calque

copyToComp()

voir section « Méthode Layer copyToComp() », page 115

copie le calque vers le haut et le début d’une autre composition

activeAtTime()

voir section « Méthode Layer activeAtTime() », page 115

informe si le calque est actif à un instant donné

setParentWithJump()

voir section « Méthode Layer setParentWithJump() », page 119

établit newParent en tant que parent de ce calque

Méthodes

Exemple Si le premier élément du projet est une composition, l’exemple suivant désactive le premier calque de cette composition (c’est-à-dire l’icône en forme d’œil) et le renomme « Lord High Imperial Layer ». var firstLayer = app.project.item(1).layer(1); firstLayer.enabled = false; firstLayer.name = "Lord High Imperial Layer";

Comment utiliser l’aide

Page précédente

114

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

115

Attribut Layer active app.project.item(index).layer(index).active

Description L’attribut Layer active est true si le composant vidéo du calque est actif à l’instant courant. Pour que la valeur soit true, le calque doit être activé ; aucun autre calque ne doit être en isolation sauf si ce calque l’est aussi, et l’instant donné doit être compris entre le point d’entrée et le point de sortie de ce calque. Notez que l’attribut active ne sera pas défini sur true pour un calque audio ; il existe un attribut audioActive distinct dans l’objet AVLayer. Type Booléen ; lecture seule.

Méthode Layer activeAtTime() app.project.item(index).layer(index).activeAtTime(time)

Description La méthode layer activeAtTime informe si ce calque est actif à un instant donné. Pour que la valeur renvoyée soit true, l’attribut enabled du calque doit également être true, aucun autre calque ne doit être en isolation sauf si ce calque l’est aussi, et l’instant donné doit être compris entre le point d’entrée et le point de sortie de ce calque. Paramètres valeur de la virgule flottante

time

temps d’évaluation, en secondes

Renvoi Booléen.

Méthode Layer copyToComp() app.project.item(index).layer(index).copyToComp(intoComp)

Description La méthode layer copyToComp() copie le calque dans la composition spécifiée par intoComp. Le calque d’origine reste inchangé. Paramètres comp

composition de destination où le calque sera supprimé

Renvoi Aucun.

Méthode Layer duplicate() app.project.item(index).layer(index).duplicate()

Comment utiliser l’aide

Page précédente

115

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

116

Description La méthode layer duplicate duplique le calque. Elle produit le même résultat que la sélection d’un calque dans l’interface utilisateur suivie de la sélection de la commande Edition > Dupliquer, excepté que la sélection dans l’interface utilisateur ne change pas lorsque vous appelez cette méthode. Paramètres Aucun. Renvoi Calque.

Attribut Layer enabled app.project.item(index).layer(index).enabled

Description L’attribut Layer enabled est true si le calque est activé, et false dans le cas contraire. Correspond à la commande d’activation/désactivation dans la fenêtre de calque. Type Booléen ; lecture/écriture.

Attribut Layer hasVideo app.project.item(index).layer(index).hasVideo

Description L’attribut Layer hasVideo est true si le calque est activé, et false dans le cas contraire. Correspond à la commande d’activation/désactivation dans la fenêtre de calque. Type Booléen ; lecture seule.

Attribut Layer index app.project.item(index).layer(index).index

Description L’attribut Layer index correspond à l’index du calque, compris dans la plage [1,numLayers]. Type Entier ; lecture seule.

Attribut Layer inPoint app.project.item(index).layer(index).inPoint

Description L’attribut Layer inPoint est le point d’entrée du calque, exprimé en temps de composition. La plage des valeurs autorisées est [-10 800, 10 800]. Type Valeur de la virgule flottante ; lecture/écriture.

Comment utiliser l’aide

Page précédente

116

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

117

Attribut Layer locked app.project.item(index).layer(index).locked

Description L’attribut Layer locked est true si le calque est verrouillé, et false dans le cas contraire. Correspond à la commande d’activation/désactivation du verrouillage dans la fenêtre de calque. Type Booléen ; lecture/écriture.

Méthode Layer moveAfter() app.project.item(index).layer(index).moveAfter(layer)

Description La méthode Layer moveAfter déplace le calque en dessous d’un autre calque déterminé Paramètres calque

calque cible que ce calque va suivre

Renvoi Aucun.

Méthode Layer moveBefore() app.project.item(index).layer(index).moveBefore(layer)

Description La méthode Layer moveAfter déplace le calque au-dessus d’un autre calque ayant été défini. Paramètres calque

calque cible que ce calque va précéder

Renvoi Aucun.

Méthode Layer moveToBeginning() app.project.item(index).layer(index).moveToBeginning()

Description La méthode Layer moveToBeginning déplace le calque vers le dessus de la pile de calques (premier calque). Paramètres Aucun. Renvoi Aucun.

Comment utiliser l’aide

Page précédente

117

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

118

Méthode Layer moveToEnd() app.project.item(index).layer(index).moveToEnd()

Description La méthode Layer moveToEnd déplace le calque vers le bas de la pile de calques (dernier calque). Paramètres Aucun. Renvoi Aucun.

Attribut Layer name app.project.item(index).layer(index).name

Description L’attribut Layer name correspond au nom du calque. Il peut être unique et dérivé du nom de la source (lequel ne peut pas être modifié dans la fenêtre de calque), bien que par défaut ces noms soient identiques tant qu’ils ne sont pas modifiés. Type Chaîne ; lecture/écriture.

Attribut Layer nullLayer app.project.item(index).layer(index).nullLayer

Description L’attribut Layer nullLayer est true si le calque a été créé en tant qu’objet nul, et false dans le cas contraire. Type Booléen ; lecture/écriture.

Attribut Layer outPoint app.project.item(index).layer(index).outPoint

Description L’attribut Layer outPoint est le point de sortie du calque, exprimé en temps de composition (secondes). La plage des valeurs autorisées est [-10 800, 10 800]. Type Valeur de la virgule flottante ; lecture/écriture.

Attribut Layer parent app.project.item(index).layer(index).parent

Description L’attribut Layer parent correspond au parent de ce calque. Cette valeur peut être nulle et définie comme telle.

Comment utiliser l’aide

Page précédente

118

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

119

Notez que, de la même façon que dans l’application normale, si vous définissez le parent, il n’y aura aucun déplacement apparent dans la conversion du calque. Cela s’explique par le fait que les valeurs de décalage sont calculées de manière à compenser toute conversion supérieure dans la hiérarchie. Si, par exemple, la rotation du nouveau parent est de 30 degrés, une rotation de -30 degrés doit être appliquée au calque enfant. Si vous souhaitez définir le parent tout en empêchant les valeurs de conversion du calque enfant de changer, utilisez la « Méthode Layer setParentWithJump() », page 119. Type Calque ; lecture/écriture.

Méthode Layer remove() app.project.item(index).layer(index).remove()

Description Cette méthode supprime le calque spécifié de la composition. Paramètres Aucun.

Attribut Layer selectedProperties app.project.item(index).layer(index).selectedProperties

Description Cet attribut génère un tableau contenant tous les objets Property et PropertyGroup sélectionnés dans le calque. Type Tableau de PropertyBase ; lecture seule.

Méthode Layer setParentWithJump() app.project.item(index).layer(index).setParentWithJump(newParent)

Description La méthode Layer setParentWithJump() établit newParent comme parent de ce calque. Cette méthode ne modifie pas les valeurs de conversion du calque enfant ; par conséquent, un déplacement de rotation, de translation ou de mise à l’échelle du calque enfant peut être apparent. Si vous ne souhaitez pas que le calque enfant se déplace, définissez l’attribut parent directement (comme dans "childLayer.parent = newParent;"). Lorsque vous définissez l’attribut parent directement, un décalage est calculé et défini dans les trames de conversion du calque enfant, ce qui empêche l’apparition d’un déplacement. Paramètres newParent

calque parent substitutif

Renvoi Aucun.

Comment utiliser l’aide

Page précédente

119

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

120

Attribut Layer shy app.project.item(index).layer(index).shy

Description L’attribut Layer shy est true si le calque est discret, et il est par conséquent masqué dans la fenêtre de calque si l’option de masquage de tous les calques discrets de la composition est activée. Type Booléen ; lecture/écriture.

Attribut Layer solo app.project.item(index).layer(index).solo

Description L’attribut Layer solo est true si un calque est en isolation, et false dans le cas contraire. Type Booléen ; lecture/écriture.

Attribut Layer startTime app.project.item(index).layer(index).startTime

Description L’attribut Layer startTime est l’instant de début du calque, exprimé en temps de composition. La plage des valeurs autorisées est [-10 800, 10 800] secondes, ce qui correspond à +/- 3 heures. Type Valeur de la virgule flottante ; lecture/écriture.

Attribut Layer stretch app.project.item(index).layer(index).stretch

Description L’attribut Layer stretch correspond à l’extension temporelle du calque, exprimée en pourcentage. Une valeur de 100 n’applique aucune extension. La plage des valeurs autorisées est [-9 900, 9 900]. Les valeurs comprises dans la plage [-1, 1] sont ramenées aux valeurs minimales autorisées. Les valeurs comprises dans la plage [0, 1] sont ramenées à 1, et celles comprises dans la plage [-1, 0] (0 exclus) sont définies sur -1. Type Valeur de la virgule flottante ; lecture/écriture.

Attribut Layer time app.project.item(index).layer(index).time

Description L’attribut Layer time est l’instant courant du calque, exprimé en temps de composition (secondes).

Comment utiliser l’aide

Page précédente

120

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

121

Type Valeur du la virgule flottante ; lecture seule. Renvoi

Aucun.

LayerCollection app.project.item(index).lcoll

Description LayerCollection représente une collection de calques. Chaque objet CompItem contient une LayerCollection. Les attributs et méthodes LayerCollection fournissent l’accès aux calques et la possibilité d’en ajouter de nouveaux. Attributs length

Comment utiliser l’aide

nombre d’objets contenus dans la collection (concerne toutes les collections)

Page précédente

121

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

122

Méthodes Méthode

Référence

Description

[]

(no cross-reference)

extrait un ou plusieurs objets de la collection au moyen du numéro d’index correspondant

add()

voir section « Méthode LayerCollection add() », page 123

crée un nouveau AVLayer contenant l’AVItem fourni et l’ajoute à la composition

addNull()

voir section « Méthode LayerCollection addNull() », page 124

le calque renvoyé est un nouveau calque de la composition qui possède la LayerCollection

addSolid()

voir section « Méthode LayerCollection addSolid() », page 124

crée un nouveau FootageItem possédant une SolidSource en fonction des paramètres définis et l’ajoute au projet

addText()

voir section « Méthode LayerCollection addText() », page 125

crée un nouveau calque de texte avec le texte source spécifié

addCamera()

voir section « Méthode LayerCollection addCamera() », page 123

crée un nouveau calque de caméra avec le nom et le point central spécifiés

addLight()

voir section « Méthode LayerCollection addLight() », page 123

crée un nouveau calque de lumière avec le nom et le point central spécifiés

byName()

voir section « Méthode LayerCollection byName() », page 125

renvoie le premier calque trouvé avec le nom donné

precompose()

voir section « Méthode LayerCollection precompose() », page 126

rassemble les calques auxquels font référence les indices fournis dans layerIndices et les place dans une nouvelle composition avec le nom fourni

Exemple Partant du principe que le premier élément du projet est une composition et que le second est un AVItem, le code suivant montre comment afficher le nombre de calques dans la collection de calques de la composition, ajouter un nouveau calque basé sur un AVItem du projet, puis afficher le nouveau nombre de calques dans la collection de calques. var firstComp = app.project.item(1); var layerCollection = firstComp.layers; alert( "number of layers before is " + layerCollection.length); var anAVItem = app.project.item(2); layerCollection.add(anAVItem); alert( "number of layers after is " + layerCollection.length);

Comment utiliser l’aide

Page précédente

122

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

123

Méthode LayerCollection add() app.project.item(index).lcoll.add(item, duration)

Description La méthode LayerCollection add() crée un nouvel AVLayer contenant l’AVItem donné et ajoute le nouvel AVLayer à la composition contenante. Cette méthode génère une exception si l’élément ne peut pas être ajouté en tant que calque à cette composition. Si le paramètre de durée est fourni, cela n’aura d’influence sur la méthode que si l’AVItem donné contient une partie de métrage fixe ; il n’a aucun effet sur les films, les séquences ou l’audio. Si la durée est fournie, la durée du nouveau calque correspondra à la valeur transmise. Si la durée n’est pas fournie, elle sera déterminée par les préférences utilisateur. Notez que, par défaut, les préférences utilisateur spécifient que la durée définie soit équivalente à celle de la composition dans laquelle le calque est ajouté. La préférence peut être remplacée par une durée spécifique. Choisissez Edition > Préférences > Importer (Windows) ou After Effects > Préférences > Importer, puis sélectionnez les options désirées dans la zone Métrage fixe. Paramètres item

AVItem à ajouter

duration

valeur de la virgule flottante facultative définissant la longueur d’un calque fixe

Renvoi AVLayer.

Méthode LayerCollection addCamera() app.project.item(index).lcoll.addCamera(name, centerPoint)

Description Cette méthode crée un nouveau calque de caméra dans la LayerCollection. Paramètres name

chaîne ; nom du nouveau calque

centerPoint

tableau de valeurs de virgule flottante ; centre de la nouvelle caméra

Renvoi Calque de caméra.

Méthode LayerCollection addLight() app.project.item(index).lcoll.addLight(name, centerPoint)

Description Cette méthode crée un nouveau calque de lumière dans la LayerCollection.

Comment utiliser l’aide

Page précédente

123

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

124

Paramètres name

chaîne ; nom du nouveau calque

centerPoint

tableau de valeurs de virgule flottante contenant 2 valeurs ; centre de la nouvelle lumière

Renvoi Calque de lumière.

Méthode LayerCollection addNull() app.project.item(index).lcoll.addNull(duration)

Description La méthode LayerCollection addNull() renvoie un calque nouvellement créé dans la composition qui possède la LayerCollection. Cette méthode produit le même résultat que la sélection de la commande Calque > Créer > Objet nul. Si la durée est fournie, la durée du nouveau calque correspondra à la valeur transmise. Si la durée n’est pas fournie, elle sera déterminée par les préférences utilisateur. Notez que par défaut, les préférences utilisateur spécifient que la durée définie soit équivalente à celle de la composition dans laquelle le calque est ajouté. Cette préférence peut être remplacée par une durée spécifique dans la boîte de dialogue Préférences. Choisissez Edition > Préférences > Importer (Windows) ou After Effects > Préférences > Importer, puis sélectionnez les options désirées dans la zone Métrage fixe. Paramètres duration

valeur de virgule flottante facultative définissant la durée du nouveau calque

Renvoi AVLayer.

Méthode LayerCollection addSolid() app.project.item(index).lcoll.addSolid(color, name, width, height, pixelAspect, duration)

Description La méthode layerCollection addSolid() crée un nouveau FootageItem dont la source principale est une SolidSource en fonction des paramètres définis, et l’ajoute au projet. Cette méthode crée également un nouvel AVLayer comportant ce nouveau FootageItem à sa source, et ajoute ce calque à la composition contenante. Notez que, par défaut, les préférences utilisateur spécifient que la durée définie soit équivalente à celle de la composition dans laquelle le calque est ajouté. Cette préférence peut être remplacée par une durée spécifique dans la boîte de dialogue Préférences. Choisissez Edition > Préférences > Importer (Windows) ou After Effects > Préférences > Importer, puis sélectionnez les options désirées dans la zone Métrage fixe.

Comment utiliser l’aide

Page précédente

124

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

125

Paramètres color

Etablit la couleur du nouveau FootageItem (un solide) contenu dans le calque. L’argument de couleur doit être un tableau de trois valeurs de virgule flottante comprises dans la plage [0..1].

name

Etablit le nom du nouveau calque et du nouveau FootageItem.

width

Définit la largeur, en pixels, du nouveau calque et du nouveau FootageItem. La plage des valeurs autorisées est [1 .. 30 000].

height

Définit la hauteur, en pixels, du nouveau calque et du nouveau FootageItem. La plage des valeurs autorisées est [1 .. 30 000].

pixelAspect

Définit le format des pixels pour le nouveau FootageItem.

duration

Valeur de virgule flottante facultative définissant la durée d’un calque fixe.

Renvoi AVLayer.

Méthode LayerCollection addText() app.project.item(index).lcoll.addText(sourceText)

Description Cette méthode crée un nouveau calque de texte dans la LayerCollection. Paramètres sourceText

chaîne ; facultatif, utilisé comme texte source du nouveau calque

Renvoi Calque de texte.

Méthode LayerCollection byName() app.project.item(index).lcoll.byName(name)

Description La méthode LayerCollection byName() renvoie le premier calque rencontré portant le nom donné. Cette méthode renvoie la valeur nulle si aucun calque portant le nom fourni n’est trouvé. Paramètres name

chaîne - nom du calque recherché

Renvoi Calque ; nul si le nom n’est pas trouvé. Comment utiliser l’aide

Page précédente

125

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

126

Méthode LayerCollection precompose() app.project.item(index).lcoll.precompose(layerIndicies, name, moveAllAttributes)

Description La méthode LayerCollection precompose() rassemble les calques auxquels font référence les indices donnés (premier paramètre) et les placent dans une nouvelle composition portant le nom donné (second paramètre). Les calques donnés sont supprimés de la LayerCollection. La nouvelle composition est ajoutée à la LayerCollection et est également renvoyée par la méthode precompose(). Paramètres layerIndices

indices de calques à rassembler

name

établit le nom de la nouvelle composition

moveAllAttributes

Booléen facultatif, défini par défaut sur true ; ne peut être défini sur false que si le tableau layerIndices comporte un seul index. Sa définition sur true équivaut à sélectionner l’option Transférer tous les attributs vers la nouvelle composition de la boîte de dialogue Précomposition. S’il est défini sur false, cela équivaut à sélectionner l’option Laisser tous les attributs dans de la boîte de dialogue Précomposition.

Renvoi CompItem.

Objet MarkerValue app.project.item(index).layer(index).MarkerValue

Description L’objet MarkerValue contient la représentation d’un repère de calque. Il contient quatre attributs de chaîne, à savoir comment, chapter, url et frameTarget. Pour plus d’informations sur l’utilisation des repères, consultez la rubrique « Utilisation des repères » dans l’aide d’After Effects. Méthodes Méthode

Référence

Description

MarkerValue()

voir section « Méthode MarkerValue », page 127

Renvoie une valeur de repère. Définit l’attribut comment et, éventuellement, les attributs chapter, url et frameTarget.

Comment utiliser l’aide

Page précédente

126

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

127

Attributs Attribut

Référence

Description

comment

voir section « Attribut MarkerValue Comment », page 128

chaîne ; commentaire inclus avec le repère

chapter

voir section « Attribut MarkerValue Chapter », page 128

chaîne ; point de référence pour un lien de chapitre inclus avec le repère

url

voir section « Attribut MarkerValue URL », page 129

chaîne ; URL incluse avec le repère

frameTarget

voir section « Attribut MarkerValue FrameTarget », page 128

chaîne cible (indiquant une image de site Web) incluse avec le repère

Exemples Pour définir un repère indiquant « Fade Up » au repère 2 secondes : var myMarker = new Marker("Fade Up"); myLayer.property("Marker").setValueAtTime(2, myMarker);

Pour obtenir une valeur comment d’un repère particulier : var commentOfFirstMarker = app.project.item(1).layer(1).property("Marker").keyValue(0).comment; var commentOfMarkerAtTime4 AtTime(4.0,TRUE) .comment

= app.project.item(1).layer(1).property("Marker").value-

var markerProperty = app.project.item(1).layer(1).property("Marker"); var markerValueAtTimeClosestToTime4 = markerProperty .keyValue(markerProperty.nearestKeyIndex(4.0)); var commentOfMarkerClosestToTime4 = markerValueAtTimeClosestToTime4.comment;

Méthode MarkerValue app.project.item(index).layer(index).MarkerValue(comment) app.project.item(index).layer(index).MarkerValue(comment, chapter) app.project.item(index).layer(index).MarkerValue(comment, chapter, url) app.project.item(index).layer(index).MarkerValue(comment, chapter, url, frameTarget)

Description La méthode markerValue définit entre un et quatre attributs particuliers du repère et renvoie une valeur de repère.

Comment utiliser l’aide

Page précédente

127

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

128

Paramètres comment

string

voir section « Attribut MarkerValue Comment », page 128

chapter

string

voir section « Attribut MarkerValue Chapter », page 128

url

string

voir section « Attribut MarkerValue URL », page 129

frameTarget

string

voir section « Attribut MarkerValue FrameTarget », page 128

Renvoi MarkerValue (une image clé de repère contenant les quatre valeurs de chaîne ci-dessus).

Attribut MarkerValue Chapter app.project.item(index).layer(index).MarkerValue.chapter

Description L’attribut MarkerValue chapter est un lien texte de chapitre associé à un repère de calque donné. Les liens de chapitre initialisent une liaison avec un chapitre d’un film QuickTime ou d’un autre format prenant en charge les repères de chapitre (pour plus d’informations sur les repères, consultez la rubrique « Utilisation des repères » dans l’aide d’After Effects). Type Chaîne ; lecture/écriture.

Attribut MarkerValue Comment app.project.item(index).layer(index).MarkerValue.comment

Description L’attribut MarkerValue comment est un texte de commentaire associé à un repère de calque donné. Ce commentaire apparaît dans la fenêtre Montage près du repère de calque (pour plus d’informations sur les repères, consultez la rubrique « Utilisation des repères » dans l’aide d’After Effects). Type Chaîne ; lecture/écriture.

Attribut MarkerValue FrameTarget app.project.item(index).layer(index).MarkerValue.frameTarget

Description L’attribut MarkerValue frameTarget est un repère d’image texte associé à un repère de calque donné. Utilisé avec une URL, cet attribut peut cibler une image spécifique d’un site Web (pour plus d’informations sur les repères, consultez la rubrique « Utilisation des repères » dans l’aide d’After Effects). Type Chaîne ; lecture/écriture. Comment utiliser l’aide

Page précédente

128

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

129

Attribut MarkerValue URL app.project.item(index).layer(index).MarkerValue.url

Description L’attribut MarkerValue URL est une URL de texte associée à un repère de calque donné. Cette URL est un lien automatique à un site (pour plus d’informations sur les repères, consultez la rubrique « Utilisation des repères » dans l’aide d’After Effects). Type Chaîne ; lecture/écriture.

Objet MaskPropertyGroup app.project.item(index).layer(index).mask

Description L’objet MaskPropertyGroup est dérivé de PropertyGroup et hérite de tous les attributs et méthodes de PropertyBase et PropertyGroup, ainsi que de ses propres attributs et méthodes comme suit. Attributs Attribut

Référence

Description

maskMode

voir section « Attribut MaskPropertyGroup maskMode », page 130

définit le mode de masque pour ce masque

inverted

voir section « Attribut MaskPropertyGroup inverted », page 130

indique si le masque doit être inversé

rotoBezier

voir section « Attribut MaskPropertyGroup rotoBezier », page 131

indique si la forme du masque doit être RotoBézier

maskMotionBlur

voir section « Attribut MaskPropertyGroup maskMotionBlur », page 130

définit la manière dont le flou directionnel est appliqué à ce masque

locked

voir section « Attribut true si le masque est verrouillé MaskPropertyGroup locked », page 130

color

voir section « Attribut MaskPropertyGroup color », page 129

couleur utilisée pour dessiner le contour du masque dans l’interface utilisateur

Attribut MaskPropertyGroup color app.project.item(index).layer(index).mask(index).color

Comment utiliser l’aide

Page précédente

129

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

130

Description Cet attribut correspond à la couleur utilisée pour dessiner le contour du masque, tel qu’il apparaît dans l’interface utilisateur (fenêtre de composition, fenêtre de calque et fenêtre Montage). Type Tableau de trois valeurs de virgule flottante comprises entre 0 et 1 : [R, V, B) ; lecture/ écriture.

Attribut MaskPropertyGroup inverted app.project.item(index).layer(index).mask(index).inverted

Description Cet attribut est un booléen spécifiant si le masque est inversé. Type Booléen ; lecture/écriture.

Attribut MaskPropertyGroup locked app.project.item(index).layer(index).mask(index).locked

Description Cet attribut est un booléen spécifiant si le masque est verrouillé et ne peut pas être édité dans l’interface utilisateur. Type Booléen ; lecture/écriture.

Attribut MaskPropertyGroup maskMode app.project.item(index).layer(index).mask(index).maskMode

Description Cet attribut est un type énuméré spécifiant le mode de masque pour ce masque. Types énumérés MaskMode.NONE

Aucun

MaskMode.ADD

Addition

MaskMode.SUBTRACT

Soustraction

MaskMode.INTERSECT

Intersection

MaskMode.LIGHTEN

Eclaircir

MaskMode.DARKEN

Obscurcir

MaskMode.DIFFERENCE

Ecart

Attribut MaskPropertyGroup maskMotionBlur app.project.item(index).layer(index).mask(index).maskMotionBlur

Comment utiliser l’aide

Page précédente

130

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

131

Description Cet attribut est un type énuméré spécifiant la manière dont le flou directionnel est appliqué à ce masque. Type énuméré MaskMotionBlur.SAME_AS_LAYER

Identique au calque

MaskMotionBlur.ON

Activé

MaskMotionBlur.OFF

Désactivé

Attribut MaskPropertyGroup rotoBezier app.project.item(index).layer(index).mask(index).rotoBezier

Description Cet attribut est un booléen spécifiant si le masque se trouve en mode RotoBézier. Type Booléen ; lecture/écriture.

Objet OutputModule app.project.renderQueue.item(index).outputModule(index)

Description L’objet outputModule de renderQueueItem génère un fichier unique ou une séquence par le biais d’un rendu, et contient les attributs et méthodes associés au fichier pour lequel le rendu doit être effectué. Il renvoie un module de sortie avec le numéro d’index donné. Les éléments indexés sont numérotés à partir de 1. Attributs Attribut

Référence

Description

file

voir section « Attribut OutputModule file », page 133

chemin et nom du fichier pour lequel effectuer le rendu

postRenderAction

voir section « Attribut OutputModule postRenderAction », page 133

un des types postRenderAction

name

voir section « Attribut OutputModule name », page 133

nom du module de sortie, tel que présenté à l’utilisateur

templates

voir section « Attribut OutputModule templates », page 134

tableau des modèles de module de sortie

Comment utiliser l’aide

Page précédente

131

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

132

Méthodes Méthode

Référence

Description

remove()

voir section « Méthode OutputModule remove() », page 133

supprime le module de sortie

saveAsTemplate()

voir section « Méthode enregistre un nouveau modèle de OutputModule module de sortie avec le nom saveAsTemplate() », page 133 fourni

applyTemplate()

voir section « Méthode OutputModule applyTemplate() », page 132

applique un modèle prédéfini de module de sortie

OMCollection app.project.renderQueue.items.outputModules

Description L’OMCollection contient tous les modules de sortie du projet. Attributs length

nombre d’objets contenus dans la collection (concerne toutes les collections)

Méthodes []

extrait un ou plusieurs objets de la collection au moyen du numéro d’index correspondant

add()

ajoute un module de sortie avec un modèle spécifié

Voir aussi « Objet Collection », page 59

Méthode OutputModule applyTemplate() app.project.renderQueue.item(index).outputModules[i].applyTemplate(templateName)

Description Applique un modèle de module de sortie existant, identifié par nom. Paramètres templateName

nom du modèle à appliquer

Renvoi Aucun.

Comment utiliser l’aide

Page précédente

132

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

133

Attribut OutputModule file app.project.renderQueue.item(index).outputModules[i].file

Description L’attribut file correspond à l’objet File auquel le module de sortie est défini pour le rendu. Type Objet File ; lecture-écriture.

Attribut OutputModule name app.project.renderQueue.item(index).outputModules[i].name

Description L’attribut name est le nom du module de sortie, tel qu’il est présenté à l’utilisateur, exprimé sous forme de chaîne. Type Chaîne ; lecture seule.

Attribut OutputModule postRenderAction app.project.renderQueue.item(index).outputModules[i].postRenderAction

Description L’attribut postRenderAction renvoie l’action Post Render Action (voir la liste ci-dessous). Type PostRenderAction (lecture/écriture) ; l’une des suivantes : postRenderAction.NONE postRenderAction.IMPORT postRenderAction.IMPORT_AND_REPLACE_USAGE postRenderAction.SET_PROXY

Méthode OutputModule remove() app.project.renderQueue.item(index).outputModules[i].remove()

Description Supprime un module de sortie. Paramètres Aucun. Renvoi Aucun.

Méthode OutputModule saveAsTemplate() app.project.renderQueue.item(index).outputModules[i].saveAsTemplate(name)

Description Enregistre un module de sortie avec le nom indiqué en tant que paramètre.

Comment utiliser l’aide

Page précédente

133

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

134

Paramètres name

nom du nouveau modèle

Renvoi Aucun.

Attribut OutputModule templates app.project.renderQueue.item(index).outputModules[i].templates

Description L’attribut templates est un tableau de chaînes ; celles-ci correspondent aux noms des modèles présents dans l’installation locale d’After Effects. Type Tableau ; lecture seule.

Objet PlaceholderSource app.project.item(index).mainSource app.project.item(index).proxySource

Description L’objet PlaceholderSource contient des informations décrivant la source du métrage d’un pseudo-élément. Il s’agit d’une sous-classe de FootageSource ; par conséquent, elle hérite de l’ensemble des attributs et méthodes de l’objet FootageSource (voir section « Objet FootageSource », page 99). L’objet PlaceholderSource ne contient pas d’autres attributs et méthodes que ceux hérités de l’objet FootageSource.

Objet Project app.project

Description L’objet project permet l’accès aux données et à la fonctionnalité dans un projet After Effects particulier. Les attributs de l’objet Project fournissent l’accès aux objets spécifiques dans un projet After Effects, tels que les fichiers importés et le métrage, les compositions, ainsi qu’aux paramètres du projet comme la base du code temporel. Les méthodes de l’objet Project permettent d’importer le métrage, de créer des solides, compositions et dossiers, et d’enregistrer les modifications. Attributs Attribut

Référence

file

voir section « Attribut Project objet file du projet ouvert en cours file », page 137

Comment utiliser l’aide

Description

Page précédente

134

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

135

Attribut

Référence

Description

rootFolder

voir section « Attribut Project folderItem contenant tout le rootFolder », page 140 contenu du projet ; équivalent de la fenêtre de projet

items

voir section « Attribut Project itemCollection représentant tous items », page 139 les éléments contenus dans le projet

activeItem

voir section « Attribut Project élément actif en cours, ou valeur activeItem », page 136 nulle si aucun élément n’est actif ou si plusieurs éléments sont actifs

bitsPerChannel

voir section « Attribut Project codage des couleurs du projet en bitsPerChannel », page 137 cours

transparencyGridThumbnail s

voir section « Attribut Project détermine si les vignettes doivent transparencyGridThumbnails utiliser le motif de damier de », page 142 transparence

timecodeDisplayType

voir section « Attribut Project méthode avec laquelle le code timecodeDisplayType », temporel est défini pour l’affichage page 142

timecodeBaseType

voir section « Attribut Project base du code temporel, telle que timecodeBaseType », définie dans la boîte de dialogue page 141 Fichier > Paramètres du projet

timecodeNTSCDropFrame

voir section « Attribut Project équivalent des options Image timecodeNTSCDropFrame », compensée ou Image non page 142 compensée de la boîte de dialogue Fichier > Paramètres du projet

timecodeFilmType

voir section « Attribut Project méthode avec laquelle le code timecodeFilmType », temporel est défini pour l’affichage page 142

numItems

voir « Attribut Project numItems », page 139

selection

voir section « Attribut Project tableau des éléments sélectionnés selection », page 141 dans la fenêtre de projet

renderQueue

voir section « Attribut Project file d’attente de rendu du projet renderQueue », page 140

nombre total d’éléments contenus dans le projet

Méthodes Méthode

Référence

Description

item()

voir section « Méthode Project item() », page 139

renvoie un élément

Comment utiliser l’aide

Page précédente

135

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

136

Méthode

Référence

Description

consolidateFootage()

voir « Méthode Project consolidateFootage() », page 137

reproduit la fonctionnalité de la commande Fichier > Consolider tout le métrage

removeUnusedFootage()

voir section « Méthode Project removeUnusedFootage() », page 140

reproduit la fonctionnalité de la commande Fichier > Supprimer le métrage inutilisé

reduceProject()

voir section « Méthode Project reduceProject() », page 139

reproduit la fonctionnalité de la commande Fichier > Réduire le projet

close()

voir « Méthode Project close() », page 137

ferme le projet avec les options d’enregistrement habituelles

save()

voir section « Méthode Project save() », page 140

enregistre le projet (ou affiche une boîte de dialogue Enregistrer si le projet n’a encore jamais été enregistré)

saveWithDialog()

voir section « Méthode Project saveWithDialog() », page 141

affiche une boîte de dialogue Enregistrer ; renvoie true si le fichier a été enregistré

importPlaceholder()

voir section « Méthode reproduit la fonctionnalité de la Project importPlaceholder() », commande Fichier > Importer > page 138 Pseudo-élément.

importFile()

voir section « Méthode Project importFile() », page 138

reproduit la fonctionnalité de la commande Fichier > Importer > Fichier.

importFileWithDialog()

voir section « Méthode Project importFileWithDialog() », page 138

affiche une boîte de dialogue Importer ; renvoie un tableau de tous les éléments importés

showWindow()

voir section « Méthode Project showWindow() », page 141

si true, affiche la fenêtre de projet

Attribut Project activeItem app.project.activeItem

Description L’attribut de projet activeItem renvoie l’élément actif en cours et devant être soumis à une action, ou une valeur nulle si aucun élément n’est actuellement sélectionné ou si plusieurs éléments sont sélectionnés. Type Elément actif en cours ; lecture seule.

Comment utiliser l’aide

Page précédente

136

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

137

Attribut Project bitsPerChannel app.project.bitsPerChannel

Description L’attribut bitsPerChannel est un entier décrivant le codage des couleurs du projet en cours (sur 8 ou 16 bits). Type Entier (8 ou 16 uniquement) ; lecture/écriture.

Méthode Project close() app.project.close(CloseOptions)

Description Ferme le projet avec possibilité de sauvegarder les modifications automatiquement, en invitant l’utilisateur à sauvegarder les modifications ou à fermer sans sauvegarder. Paramètres CloseOptions

action à exécuter à la fermeture (voir Types énumérés, ci-dessous)

Types énumérés CloseOptions.DO_NOT_SAVE_CHANGES

ferme sans enregistrer

CloseOptions.PROMPT_TO_SAVE_CHANGES

émet un message demandant si les modifications doivent être enregistrées avant de fermer le projet

CloseOptions.SAVE_CHANGES

enregistre automatiquement à la fermeture

Renvoi Booléen. False uniquement dans le cas où le fichier n’a pas été enregistré auparavant ; une boîte de dialogue Enregistrer s’affiche et l’utilisateur annule l’enregistrement.

Méthode Project consolidateFootage() app.project.consolidateFootage()

Description Reproduit la fonctionnalité de la commande Consolider tout le métrage. Paramètres Aucun. Renvoi Entier ; nombre total d’éléments de métrage supprimés.

Attribut Project file app.project.file

Description L’attribut file est un objet File représentant le projet ouvert en cours.

Comment utiliser l’aide

Page précédente

137

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

138

Type Objet File ou valeur nulle si le projet n’a pas été enregistré ; lecture seule.

Méthode Project importFile() app.project.importFile(ImportOptions)

Description Reproduit la fonctionnalité de la boîte de dialogue Importer fichier. Paramètres options, telles que définies dans l’objet ImportOptions

ImportOptions

Renvoi FootageItem Exemple app.project.importFile( ImportOptions( File( “sample.psd” ) )

Voir aussi « Objet ImportOptions », page 105

Méthode Project importPlaceholder() app.project.importPlaceholder(name, width, height, framerate, duration)

Description Reproduit la fonctionnalité de la commande Fichier > Importer > Pseudo-élément ; ajoute au projet un pseudo-élément de métrage d’un nom, d’une largeur, d’une hauteur, d’une cadence et d’une durée spécifiés. Paramètres name

nom du pseudo-élément

width

largeur, en pixels, du pseudo-élément de métrage

height

hauteur, en pixels, du pseudo-élément de métrage

framerate

cadence du pseudo-élément de métrage

duration

durée, en secondes, du pseudo-élément de métrage

Renvoi FootageItem.

Méthode Project importFileWithDialog() app.project.importFileWithDialog()

Description Reproduit la fonctionnalité de la commande Fichier > Importer > Fichier et affiche une boîte de dialogue d’importation pour l’utilisateur. Contrairement à importFile(), importWithDialog() ne prend pas d’arguments.

Comment utiliser l’aide

Page précédente

138

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

139

Renvoi Array of Items created during import; or null if the user cancels the dialog.

Méthode Project item() app.project.item(index)

Description Cette méthode renvoie un élément avec le numéro d’index donné. Paramètres index

entier ; index de l’élément

Renvoi Elément.

Attribut Project items app.project.items

Description Cet attribut représente tous les éléments contenus dans le projet. Type ItemCollection ; lecture seule.

Attribut Project numItems app.project.numItems

Description L’attribut numItems représente le nombre total d’éléments contenus dans le projet, y compris les dossiers et tous les types de métrage. Type Entier ; lecture seule. Exemple n = app.project.numItems; alert("There are " + n + " items in this project.")

Méthode Project reduceProject() app.project.reduceProject(array_of_items)

Description Reproduit la fonctionnalité de la commande Fichier > Réduire le projet. Paramètres array_of_items

éléments auxquels le projet doit être réduit

Renvoi Entier ; nombre total d’éléments supprimés.

Comment utiliser l’aide

Page précédente

139

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

140

Exemple var theItems = new Array(); theItems[theItems.length] = app.project.item(1); theItems[theItems.length] = app.project.item(3); app.project.reduceProject(theItems);

Méthode Project removeUnusedFootage() app.project.removeUnusedFootage()

Description Reproduit la fonctionnalité de la commande Fichier > Supprimer le métrage inutilisé. Paramètres Aucun. Renvoi Entier ; nombre total d’éléments de métrage supprimés.

Attribut Project renderQueue app.project.renderQueue

Description Cet attribut représente la file d’attente de rendu du projet. Type File d’attente de rendu ; lecture seule.

Attribut Project rootFolder app.project.rootFolder

Description L’attribut rootFolder est le dossier racine contenant le contenu racine du projet ; il s’agit d’un dossier conceptuel qui contient tous les éléments de la fenêtre de projet, mais pas les éléments contenus à l’intérieur d’autres dossiers de cette même fenêtre. Type FolderItem ; lecture seule.

Méthode Project save() app.project.save() app.project.save(File)

Description Enregistre le projet (ou invite l’utilisateur à enregistrer si le fichier n’a jamais été enregistré auparavant). La transmission d’un objet File équivaut à la commande Enregistrer sous et vous permet d’enregistrer un projet en tant que nouveau fichier. Paramètres File

Comment utiliser l’aide

objet File à enregistrer

Page précédente

140

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

141

Renvoi Aucun.

Méthode Project saveWithDialog() app.project.saveWithDialog()

Description Cette méthode affiche la boîte de dialogue Enregistrer pour l’utilisateur. L’utilisateur peut soit nommer un fichier avec un emplacement et l’enregistrer, soit cliquer sur Annuler et quitter la boîte de dialogue. Cette méthode renvoie un booléen défini sur true si le fichier a été enregistré, et sur false dans le cas contraire. Paramètres Aucun. Renvoi Booléen ; true si le fichier a été enregistré.

Attribut Project selection app.project.selection

Description L’attribut selection contient un tableau des éléments sélectionnés dans la fenêtre de projet. Type Tableau ; lecture seule.

Méthode Project showWindow() app.project.showWindow(doShow)

Description Cette méthode affiche ou masque la fenêtre de projet, en fonction de la manière dont ses arguments sont définis. Paramètres doShow

booléen ; si true, affiche la fenêtre de projet, et si false, masque la fenêtre de projet

Renvoi Aucun.

Attribut Project timecodeBaseType app.project.timecodeBaseType

Description L’attribut timecodeBaseType révèle la base du code temporel, telle que définie dans la boîte de dialogue Paramètres du projet.

Comment utiliser l’aide

Page précédente

141

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

142

Type énuméré L’un des suivants (lecture/écriture) : TimecodeBaseType.FPS24 TimecodeBaseType.FPS25 TimecodeBaseType.FPS30 TimecodeBaseType.FPS48 TimecodeBaseType.FPS50 TimecodeBaseType.FPS60 TimecodeBaseType.FPS100

Attribut Project timecodeDisplayType app.project.timecodeDisplayType

Description L’attribut timecodeDisplayType décrit la méthode avec laquelle le code temporel est défini pour l’affichage. Les valeurs énumérées se trouvent dans un menu de la boîte de dialogue Paramètres du projet. Type énuméré L’un des suivants (lecture/écriture) : TimecodeDisplayType.TIMECODE TimecodeDisplayType.FRAMES TimecodeDisplayType.FEET_AND_FRAMES

Attribut Project timecodeFilmType app.project.timecodeFilmType

Description L’attribut timecodeFilmType décrit le type de film ayant été sélectionné pour l’option Pieds + images dans la boîte de dialogue Paramètres du projet. Type énuméré L’un des suivants (lecture/écriture) : TimecodeFilmType.MM16 TimecodeFilmType.MM35

Attribut Project timecodeNTSCDropFrame app.project.timecodeNTSCDropFrame

Description L’attribut timecodeNTSCDropFrame décrit comment le code temporel pour un métrage 29,97 i/s est affiché. Correspond aux options de conversion Image compensée ou Image non compensée du menu NTSC de la boîte de dialogue Paramètres du projet. Type Booléen (lecture/écriture) ; true si Image compensée NTSC est définie comme style d’affichage du projet en cours.

Attribut Project transparencyGridThumbnails app.project.transparencyGrid

Comment utiliser l’aide

Page précédente

142

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

143

Description L’attribut transparencyGridThumbnails détermine si les vignettes doivent utiliser le motif de damier de transparence (oui ou non). Type Booléen (lecture/écriture).

Objet Property app.project.item(index).layer(index).property

Description L’objet Property contient des informations de valeur, image clé et/ou expression relatives à une propriété particulière du calque. Une Property peut par exemple être la position, le zoom ou le contour progressif. Notez que « propriété » et « attribut » sont des synonymes dans les descriptions JavaScript standard. Etant donné qu’After Effects faisait une utilisation différente du terme « propriété » avant l’introduction de la création de script, cette documentation n’utilise le terme « attribut » que lorsqu’elle fait référence aux valeurs accessibles dans la création de script. Le terme « propriété » reste utilisé dans ce document et After Effects pour faire référence aux valeurs associées aux calques, effets et masques. Attributs Attribut

Référence

Description

propertyValueType

voir section « Attribut Property propertyValueType », page 157

type de valeur stocké dans cette propriété

value

voir section « Attribut Property value », page 164

valeur de la propriété à l’instant courant

hasMin

voir section « Attribut Property hasMin », page 150

true s’il existe une valeur minimale autorisée

hasMax

voir section « Attribut Property hasMax », page 150

true s’il existe une valeur maximale autorisée

minValue

voir section « Attribut Property minValue », page 156

valeur minimale autorisée

maxValue

voir section « Attribut Property maxValue », page 156

valeur maximale autorisée

isSpatial

voir section « Attribut true si la propriété définit une Property isSpatial », page 151 valeur spatiale

Comment utiliser l’aide

Page précédente

143

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

144

Attribut

Référence

Description

canVaryOverTime

voir section « Attribut true si la propriété peut être Property canVaryOverTime », appliquée à une image clé page 149

isTimeVarying

voir section « Attribut Property isTimeVarying », page 151

true si la propriété dispose d’images clés ou d’une expression activée faisant varier ses valeurs

numKeys

voir section « Attribut Property numKeys », page 157

nombre d’images clés sur cette propriété

unitsText

voir section « Attribut Property unitsText », page 164

texte décrivant les unités dans lesquelles la valeur est exprimée

expression

voir section « Attribut Property expression », page 149

chaîne d’expression pour cette propriété

expressionEnabled

voir section « Attribut Property expressionEnabled », page 149

si true, l’expression est utilisée pour générer des valeurs pour la propriété

expressionError

voir section « Attribut Property expressionError », page 150

contient une erreur si une erreur est survenue lors de la dernière évaluation d’une expression

Type d’interpolation d’image clé

voir section « Attribut type d’interpolation utilisé au Property niveau d’une image clé KeyframeInterpolationType », page 151

selectedKeys

voir section « Attribut Property selectedKeys », page 158

tableau contenant les indices de toutes les images clés sélectionnées de la propriété

Méthode

Référence

Description

valueAtTime()

voir section « Méthode Property valueAtTime() », page 164

renvoie la valeur de la propriété évaluée à un instant donné

setValue()

voir section « Méthode Property setValue() », page 162

définit la valeur statique de la propriété

setValueAtTime()

voir section « Méthode Property setValueAtTime() », page 163

crée une image clé à l’instant donné (s’il n’en existe aucune) pour cette propriété

Méthodes

Comment utiliser l’aide

Page précédente

144

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

145

Méthode

Référence

Description

setValuesAtTimes()

voir section « Méthode Property setValuesAtTimes() », page 163

crée une image clé consistant en un tableau à l’instant donné (s’il n’en existe aucun) pour la propriété

setValueAtKey()

voir section « Méthode Property setValueAtKey() », page 163

recherche l’image clé avec l’index donné et définit la valeur de la propriété au niveau de cette image clé

nearestKeyIndex()

voir section « Méthode renvoie l’index de l’image clé la Property nearestKeyIndex() », plus proche à l’instant donné page 157

keyTime()

voir section « Méthode Property keyTime() », page 155

renvoie l’instant auquel la condition donnée par les arguments se produit

keyValue()

voir section « Méthode Property keyValue() », page 156

renvoie la valeur de la propriété à l’instant où la condition donnée par les arguments se produit

addKey()

voir section « Méthode ajoute une nouvelle image clé à Property addKey() », page 149 l’instant donné

removeKey()

voir section « Méthode Property removeKey() », page 158

supprime l’image clé avec l’index donné

isInterolationTypeValid()

voir section « Méthode Property isInterpolationTypeValid() », page 150

true si cette propriété peut être interpolée

setInterpolationTypeAtKey ()

voir section « Méthode définit le type d’interpolation pour Property la clé setInterpolationTypeAtKey() » , page 159

keyInInterpolationType()

voir section « Méthode Property keyInInterpolationType() », page 151

renvoie le type d’interpolation in pour la clé donnée

keyOutInterpolationType()

voir section « Méthode Property keyOutInterpolationType() », page 152

renvoie le type d’interpolation out pour la clé donnée

setSpatialTangentsAtKey()

voir section « Méthode Property setSpatialTangentsAtKey() », page 160

définit les vecteurs de tangente in et out pour la clé donnée

Comment utiliser l’aide

Page précédente

145

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

146

Méthode

Référence

Description

keyInSpatialTangent()

voir section « Méthode Property keyInSpatialTangent() », page 152

renvoie la tangente spatiale in pour la clé donnée

keyOutSpatialTangent()

voir section « Méthode Property keyOutSpatialTangent() », page 153

renvoie la tangente spatiale out pour la clé donnée

setTemporalEaseAtKey()

voir section « Méthode Property setTemporalEaseAtKey() », page 162

définit le lissage temporel in et out pour la clé donnée

keyInTemporalEase()

voir section « Méthode Property keyInTemporalEase() », page 152

renvoie le lissage temporel in pour la clé donnée

keyOutTemporalEase()

voir section « Méthode Property keyOutTemporalEase() », page 153

renvoie le lissage temporel out pour la clé donnée

setTemporalContinuousAtKe y()

voir section « Méthode Property setTemporalContinuousAtKe y() », page 161

spécifie si l’image clé est dotée d’une continuité temporelle

keyTemporalContinuous()

voir section « Méthode Property keyTemporalContinuous() », page 155

informe si l’image clé est dotée d’une continuité temporelle

setTemporalAutoBezierAtKe y()

voir section « Méthode spécifie si l’image clé doit être Property dotée du mode Bézier setTemporalAutoBezierAtKey automatique temporel () », page 161

keyTemporalAutoBezier()

voir section « Méthode Property keyTemporalAutoBezier() », page 155

informe si l’image clé est dotée du mode Bézier automatique

setSpatialContinuousAtKey ()

voir section « Méthode Property setSpatialContinuousAtKey() », page 160

spécifie si l’image clé doit être dotée d’une continuité spatiale

keySpatialContinuous()

voir section « Méthode Property keySpatialContinuous() », page 154

informe si l’image clé est dotée d’une continuité spatiale

Comment utiliser l’aide

Page précédente

146

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

147

Méthode

Référence

Description

setSpatialAutoBezierAtKey

voir section « Méthode spécifie si l’image clé doit être Property dotée du mode Bézier setSpatialAutoBezierAtKey() » automatique spatial , page 160

keySpatialAutoBezier()

voir section « Méthode Property keySpatialAutoBezier() », page 154

informe si l’image clé est dotée du mode Bézier automatique spatial

setRovingAtKey()

voir section « Méthode Property setRovingAtKey() », page 159

spécifie si l’image clé doit être itinérante

keyRoving()

voir section « Méthode Property keyRoving() », page 153

informe si l’image clé est itinérante

setSelectedAtKey()

voir section « Méthode Property setSelectedAtKey() », page 159

spécifie si l’image clé doit être sélectionnée

keySelected()

voir section « Méthode Property keySelected() », page 154

informe si l’image clé est sélectionnée

Exemples 1

Obtention et définition de la valeur d’une opacité

L’opacité a pour propertyValueType OneD et est stockée en tant que valeur de virgule flottante. var myProperty = myLayer.opacity; myProperty.setValue(0.5); // This new variable myOpacity will be a float value. var myOpacity = myProperty.value;

2

Obtention et définition de la valeur d’une position

La position a pour propertyValueType ThreeD_SPATIAL et est stockée en tant que tableau de trois valeurs de virgule flottante. var myProperty = myLayer.position; myProperty.setValue([10,30,0]); // This new variable myPosition be an array of 3 floats: var myPosition = myProperty.value;

3

Redéfinition de la valeur d’une forme de masque de fermée à ouverte

var myMask = mylayer.mask(1); var myProperty = myMask.maskShape; myShape = myProperty.value; myShape.closed = false; myProperty.setValue(myShape);

Comment utiliser l’aide

Page précédente

147

Aide d’Adobe After Effects

Comment utiliser l’aide

4

Référence

Page précédente

148

Obtention de la valeur d’une couleur à un instant particulier

Une couleur est stockée en tant que tableau de quatre valeurs de virgule flottante (r,v,b,opacity). Le code suivant définit la valeur de la composante red d’une couleur de lumière à l’instant 4 équivalente à la moitié de celle de l’instant 2 : var myProperty = myLight.color; var colorValue = myProperty.valueAtTime(2,true); colorValue[0] = 0.5 * colorValue[0]; myProperty.setValueAtTime(4,colorValue);

Procédure de vérification qu’une échelle calculée par une expression à l’instant 3.5 est la valeur attendue de [10,50]

5

var myProperty = myLayer.scale; // false value of preExpression means evaluate the expression var scaleValue = myProperty.valueAtTime(3.5,false); if (scaleValue[0] == 10 && scaleValue[1] == 50) { alert("hurray"); else { alert("oops"); }

6

Application d’une image clé à une rotation de 0 à 90 et retour

L’animation dure 10 secondes, et l’image clé centrale se situe au repère 5 secondes. Les propriétés de rotation sont stockées sous la forme d’une valeur OneD. myProperty = myLayer.rotation; myProperty.setValueAtTime(0, 0); myProperty.setValueAtTime(5, 90); myProperty.setValueAtTime(10, 0);

7 Modification des valeurs des images clés pour les trois premières images clés d’un texte source myProperty = myTextLayer.sourceText; if (myProperty.numKeys < 3) { alert("error, I thought there were 3 keyframes"); } myProperty.setValueAtKey(1, new TextDocument("key number 1"); myProperty.setValueAtKey(2, new TextDocument("key number 2"); myProperty.setValueAtKey(3, new TextDocument("key number 3");

Définition des valeurs à l’aide de la syntaxe de commodité pour la position, la mise à l’échelle, la couleur ou le texte source

8

// These two are equivalent. The second fills in a default of 0. myLayer.position.setValue([ 20, 30, 0]); myLayer.position.setValue([ 20, 30 ]); // These two are equivalent. The second fills in a default of 100. myLayer.scale.setValue([ 50, 50, 100]); myLayer.scale.setValue([ 50, 50 ]); // These two are equivalent. The second fills in a default of 1.0 myLight.color.setValue([ .8, .3, .1, 1.0]); myLight.color.setValue([ .8, .3, .1]);

Comment utiliser l’aide

Page précédente

148

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

149

// These two are equivalent. The second creates a TextDocument myTextLayer.sourceText.setValue(new TextDocument("foo")); myTextLayer.sourceText.setValue("foo");

Méthode Property addKey() app.project.item(index).layer(index).property(name).addKey(time)

Description La méthode property addKey ajoute une nouvelle image clé à l’instant donné et renvoie l’index de la nouvelle image clé. Paramètres time

valeur de la virgule flottante ; instant auquel l’image clé est ajoutée

Renvoi Entier ; index de la nouvelle image clé.

Attribut Property canVaryOverTime app.project.item(index).layer(index).property(name).canVaryOverTime

Description L’attribut Property canVaryOverTime est true si cette propriété peut varier au fil du temps, c’est-à-dire si les valeurs ou expressions des images clés peuvent être enregistrées dans cette propriété. Type Booléen ; lecture seule.

Attribut Property expression app.project.item(index).layer(index).property(name).expression

Description L’attribut Property expression est l’expression pour cette propriété, exprimée sous forme de chaîne. Cet attribut force une évaluation de la chaîne d’expression donnée. La valeur est toujours remplacée par la chaîne d’expression donnée si la chaîne n’est pas une expression valide. Si la chaîne donnée est une expression valide, expressionEnabled devient true. Si la chaîne donnée n’est pas une expression valide, une erreur est générée et expressionEnabled est défini sur false. Si vous définissez l’expression d’une propriété sur la chaîne vide, expressionEnabled sera défini sur false. Type Chaîne ; lecture/écriture.

Attribut Property expressionEnabled app.project.item(index).layer(index).property(name).expressionEnabled

Comment utiliser l’aide

Page précédente

149

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

150

Description Si l’attribut Property expressionEnabled est true, il utilise l’expression pour générer la valeur pour la propriété. Si cet attribut est false, l’expression n’est pas utilisée ; les informations d’images clés ou la valeur statique de la propriété sont utilisées. Cet attribut ne peut être défini sur true que si l’expression contient une chaîne d’expression valide. Type Booléen ; lecture/écriture.

Attribut Property expressionError app.project.item(index).layer(index).property(name).expressionError

Description L’attribut Property expressionError contient, le cas échéant, l’erreur qui est survenue lors de l’évaluation de la dernière chaîne d’expression donnée à l’attribut de l’expression. Si aucune chaîne d’expression n’a été donnée à l’expression ou si la dernière chaîne d’expression donnée à l’expression a été évaluée sans erreur, l’attribut contient la chaîne vide (""). Type Chaîne ; lecture seule.

Attribut Property hasMax app.project.item(index).layer(index).property(name).hasMax

Description L’attribut Property hasMax est true s’il existe une valeur maximale autorisée pour cette propriété. Type Booléen ; lecture seule.

Attribut Property hasMin app.project.item(index).layer(index).property(name).hasMin

Description L’attribut Property hasMin est true s’il existe une valeur minimale autorisée pour cette propriété. Type Booléen ; lecture seule.

Méthode Property isInterpolationTypeValid() app.project.item(index).layer(index).property(name).isInterpolationTypeValid(theType)

Description Cette méthode renvoie true si cette propriété peut être interpolée à l’aide du theType.

Comment utiliser l’aide

Page précédente

150

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

151

Paramètres theType

Type d’interpolation d’image clé

Renvoi Booléen.

Attribut Property isSpatial app.project.item(index).layer(index).property(name).isSpatial

Description L’attribut Property isSpatial est true si la propriété définit une valeur spatiale. Il s’agit par exemple des réglages de position et de point d’effet. Type Booléen ; lecture seule.

Attribut Property isTimeVarying app.project.item(index).layer(index).property(name).isTimeVarying

Description L’attribut Property isTimeVarying est true si la propriété varie dans le temps. Une propriété varie dans le temps si elle comporte des images clés ou une expression activée. Si isTimeVarying est true, canVaryOverTime doit également être true. Type Booléen ; lecture seule.

Attribut Property KeyframeInterpolationType app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) . s e t In te r p ola t i on Ty p e At Ke y (1,Ke y fr ameInter polationTy p e.LINEAR,Ke y fr ameInter polationTy p e.BEZIER)

Description Ce type énuméré spécifie le type d’interpolation utilisé au niveau d’une image clé. Types énumérés Les valeurs autorisées sont les suivantes : KeyframeInterpolationType.LINEAR

spécifie une image clé linéaire

KeyframeInterpolationType.BEZIER

spécifie une image clé Bézier

KeyframeInterpolationType.HOLD

spécifie une image clé maintien

Méthode Property keyInInterpolationType() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) . ke yIn In ter p ola t i on Ty p e ( ke y In d e x )

Description Cette méthode renvoie le type d’interpolation in pour la clé donnée.

Comment utiliser l’aide

Page précédente

151

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

152

Paramètres keyIndex

Entier ; image clé en cours d’évaluation

Renvoi Type d’interpolation d’image clé.

Méthode Property keyInSpatialTangent() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .ke y InSpatialTangent( ke y In d e x )

Description Cette méthode renvoie la tangente spatiale in pour la clé donnée. Si le PropertyValueType est TwoD_SPATIAL, la valeur renvoyée contient 2 valeurs de virgule flottante. Si le PropertyValueType est ThreeD_SPATIAL, la valeur renvoyée contient 3 valeurs de virgule flottante. Si le PropertyValueType n’est ni TwoD_SPATIAL ni ThreeD_SPATIAL, une exception est générée. Paramètres keyIndex

Entier ; image clé en cours d’évaluation

Renvoi Tableau des valeurs de la virgule flottante.

Méthode Property keyInTemporalEase() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .ke yIn Tempor alEase( ke y In d e x )

Description Cette méthode renvoie le lissage spatial in pour la clé donnée. La valeur renvoyée est un tableau des objets KeyframeEase. La dimension de ce tableau dépend de la dimension du keyframeValueType de la propriété. Pour ThreeD, la dimension du tableau est 3. Pour TwoD, cette dimension est 2. Pour tous les autres keyframeValueTypes, la dimension est 1. Paramètres keyIndex

Entier ; image clé en cours d’évaluation

Renvoi Lissage d’image clé exprimé sous forme de tableau.

Méthode Property keyOutInterpolationType() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .ke yOutInter polationTy p e( ke y In d e x )

Description Cette méthode renvoie le type d’interpolation out pour la clé donnée.

Comment utiliser l’aide

Page précédente

152

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

153

Paramètres keyIndex

Entier ; l’image clé à évaluer

Renvoi Type d’interpolation d’image clé.

Méthode Property keyOutSpatialTangent() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .ke yOutSpatialTangent( ke y In d e x )

Description Cette méthode renvoie la tangente spatiale out pour la clé donnée. Si le PropertyValueType est TwoD_SPATIAL, la valeur renvoyée contient 2 valeurs de virgule flottante. Si le PropertyValueType est ThreeD_SPATIAL, la valeur renvoyée contient 3 valeurs de virgule flottante. Si le PropertyValueType n’est ni TwoD_SPATIAL ni ThreeD_SPATIAL, une exception est générée. Paramètres keyIndex

Entier ; image clé en cours de définition

Renvoi Tableau des valeurs de la virgule flottante.

Méthode Property keyOutTemporalEase() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .ke yOutTempor alEase( ke y In d e x )

Description Cette méthode renvoie le lissage spatial out pour la clé donnée. La valeur renvoyée est un tableau des objets KeyframeEase. La dimension de ce tableau dépend de la dimension du keyframeValueType de la propriété. Pour ThreeD, la dimension du tableau est 3. Pour TwoD, cette dimension est 2. Pour tous les autres keyframeValueTypes, la dimension est 1. Paramètres keyIndex

Entier ; image clé en cours de définition

Renvoi Lissage d’image clé exprimé sous forme de tableau.

Méthode Property keyRoving() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) . ke yRov i n g( ke y In d e x )

Description Cette méthode informe si l’image clé est itinérante. Si le PropertyValueType n’est ni TwoD_SPATIAL ni ThreeD_SPATIAL, une exception est générée.

Comment utiliser l’aide

Page précédente

153

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

154

Paramètres keyIndex

Entier ; image clé en cours d’évaluation

Renvoi Booléen.

Méthode Property keySelected() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) . ke yRov i n g( ke y In d e x )

Description Cette méthode informe si l’image clé est sélectionnée. Paramètres keyIndex

Entier ; image clé en cours d’évaluation

Renvoi Booléen.

Méthode Property keySpatialAutoBezier() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .ke ySpatialAutoBezier( ke y In d e x )

Description Cette méthode informe si l’image clé comporte une interpolation Bézier automatique spatiale. Si le PropertyValueType n’est ni TwoD_SPATIAL ni ThreeD_SPATIAL, une exception est générée. Notez que cette interpolation Bézier automatique agit uniquement sur cette image clé si keySpatialContinuous(keyIndex) est true. Paramètres keyIndex

Entier ; image clé en cours d’évaluation

Renvoi Booléen.

Méthode Property keySpatialContinuous() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) . ke y S p a t i a l Co n t i nu o u s ( ke y In d e x )

Description Cette méthode informe si l’image clé comporte une continuité spatiale. Si le PropertyValueType n’est ni TwoD_SPATIAL ni ThreeD_SPATIAL, une exception est générée.

Comment utiliser l’aide

Page précédente

154

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

155

Paramètres keyIndex

Entier ; image clé en cours d’évaluation

Renvoi Booléen.

Méthode Property keyTemporalAutoBezier() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .ke y Tempor alAutoBezier( ke y In d e x )

Description Cette méthode informe si l’image clé comporte une interpolation Bézier automatique. Notez que cet interpolation Bézier automatique temporelle agit uniquement sur cette image clé si le KeyframeInterpolationType est BEZIER pour keyInInterpolation(keyIndex) et keyOutInterpolation(keyIndex). Paramètres keyIndex

Entier ; image clé en cours d’évaluation

Renvoi Booléen.

Méthode Property keyTemporalContinuous() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .ke yTempor alContinuous( ke y In d e x )

Description Cette méthode informe si l’image clé comporte une continuité temporelle. Notez que cette continuité temporelle agit uniquement sur cette image clé si le KeyframeInterpolationType est BEZIER pour keyInInterpolation(keyIndex) et keyOutInterpolation(keyIndex). Paramètres keyIndex

Entier ; image clé en cours d’évaluation

Renvoi Booléen.

Méthode Property keyTime() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) . ke yTi m e ( ke y In d e x ) app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) . ke yTi m e ( m a r ke r Co m m e n t )

Description La méthode property keyTime recherche l’image clé ou le repère spécifié dans les arguments et renvoie l’instant auquel il ou elle se produit. Si aucune image clé ou aucun repère ne correspond à l’argument, cette méthode génère une exception et une erreur s’affiche.

Comment utiliser l’aide

Page précédente

155

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

156

Paramètres keyIndex

entier ; numéro d’index de l’image clé (compris dans la plage 0..numKeys)

markerComment

chaîne ; commentaire associé à un repère (voir section « Attribut MarkerValue Comment », page 128)

Renvoi Valeur de la virgule flottante ; instant auquel l’image clé ou le repère se produisent.

Méthode Property keyValue() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .ke yVa lue( ke y In d e x ) app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .ke yVa lue( m a r ke r Co m m e n t ) De s c r i p t io n

La méthode property keyValue recherche l’image clé ou le repère spécifié dans les arguments et renvoie l’instant auquel il ou elle se produit. Si aucune image clé ou aucun repère ne correspond à l’argument, cette méthode génère une exception et une erreur s’affiche. Paramètres keyIndex

entier ; numéro d’index de l’image clé (compris dans la plage 0..numKeys)

markerComment

chaîne ; commentaire associé à un repère (voir section « Attribut MarkerValue Comment », page 128)

Renvoi Valeur de la virgule flottante ; instant auquel l’image clé ou le repère se produisent.

Attribut Property maxValue app.project.item(index).layer(index).property(name).maxValue

Description L’attribut Property maxValue contient la valeur maximale autorisée pour la propriété. Si l’attribut hasMax est false, une exception se produit et une erreur est générée. Type Valeur du la virgule flottante ; lecture seule.

Attribut Property minValue app.project.item(index).layer(index).property(name).minValue

Description L’attribut Property minValue contient la valeur minimale autorisée pour la propriété. Si l’attribut hasMin est false, une exception se produit et une erreur est générée. Type Valeur du la virgule flottante ; lecture seule.

Comment utiliser l’aide

Page précédente

156

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

157

Méthode Property nearestKeyIndex() app.project.item(index).layer(index).property(name).nearestKeyIndex(time)

Description La méthode property nearestKeyIndex renvoie l’image clé la plus proche de l’instant donné. Paramètres time

valeur de la virgule flottante ; instant auquel l’image clé la plus proche doit être recherchée

Renvoi Entier ; index de l’image clé la plus proche.

Attribut Property numKeys app.project.item(index).layer(index).property(name).numKeys

Description L’attribut Property numKeys contient le nombre d’images clés de cette propriété. Si la valeur de cet attribut est 0, aucune image clé est définie pour cette propriété. Type Entier ; lecture seule.

Attribut Property propertyValueType app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .proper t yValueTy p e

Description L’attribut Property numKeys contient le type de valeur stockée dans cette propriété. Le type énuméré associé à cet attribut possède une valeur pour chaque type de données pouvant être stockée dans une propriété et en être extraite. Tous les objets property stockent les données entrant dans l’une de ces catégories. Chaque type de données est stocké et extrait dans une structure de type différent. Par exemple, une propriété spatiale 3D (telle qu’une position de calque) est stockée en tant que tableau de trois valeurs de virgule flottante. Lors de la définition d’une valeur pour la position, un tableau de ce type serait utilisé, comme dans l’exemple suivant : mylayer.property("position").setValue([10,20,0]);

Prenons un autre exemple, où une propriété de forme (telle que la forme de masque d’un calque) serait stockée en tant qu’objet Shape. Lors de la définition d’une valeur pour une forme, un passage serait effectué dans un objet shape, comme suit : var myShape = new Shape(); myShape.vertices = [[0,0],[0 100],[100 100],[100,0]]; var myMask = mylayer.property("ADBE Mask Parade").property(1); myMask.property("ADBE Mask Shape").setValue(myShape);

Types énumérés PropertyValueType.NO_VALUE

Comment utiliser l’aide

ne stocke aucune donnée

Page précédente

157

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

158

PropertyValueType.ThreeD_SPATIAL

tableau de trois valeurs de virgule flottante positionnelles (Anchor Pont [10, 20.2, 0], par exemple)

PropertyValueType.ThreeD

tableau de trois valeurs de virgule flottante quantitatives (Scale [100, 20.2, 0], par exemple)

PropertyValueType.TwoD_SPATIAL

tableau de deux valeurs de virgule flottante positionnelles (Anchor Pont [5.1, 10], par exemple)

PropertyValueType.TwoD

tableau de 2 valeurs de virgule flottante quantitatives (Scale [5.1, 100], par exemple)

PropertyValueType.OneD

une valeur de virgule flottante

PropertyValueType.COLOR

tableau de 4 valeurs de virgule flottante comprises dans la plage 0..1, comme [.8, .3, .1, 1.0], par exemple

PropertyValueType.CUSTOM_VALUE

type non disponible ; vous ne pouvez ni obtenir ni définir de valeurs pour les propriétés avec ce type

PropertyValueType.MARKER

objet MarkerValue (voir section « Objet MarkerValue », page 126)

PropertyValueType.LAYER_INDEX

entier ; la valeur 0 signifie aucun calque

PropertyValueType.MASK_INDEX

entier ; la valeur 0 signifie aucun masque

PropertyValueType.SHAPE

objet shape

PropertyValueType.TEXT_DOCUMENT

objet TextDocument (voir section « Objet TextDocument », page 195)

Méthode Property removeKey() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .removeKe y ( ke y In d e x )

Description La méthode property removeKey supprime une image clé avec le keyIndex donné. S’il n’existe aucune image clé avec ce keyIndex, cette méthode génère une exception et une erreur s’affiche. Paramètres keyIndex

entier ; index de l’image clé en cours de suppression

Renvoi Aucun.

Attribut Property selectedKeys app.project.item(index).layer(index).property(name).selectedKeys

Comment utiliser l’aide

Page précédente

158

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

159

Description L’attribut Property selectedKeys génère un tableau d’indices de toutes les images clés sélectionnées dans cette propriété. Si aucune clé n’est sélectionnée ou si la propriété ne comporte aucune image clé, un tableau vide est renvoyé. Type Tableau d’entiers ; lecture seule.

Méthode Property setInterpolationTypeAtKey() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) . s e t In te r p ola t i on Ty p e At Ke y( inTy p e, outTy p e )

Description Cette méthode définit les types d’interpolation in et out pour l’image clé donnée. Si aucun outType n’est fourni, outType sera identique à inType. Paramètres inType

KeyframeInterpolationType ; type d’interpolation d’approche

outType

KeyframeInterpolationType (facultatif ) ; type d’interpolation d’éloignement

Renvoi Aucun.

Méthode Property setRovingAtKey() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) . s e t Rov i n g At Ke y( ke y In d e x , n e w Va l )

Description Cette méthode spécifie si l’image clé est itinérante. Si le PropertyValueType n’est ni TwoD_SPATIAL ni ThreeD_SPATIAL, une exception est générée. Remarque : la première et la dernière clé d’une propriété ne sont jamais itinérantes. La définition sur true est ignorée, et la valeur reste false. Paramètres keyIndex

Entier ; image clé en cours de définition

newVal

Booléen ; si true, l’image clé est itinérante

Renvoi Aucun.

Méthode Property setSelectedAtKey() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) . s e t S e l e c te d At Ke y( ke y In d e x , o n O f f )

Description Cette méthode spécifie si l’image clé est sélectionnée.

Comment utiliser l’aide

Page précédente

159

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

160

Paramètres keyIndex

Entier ; image clé en cours de spécification

onOff

nouvelle définition à utiliser ; si true, l’image clé est sélectionnée, et si false, elle est désélectionnée

Renvoi Aucun.

Méthode Property setSpatialAutoBezierAtKey() app.project.item(index).layer(index).proper t y(name).setSpatialAutoBezierAtKe y(ke yIn dex, newVal)

Description Cette méthode spécifie si l’image clé comporte une continuité spatiale. Si le PropertyValueType n’est ni TwoD_SPATIAL ni ThreeD_SPATIAL, une exception est générée. Paramètres keyIndex

Entier ; image clé en cours de définition

newVal

Booléen ; si true, l’image clé est en mode Bézier automatique

Renvoi Aucun.

Méthode Property setSpatialContinuousAtKey() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) . s e t S p a t i a l Co n t i nu o u s At Ke y( ke y In d e x , n e w Va l )

Description Cette méthode spécifie si l’image clé comporte une continuité spatiale. Si le PropertyValueType n’est ni TwoD_SPATIAL ni ThreeD_SPATIAL, une exception est générée. Paramètres keyIndex

Entier ; image clé en cours de définition

newVal

Booléen ; si true, l’image clé est continue

Renvoi Aucun.

Méthode Property setSpatialTangentsAtKey() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) . s e t S p a t i a lTa n ge n t s At Ke y( ke y In d e x, in Ta n g e n t , outTange n t )

Description Cette méthode définit les vecteurs de tangente in et out pour l’image clé donnée.

Comment utiliser l’aide

Page précédente

160

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

161

Si aucun argument outTangent n’est fourni, outTangent est identique à inTangent. Si le PropertyValueType est TwoD_SPATIAL, les entrées doivent être des tableaux contenant 2 valeurs de virgule flottante. Si le PropertyValueType est ThreeD_SPATIAL, les entrées doivent être des tableaux contenant 3 valeurs de virgule flottante. Si le PropertyValueType n’est ni TwoD_SPATIAL ni ThreeD_SPATIAL, une exception est générée. Paramètres keyIndex

Entier ; image clé en cours de définition

inTangent

Valeur de la virgule flottante ; le vecteur de tangente in pour cette image clé

outTangent

Valeur de la virgule flottante (facultative) ; le vecteur de tangente out pour cette image clé

Renvoi Aucun.

Méthode Property setTemporalAutoBezierAtKey() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .setTempor alAutoBezierAtKe y( ke y In d e x , n e w Va l )

Description Cette méthode spécifie si l’image clé doit comporter une interpolation Bézier automatique temporelle. Notez que cette interpolation Bézier automatique temporelle agit uniquement sur cette image clé si keySpatialContinuous(keyIndex) est true. Paramètres keyIndex

Entier ; image clé en cours de définition

newVal

Booléen ; si true, l’image clé est continue

Renvoi Aucun.

Méthode Property setTemporalContinuousAtKey() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) . s e t Te m p or a lCon t i nu ou s At Ke y( ke y In d e x , n e w Va l )

Description Cette méthode spécifie si l’image clé doit comporter une continuité temporelle. Notez que cette continuité temporelle agit uniquement sur cette image clé si le KeyframeInterpolationType est BEZIER pour keyInInterpolation(keyIndex) et keyOutInterpolation(keyIndex).

Comment utiliser l’aide

Page précédente

161

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

162

Paramètres keyIndex

Entier ; image clé en cours de définition

newVal

Booléen ; si true, l’image clé est continue

Renvoi Aucun.

Méthode Property setTemporalEaseAtKey() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) . s e t Te m p or a lE a s e At Ke y( ke y In d e x , i n Te m p o ra l E a s e , o u t Te m p o ra l E a s e )

Description Cette méthode définit le lissage temporel in et out pour l’image clé donnée. Si outTemporalEase n’est pas fourni, outTemporalEase est identique à inTemporalEase. InTemporalEase et outTemporalEase sont des tableaux d’objets KeyframeEase. La dimension de ce tableau dépend de la dimension du keyframeValueType de la propriété. Pour ThreeD, la dimension du tableau est 3. Pour TwoD, cette dimension est 2. Pour tous les autres keyframeValueTypes, y compris les types TwoD_SPATIAL et ThreeD_SPATIAL, cette dimension est 1. Paramètres keyIndex

Entier ; image clé en cours de définition

inTemporalEase

KeyframeEase ; paramètre de lissage temporel d’approche

outTemporalEase

KeyframeEase ; paramètre de lissage temporel d’éloignement

Renvoi Aucun.

Méthode Property setValue() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .setValue( n e w Va lu e )

Description La méthode property setValue définit la valeur statique de la propriété. Si la propriété comporte des images clés, cette méthode ne peut pas être utilisée ; voir la « Méthode Property setValueAtTime() », page 163 ou la « Méthode Property setValueAtKey() », page 163 à la place. Si elle est utilisée avec une propriété comportant des images clés, cette méthode génère une exception, et une erreur est affichée. Le type de valeur à utiliser comme argument dépend du propertyValueType. Paramètres newValue

propertyValueType ; valeur appropriée pour le type de propriété défini

Renvoi Aucun.

Comment utiliser l’aide

Page précédente

162

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

163

Méthode Property setValueAtKey() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .setValueAtKe y( ke y In d e x , n e w Va l u e )

Description La méthode property setValueAtKey cherche l’image clé ayant le keyIndex donné et définit la valeur sur keyframe. Si la propriété ne comporte aucune image clé ou aucune image clé ayant le keyIndex donné, cette méthode génère une exception et une erreur s’affiche. Le type de valeur à utiliser comme argument dépend du propertyValueType. Paramètres keyIndex

entier ; index de l’image clé devant recevoir une valeur

newValue

propertyValueType ; valeur appropriée pour le type de propriété défini

Renvoi Aucun.

Méthode Property setValueAtTime() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .setValueAtTime( t im e , n e w Va lu e )

Description La méthode property setValueAtTime crée une image clé à l’instant donné (s’il n’en existe pas) et définit la valeur sur cet image clé. Si aucune image clé n’existe, cette méthode crée et définit la première image clé à l’instant donné. Si aucune image clé n’existe à l’instant donné, cette méthode en crée une. Si une image clé existe à l’instant donné, cette méthode définit sa valeur. Le type de valeur à utiliser comme argument dépend du propertyValueType. Paramètres time

valeur de la virgule flottante ; instant auquel définir une image clé

newValue

propertyValueType ; valeur appropriée pour le type de propriété défini

Renvoi Aucun.

Méthode Property setValuesAtTimes() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .setValuesAtTimes( [ t im e s] , [ n e w Va lu e s] )

Description La méthode property setValuesAtTimes crée les images clés à une série d’instants donnés (les instants où aucune image clé n’existe) et définit les valeurs de ces images clés. Si aucune image clé n’existe, cette méthode crée un ensemble d’images clés et définit la première image clé sur l’instant donné. Si aucune image clé n’existe à l’instant donné, cette méthode en crée une. Si une image clé existe à l’instant donné, cette méthode définit sa valeur.

Comment utiliser l’aide

Page précédente

163

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

164

Les instants et les valeurs sont exprimés sous forme de tableaux. Le type de valeur à utiliser comme argument dépend du propertyValueType. Paramètres [times]

valeur de la virgule flottante ; tableau des instants auxquels définir les images clés

[newValues]

propertyValueType ; tableau des valeurs appropriées pour le type de propriété en cours de définition

Renvoi Aucun.

Attribut Property unitsText app.project.item(index).layer(index).property(name).unitsText

Description L’attribut Property unitsText est un texte de description des unités dans lesquelles la valeur est exprimée. Type Chaîne ; lecture seule.

Attribut Property value app.project.item(index).layer(index).property(name).value

Description L’attribut Property value contient la valeur de la propriété à l’instant courant. Si expressionEnabled est true, value renvoie la valeur de l’expression évaluée ; si des images clés sont présentes, value renvoie la valeur des ces images clés à l’instant courant ; dans tous les autres cas, value renvoie la valeur statique de la propriété. Le type de valeur renvoyé dépend du propertyValueType du flux. Type Dépendant du flux en cours d’évaluation ; lecture seule. Exemples Voir sections « Obtention et définition de la valeur d’une opacité », page 147, « Obtention et définition de la valeur d’une position », page 147 et « Redéfinition de la valeur d’une forme de masque de fermée à ouverte », page 147 au paragraphe Exemples de l’objet Property.

Méthode Property valueAtTime() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .valueAtTime( t ime, preEx pression )

Description La méthode property valueAtTime renvoie la valeur de la propriété telle qu’évaluée à l’instant donné. L’instant est exprimé en secondes, zéro correspondant au début de la composition.

Comment utiliser l’aide

Page précédente

164

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

165

L’option preExpression n’a d’importance que si une expression est appliquée à la propriété ; sinon elle est ignorée. Elle détermine si une expression est utilisée pour calculer la valeur. Notez que le type de valeur renvoyé n’est pas explicite ; il peut varier en fonction de la propriété évaluée. Paramètres time

valeur de la virgule flottante ; instant auquel définir une image clé

preExpression

booléen ; détermine si la propriété doit être évaluée avant ou après l’application d’une expression active

Renvoi Valeur (dont le type dépend du propertyValueType).

Objet PropertyBase app.project.item(index).layer(index).propertyBase

Description PropertyBase est la classe de base de PropertyGroup et de Property, de sorte que les attributs et méthodes PropertyBase sont également disponibles pour PropertyGroup et Property. Etant donné que PropertyGroup est la classe de base pour Layer, ses attributs et méthodes sont également disponibles pour les calques. Attributs Attribut

Référence

Description

name

voir section « Attribut PropertyBase name », page 169

nom de la propriété

matchName

voir section « Attribut PropertyBase matchName », page 169

nom spécial de la propriété utilisé pour créer des noms de chemin d’accès uniques

propertyIndex

voir section « Attribut PropertyBase propertyIndex », page 171

index d’une PropertyBase dans son ParentGroup

propertyDepth

voir section « Attribut PropertyBase propertyDepth », page 170

indique le nombre de niveaux de PropertyGroups parent entre la PropertyBase et le calque

propertyType

voir section « Attribut renvoie le PropertyType décrivant PropertyBase propertyType », sa PropertyBase page 171

parentProperty

voir section « Attribut PropertyBase parentProperty », page 170

Comment utiliser l’aide

renvoie le PropertyGroup parent de cette PropertyBase

Page précédente

165

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

166

Attribut

Référence

Description

isModified

voir section « Attribut PropertyBase isModified », page 168

renvoie true si la PropertyBase a été modifiée depuis sa création

canSetEnabled

voir section « Attribut PropertyBase canSetEnabled », page 167

true si l’interface utilisateur affiche une icône en forme d’œil pour cette propriété

enabled

voir section « Attribut PropertyBase enabled », page 168

correspond au paramètre de l’icône en forme d’œil, si celle-ci est présente

active

voir section « Attribut PropertyBase active », page 167

détermine si la PropertyBase est active

elided

voir section « Attribut PropertyBase elided », page 167

indique si cette propriété est élidée (non affichée) dans l’interface utilisateur

isEffect

voir section « Attribut PropertyBase isEffect », page 168

true si cette propriété est un PropertyGroup d’effet

isMask

voir section « Attribut PropertyBase isMask », page 168

true si cette propriété est un PropertyGroup de masque

selected

voir section « Attribut PropertyBase selected », page 172

indique si cette PropertyBase est sélectionnée

Méthode

Référence

Description

propertyGroup()

voir section « Méthode PropertyBase propertyGroup() », page 170

renvoie le PropertyGroup parent

remove()

voir section « Méthode PropertyBase remove() », page 171

supprime la PropertyBase du projet

moveTo()

voir section « Méthode PropertyBase moveTo() », page 169

déplace la PropertyBase vers le newIndex spécifié dans son PropertyGroup

duplicate()

voir section « Méthode PropertyBase duplicate() », page 167

duplique la PropertyBase et renvoie le doublon

Méthodes

Comment utiliser l’aide

Page précédente

166

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

167

Attribut PropertyBase active app.project.item(index).layer(index).property(name).active

Description Cet attribut indique si la propriété est active. Pour un calque, cela correspond au paramètre de l’icône en forme d’œil. Pour un effet et toutes les propriétés, il s’agit de l’équivalent de l’attribut enabled. Cet attribut ne peut être écrit que si canSetEnabled est true. Type Booléen ; lecture/écriture (lecture seule si canSetEnabled est false).

Attribut PropertyBase canSetEnabled app.project.item(index).layer(index).property(name).canSetEnabled

Description Cet attribut spécifie si vous pouvez écrire et également lire l’attribut activé. En tant que règle empirique, cet attribut est défini sur true si l’interface utilisateur affiche une icône en forme d’œil pour cette propriété (il est ainsi true pour tous les calques). Type Booléen ; lecture seule.

Méthode PropertyBase duplicate() app.project.item(index).layer(index).property(name).duplicate()

Description La méthode PropertyBase duplicate duplique la PropertyBase et renvoie le doublon. Cette méthode n’est valide que pour les enfants des groupes indexés ; s’ils ne le sont pas, une exception est générée et une erreur s’affiche. Paramètres Aucun. Renvoi PropertyBase ; le doublon.

Attribut PropertyBase elided app.project.item(index).layer(index).property(name).elided

Description Cet attribut détermine si cette propriété est élidée dans l’interface utilisateur. Le cas échéant, cette propriété est simplement un groupe utilisé pour organiser d’autres propriétés. La propriété n’est pas affichée dans l’interface utilisateur, et ses propriétés enfant ne sont pas indentées dans la fenêtre Montage. Type Booléen ; lecture seule.

Comment utiliser l’aide

Page précédente

167

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

168

Exemple Dans le cas d’un calque de texte comportant deux animations et aucune propriété indentée, vous verriez : •

Texte



Options de chemin



Autres options



Animation 1



Animation 2

Toutefois, Animation 1 et Animation 2 sont en réalité contenues dans une PropertyBase appelée « Animations de texte », qui n’apparaît pas dans l’interface utilisateur ; par conséquent, ces deux propriétés ne sont pas indentées dans la fenêtre Montage.

Attribut PropertyBase enabled app.project.item(index).layer(index).property(name).enabled

Description Cet attribut détermine si cette propriété est activée. Elle correspond au paramètre de l’icône en forme d’œil, si celle-ci est présente. En l’absence d’icône en forme d’œil, cet attribut est défini par défaut sur true ; vous ne pouvez écrire cet attribut que si canSetEnabled est true. Si vous essayez d’écrire cet attribut alors que canSetEnabled est false, une exception est générée. Type Booléen ; lecture/écriture (lecture seule si canSetEnabled est false).

Attribut PropertyBase isEffect app.project.item(index).layer(index).property(name).isEffect

Description Cet attribut spécifie si cette propriété est un PropertyGroup d’effets (auquel cas, il est défini sur true). Type Booléen ; lecture seule.

Attribut PropertyBase isMask app.project.item(index).layer(index).property(name).isMask

Description Cet attribut spécifie si cette propriété est un PropertyGroup de masque (auquel cas, il est défini sur true). Type Booléen ; lecture seule.

Attribut PropertyBase isModified app.project.item(index).layer(index).property(name).isModified

Comment utiliser l’aide

Page précédente

168

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

169

Description L’attribut PropertyBase isModified renvoie true si la PropertyBase a été modifiée depuis sa création. Type Booléen ; lecture seule.

Attribut PropertyBase matchName app.project.item(index).layer(index).property(name).matchName

Description L’attribut PropertyBase matchName est un nom spécial pour la propriété utilisée pour créer des noms de chemin d’accès uniques. Ce nom permet d’identifier que cette propriété fait partie d’une classification unique. Chaque propriété possède un identificateur matchName unique. Les MatchNames sont stables d’une version à une autre, quel que soit leur « nom » dans l’interface utilisateur ou les modifications apportées à l’application. Les matchNames ne sont pas directement visibles dans l’interface utilisateur. Cependant, vous pouvez vous y référer par le biais de la création de script et déterminer leur valeur en examinant la valeur de cet attribut. Remarque : contrairement aux noms, les matchNames ne changent pas en fonction de la langue de l’interface utilisateur d’After Effects (anglais/français/allemand/japonais). Les enfants des PropertyGroups INDEXED_GROUP (voir section « Attribut PropertyBase propertyType », page 171) n’ont pas toujours de « nom », lequel est par défaut une chaîne vide. Ils ont cependant un matchName dans tous les cas. Type Chaîne ; lecture seule.

Méthode PropertyBase moveTo() app.project.item(index).layer(index).property(name).moveTo(newIndex)

Description La méthode PropertyBase moveTo déplace la PropertyBase vers le newIndex spécifié dans son PropertyGroup. Cette méthode n’est valide que pour les enfants des groupes indexés ; s’ils ne le sont pas ou si newIndex n’est pas valide, une exception est générée et une erreur s’affiche. Paramètres newIndex

entier ; index contenu dans le même PropertyGroup que celui vers lequel la PropertyBase doit être déplacée.

Renvoi Aucun.

Attribut PropertyBase name app.project.item(index).layer(index).property(name).name

Comment utiliser l’aide

Page précédente

169

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

170

Description L’attribut PropertyBase name correspond au nom de la propriété. Vous ne devez pas définir le nom si la propriété n’est pas une propriété enfant d’un INDEXED_GROUP. Type Chaîne ; lecture/écriture.

Attribut PropertyBase parentProperty app.project.item(index).layer(index).property(name).parentProperty

Description L’attribut PropertyBase parentProperty renvoie le PropertyGroup parent de cette PropertyBase, ou la valeur nulle si cette PropertyBase est un calque. Type PropertyGroup ; lecture seule.

Attribut PropertyBase propertyDepth app.project.item(index).layer(index).property(name).propertyDepth

Description L’attribut PropertyBase propertyDepth est défini sur 0 pour un calque. Ajoutez 1 (un) pour chaque niveau de PropertyGroup parent au-dessus de cette PropertyBase jusqu’à ce que le calque ait été atteint. Type Chaîne ; lecture seule.

Méthode PropertyBase propertyGroup() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t y ( n a m e ) .proper t yGroup() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) .proper t y ( n a m e ) .proper t yGroup( c o u n t Up )

Description La méthode PropertyBase propertyGroup renvoie le PropertyGroup parent, atteint en se déplaçant vers le haut de la hiérarchie d’autant de niveaux que spécifié par le nombre countUp. countUp est facultatif et prend par défaut la valeur 1, s’il n’est pas fourni. La plage des valeurs autorisées pour countUp est [1 ...propertyDepth]. Renvoie une valeur nulle si countUp parvient jusqu’au parent du calque contenant cette propertyBase. Paramètres countUp

entier (facultatif ) ; défini par défaut sur 1 ; nombre de niveaux à gravir dans la plage 1..propertyDepth.

Renvoi PropertyGroup. Valeur nulle si countUp atteint le parent du calque.

Comment utiliser l’aide

Page précédente

170

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

171

Attribut PropertyBase propertyIndex app.project.item(index).layer(index).property(name).propertyIndex

Description L’attribut PropertyBase propertyIndex est l’index d’une PropertyBase dans son ParentGroup. Notez que certaines propriétés, telles que Layers ou « position » ne disposent pas de propertyIndex. D’autres propriétés, telles que les effets individuels ou les masques, comportent un index dans leur PropertyGroup parent. Type Entier ; lecture seule.

Attribut PropertyBase propertyType app.project.item(index).layer(index).property(name).propertyType

Description L’attribut PropertyBase propertyType renvoie le PropertyType décrivant cette PropertyBase. Types énumérés PropertyType est un type énuméré renvoyé par propertyType (lecture seule). Il spécifie un type particulier de PropertyBase, comme suit : PROPERTY

spécifie une propriété unique telle que la position ou le zoom

INDEXED_GROUP

spécifie un PropertyGroup dont les membres ont un nom modifiable et un index, comme la propriété Masks d’un calque, qui fait référence à un nombre variable de masques individuels par numéro d’index.

NAMED_GROUP

spécifie un PropertyGroup dont les membres ont un nom non modifiable et un index, comme dans le cas d’un calque, par exemple

Méthode PropertyBase remove() app.project.item(index).layer(index).property(name).remove()

Description La méthode PropertyBase remove supprime PropertyBase de son groupe parent. Si la PropertyBase est un PropertyGroup, elle supprime également les propriétés enfant. Cette méthode n’est valide que pour les enfants des groupes indexés ; s’ils ne le sont pas, une exception est générée et une erreur s’affiche. Cette méthode peut être appelée sur une propriété d’animation de texte (c’est-à-dire toute animation ayant été définie à un calque de texte). Paramètres Aucun.

Comment utiliser l’aide

Page précédente

171

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

172

Renvoi Aucun.

Attribut PropertyBase selected app.project.item(index).layer(index).property(name).selected

Description Cet attribut spécifie si cette PropertyBase est sélectionnée. La définition de selected sur true sélectionne la propriété ; la valeur false la désélectionne. La valeur de cet attribut peut être lue pour toute Property, tout PropertyGroup ou tout Layer. La valeur ne peut être écrite sur un PropertyGroup que s’il s’agit d’un effet ou d’un masque ; la définition de cet attribut pour tout autre type de PropertyGroup génère une exception. Notez que l’échantillonnage de cet attribut peut ralentir les performances du système s’il est utilisé à plusieurs reprises pour échantillonner de nombreuses propriétés. Pour lire l’ensemble complet des propriétés selected pour une composition ou un calque, utilisez l’attribut selectedProperties de Comp ou Layer. Type Booléen ; lecture/écriture.

Objet PropertyGroup app.project.item(index).layer(index).propertyGroup

Description L’objet PropertyGroup représente un groupe d’objets PropertyBase, (c’est-à-dire des objets Property et/ou des objets PropertyGroup). Les PropertyGroups peuvent être imbriqués pour former une chaîne du calque supérieur à une simple propriété (telle que le contour progressif du troisième masque). Attributs Attribut

Référence

Description

numProperties

voir section « Attribut PropertyGroup numProperties », page 174

nombre de propriétés indexées dans le groupe

Méthode

Référence

Description

property()

voir section « Méthode PropertyGroup property() », page 174

renvoie le PropertyGroup enfant ou la Property ayant le propertyIndex ou le nom donné

canAddProperty()

voir section « Méthode true si une propriété portant le PropertyGroup nom donné peut être ajoutée au canAddProperty() », page 173 PropertyGroup

Méthodes

Comment utiliser l’aide

Page précédente

172

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

173

Méthode

Référence

Description

addProperty()

voir section « Méthode PropertyGroup addProperty() », page 173

ajoute une propriété avec le nom donné au PropertyGroup

Méthode PropertyGroup addProperty() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t yGro u p ( i n d e x ) . a d d Prop e r t y ( n a m e )

Description Cette méthode ajoute à ce groupe une propriété portant le nom donné. Les propriétés ne peuvent être ajoutées qu’à un PropertyGroup dont le propertyType est PropertyType.INDEXED_GROUP. La seule exception à cette règle est une propriété d’animation de texte, laquelle est contenue dans un NAMED_GROUP. Cette méthode génère une exception si une propriété ne peut pas être créée avec le nom donné ; il est donc préférable d’appeler la méthode PropertyGroup canAdd Property() avant la vérification (voir section « Méthode PropertyGroup canAddProperty() », page 173). Les noms suivants sont pris en charge : •

Tout matchName d’une propriété peut être ajouté normalement à l’aide de l’interface utilisateur. Par exemple, ADBE Mask Atom, ADBE Paint Atom, ADBE Text Position, ADBE Text Anchor Point.



Lors de l’ajout à une parade ADBE Mask Parade : ADBE Mask Atom, Mask.



Lors de l’ajout à une parade d’effets ADBE Effects Parade, tout effet par nom de correspondance, tel que ADBE Bulge, ADBE Glo2, APC Vegas.



Tout effet par nom d’affichage, tel que Renflement, Lueur diffuse, Vegas.



Pour les animations et sélecteurs de texte, l’animation de texte s’associe avec l’animateur de texte ADBE (Text Animator), le sélecteur de plage s’associe avec le sélecteur de texte ADBE (ADBE Text Selector), le sélecteur de tremblement s’associe avec le sélecteur de tremblement de texte ADBE (Text Wiggly Selector), et le sélecteur d’expressions s’associe avec le sélecteur d’expressions de texte ADBE (Text Expressible Selector).

Paramètres name

chaîne ; nom à ajouter au PropertyGroup

Renvoi PropertyBase.

Méthode PropertyGroup canAddProperty() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p rop e r t y Grou p ( i n d e x ) . c a n Ad d Prop e r t y ( n a m e )

Comment utiliser l’aide

Page précédente

173

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

174

Description Cette méthode renvoie true si une propriété portant le nom donné peut être ajoutée à ce PropertyGroup. Paramètres name

chaîne ; nom à ajouter au PropertyGroup

Renvoi Booléen. Exemple Le maskGroup peut ajouter des masques uniquement. Les seuls arguments d’entrée autorisés sont les suivants : •

mask



ADBE Mask Atom

Aucun autre argument n’est autorisé. Par conséquent : •

maskGroup.canAddProperty("mask") renvoie true



maskGroup.canAddProperty("ADBE Mask Atom") renvoie true

Toute autre entrée pour l’argument maskGroup est false. Par exemple, maskGroup.canAddProperty("blend") renvoie false.

Attribut PropertyGroup numProperties app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t yGro u p ( i n d e x ) . nu m Prop e r t i e s

Description Cet attribut représente le nombre de propriétés indexées dans ce groupe. Remarque : pour Layers uniquement, cela peut porter à confusion, la valeur renvoyée étant 3. Elles correspondent aux groupes de masques, d’effets et de suivi de trajectoire contenus dans le calque. Toutefois, les calques comportent également de nombreuses autres propriétés uniquement accessibles par nom (voir section « Méthode PropertyGroup property() », page 174). Type Entier ; lecture seule.

Méthode PropertyGroup property() app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t yGro u p ( i n d e x ) . prop er t y ( i n d e x ) a p p. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p ro p e r t yGro u p ( i n d e x ) . prop er t y ( n a m e )

Description Cette méthode cherche et renvoie la PropertyBase enfant, d’après son propertyIndex ou son nom. Si vous utilisez une chaîne pour fournir l’argument name, vous pouvez utiliser l’une des suivantes : •

Tout nom utilisé dans la syntaxe « de style parenthèse » des expressions, c’est-à-dire le nom d’affichage ou le nom anglais compact

Comment utiliser l’aide

Page précédente

174

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente



Tout nom interne



Toute syntaxe d’expressions utilisant les majuscules comme séparateurs

175

Voir plus loin les exemples de ces différents types de noms. La méthode reproduit la syntaxe disponible avec les expressions. En d’autres termes, les types suivants sont tous autorisés et interchangeables (où « mylayer » est un calque déjà identifié) : • my l aye r. p o s i t i o n • my l aye r ( " p o s i t i o n " ) • my l ayer. p rop er t y ("p o sitio n ")

ainsi que les suivants, également interchangeables : • my l aye r ( 1 ) • mylayer.proper t y(1) •

Notez que certaines des propriétés d’un calque, telles que la position et le zoom, ne sont accessibles que par le nom. Lorsque vous utilisez l’argument name pour rechercher une propriété se trouvant à plusieurs niveaux inférieurs, vous devez appeler cette méthode plusieurs fois ; par exemple,

myLayer.property("ADBE Masks").property(1)

recherche deux niveaux plus bas et renvoie le premier masque du groupe de masques. Si aucune Property ou aucun PropertyGroup n’est trouvé avec le nom donné, cette méthode renvoie une valeur nulle. Les propriétés accessibles à l’aide de cette méthode avec l’argument name sont les suivantes : Propriétés accessibles par leur nom depuis tout calque

• "ADBE Mask Parade" ou "Masks" • "ADBE Effect Parade" ou "Effects" • "ADBE MTrackers" ou "Motion Trackers"

Propriétés accessibles par leur nom depuis un AVLayer

• "Anchor Point" ou "anchorPoint" • "Position" ou "position" • "Scale" ou "scale" • "Rotation" ou "rotation" • "Z Rotation" ou "zRotation" ou "Rotation Z" ou "rotationZ" • "Opacity" ou "opacity" • "Marker" ou "marker"

Propriétés accessibles par leur nom depuis un calque de caméra

• "Zoom" ou "zoom" • "Depth of Field" ou "depthOfField" • "Focus Distance" ou "focusDistance" • "Aperture" ou "aperture" • "Blur Level" ou "blurLevel"

Comment utiliser l’aide

Page précédente

175

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Propriétés accessibles par leur nom depuis un calque de lumière

Page précédente

176

• "Intensity" ou "intensity" • "Color" ou "color" • "Cone Angle" ou "coneAngle" • "Cone Feather" ou "coneFeather" • "Shadow Darkness" ou "shadowDarkness" • "Shadow Diffusion" ou "shadowDiffusion" • "Casts Shadows" ou "castsShadows"

Propriétés accessibles par leur nom depuis un calque 3D

• "Accepts Shadows" ou "acceptsShadows" • "Accepts Lights" ou "acceptsLights" • "Ambient" ou "ambient" • "Diffuse" ou "diffuse" • "Specular" ou "specular" • "Shininess" ou "shininess" • "Casts Shadows" ou "castsShadows" • "Light Transmission" ou "lightTransmission" • "Metal" ou "metal"

Propriétés accessibles par leur nom depuis un calque 3D, de lumière ou de caméra

• "X Rotation" ou "xRotation" ou "Rotation X" ou "rotationX" • "Y Rotation" ou "yRotation" ou "Rotation Y" ou "rotationY" • "Orientation" ou "orientation"

Propriétés accessibles par leur nom depuis un calque de texte

• "Source Text" ou "sourceText" ou "Text" ou "text"

Propriétés accessibles depuis un AVLayer avec une source non fixe

• "Time Remap" ou "timeRemapEnabled"

Propriétés accessibles depuis un AVLayer avec un composant audio

• "Audio Levels" ou "audioLevels"

Propriétés accessibles par leur nom depuis un PropertyGroup "ADBE Mask Parade"

• "ADBE Mask Atom"

Propriétés accessibles par leur nom depuis un PropertyGroup "ADBE Mask Atom"

• "ADBE Mask Shape" ou "maskShape" • "ADBE Mask Feather" ou "maskFeather" • "ADBE Mask Opacity" ou "maskOpacity" • "ADBE Mask Offset" ou "maskOffset"

Comment utiliser l’aide

Page précédente

176

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

177

Paramètres index

entier ; propertyIndex de la PropertyBase cible, compris dans la plage [1..numProperties]

name

chaîne ; nom de la PropertyBase cible, qui est un enfant de la PropertyBase en cours.

Renvoi PropertyBase ; ou valeur nulle si aucune propriété avec le nom de chaîne donné n’est trouvée. Exemples 1 Si un calque (myLayer, par exemple) comporte un effet Flou de la bordure (Box Blur), vous pouvez extraire l’effet de l’une des façons suivantes : myLayer.property(“Effects”).property(“Box Blur”); myLayer.property(“Effects”).property(“boxBlur”); myLayer.property(“Effects”).property(“ADBE Box Blur”);

2 Si un calque (myLayer, par exemple) comporte un masque nommé Mask 1, vous pouvez l’extraire comme suit : myLayer.property(“Masks”).property(“Mask 1”);

3 Pour obtenir une valeur du centre d’un effet de renflement, vous pouvez procéder de l’une des façons suivantes : myLayer.property(“Effects”).property(“Bulge”).property(“Bulge Center”); myLayer.property(“Effects”).property(“Bulge”).property(“bulgeCenter”);

Objet RenderQueue app.project.renderQueue

Description L’objet RenderQueue permet l’accès aux données et à la fonctionnalité dans la zone File d’attente de rendu d’un projet After Effects particulier. Cette objet est essentiel à l’automatisation du rendu. Les attributs de l’objet RenderQueue fournissent l’accès aux éléments contenus dans la file d’attente de rendu et à leur état de rendu. Les méthodes de l’objet RenderQueue peuvent démarrer, interrompre et arrêter le processus de rendu. L’objet RenderQueueItem fournit l’accès aux paramètres spécifiques d’un élément pour lequel effectuer le rendu. Attributs Attribut

Référence

Description

rendering

voir section « Attribut RenderQueue rendering », page 180

détermine si un rendu est en cours

Comment utiliser l’aide

Page précédente

177

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

178

Attribut

Référence

Description

numItems

voir section « Attribut RenderQueue numItems », page 179

nombre total d’éléments se trouvant dans la file d’attente de rendu

items

voir section « ItemCollection », page 110

éléments rassemblés dans la file d’attente de rendu

Méthode

Référence

Description

showWindow()

voir section « Méthode RenderQueue showWindow() », page 180

booléen permettant d’afficher/ masquer la fenêtre File d’attente de rendu

render()

voir section « Méthode RenderQueue render() », page 179

démarre le rendu ; ne renvoie rien tant que le rendu n’est pas terminé

pauseRendering()

voir section « Méthode interrompt le rendu RenderQueue pauseRendering() », page 179

stopRendering()

voir section « Méthode RenderQueue stopRendering() », page 180

met fin au rendu

item()

voir section « Méthode RenderQueue Item() », page 178

renvoie un RenderQueueItem

Méthodes

Méthode RenderQueue Item() app.project.renderQueue.item(index)

Description Cette méthode renvoie un élément de file d’attente de rendu ayant le numéro d’index donné. Paramètres index

entier ; index de l’élément

Renvoi RenderQueueItem.

Attribut RenderQueue items app.project.renderQueue.items

Description L’attribut items de renderQueue fournit sous forme de collection l’ensemble des éléments contenus dans la file d’attente de rendu.

Comment utiliser l’aide

Page précédente

178

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

179

Type RQItemCollection ; lecture seule. Voir aussi « RQItemCollection », page 180

Attribut RenderQueue numItems app.project.renderQueue.numItems

Description L’attribut numItems indique le nombre total d’éléments de file d’attente de rendu contenus dans la file d’attente de rendu. Type Entier ; lecture seule.

Méthode RenderQueue pauseRendering() app.project.renderQueue.pauseRendering(pause)

Description Interrompt la file d’attente de rendu ; équivaut à utiliser le bouton Pause dans la fenêtre File d’attente de rendu pendant un rendu. Paramètres pause

booléen ; défini sur true, il interrompt le rendu ; défini sur false, il poursuit un rendu interrompu

Renvoi Aucun.

Méthode RenderQueue render() app.project.renderQueue.render()

Description Démarre la file d’attente de rendu ; équivaut à utiliser le bouton Rendu de la fenêtre File d’attente de rendu. Ne renvoie rien tant que le rendu n’est pas terminé. Définissez app.onError si vous souhaitez être averti des erreurs pendant le processus de rendu. Définissez l’attribut RenderQueueItem.onStatusChanged d’un RenderQueueItem particulier pour obtenir des mises à jour pendant le traitement du rendu. Paramètres Aucun. Renvoi Aucun. Voir aussi « Méthode Application open() », page 38 Comment utiliser l’aide

Page précédente

179

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

180

« Attribut RenderQueueItem onStatusChanged », page 184

Attribut RenderQueue rendering app.project.renderQueue.rendering

Description L’attribut rendering indique si le rendu est en cours. Attribut en lecture seule ; utilisez les méthodes render() et stopRendering() pour le contrôler. Si le rendu est interrompu, cet attribut est défini à true. Type Booléen ; lecture seule.

Méthode RenderQueue showWindow() app.project.renderQueue.showWindow(doShow)

Description La méthode showWindow de RenderQueue est un booléen ; si true, affiche la fenêtre File d’attente de rendu, si false, masque la fenêtre. Paramètres doShow

booléen ; si true, affiche la fenêtre File d’attente de rendu ; si false, la masque

Renvoi Aucun.

Méthode RenderQueue stopRendering() app.project.renderQueue.stopRendering()

Description Interrompt la file d’attente de rendu ; équivaut à utiliser le bouton Arrêter dans la fenêtre File d’attente de rendu pendant un rendu. Utile pour appeler l’événement d’un rappel onStatusChanged. Paramètres Aucun. Renvoi Aucun. Voir aussi « Attribut RenderQueueItem onStatusChanged », page 184.

RQItemCollection app.project.renderQueue.items

Comment utiliser l’aide

Page précédente

180

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

181

Description RQItemCollection contient tous les éléments de file d’attente de rendu. Equivaut à l’ensemble des éléments se trouvant dans la fenêtre File d’attente de rendu d’un projet donné. Attributs length

nombre d’objets contenus dans la collection (concerne toutes les collections)

Méthodes []

extrait un ou plusieurs objets de la collection au moyen du numéro d’index correspondant

add()

ajoute un élément de file d’attente de rendu pour une composition spécifiée

Voir aussi « Objet Collection », page 59

Objet RenderQueueItem app.project.renderQueue.item(index)

Description L’objet RenderQueueItem est un élément individuel dans la file d’attente de rendu. Attributs Attribut

Référence

Description

numOutputModules

voir section « Attribut RenderQueueItem numOutputModules », page 184

nombre total de modules de sortie affectés à un élément de file d’attente de rendu

render

voir section « Attribut RenderQueueItem render », page 185

booléen affichant true si le rendu de cet élément sera effectué au démarrage de la file d’attente

startTime

voir section « Attribut RenderQueueItem startTime », page 186

objet Date représentant le moment de commencement du rendu de l’élément par le programme

elapsedSeconds

voir section « Attribut RenderQueueItem elapsedSeconds », page 183

temps écoulé dans le rendu en cours, exprimé en secondes

timeSpanStart

voir section « Attribut RenderQueueItem timeSpanStart », page 187

heure de début, en secondes, dans la composition à rendre

Comment utiliser l’aide

Page précédente

181

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

182

Attribut

Référence

Description

timeSpanDuration

voir section « Attribut RenderQueueItem timeSpanDuration », page 187

durée de la composition à rendre, exprimée en secondes

skipFrames

voir section « Attribut RenderQueueItem skipFrames », page 185

nombre d’images à ignorer lors du rendu

comp

voir section « Attribut RenderQueueItem comp », page 183

composition dont le rendu est en cours de réalisation par cet élément de file d’attente de rendu

outputModules

voir section « Attribut RenderQueueItem outputModules », page 184

ensemble des modules de sortie

templates

voir section « Attribut RenderQueueItem templates », page 187

tableau des modèles de paramètres de rendu

status

voir section « Attribut RenderQueueItem status », page 186

état en cours d’un élément de file d’attente de rendu

onStatusChanged

voir section « Attribut condition dans laquelle l’état d’un RenderQueueItem élément change, par exemple de onStatusChanged », page 184 l’état en cours de rendu (RENDERING) à l’état terminé (DONE)

logType

voir section « Attribut renvoie l’un des types de compteRenderQueueItem logType », rendus page 183

Méthodes Méthode

Référence

Description

outputModule()

voir section « Méthode RenderQueueItem outputModule() », page 184

renvoie un module de sortie pour l’élément

remove()

voir section « Méthode RenderQueueItem remove() », page 185

supprime l’élément de la file d’attente de rendu

saveAsTemplate()

voir section « Méthode enregistre un nouveau modèle de RenderQueueItem paramètres de rendu avec le nom saveAsTemplate() », page 185 fourni

Comment utiliser l’aide

Page précédente

182

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

183

Méthode

Référence

Description

applyTemplate()

voir section « Méthode RenderQueueItem applyTemplate() », page 183

applique un modèle de paramètres de rendu prédéfini

Méthode RenderQueueItem applyTemplate() app.project.renderQueue.item.applyTemplate(templateName)

Description La méthode applyTemplate de renderQueueItem applique un modèle Paramètres de rendu à l’élément. Paramètres templateName

nom du modèle à appliquer

Renvoi Aucun.

Attribut RenderQueueItem comp app.project.renderQueue.item(index).comp

Description L’attribut comp renvoie l’objet CompItem à rendre par cet élément de file d’attente de rendu. Attribut en lecture seule ; pour modifier la composition, l’élément de file d’attente de rendu doit être supprimé et recréé. Type CompItem ; lecture seule.

Attribut RenderQueueItem elapsedSeconds app.project.renderQueue.item(index).elapsedSeconds

Description L’attribut elapsedSeconds affiche le temps écoulé en secondes pour le rendu de l’élément. Type Entier, ou valeur nulle si l’élément n’a pas été rendu ; lecture seule.

Attribut RenderQueueItem logType app.project.renderQueue.item(index).outputModule.logType

Description L’attribut logType renvoie l’un des types de compte-rendus (énumérés ci-dessous). Type énuméré LogType (lecture/écriture) ; l’un des suivants : LogType.ERRORS_ONLY LogType.ERRORS_AND_SETTINGS LogType.ERRORS_AND_PER_FRAME_INFO

Comment utiliser l’aide

Page précédente

183

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

184

Attribut RenderQueueItem numOutputModules app.project.renderQueue.item(index).numOutputModules

Description L’attribut numOutputModules représente le nombre total de modules de sortie affectés à un élément de file d’attente de rendu donné. Type Entier ; lecture seule.

Attribut RenderQueueItem onStatusChanged app.project.renderQueue.item(index).onStatusChanged

Description L’attribut onStatusChanged est invoqué chaque fois que la valeur de l’attribut RenderQueueItem.status est modifiée. Notez qu’il est impossible de modifier les éléments de file d’attente de rendu (ou l’application) pendant le rendu (y compris lorsque le rendu est interrompu). Ceci reflète la fonctionnalité de l’application normale. Type Fonction. Exemple function myStatusChanged() { alert(app.project.renderQueue.item(1).status) } app.project.renderQueue.item(1).onStatusChanged = myStatusChanged(); app.project.renderQueue.item(1).render = false; //shows dialog

Attribut RenderQueueItem outputModules app.project.renderQueue.item(index).outputModules

Description L’attribut outputModules renvoie l’ensemble des modules de sortie pour l’élément. Type OMCollection ; lecture seule.

Méthode RenderQueueItem outputModule() app.project.renderQueue.item(index).outputModule(index)

Description Cette méthode renvoie un module de sortie avec l’index donné.

Comment utiliser l’aide

Page précédente

184

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

185

Paramètres index

entier ; index du module de sortie

Renvoi OutputModule.

Méthode RenderQueueItem remove() app.project.renderQueue.item(index).remove()

Description La méthode remove de renderQueueItem supprime l’élément référencé de la file d’attente de rendu. Paramètres Aucun. Renvoi Aucun.

Attribut RenderQueueItem render app.project.renderQueue.item(index).render

Description L’attribut render détermine si un élément sera rendu au démarrage de la file d’attente. Type Booléen ; lecture/écriture.

Méthode RenderQueueItem saveAsTemplate() app.project.renderQueue.item(index).saveAsTemplate(name)

Description La méthode saveAsTemplate de RenderQueueItem enregistre les paramètres de rendu en cours des éléments en tant que nouveau modèle portant le nom transmis comme paramètre. Paramètres name

nom du nouveau modèle

Renvoi Aucun.

Attribut RenderQueueItem skipFrames app.project.renderQueue.item(index).skipFrames

Comment utiliser l’aide

Page précédente

185

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

186

Description L’attribut skipFrames spécifie le nombre d’images à ignorer lors du rendu. Il est utilisé pour obtenir des tests de rendu plus rapides qu’un rendu complet. La durée totale reste inchangée. Une valeur égale à 0 signifie qu’aucune image n’est ignorée et produit un rendu régulier de toutes les images. Une valeur égale à 1 signifie qu’une image sur deux doit être ignorée. Plus la valeur est élevée, plus le nombre d’images ignorées est important. Si, par exemple, skip prend la valeur 1, la moitié du nombre d’images sera produite pour une sortie de séquence alors que pour une sortie de film, la durée de chaque image sera doublée. La plage des valeurs skipFrames autorisées est [0..99]. Type Entier. Lecture/écriture.

Attribut RenderQueueItem startTime app.project.renderQueue.item(index).startTime

Description L’attribut startTime renvoie un objet Date affichant le jour et l’heure de début du rendu de l’élément. Type Date ; valeur nulle si le rendu de l’élément n’est pas commencé. Lecture seule.

Attribut RenderQueueItem status app.project.renderQueue.item(index).status

Description L’attribut status représente l’état de rendu en cours de l’élément. Type énuméré RQItemStatus - l’un des attributs suivants : RQItemStatus.WILL_CONTINUE

le rendu a été interrompu

RQItemStatus.NEEDS_OUTPUT

absence de chemin de sortie valide pour l’élément

RQItemStatus.UNQUEUED

l’élément de rendu figure dans la file d’attente, mais n’est pas prêt pour le rendu

RQItemStatus.QUEUED

la composition est prête pour le rendu

RQItemStatus.RENDERING

le rendu de la composition est en cours

RQItemStatus.USER_STOPPED

le rendu a été arrêté par l’utilisateur

RQItemStatus.ERR_STOPPED

le rendu a été arrêté en raison d’une erreur

RQItemStatus.DONE

le rendu de l’élément est terminé

Comment utiliser l’aide

Page précédente

186

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

187

Attribut RenderQueueItem templates app.project.renderQueue.item(index).templates

Description L’attribut templates renvoie un tableau des noms de modèles de paramètres de rendu disponibles pour l’élément. Attribut en lecture seule. Type Tableau ; lecture seule.

Attribut RenderQueueItem timeSpanDuration app.project.renderQueue.item(index).timeSpanDuration

Description L’attribut timeSpanDuration détermine la durée, en secondes, de la composition à rendre. Il produit le même effet que la définition d’une heure de fin personnalisée dans la boîte de dialogue Paramètres de rendu, bien que la durée soit déterminée en déduisant l’heure de début de l’heure de fin. Type Valeur de la virgule flottante ; lecture/écriture.

Attribut RenderQueueItem timeSpanStart app.project.renderQueue.item(index).timeSpanStart

Description L’attribut timeSpanStart détermine, en secondes, le moment de commencement du rendu dans la composition. Cela équivaut à définir une heure de début personnalisée dans la boîte de dialogue Paramètres de rendu. Type Valeur de la virgule flottante ; lecture/écriture.

Objet Settings Description L’objet Settings fournit un moyen aisé de gérer les paramètres pour les scripts. Les paramètres sont perpétués entre les lancements d’application et sont enregistrés dans le fichier des préférences d’After Effects. Méthodes Méthode

Référence

Description

saveSetting()

voir section « Méthode Settings saveSetting() », page 189

peut enregistrer une valeur par défaut pour un élément des préférences

Comment utiliser l’aide

Page précédente

187

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

188

Méthode

Référence

Description

getSetting()

voir section « Méthode Settings getSetting() », page 188

extrait un paramètre trouvé dans le fichier des préférences

haveSetting()

voir section « Méthode Settings haveSetting() », page 188

utilisé pour déterminer si un paramètre a été affecté à un nom de section donné et au nom de la clé

Méthode Settings getSetting() app.settings.getSetting(sectionName,keyName)

Description La méthode getSetting extrait un paramètre trouvé dans le fichier des préférences. Paramètres sectionName

chaîne de texte contenant le nom d’une section de paramètres ; dans le fichier des préférences, il s’agit des noms entre parenthèses et guillemets

keyName

chaîne de texte décrivant un nom de paramètre individuel ; les noms sont énumérés entre guillemets sous sectionName

Renvoi Chaîne représentant la valeur du paramètre. Exemple var n = app.settings.getSetting("Eraser - Paint Settings", "Aligned Clone"); alert("The setting is " + n);

Voir aussi « Méthode Settings haveSetting() », page 188 « Méthode Settings saveSetting() », page 189

Méthode Settings haveSetting() app.settings.haveSetting(sectionName,keyName)

Description La méthode haveSetting est utilisée pour déterminer si un paramètre a été affecté à un nom de section donné et au nom de la clé. Renvoi Booléen. Voir aussi « Méthode Settings getSetting() », page 188 « Méthode Settings saveSetting() », page 189

Comment utiliser l’aide

Page précédente

188

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

189

Méthode Settings saveSetting() app.settings.saveSetting(sectionName,keyName,value)

Description La méthode saveSetting permet d’enregistrer une valeur par défaut pour un élément de préférences de création de script. Paramètres sectionName

chaîne de texte contenant le nom d’une section de paramètres ; dans le fichier des préférences, il s’agit des noms entre parenthèses et guillemets

keyName

chaîne de texte décrivant un nom de paramètre individuel ; les noms sont énumérés entre guillemets sous sectionName

value

valeur attribuée au paramètre

Voir aussi « Méthode Settings getSetting() », page 188 « Méthode Settings haveSetting() », page 188

Objet Shape app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p rop e r t y ( 1 ) . p rop e r t y ( i n d e x ) . p rop e r t y( " m a s k S h a p e " ) . v a lu e

Description L’objet Shape contient des informations décrivant la forme du contour d’un masque. Attributs Attribut

Référence

Description

closed

voir section « Attribut Shape closed », page 190

spécifie si la forme est une courbe fermée

vertices

voir section « Attribut Shape vertices », page 192

tableau de paires de valeurs de virgule flottante spécifiant les points d’ancrage de la forme

inTangents

voir section « Attribut Shape inTangents », page 190

tableau de paires de valeurs de virgule flottante spécifiant les vecteurs de tangente s’approchant des sommets de la forme

outTangents

voir section « Attribut Shape outTangents », page 191

tableau de paires de valeurs de virgule flottante spécifiant les vecteurs de tangente s’éloignant des sommets de la forme

Comment utiliser l’aide

Page précédente

189

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

190

Méthodes Méthode

Référence

Description

shape()

voir section « Méthode Shape constructeur permettant de créer Shape() », page 192 une nouvelle forme

Exemples 1

Création d’un masque carré

Un carré est une forme fermée constituée de quatre points. Par défaut, les inTangents et outTangents des segments de droite reliés sont toujours 0. Les valeurs par défaut correspondant à celles que vous souhaitez ici, vous n’avez pas besoin de les définir. var myShape = new Shape(); myShape.vertices = [ [0,0], [0,1], [1,1], [1,0] ]; myShape.closed = true;

2

Création d’un masque en forme de U

Un U est une forme ouverte constituée des quatre mêmes points que ceux utilisés dans l’exemple 1 : var myShape = new Shape(); myShape.vertices = [ [0,0], [0,1], [1,1], [1,0] ]; myShape.closed = false;

3

Création d’un ovale

Un ovale est une forme fermée constituée de 4 points, de inTangents et de outTangents : var myShape = new Shape(); myShape.vertices = [[300,50],[200 150],[300 250],[400 150]]; myShape.inTangents = [[55.23,0],[0,-55.23],[-55.23,0],[0,55.23]]; myShape.outTangents = [[-55.23,0],[0,55.23],[55.23,0],[0,-55.23]]; myShape.closed = true;

Attribut Shape closed app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p rop e r t y ( 1 ) . p rop e r t y ( i n d e x ) .proper t y("maskShape").value.closed

Description Cet attribut spécifie si la forme est une courbe fermée Si true, le premier et le dernier sommets sont reliés pour former une courbe fermée. Si false, le segment de fermeture ne sera pas tracé. Type Booléen ; lecture/écriture.

Attribut Shape inTangents app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p rop e r t y ( 1 ) . p rop e r t y ( i n d e x ) .proper t y("maskShape").value.inTange nts

Description Cet attribut décrit un tableau de paires de valeurs de virgule flottante spécifiant les vecteurs de tangente (poignées directrices) associés aux sommets de la forme. Comment utiliser l’aide

Page précédente

190

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

191

Chaque paire de virgule flottante spécifie une inTangent. Une inTangent et une outTangent sont associées à chaque sommet du tableau de sommets. Toutefois, lors de la création d’une forme à définir en tant que valeur d’image clé, vous pouvez laisser inTangent et/ou outTangent nuls ou ne pas renseigner les entrées ; elles seront automatiquement remplies avec des zéros. Sans mode RotoBézier, cela produit des segments de droite ; en mode RotoBézier, les zéros sont ignorés et les inTangents/ outTangents sont calculées automatiquement. Chaque sommet de la forme comporte deux poignées directrices. L’inTangent est la poignée directrice associée au segment de droite approchant du sommet depuis le sommet précédent de la forme. Les inTangents sont les coordonnées x, y spécifiées relatives au sommet associé. Par exemple, une inTangent de [-1,-1] se situe au-dessus et à gauche du sommet et présente une pente de 45 degrés, quelle que soit la position réelle du sommet. Plus une poignée est longue, plus sa portée est grande. Ainsi, un segment de forme s’approche de plus près du vecteur de tangente pour une inTangent de [-2,-2] que pour une inTangent de [-1,-1], bien que les deux s’approchent du sommet en provenant de la même direction. Si une forme est ouverte, l’inTangent du premier sommet et l’outTangent du sommet final sont ignorées. Sinon, ces deux vecteurs doivent spécifier les poignées directrices du segment de connexion final s’éloignant du sommet final et revenant vers le premier sommet. Notez que si une forme est utilisée dans un masque RotoBézier, les valeurs de tangente sont ignorées lors de l’écriture (c’est-à-dire pendant la définition de la nouvelle forme), car les masques RotoBézier calculent automatiquement leurs tangentes. Cela signifie que, pour les masques RotoBézier, vous pouvez construire une forme en définissant uniquement l’attribut de sommet et en définissant les inTangents et outTangents à une valeur nulle. Si vous définissez la forme sans tangentes, redéfinissez ensuite la forme ; les valeurs de tangente de la nouvelle forme correspondent aux valeurs de tangentes calculées automatiquement. Type Tableau de paires de valeurs de virgule flottante ; lecture/écriture.

Attribut Shape outTangents app. p ro j e c t . i t e m ( i n d e x ) . l ay e r ( i n d e x ) . p rop e r t y ( 1 ) . p rop e r t y ( i n d e x ) .proper t y("maskShape").value.outTang ents

Description Cet attribut décrit un tableau de paires de valeurs de virgule flottante spécifiant les vecteurs de tangente (poignées directrices) associés aux sommets de la forme. Chaque paire de virgule flottante spécifie une inTangent. Une inTangent et une outTangent sont associées à chaque sommet du tableau de sommets. Toutefois, lors de la création d’une forme à définir en tant que valeur d’image clé, vous pouvez laisser inTangent et/ou outTangent nuls ou ne pas renseigner les entrées ; elles seront automatiquement remplies avec des zéros. Sans mode RotoBézier, cela produit des segments de droite ; en mode RotoBézier, les zéros sont ignorés et les inTangents/ outTangents sont calculées automatiquement.

Comment utiliser l’aide

Page précédente

191

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

192

Chaque sommet de la forme comporte deux poignées directrices. L’outTangent est la poignée directrice associée au segment de droite s’éloignant du sommet vers le sommet suivant de la forme. Les ouTangents sont les coordonnées x, y spécifiées relatives au sommet associé. Par exemple, une inTangent de [-1,-1] se situe au-dessus et à gauche du sommet et présente une inclinaison de 45 degrés, quelle que soit la position réelle du sommet. Plus une poignée est longue, plus sa portée est grande. Ainsi, un segment de forme s’approche de plus près du vecteur de tangente pour une inTangent de [-2,-2] que pour une inTangent de [-1,-1], bien que les deux s’approchent du sommet en provenant de la même direction. Si une forme est ouverte, l’inTangent du premier sommet et l’outTangent du sommet final sont ignorées. Sinon, ces deux vecteurs doivent spécifier les poignées directrices du segment de connexion final s’éloignant du sommet final et revenant vers le premier sommet. Notez que si une forme est utilisée dans un masque RotoBézier, les valeurs de tangente sont ignorées lors de l’écriture (c’est-à-dire pendant la définition de la nouvelle forme), car les masques RotoBézier calculent automatiquement leurs tangentes. Cela signifie que, pour les masques RotoBézier, vous pouvez construire une forme en définissant uniquement l’attribut de sommet et en définissant les inTangents et outTangents à une valeur nulle. Si vous définissez la forme sans tangentes, définissez ensuite de nouveau la forme ; les valeurs de tangente de la nouvelle forme correspondent aux valeurs de tangentes calculées automatiquement. Type Tableau de paires de valeurs de virgule flottante ; lecture/écriture.

Méthode Shape Shape() New Shape()

Description Cette méthode est le constructeur permettant de créer une nouvelle forme. Après avoir construit une forme avec cette méthode, définissez les différents attributs un à un pour remplir la forme avec les valeurs de votre choix. Paramètres Aucun. Renvoi Forme.

Attribut Shape vertices Description Cet attribut décrit un tableau de paires de valeurs de virgule flottante spécifiant les points d’ancrage de la forme. Chaque paire de valeur de virgule flottante est un tableau de deux valeurs de virgule flottante. Type Tableau de paires de valeurs de virgule flottante ; lecture/écriture.

Comment utiliser l’aide

Page précédente

192

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

193

Objet SolidSource app.project.item(index).mainSource app.project.item(index).proxySource

Description L’objet SolidSource contient des informations décrivant une source de métrage de couleur unie. Il s’agit d’une sous-classe de FootageSource ; par conséquent, elle hérite de l’ensemble des attributs et des méthodes de l’ « Objet FootageSource », page 99. Attributs color

voir section « Attribut SolidSource color », page 193

définit la couleur du solide

Attribut SolidSource color app.project.item(index).solidSource.color

Description L’attribut color de SolidSource définit la couleur du solide. Cette valeur est un tableau de trois valeurs de virgule flottante pour le rouge, le vert et le bleu, ces valeurs devant être comprises dans la plage [0..1]. Type Tableau de trois valeurs de virgule flottante comprises entre 0 et 1 : [R, V, B]) ; lecture/ écriture.

Objet System system

Description L’objet System fournit l’accès aux attributs trouvés sur le système de l’utilisateur, tels que le nom utilisateur ou le nom et la version du système d’exploitation. Attributs Attribut

Référence

userName

voir section « Attribut System nom de l’utilisateur connecté pour userName », page 194 la session en cours du système d’exploitation

machineName

voir section « Attribut System nom de la machine hôte machineName », page 194

osName

voir section « Attribut System nom du système d’exploitation en osName », page 194 cours d’exécution

osVersion

voir section « Attribut System version du système d’exploitation osVersion », page 194 en cours d’exécution

Comment utiliser l’aide

Description

Page précédente

193

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

194

Attribut System machineName system.machineName

Description L’attribut machineName spécifie le nom de la machine sur laquelle le programme est exécuté, et est exprimé sous forme de chaîne de texte. Type Chaîne ; lecture seule. Exemple alert ( "Your machine is called " + system.machineName + ".");

Attribut System osName system.osName

Description L’attribut osName spécifie le nom du système d’exploitation sur lequel le programme est exécuté et est exprimé sous forme de chaîne de texte. Type Chaîne ; lecture seule. Exemple alert ( "Your OS is " + system.osname + ".");

Attribut System osVersion system.osVersion

Description L’attribut osVersion spécifie la version du système d’exploitation local en cours et s’exprime sous forme de chaîne de texte. Type Chaîne ; lecture seule. Exemple alert ( "Your OS is " + system.osname + " running version " + system.osversion);

Attribut System userName system.userName

Description L’attribut userName spécifie le nom de l’utilisateur connecté au système et s’exprime sous forme de chaîne de texte. Type Chaîne ; lecture seule. Exemple confirm( "You are: " + system.userName + " running on " + system.machineName + ".");

Comment utiliser l’aide

Page précédente

194

Aide d’Adobe After Effects

Référence

Comment utiliser l’aide

Page précédente

195

Objet TextDocument Description L’objet TextDocument contient un attribut de chaîne « text » utilisé pour stocker les valeurs de la propriété Texte source d’un calque de texte. Attributs Attribut

Référence

Description

text

voir section « Attribut TextDocument text », page 195

chaîne de texte stockée dans le TextDocument

Méthode

Référence

Description

TextDocument()

voir section « Méthode TextDocument TextDocument() », page 196

constructeur permettant de créer un TextDocument

Méthodes

Exemples Définition d’une valeur d’un texte source, suivie de l’affichage d’une alerte indiquant la nouvelle valeur :

1

var myTextDocument = new TextDocument("Happy Cake"); myTextLayer.property("Source Text").setValue(myTextDocument); alert(myTextLayer.property("Source Text").getValue());

Définition de valeurs d’image clé pour un texte qui affichera différents mots dans le temps :

2

var textProp = myTextLayer.property("Source Text"); textProp.setValueAtTime(0, new TextDocument("Happy")); textProp.setValueAtTime(.33, new TextDocument("cake")); textProp.setValueAtTime(.66, new TextDocument("is")); textProp.setValueAtTime(1, new TextDocument("yummy!"));

Attribut TextDocument text TextDocument.text

Description Chaîne de texte stockée dans ce TextDocument. Type Chaîne ; lecture/écriture.

Méthode TextDocument TextDocument() New TextDocumnent(docText)

Description Cette méthode est le constructeur d’un nouveau TextDocument. Comment utiliser l’aide

Page précédente

195

Aide d’Adobe After Effects

Comment utiliser l’aide

Référence

Page précédente

196

Paramètres docText

chaîne ; texte contenu dans le TextDocument

Renvoi TextDocument

Comment utiliser l’aide

Page précédente

196

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

197

Exemples Des exemples des scripts contenus sur le CD-ROM sont fournis ci-dessous, accompagnés d’une explication générale de ce qu’il permettent de faire et d’une description détaillée de leur fonctionnement. Loin d’être exhaustive, cette série d’exemples démontre cependant certaines des fonctionnalités de création de script les plus complexes. Elle présente également certaines constructions type de programmation JavaScript applicables à la création de scripts. Pour obtenir des exemples propres à l’utilisation de l’interface utilisateur, reportez-vous à la section « Création d’éléments pour l’interface utilisateur », page 215. Pour obtenir davantage d’exemples fournis par Adobe ou d’autres utilisateurs d’After Effects, visitez le site Adobe Studio Exchange à l’adresse http://share.studio.adobe.com, puis choisissez Scripting dans la zone Adobe After Effects.

Apply effect (application d’un effet) Cet exemple est assez simple ; le script commence par demander à l’utilisateur de sélectionner un calque AV, puis, si cette condition est remplie, applique un flou accéléré de 10 pixels aux calques sélectionnés, avec l’option Recopier les pixels du contour définie sur true. Les commentaires qui figurent sur les lignes commençant par deux barres obliques (//) décrivent ce qui se produit dans chaque partie du script. Le script effectue les opérations suivantes, dans cet ordre : •

vérifie qu’au moins l’un des calques sélectionnés peut recevoir des effets ;



ajoute un flou accéléré à tout calque sélectionné susceptible de présenter des effets ;



définit le flou (Blurriness) à 10 et active la copie des pixels du contour ;



renvoie un booléen indiquant si l’effet a été ajouté ;



démarre un groupe d’annulation de façon à ce que, si l’effet est appliqué à plusieurs calques, la totalité de l’opération de script puisse être annulée en une seule étape ;



définit une erreur accompagnée d’instructions destinées à l’utilisateur dans le cas où le script n’appliquerait pas d’effet à un calque.

{ // T hi s fu n cti o n a p p l i es the effect to on e s i n g le layer // function applyFastBlurToLayer(the_layer) { v a r a d d e d It = f a l s e ; // // if // if

Can only add an effect if there's an effects g roup in the layer. Some layers don't have one, like camer a and lig ht layers. ( t h e _ l ayer ( " E f f e c t s " ) ! = nu l l ) { Always best to check if it's safe before adding: (the_layer("Effects").canAddProper t y("Fast Blur")) {

Comment utiliser l’aide

Page précédente

197

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

198

// a dd a new Fast Blur effect to the effects g roup of the layer t h e_ l ayer("E ffects"). a d d Prop er t y ("Fa s t B lu r " ) ; / / s e t t h e p a r a m e ter v a l u e s the_layer("Effects")("Fast Blur").blur r iness.setValue(10); t h e_ l ayer("E ffects")("Fa st B l u r"). rep e a t E d ge P i xe ls . s e t Va lu e ( t r u e ) ; a d d e d It = t r u e ; } } / / Re t u r n a b o o l e a n s ay i n g w h e t h e r we a d d e d t h e e f f e c t re tur n a d d e d It ; } // Star t an undo g roup. By using this w ith an endUndoGroup(), you // al l ow u sers to u n d o the who l e scr ipt w ith one undo oper ation. app. beg inUndoGroup("Apply Fast Blur to Selections"); // If we d o n ' t fi n d a ny sel ected l ayers , we ' ll p u t u p a n a le r t a t t h e e n d . var numLayersChanged = 0; / / G e t t h e a c t ive com p v a r a c t ive Ite m = a p p. p ro j e c t . a c t ive Item ; i f ( a c t ive Item ! = nu l l & & ( a c t ive Item i n s t a n ce o f Com p Item ) ) { v a r a c t iveCom p = a c t iveIte m ; / / t r y to a p p l y to e ve r y s e l e c te d l ayer v a r s e l e c te d L ayer s = a c t iveCom p. s e l e c te d L ayer s ; f o r ( v a r i = 0 ; i < s e l e c te d L ayer s . l e n g t h ; i + + ) { v a r c u r L ayer = s e l e c te d L ayer s [ i ] ; / / T h e m e t h o d re t u r n s t r u e i f i t a d d s t h e e f f e c t , f a l s e o t h e r w i s e . if (applyFastBlurToLayer(curLayer) == t r ue) { numLayersChanged++; } } } // Pr in t a messa g e i f n o l ayers were af f e c te d if (numLayersChanged == 0) { a l e r t ( " P l e a s e s e l e c t a n AV l ayer o r l ayer s a n d r u n s c r i p t a g a i n " ) ; } app. endUndoGroup(); }

Comment utiliser l’aide

Page précédente

198

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

199

Replace text (remplacement de texte) Ce script effectue une action trop spécifique pour être d’une utilité quelconque en l’état, mais il pose les principes élémentaires d’une opération générale très pratique, qui est l’édition automatique des calques de texte. Le script recherche tout simplement les calques de texte sélectionnés qui contiennent la chaîne de texte « blue » et remplace cette chaîne par « monday ». Notez que « blue » peut être modifié quel que soit son emplacement dans le calque sélectionné, y compris s’il s’agit d’une partie d’un autre mot. Par exemple, « bluejean » sera devenu « mondayjean » une fois l’effet appliqué. Les commentaires qui figurent sur les lignes commençant par deux barres obliques (//) décrivent ce qui se produit dans chaque partie du script. Le script effectue les opérations suivantes, dans cet ordre : •

définit une fonction qui remplace toutes les occurrences de « blue » par « monday » ;



définit une fonction qui applique la première fonction à un seul calque, en recherchant toutes les images clés Texte source contenant « blue », en déterminant à chaque fois si du texte a été modifié (et en renvoyant un booléen indiquant si cela est le cas) ;



définit un groupe d’annulation unique pour toutes les modifications effectuées par le script ;



si aucun calque n’a été modifié, affiche un message d’avertissement expliquant à l’utilisateur comment appliquer le script correctement.

{ // T h i s s c r i p t rep l a ce s tex t i n a l l t h e s e l e c te d tex t l ayer s . // // It finds all instances of the word "blue" and changes them to "monday" // // T hi s fu n cti o n ta kes theS t r i n g a n d rep la ce s fi r s t Word w i t h s e con d Word . // It rep ea ts, so it w i l l rep l a ce a l l i n s t a n ce s of fi r s t Word i n t h e S t r i n g . // Re tu r n s the cha n g ed st r i n g . function replaceTextInSt r ing(theSt r ing , firstWord, secondWord) { var n ewS t r in g = theS t r i n g ; while(newSt r ing .indexOf(firstWord) != -1) { newSt r ing = newSt r ing .replace(firstWord,secondWord); } re tur n newSt r ing; } // T hi s fu n cti o n a p p l i es the cha n g e to on e s i n g le layer // function replaceTextInLayer(theLayer, firstWord, secondWord) { v a r ch a n g e d S o m e t h i n g = f a l s e ; // Get the sourceText proper t y, if there is one. var so u rceText = theL ayer. so u rceText ; i f ( s o u rceTex t ! = nu l l ) { if ( s o u rceText. nu mKe ys == 0) { // textValue is a TextDocument. Re t r ie ve the st r ing inside var oldSt r ing = sourceText.value.text;

Comment utiliser l’aide

Page précédente

199

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

200

if (oldSt r ing .indexOf(firstWord) != -1) { var newSt r ing = replaceTextInSt r ing(oldSt r ing , firstWord, secondWord); if ( ol d S t r i n g ! = n ewS t r i n g ) { sourceText.setValue(newSt r ing); ch a n g e d S o m e t h i n g = t r u e ; } } } else { // Do i t fo r ea ch ke y fr a me: for (var ke yIndex = 1; ke yIndex <= source Text.numKe ys; ke yIndex++) { // textValue is a TextDocument. Re t r ie ve the st r ing inside var oldSt r ing = sourceText.ke y Value(ke y In dex).text; if (oldSt r ing .indexOf(firstWord) != -1) { var newSt r ing = replaceTextInSt r ing(oldSt r ing , firstWord, secondWord); if ( ol d S t r i n g ! = n ewS t r i n g ) { sourceText.setValueAtKe y(ke y In dex,newSt r ing); ch a n g e d S o m e t h i n g = t r u e ; } } } } } / / Re t u r n a b o o l e a n s ay i n g w h e t h e r we rep l a ce d a ny tex t re t u r n ch a n g e d S o m e t h i n g ; } // Star t an undo g roup. By using this w ith an endUndoGroup(), you // al l ow u sers to u n d o the who l e scr ipt w ith one undo oper ation. app. beg inUndoGroup("Apply Text Change to Selections"); // If we don't make any changes, we'll put up an aler t at the end. var numLayersChanged = 0; / / G e t t h e a c t ive com p v a r a c t ive Ite m = a p p. p ro j e c t . a c t ive Item ; i f ( a c t ive Item ! = nu l l & & ( a c t ive Item i n s t a n ce o f Com p Item ) ) { v a r a c t iveCom p = a c t iveIte m ; / / t r y to a p p l y to e ve r y s e l e c te d l ayer v a r s e l e c te d L ayer s = a c t iveCom p. s e l e c te d L ayer s ; f o r ( v a r i = 0 ; i < s e l e c te d L ayer s . l e n g t h ; i + + ) { v a r c u r L ayer = s e l e c te d L ayer s [ i ] ; // T he metho d re tu r n s t r u e i f it cha nge s a ny tex t , f a ls e ot h e r w i s e . if (replaceTextInLayer(curLayer, "blue", "monday") == t r ue) { numLayersChanged++; } } } // Pr in t a messa g e i f n o l ayers were af f e c te d if (numLayersChanged == 0) {

Comment utiliser l’aide

Page précédente

200

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

201

// Note: if you put quotes in the inter ior of the st r ing , // t he y mu st be p reced ed by a ba ck sl a s h , a s i n \ " b lu e \ " b e low. aler t("P l ea se sel ect a text l ayer o r l ayer s con t a i n i n g t h e word \ " b lu e \ " a n d r u n s c r i p t a ga i n " ) ; } app. endUndoGroup(); }

Save and increment (enregistrement et incrémentation) Bien qu’une bonne partie de la fonctionnalité de ce script ait été remplacée par la nouvelle fonction d’enregistrement par incréments proposée par After Effects 6.5, elle y est encore incluse car elle utilise efficacement les conditionnels, les fonctions et les objets File et FileSystem. Ce script enregistre automatiquement une nouvelle copie du projet After Effects ouvert et incrémente son nom d’un numéro à trois chiffres pour le distinguer de ses versions précédentes. Ce script est enregistré sous le nom save_and_increment.jsx sur le CD-ROM d’installation. La première étape consiste à déterminer si le projet ouvert a déjà été sauvegardé. Cette vérification s’effectue au moyen d’une instruction d’ouverture if/else. La première condition, !app.project.file, indique que si le projet n’a pas été sauvegardé, un message d’alerte demandant à l’utilisateur de sauvegarder le projet s’affiche et le script s’arrête. if (!app.project.file) { alert ("This project must be saved before running this script.");

Ensuite, si le projet a déjà été sauvegardé au moins une fois, des variables sont définies pour pointer vers le nom du fichier et vers le numéro et l’extension de fichier à y ajouter. Le code JavaScript lastIndexOf() recherche une chaîne vers l’arrière (de la fin vers le début) et, dans ce cas, recherche le point séparant le nom de l’extension. } else { var currFile = app.project.file; var currFileName = currFile.name; var extPos = currFileName.lastIndexOf("."); var ext = "";

La variable currFileName est ensuite définie avec le nom en cours, avant le point. if (extPos != -1) { ext = currFileName.substring(extPos, currFileName.length); currFileName = currFileName.substring(0, extPos); }

Le script définit alors une variable qui incrémentera les versions en commençant à 0, puis vérifie s’il existe un caractère de soulignement à une distance de quatre caractères de la fin du currFileName. Le cas échéant, le script conclut que l’incrémenteur a déjà été exécuté étant donné que sa tâche consiste à attribuer un suffixe de 3 chiffres à la suite d’un caractère de soulignement incrémenté d’un chiffre de plus que le dernier suffixe. Dans ce cas, l’incrémenteur est défini sur la chaîne numérique en cours, et le nom est extrait sans cette extension numérique. var incrementer = 0;

Comment utiliser l’aide

Page précédente

201

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

202

if (currFileName.charAt(currFileName.length -4) == "_") { incrementer = currFileName.substring(currFileName.length - 3, currFileName.length); currFileName = currFileName.substring(0, currFileName.length -4); }

Le script ajoute alors une boucle d’incrémentation et vérifie si le numéro est passé à deux ou trois chiffres (par exemple, si le numéro a atteint _010 ou au-delà, ou _100 ou au-delà) et attribue un zéro pour chacun dans le cas contraire. incrementer++; var istring = incrementer + ""; if (incrementer < 10) { istring = "0" + istring; } if (incrementer < 100) { istring = "0" + istring; }

Enfin, le script crée un nouveau fichier utilisant le nom et l’extension mis à jour, affiche un message d’alerte informant l’utilisateur du nouveau nom de fichier sauvegardé et enregistre le projet sous le nouveau nom de fichier. var newFile = File(currFile.path + "/" + currFileName + "_" + istring + ext); alert(newFile.fsName); app.project.save(newFile); }

Render named items (rendu des éléments nommés) Ce script permet de trouver dans le projet ouvert les compositions dont le nom comporte une chaîne de texte donnée et d’envoyer ces compositions à la file d’attente de rendu. Le script commence par vérifier si une chaîne par défaut pour le rendu a déjà été définie dans les préférences utilisateur. Le cas échéant, celle-ci est définie comme invite utilisateur, ce qui est pratique si vous cherchez toujours la même chaîne (par exemple, FINAL ou CURRENT). Sinon, un nouveau sectionName et un nouveau keyName sont définis pour le fichier de préférences, ainsi qu’une valeur de pseudo-élément pour la chaîne qui sera entrée par l’utilisateur. var sectionName = "AE Example Scripts"; var keyName = "Render comps with this string"; var searchString = ""; if (app.settings.haveSetting(sectionName, keyName)) { searchString = app.settings.getSetting(sectionName, keyName); }

A présent, un message s’affiche pour demander à l’utilisateur quelle chaîne de texte utiliser. searchString = prompt("What string to render?", searchString);

Comment utiliser l’aide

Page précédente

202

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

203

Le script parcourt ensuite le projet à la recherche du texte entré par l’utilisateur. Si l’élément contenant ce texte est une composition, le script envoie à la file d’attente de rendu toutes les compositions dont le nom contient cette chaîne de texte. Si l’utilisateur annule, le texte est indéfini. Sinon, le nouveau paramètre est enregistré dans les préférences et converti en lettres minuscules à des fins d’harmonisation (tout en sachant que la recherche ne respectera pas la casse). if (searchString) { app.settings.saveSetting(sectionName, keyName, searchString); searchString = searchString.toLowerCase(); for (i = 1; i <= app.project.numItems; ++i) { var curItem = app.project.item(i); if (curItem instanceof CompItem) { if (curItem.name.toLowerCase().indexOf(searchString) != -1) { app.project.renderQueue.items.add(curItem); } } }

Enfin, la fenêtre de file d’attente de rendu s’affiche en avant-plan pour permettre à l’utilisateur de désigner les emplacements de sauvegarde des nouveaux éléments de la file d’attente de rendu. app.project.renderQueue.showWindow(true); }

New render locations (nouveaux emplacements de rendu) Ce script permet à l’utilisateur de sélectionner des éléments en file d’attente de rendu et de leur attribuer une nouvelle destination de rendu. Dans un premier temps, l’utilisateur doit indiquer un nouveau dossier à utiliser comme destination de rendu. var newLocation = folderGetDialog("Select a render destination...");

Le script vérifie immédiatement que l’utilisateur a bien entré un nouvel emplacement (et n’a pas annulé le message). Une boucle est ensuite créée pour chaque élément de file d’attente de rendu sélectionné. Si cet élément est placé en file d’attente, le script prend l’emplacement de rendu en cours, lui attribue un nouveau nom et un nouvel emplacement, puis affiche un message d’alerte indiquant le nouveau chemin du fichier. if (newLocation) { //boolean to see if the user cancelled for (i = 1; i <= app.project.renderQueue.numItems; ++i) { var curItem = app.project.renderQueue.item(i); if (curItem.status == RQItemStatus.QUEUED) { for (j = 1; j <= curItem.numOutputModules; ++j) { var curOM = curItem.outputModule(j); var oldLocation = curOM.file; curOM.file = new File(newLocation.toString() + "/" + oldLocation.name); alert(curOM.file.fsName); } }

Comment utiliser l’aide

Page précédente

203

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

204

} }

Smart import (importation avancée) Ce script permet à l’utilisateur d’importer la totalité du contenu imbriqué d’un dossier simplement en le sélectionnant. Il tente de détecter si chaque élément est une image fixe, un métrage mobile ou une séquence d’images. L’utilisateur doit encore effectuer d’autres choix au moyen de boîtes de dialogue, comme le choix du calque d’une image multicalque (un fichier .psd, par exemple) à importer. Le script commence par inviter l’utilisateur à indiquer un dossier dont le contenu doit être importé et s’assure que l’utilisateur choisisse bien un dossier et n’annule pas le message. La fonction indiquée ci-dessous est ensuite appelée pour importer tous les fichiers, un par un. var targetFolder = folderGetDialog("Import Items from Folder..."); //returns a folder or null if (targetFolder) { function processFile (theFile) { var importOptions = new ImportOptions (theFile); //create a variable containing ImportOptions importSafeWithError (importOptions); }

Une fonction est alors ajoutée pour vérifier si un fichier donné fait partie d’une séquence. Celle-ci utilise des expressions régulières, lesquelles constituent un type spécial de JavaScript destiné à réduire le nombre d’étapes requises pour évaluer une chaîne. La première vérifie la présence de chiffres séquentiels à tout endroit du nom de fichier. La suivante s’assure que les fichiers séquentiels ne sont pas d’un type ne pouvant pas être importé en tant que séquence (fichiers d’image mobiles). Les fichiers adjacents sont ensuite vérifiés pour savoir s’il existe une séquence. Cette vérification s’arrête à dix fichiers pour limiter le temps de traitement. function testForSequence (files){ var searcher = new RegExp ("[0-9]+"); var movieFileSearcher = new RegExp ("(mov|avi|mpg)$", "i"); var parseResults = new Array; for (x = 0; (x < files.length) & x < 10; x++) { //test that we have a sequence, stop parsing after 10 files var movieFileResult = movieFileSearcher.exec(files[x].name); if (! movieFileResult) { var currentResult = searcher.exec(files[x].name);

Si aucune correspondance n’est trouvée en utilisant l’expression régulière recherchant une chaîne numérique, la valeur obtenue est nulle et le script considère qu’il n’y a pas de séquence d’images. Sinon, un tableau constitué de la chaîne correspondante et de son emplacement dans le nom de fichier est nécessaire. if (currentResult) { //we have a match - the string contains numbers //the match of those numbers is stored in the array[1] //take that number and save it into parseResults

Comment utiliser l’aide

Page précédente

204

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

205

parseResults[parseResults.length] = currentResult[0]; } else { parseResults[parseResults.length] = null; } } else { parseResults[parseResults.length] = null; } }

A présent, si tous les fichiers venant d’être évalués indiquaient qu’ils font partie d’une séquence numérique, le script conclut qu’il y a une séquence et renvoie le premier fichier de cette séquence. Sinon, la fonction est terminée. var result = null; for (i = 0; i < parseResults.length; ++i) { if (parseResults[i]) { if (! result) { result = files[i]; } } else { //case in which a file name did not contain a number result = null; break; } } return result; }

Une fonction est alors ajoutée pour afficher des messages d’erreur en cas de problème avec tout fichier que le script tente d’importer. function importSafeWithError (importOptions) { try { app.project.importFile (importOptions); } catch (error) { alert(error.toString() + importOptions.file.fsName); } }

Une fonction intervient alors pour réellement importer toute séquence d’image détectée à l’aide de testForSequence(), ci-dessus. Notez que le script contient une option placée en commentaire permettant de forcer l’ordre alphabétique dans les séquences. Pour forcer l’ordre alphabétique, annulez le statut de commentaire de la ligne "importOptions.forceAlphabetical = true" en supprimant les deux barres obliques en début de ligne. function processFolder(theFolder) { var files = theFolder.getFiles(); //Get an array of files in the target folder //test whether theFolder contains a sequence var sequenceStartFile = testForSequence(files); //if it does contain a sequence, import the sequence

Comment utiliser l’aide

Page précédente

205

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

206

if (sequenceStartFile) { var importOptions = new ImportOptions (sequenceStartFile); //create a variable containing ImportOptions importOptions.sequence = true; //importOptions.forceAlphabetical = true; //un-comment this if you want to force alpha order by default importSafeWithError (importOptions); } //otherwise, import the files and recurse for (index in files) { //Go through the array, set each element to singleFile, run this: if (files[index] instanceof File) { if (! sequenceStartFile) { //if file is already part of a sequence, don't import it individually processFile (files[index]); //calls the processFile function above } } if (files[index] instanceof Folder) { processFolder (files[index]); // recursion } } } processFolder(targetFolder); }

Render and email (rendu d’un message électronique) Ce script effectue le rendu de tous les éléments en file d’attente dans un projet ouvert et envoie un rapport par courrier électronique signalant le moment où le rendu a été terminé. Il utilise deux autres scripts, à savoir : email_methods.jsx (pour envoyer le courrier électronique correctement) et email_setup.jsx (qui établit l’expéditeur, le destinataire et le serveur de messagerie). Les conditions d’exécution du script doivent tout d’abord être vérifiées. Un projet ouvert contenant au moins un élément en file d’attente est requis. { var safeToRunScript = true; safeToRunScript = app.project != null; if (! app.project) { alert ("A project must be open to run this script."); } if (safeToRunScript) { debugger; //check the render queue and make certain at least one item is queued safeToRunScript = false; for (i = 1; i <= app.project.renderQueue.numItems; ++i) { if (app.project.renderQueue.item(i).status ==

Comment utiliser l’aide

Page précédente

206

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

207

RQItemStatus.QUEUED) { safeToRunScript = true; break; } } if (! safeToRunScript) { alert ("You do not have any items set to render."); } }

Le script vérifie dans un deuxième temps si les paramètres de courrier électronique sont déjà sauvegardés dans les préférences. Le cas échéant, aucun message n’apparaît. Sinon, le script email_setup.jsx est exécuté. L’utilisateur doit alors indiquer la passerelle de messagerie, ainsi que les adresses de l’expéditeur et du destinataire. Si vous devez modifier des paramètres enregistrés, vous pouvez toujours exécuter email_setup.jsx pour créer de nouveaux paramètres qui remplaceront ceux existant. if (safeToRunScript) { var settings = app.settings; if ( !settings.haveSetting("Email Settings", "Mail Server") || !settings.haveSetting("Email Settings", "Reply-to Address") || !settings.haveSetting("Email Settings", "Render Report Recipient")){ // We don't have the settings yet, so run email_setup.jsx // to prompt for them var email_setupfile = new File("email_setup.jsx"); email_setupfile.open("r"); eval( email_setupfile.read() ); email_setupfile.close(); } var myQueue = app.project.renderQueue //creates a shortcut for RQ

Le rendu peut à présent être effectué. Une fois le rendu terminé, le script crée une chaîne de texte pour le message électronique. Elle contient l’heure de début du rendu, l’heure du rendu de chaque élément de la file d’attente et la durée totale du rendu. myQueue.render(); var projectName = "Unsaved Project"; if (app.project.file) { projectName = app.project.file.name; } var myMessage = "Rendering of " + projectName + " is complete.\n\n";

Envoyez le message, en utilisant les trois paramètres du script email_methods.jsx exécuté automatiquement plus haut pour demander à l’utilisateur d’indiquer le serveur. if ( !settings.haveSetting("Email Settings", "Mail Server") || !settings.haveSetting("Email Settings", "Reply-to Address") || !settings.haveSetting("Email Settings", "Render Report Recipient")){

Comment utiliser l’aide

Page précédente

207

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

208

alert("Can't send an email, I don't have all the settings I need. Aborting."); } else { // Load code from a file with handy emailing methods: var emailCodeFile = new File("email_methods.jsx"); emailCodeFile.open("r"); eval( emailCodeFile.read() ); emailCodeFile.close();

Enfin, une erreur est émise si, pour une raison quelconque, le message ne peut pas être envoyé. var serverSetting = settings.getSetting("Email Settings", "Mail Server"); var fromSetting = settings.getSetting("Email Settings", "Replyto Address"); var toSetting = settings.getSetting("Email Settings", "Render Report Recipient"); var myMail = new EmailSocket(serverSetting); if (! myMail.send (fromSetting, toSetting, "AE Render Completed", myMessage) ) { alert("Sending mail failed"); } } } }

Email methods (méthodes de messagerie) Ce script crée un objet email devant être utilisé avec le script de rendu et message électronique, décrit ci-dessus. Il utilise du code spécifique à l’objet socket et requiert pour cela une connaissance approfondie des réseaux pour l’éditer. Les commentaires cidessous décrivent son fonctionnement. // // // // // //

Create an email object. The function may be called both as a global function and as a constructor. It takes the name of the email server, and an optional Boolean that, if true, prints debugging messages. This object is not guaranteed to work for all SMTP servers, some of them may require a different set of commands.

// // // //

functions: send (fromAddress, toAddress, subject, text) - send an email auth (name, pass) - do an authorization via POP3 both functions return false on errors

// // // // // //

sample: e = new EmailSocket ("mail.host.com"); authorize via POP3 (not all servers require authorization) e.auth ("myname", "mypass"); send the email e.send ("[email protected]", "[email protected]", "My Subject", "Hi there!")

// This script makes use of the Socket object, and creates a new class // called EmailSocket that is derived from Socket. For more information on

Comment utiliser l’aide

Page précédente

208

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

209

// creating new classes in this way, consult chapter 7 of JavaScript, The // Definitive Guide, by David Flanagan (O'Reilly). //This is the constructor for the email socket. It takes as arguments: //server - the address of the email server (is not checked for validity here) //dbg - a boolean, if true, prints additional error information function EmailSocket (server, dbg) { var obj = new Socket; obj._host = server; obj._debug = (dbg == true); obj.__proto__ = EmailSocket.prototype; return obj; } // correct the protoype chain to point to the Socket prototype chain // - this is what actually causes the derivation from Socket. EmailSocket.prototype.__proto__ = Socket.prototype; // // // // // // // // // // // // //

This sets up the send() member function. send() takes as arguments: from - the email address of the sender. This is not validated. to - the email address of the recipient. If there is an error, and the from address is incorrect, you will not be notified. subject - the contents of the subject field. text - the body of the message. Returns: true if sending succeeded false otherwise (if there was an error) Note that this code uses a local function object to create the function that is assigned to send.

EmailSocket.prototype.send = function (from, to, subject, text) { // open the socket on port 25 (SMTP) if (!this.open (this._host + ":25")) return false; try { // discard the greeting var greeting = this.read(); if (this._debug) write ("RECV: " + greeting); // issue EHLO and other commands this._SMTP ("EHLO " + from); this._SMTP ("MAIL FROM: " + from); this._SMTP ("RCPT TO: " + to); this._SMTP ("DATA"); // send subject and time stamp this.writeln ("From: " + from); this.writeln ("To: " + to); this.writeln ("Date: " + new Date().toString()); if (typeof subject != undefined)

Comment utiliser l’aide

Page précédente

209

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

210

this.writeln ("Subject: " + subject); this.writeln(); // send the text if (typeof text != undefined) this.writeln (text); // terminate with a single dot and wait for response this._SMTP ("."); // terminate the session this._SMTP ("QUIT"); this.close(); return true; } catch (e) { this.close(); return false; } } // // // // // // // // //

Authorize via POP3. Supply name and password. Returns: true if sending succeeded false otherwise (if there was an error) Arguments: name - the userName of the account pass - the password

EmailSocket.prototype.auth = function (name, pass) { // open the connection on port 110 (POP3) if (!this.open (this._host + ":110")) return false; try { // discard the greeting var greeting = this.read(); if (this._debug) write ("RECV: " + greeting); // issue POP3 commands this._POP3 ("USER " + name); this._POP3 ("PASS " + pass); this._POP3 ("QUIT"); this.close(); return true; } catch (e) { this.close(); return false; } } // Users of the EmailSocket do not need to be concerned with // the following method. It is an implementation helper.

Comment utiliser l’aide

Page précédente

210

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

211

// local function to send a command & check a POP3 reply // throws in case of error EmailSocket.prototype._POP3 = function (cmd) { if (this._debug) writeln ("SEND: " + cmd); if (!this.writeln (cmd)) throw "Error"; var reply = this.read(); if (this._debug) write ("RECV: " + reply); // the reply starts by either + or if (reply [0] == "+") return; throw "Error"; } // Users of the EmailSocket do not need to be concerned with // the following method. It is an implementation helper. // local function to send a command & check a SMTP reply // throws in case of error EmailSocket.prototype._SMTP = function (cmd) { if (this._debug) writeln ("SEND: " + cmd); if (!this.writeln (cmd)) throw "Error"; var reply = this.read(); if (this._debug) write ("RECV: " + reply); // the reply is a three-digit code followed by a space var match = reply.match (/^(\d{3})\s/m); if (match.length == 2) { var n = Number (match [1]); if (n >= 200 && n <= 399) return; } throw "Error"; } // nice to have: a toString() // This function allows the email object to be printed. EmailSocket.prototype.toString = function() { return "[object Email]"; }

Comment utiliser l’aide

Page précédente

211

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

212

Email setup (configuration de la messagerie) Il s’agit d’un script simple invitant l’utilisateur à indiquer le nom du serveur, l’expéditeur et le destinataire du message électronique, lesquels sont sauvegardés en tant que paramètres pour le script Render and Email (rendu et message électronique) (voir plus haut). Vous pouvez exécuter ce script de manière autonome chaque fois que vous souhaitez modifier les paramètres. Ce script exécutera email_setup.jsx chaque fois qu’il n’y aura pas de paramètres. En temps normal, cela ne se produit que la première fois ou si le fichier paramètres/préférences est supprimé. Ce script illustre bien la façon dont un script peut créer des paramètres sauvegardés dans les préférences à des fins exclusives de création de script (et non pour la modification de paramètres de préférences After Effects existants). { // This script sets up 3 email settings. // It can be run all by itself, but it is also called // within "3-Render and Mail.jsx" if the settings aren't yet set. var serverValue = prompt("Enter name of mail server:"); var fromValue = prompt("Enter reply-to email address:"); var toValue = prompt("Enter recipient's email address"); if (serverValue != null && serverValue != "") { app.settings.saveSetting("Email Settings", "Mail Server", serverValue); } if (fromValue != null && fromValue != "") { app.settings.saveSetting("Email Settings", "Reply-to Address", fromValue); } if (toValue != null && toValue != "") { app.settings.saveSetting("Email Settings", "Render Report Recipient", toValue); } }

Dialogs and console (boîtes de dialogue et console) Ce script montre comment utiliser les différentes boîtes de dialogue (alert(), prompt(), confirm()) et comment écrire dans la palette Informations (write(), writeLn() et clearOutput()). Bien que ce script soit très peu utilisé dans la pratique, ces boîtes de dialogue et messages d’incitation de la palette Informations sont très utiles et doivent être connus de tous les créateurs de script. // Use confirm() to let the user tell us whether he can see the "info" window. // Depending how the user clicks, true or false is returned. if (confirm("Can you see the \"info\" palette?")){ // Start by clearing the information area. clearOutput(); // write and writeLn will write to the info tab with or without a //'newline' // at the end.

Comment utiliser l’aide

Page précédente

212

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

213

write("Roses are red,"); writeLn("violets are blue"); write("Sugar is sweet,"); writeLn("and so is Equal."); var reply = prompt( "Did you like my poem?"); if (reply == "yes" || reply == "YES"){ alert("See the info window for a special secret fortune."); // This gets rid of the old writing on the info tab. clearOutput(); writeLn("You have a future as a literary critic."); } else { alert("Hmm, I'll try once more..."); writeLn("......."); writeLn("Roses are red, violets are blue,"); writeLn("I've got some gum, on the sole of my shoe."); } alert("Okay, all done with this test."); } else { // alert() just displays a message in a dialog box. alert("Please make it so you can see the info palette and run this script again"); }

File fun (manipulation de fichier) Ce script montre comment ouvrir des fichiers, ouvrir des projets, collecter les noms des compositions de la scène, demander à l’utilisateur d’indiquer où écrire un fichier, écrire dans un fichier texte et enregistrer le fichier texte. Il n’est utile que comme exemple de fonctionnement de chaque méthode et attribut. Il n’a pas d’utilité de production. // First, close any project that might be open. if (app.project != null){ // 3 choices here, CloseOptions.DO_NOT_SAVE_CHANGES, // CloseOptions.PROMPT_TO_SAVE_CHANGES, and CloseOptions.SAVE_CHANGES app.project.close(CloseOptions.DO_NOT_SAVE_CHANGES); } // Prompt the user to pick a project file: // First argument is a prompt, second is the file type. var pfile = fileGetDialog("Select a project file to open", "EggP aep"); if (pfile == null){ alert("No project file selected. Aborting."); } else { // Open that file. It becomes the current project. var my_project = app.open( pfile ); // Build a default text file name from the project's filename. // Remove the ".aep" file extension (if present), then add //_compnames.txt.

Comment utiliser l’aide

Page précédente

213

Aide d’Adobe After Effects

Comment utiliser l’aide

Exemples

Page précédente

214

var default_text_filename; var suffix_index = pfile.name.lastIndexOf(".aep"); if (suffix_index != -1){ default_text_filename = pfile.name.substring(0,suffix_index); }else { default_text_filename = pfile.name; } default_text_filename += "_compnames.txt"; // Create another file object for the file we'll write out. // First argument is the prompt, second is a default file name, third is //the file type. var text_file = filePutDialog("Select a file to output your results", default_text_filename, "TEXT txt"); if (text_file == null){ alert("No output file selected. Aborting."); } else { // opens file for writing. First argument is mode ("w" for writing), // second argument is file type (for mac only), // third argument is creator (mac only, "????" is no specific app). text_file.open("w","TEXT","????"); // Write the heading of the file: text_file.writeln("Here is a list of all the comps in " + pfile.name); text_file.writeln(); for (var i = 1; i <= app.project.numItems; i++){ if (app.project.item(i) instanceof CompItem){ text_file.writeln(app.project.item(i).name); } } text_file.close(); alert("All done!"); } }

Comment utiliser l’aide

Page précédente

214

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

215

Création d’éléments pour l’interface utilisateur Une structure JavaScript destinée à la création d’éléments d’interface utilisateur (IU) est intégrée à After Effects 6.5. Cette structure permet aux développeurs d’utiliser JavaScript pour créer des composants IU (fenêtres, panneaux, boutons, cases à cocher, etc.). La structure, appelée interface utilisateur pour script, a été développée comme une couche d’abstraction recouvrant la structure de fenêtrage de la plate-forme hôte sur laquelle fonctionne After Effects. Les systèmes de fenêtrage natifs Windows et MAC OS X sont pris en charge. Les raisons ayant motivé la création de cette interface utilisateur pour script sont doubles : •

Permettre aux scripts Java de créer des boîtes de dialogue et d’interagir avec les options, satisfaisant ainsi un besoin fondamental de la part des développeurs de créer des scripts paramétrés dont les actions peuvent être contrôlées plus directement par l’utilisateur final.



Etendre l’environnement JavaScript pour permettre aux scripts de créer dynamiquement des éléments IU, les développeurs pouvant ainsi créer un accès interactif spécialisé vers une fonctionnalité de l’application.

Types d’éléments d’interface Les options et éléments IU pris en charge sont les suivants : •

Panneaux (images) -- (nom de classe Panel) conteneur pour associer et organiser d’autres types d’options



Boutons de commande -- (nom de classe Button) bouton contenant une chaîne de texte



Cases d’option -- (nom de classe RadioButton) option à double état, habituellement groupée avec d’autres cases d’options, une seule case étant activée à la fois



Cases à cocher -- (nom de classe Checkbox) option à double état représentant une case cochée (si true) ou une case vide (si false)



Texte modifiable -- (nom de classe EditText) champ de texte modifiable par l’utilisateur



Texte statique -- (nom de classe StaticText) champ de texte non modifiable par l’utilisateur



Barres de défilement -- (nom de classe Scrollbar) barre de défilement standard dotée d’un élément mobile et de boutons permettant de déplacer l’élément par incrément.



Curseurs -- (nom de classe Slider) curseur standard doté d’un indicateur de position mobile

En outre, les noms de classe ci-dessus peuvent être utilisés dans des spécifications de ressources de fenêtre pour définir des options au sein d’une fenêtre ou d’un panneau. Pour plus d’informations, reportez-vous à la section « Création d’une fenêtre à l’aide des spécifications des ressources de fenêtre », page 222. Comment utiliser l’aide

Page précédente

215

Aide d’Adobe After Effects

Comment utiliser l’aide

Création d’éléments pour l’interface utilisateur

Page précédente

216

Interface IU JavaScript Cette section propose une description du modèle de programmation d’interface utilisateur pour script.

Objets IU L’interface utilisateur pour script définit des objets Window contenant des fenêtres natives et divers éléments d’options (Buttons, StaticText, etc.), lesquels englobent des options natives simples. Ces objets partagent des méthodes communes comme « demander le type de l’élément », « déplacer les éléments » et « définir le titre, la légende ou le contenu ». Pour obtenir une liste exhaustive des propriétés et méthodes, reportez-vous à la section « Référence », page 25.

Création d’une fenêtre Pour créer une fenêtre, utilisez la fonction de construction Window. Cette fonction prend comme paramètre le type de fenêtre de votre choix (dialog). Vous pouvez fournir des arguments facultatifs pour spécifier en premier lieu un titre et des limites de fenêtre. Les exemples de code fournis dans la section relative à l’interface JavaScript consistent en de courts segments extraits d’un script complet détaillé plus loin dans ce document. Les exemples présentés s’ajoutent les uns aux autres. L’exemple ci-dessous permet de créer une boîte de dialogue vide avec le nom de variable dlg. Cette boîte de dialogue sera enrichie au cours des exemples suivants : // Create an empt y dialog w indow near upper left of the screen var var dlg = new Window('dialog', 'Aler t Box Builder', [100 1 0 0 4 8 0 2 4 5 ] ) ; d l g . s h ow ( ) ;

Les fenêtres nouvellement créées sont initialement invisibles ; la méthode show() les rend visibles.

Les paramètres numériques de la fonction de construction correspondent approximativement aux coordonnées en haut à gauche et en bas à droite de la fenêtre. Les limites fournies lors de la création de la boîte de dialogue spécifient la taille requise de la zone client, zone correspondant à celle de la boîte de dialogue sur laquelle vous pouvez créer des options. Elle ne comprend ni la barre de titre, ni les bordures de la zone client. La taille et la position de la boîte de dialogue sont automatiquement ajustées pour conserver la taille de la zone client requise. Pour plus d’informations sur la description des limites des fenêtres, reportez-vous à la section « Taille et emplacement des éléments », page 217.

Eléments conteneurs Toutes les fenêtres sont des conteneurs, ce qui signifie qu’elles contiennent d’autres éléments tels des panneaux, des boutons et des cases à cocher.

Comment utiliser l’aide

Page précédente

216

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

217

A l’intérieur d’une fenêtre, vous pouvez créer d’autres types d’éléments conteneurs et leur ajouter des composants d’interface, en procédant de la même manière que pour ajouter des éléments à une fenêtre. Les éléments ajoutés à un conteneur sont considérés comme des enfants de celui-ci, et certaines opérations effectuées sur un conteneur s’appliquent également à ses enfants. Par exemple, appeler la méthode hide() du conteneur rend le conteneur invisible ainsi que tous ses enfants. De la même manière, appeler la méthode show() du conteneur rend le conteneur visible ainsi que tous les enfants qui étaient visibles avant que celui-ci ne soit masqué. Les propriétés et méthodes de conteneurs suivantes s’appliquent également à tous les enfants de ce conteneur : visible, enabled, hide(), show().

Taille et emplacement des éléments Pour définir la taille et l’emplacement des fenêtres et des options, utilisez la propriété bounds. Normalement, lorsque l’on travaille avec des systèmes de fenêtrage, l’emplacement d’une fenêtre est défini à partir du point (ensemble de coordonnées) spécifié dans le système de coordonnées de l’écran comme le coin supérieur gauche de la fenêtre. L’emplacement d’un élément au sein d’une fenêtre ou d’un autre élément conteneur est défini à partir du point spécifié dans le système de coordonnées de la fenêtre comme le coin supérieur gauche d’un élément, par rapport au conteneur dans lequel l’élément est contenu. La taille est déterminée par la largeur et la hauteur en pixels. Par conséquent, une définition complète des limites consiste en 4 valeurs entières qui déterminent la position du coin supérieur gauche de l’objet et ses dimensions. La valeur de la propriété bounds peut prendre plusieurs formes : une chaîne avec un contenu spécial, un objet texte « Bounds » JavaScript ou un tableau à quatre éléments. Les exemples suivants présentent des méthodes équivalentes pour placer une fenêtre de 380 x 390 pixels dans le coin supérieur gauche de l’écran : v ar d l g = n e w Win dow(‘d ia l o g’, ‘Aler t B ox Bu i lder ’, [ 1 0 0 1 0 0 4 8 0 4 9 0 ] ) ; d l g . b o u n d s = [100 100 480 490]; d l g . b o u n d s = {l e ft: 100, top : 100, r i g h t : 4 8 0 , b ot tom : 4 9 0 } ; d l g . b o u n d s = “ l eft: 100, top : 100, r i g h t : 4 8 0 , b ot tom : 4 9 0 ” ;

Notez que les dimensions de la fenêtre définissent la taille de la « zone client » de la fenêtre, laquelle correspond à la zone de la fenêtre pouvant être contrôlée directement par une application. La taille réelle de la fenêtre est habituellement supérieure, en raison du système de fenêtrage de la plate-forme hôte qui peut ajouter des barres de titre et des bordures aux fenêtres. Après sa lecture, la propriété bounds renvoie un objet Bounds sous la forme d’un tableau de quatre valeurs représentant les coordonnées des coins supérieur gauche et inférieur droit de l’élément : [left, top, right, bottom].

Comment utiliser l’aide

Page précédente

217

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

218

Ajout d’éléments Pour ajouter des éléments à une fenêtre ou à un autre conteneur, utilisez la méthode add() du conteneur. Cette méthode accepte le type de l’élément à créer ainsi que certains paramètres facultatifs, en fonction du type d’élément. La valeur renvoyée correspond à l’objet IU créer ou à nul (null) en cas d’erreur. La valeur de la propriété visible de l’élément est définie par défaut sur « true ». L’élément est initialement visible, mais il reste invisible tant que son objet parent est invisible. Un second paramètre (facultatif ) peut être utilisé pour spécifier les limites initiales. Les limites sont relatives à la zone de travail de son conteneur parent. Pour des éléments affichant le texte, celui-ci peut être spécifié comme le troisième paramètre (facultatif ) -d’autres types d’éléments ont des sémantiques différentes pour un troisième argument. Pour plus d’informations sur l’interprétation des paramètres facultatifs de chaque type d’élément, reportez-vous à la section « Référence IU JavaScript », page 233. Ces paramètres facultatifs étant positionnels, vous devez proposer un autre argument pour le second paramètre de manière à fournir une valeur pour le troisième paramètre (text) si vous voulez spécifier du texte pour un élément sans tenir compte de ses limites. Vous pouvez ignorer un paramètre positionnel en spécifiant la valeur « undefined » comme valeur d’argument. Dans l’exemple ci-dessous, un élément Button est crée avec une valeur text initiale, mais sans valeur bounds. d l g . b t n Pn l = d l g . a d d (‘p a n e l ’, [15 3 3 0 3 6 5 3 7 5 ] , ‘ Bu i ld i t’ ) ; d l g . b t n Pn l . testB t n = d l g . b t n Pn l . a d d ( ‘ but ton’, u n defi n e d , ‘ Te s t’ ) ;

La création dynamique d’une propriété telle que btnPnl pour référencer l’objet de contrôle renvoyé par add() n’est pas nécessaire mais peut faciliter un renvoi ultérieur au contrôle. Pour plus d’informations, reportez-vous à la section « Accès aux éléments enfants », page 218.

Propriétés de création Certains types d’élément possèdent des attributs qui peuvent uniquement être spécifiés lors de la création de l’élément. Ceux-ci ne sont pas des propriétés normales de l’élément, du fait qu’ils ne peuvent pas être modifiés au cours de la durée de vie de celui-ci et qu’ils ne sont nécessaires qu’une seule fois. Pour ces types d’élément, un argument facultatif creation properties peut être ajouté à la méthode add() -- cet argument est un objet doté d’une ou plusieurs propriétés qui contrôlent des éléments (l’apparence de l’élément, par exemple) ou des fonctions spéciales (« lecture seule » pour un élément de texte modifiable). Tous les éléments IU disposent d’une propriété de création appelée name, qui peut être utile pour attribuer un nom en vue de l’identification de cet élément. Dans l’exemple suivant, le nouvel élément Button est attribué au nom « ok » : d l g . b t n Pn l . bu i l d B t n = d l g . b t n Pn l . a d d ( ‘ but ton’, [ 1 2 5 , 1 5 , 2 2 5 , 3 5 ] , ‘ Bu i ld ’, {n a me: ’o k’});

Accès aux éléments enfants Une référence à chaque élément ajouté à une fenêtre est jointe à la propriété children de la fenêtre. L’ensemble des enfants constitue un tableau contenant chaque élément défini, indexé de 0 au nombre d’éléments moins 1. Pour les options ou autres éléments n’ayant pas d’enfants, l’ensemble children est vide. Comment utiliser l’aide

Page précédente

218

Aide d’Adobe After Effects

Comment utiliser l’aide

Création d’éléments pour l’interface utilisateur

Page précédente

219

Le nombre d’éléments enfants d’une fenêtre est égal à la valeur de la propriété length de l’ensemble children. Dans l’exemple suivant, la panneau « msgPnl » étant le premier élément créé dans dlg, le texte du titre du panneau peut être défini comme suit : v ar d l g = n e w Win dow(' d i a l o g ' , ' Aler t B ox Bu i lder ' , [ 1 0 0 1 0 0 4 8 0 2 4 5 ] ) ; d l g . ms g Pn l = d l g . a d d (' p a n e l ' , [25, 1 5 , 3 5 5 , 1 3 0 ] ) ; d l g . chil d ren [0]. text = ' Messa ges' ; d lg .show();

Grâce aux propriétés de création, un nom peut être attribué à un élément nouvellement créé. Dans ce cas, il est possible de faire référence à un enfant par son nom. Par exemple, l’élément Button, nommé « ok » dans l’exemple de la section précédente, pourrait maintenant être adressé comme suit : d l g . b t n Pn l . chil d ren [‘o k’]. text = “ Bu i ld ” ;

Un moyen plus simple de faire référence à un élément enfant nommé consiste à utiliser son nom comme propriété de son élément parent. Il est également possible de faire référence à l’élément Button de l’exemple précédent comme suit : d l g . b t n Pn l . o k . text = “ Bu i l d ” ;

La valeur d’une propriété name interne d’un élément est utilisée par l’interface utilisateur pour script lorsqu’un script accède à une propriété de l’objet parent de l’élément qui ne correspond à aucune des propriétés prédéfinies. Dans ce cas, la structure recherche les noms de l’enfant de l’élément parent pour voir si une correspondance existe et si, dans ce cas, une référence est renvoyée à l’objet enfant correspondant.

Type d’éléments IU Cette section introduit les types d’éléments d’interface utilisateur que vous pouvez créer au sein d’un élément Window ou d’un autre type d’élément conteneur. L’élément Panel L’élément Panel est le seul type de conteneur non fenêtré actuellement défini. Les éléments Panel sont habituellement utilisés pour organiser visuellement des options associées. Vous pouvez également utiliser des panneaux comme séparateurs : les panneaux dont la largeur est égale à 0 s’affichent comme lignes verticales et ceux dont la hauteur est égale à 0 s’affichent comme lignes horizontales. Lorsque vous créez un panneau, vous pouvez spécifier une propriété facultative borderStyle (réservée à la création) pour contrôler l’apparence de la bordure du panneau. v ar d l g = n e w Win dow(' d i a l o g ' , ' Aler t B ox Bu i lder ' , [ 1 0 0 1 0 0 4 8 0 2 4 5 ] ) ;

Comment utiliser l’aide

Page précédente

219

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

220

d l g . ms g Pn l = d l g . a d d (' p a n e l ' , [25, 1 5 , 3 5 5 , 1 3 0 ] , ' Me s s a ge s ' ) ; d l g . show();

L’élément Static Text Les éléments StaticText sont habituellement utilisés pour afficher des chaînes de texte qui ne sont pas destinées à une manipulation directe de la part de l’utilisateur (par exemple, messages informatifs ou informations d’identification pour d’autres éléments). Dans l’exemple suivant, un élément Panel est créé et plusieurs éléments StaticText lui sont ajoutés : // sa mp l e co de for se c t ion 2. 6. 2 v ar d l g = n e w Win dow(' d i a l o g ' , ' Aler t B ox Bu i lder ' , [ 1 0 0 1 0 0 4 8 0 2 4 5 ] ) ; d l g . ms g Pn l = d l g . a d d (' p a n e l ' , [25, 1 5 , 3 5 5 , 1 3 0 ] , ' Me s s a ge s ' ) ; d l g . ms g Pn l . t i tl eS t = d l g . ms g Pn l . a dd ( ' s t a t i c tex t ' , [ 1 5 , 1 5 , 1 0 5 , 3 5 ] , ' Al er t b ox t i tl e: ' ); d l g . ms g Pn l . ms g S t = d l g . ms g Pn l . a d d ( ' s t a t i c tex t ' , [ 1 5 , 6 5 , 1 0 5 , 8 5 ] , ' Al er t messa g e: ' ); d l g . show();

L’élément EditText Les éléments EditText sont habituellement utilisés pour permettre aux utilisateurs d’entrer du texte destiné au script lorsque la boîte de dialogue est fermée. Le texte des éléments EditText peut être sélectionné par un utilisateur, puis copié ou collé. La propriété text peut être attribuée pour afficher du texte dans l’élément et peut être lue pour obtenir la valeur de texte actuelle. La propriété textselection peut être attribuée pour remplacer la sélection actuelle par un nouveau texte ou pour insérer du texte à l’emplacement indiqué par le curseur (point d’insertion). Elle peut être lue pour obtenir la sélection actuelle, le cas échéant. A partir du panneau représenté ci-dessus, des éléments EditText ayant des valeurs initiales pouvant être acceptées ou remplacées par l’utilisateur sont maintenant ajoutés dans l’exemple suivant : v ar d l g = n e w Win dow(' d i a l o g ' , ' Aler t B ox Bu i lder ' , [ 1 0 0 1 0 0 4 8 0 2 4 5 ] ) ; d l g . ms g Pn l = d l g . a d d (' p a n e l ' , [25, 1 5 , 3 5 5 , 1 3 0 ] , ' Me s s a ge s ' ) ; d l g . ms g Pn l . t i tl eS t = d l g . ms g Pn l . a dd ( ' s t a t i c tex t ' , [ 1 5 , 1 5 , 1 0 5 , 3 5 ] , ' Al er t b ox t i tl e: ' ); d l g . ms g Pn l . t i tl eEt = d l g . ms g Pn l . a d d ( ' e d i t tex t ' , [ 1 1 5 , 1 5 , 3 1 5 , 3 5 ] , ' S a m p le Aler t ' ) ; d l g . ms g Pn l . ms g S t = d l g . ms g Pn l . a d d ( ' s t a t i c tex t ' , [ 1 5 , 6 5 , 1 0 5 , 8 5 ] , ' Aler t m e s s a g e : ' ) ; d l g . ms g Pn l . ms g Et = d l g . ms g Pn l . a d d ( ' e d i t tex t ' , [ 1 1 5 , 4 5 , 3 1 5 , 1 0 5 ] , ' <messa g e>' , {mu l t i l in e: t r u e}) ; d l g . show();

Comment utiliser l’aide

Page précédente

220

Aide d’Adobe After Effects

Comment utiliser l’aide

Création d’éléments pour l’interface utilisateur

Page précédente

221

Notez la propriété de création sur le second champ EditText, où multiline:true est spécifié. multiline:true indique que le texte dans l’élément doit être renvoyé à la ligne suivante. En d’autres termes, il spécifie un champ dans lequel une longue chaîne de texte peut être saisie et apparaître sur plusieurs lignes. L’élément Button Les éléments Button sont habituellement utilisés pour initier certaines actions à partir d’un élément Window lorsqu’un utilisateur clique avec le pointeur de la souris sur le bouton ; par exemple, le fait d’accepter des paramètres courants d’une boîte de dialogue, d’annuler une boîte de dialogue, d’en appeler une nouvelle, etc. La propriété text fournit un libellé pour identifier une fonction de l’élément Button : v ar d l g = n e w Win dow(' d i a l o g ' , ' Aler t B ox Bu i lder ' , [ 1 0 0 1 0 0 4 8 0 2 4 5 ] ) ; d l g . b t n Pn l = d l g . a d d (' p a n e l ' , [15, 5 0 , 3 6 5 , 9 5 ] , ' Bu i ld i t ' ) ; d l g . b t n Pn l . testB t n = d l g . b t n Pn l . a d d ( ' but ton ' , [ 1 5 , 1 5 , 1 1 5 , 3 5 ] , ' Te s t ' ) ; d l g . b t n Pn l . bu i l d B t n = d l g . b t n Pn l . a d d ( ' but ton ' , [ 1 2 5 , 1 5 , 2 2 5 , 3 5 ] , ' Bu il d ' , {n a me: ' o k ' }); d l g . b t n Pn l . ca n ce l B t n = d l g . b t n Pn l . a d d ( ' but ton ' , [ 2 3 5 , 1 5 , 3 3 5 , 3 5 ] , ' Ca n ce l ' , {n a me: ' ca n ce l ' }); d l g . show();

L’élément Slider Les éléments Slider sont habituellement utilisés pour sélectionner une plage de valeurs, permettant à l’utilisateur de maintenir le pointeur de la souris sur un indicateur positionnel mobile situé sur un curseur et de faire glisser cet indicateur dans la portée du curseur. Si vous cliquez avec le pointeur de la souris sur un point situé sur la barre du curseur, l’indicateur se positionnera à cet emplacement. Un élément Slider possède une propriété value qui reflète la position de l’indicateur mobile, ainsi que des propriétés minvalue et maxvalue définissant les extrémités de la plage de valeurs du curseur. Pour qu’une option de curseur ressemble à celles présentées dans After Effects, réglez la hauteur de l’option jusqu’à ce que la barre du curseur s’affiche comme une ligne unique.

Comment utiliser l’aide

Page précédente

221

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

222

L’élément Scrollbar Les éléments Scrollbar sont similaires aux éléments Slider, en cela qu’ils sont souvent utilisés pour sélectionner une plage de valeurs et qu’ils possèdent un indicateur de position mobile. Ils disposent de toutes les propriétés des curseurs et, en outre, sont équipés de boutons à chaque extrémité de la barre de défilement permettant de déplacer l’indicateur de position par étapes de taille déterminée. Vous pouvez contrôler la taille de chaque « étape » en définissant la propriété stepdelta. Le fait de cliquer devant ou derrière l’indicateur de position déplace ce dernier d’un nombre de valeurs donné jusqu’au point d’insertion du curseur. Vous pouvez contrôler la taille de ce déplacement en définissant la propriété jumpdelta. Vous pouvez créer des barres de défilement à orientation horizontale ou verticale ; si la largeur est supérieure à la hauteur, l’orientation est horizontale, sinon elle est verticale. L’exemple suivant crée un élément Scrollbar avec des éléments StaticText et EditText associés au sein d’un panneau : d l g . si zePn l = d l g . a d d (‘p a n e l ’, [60 2 4 0 3 2 0 3 1 5 ] , ‘ D i m en s i on s’ ) ; d l g . si zePn l . w i d thS t = d l g . si zePn l . a d d ( ‘s t a t i c tex t’, [ 1 5 , 1 5 , 6 5 , 3 5 ] , ‘Wi d th: ’; d l g . si zePn l . w i d thS cr l = d l g . si zePn l. a d d ( ‘s c rol lb a r ’, [75, 15, 195, 35], 300, 300, 800) ; d l g . si zePn l . w i d thEt = d l g . sizePn l . a d d ( ‘e d i t tex t’, [ 2 0 5 , 1 5 , 2 4 5 , 3 5 ] ) ;

Notez que les 3 derniers arguments de la méthode add() qui crée la barre de défilement définissent les valeurs des propriétés value, minvalue et maxvalue. Les éléments Scrollbar sont souvent créés en association avec un champ EditText pour afficher la valeur actuelle de la barre de défilement et permettre le paramétrage de la position de la barre de défilement sur une valeur donnée.

Création d’une fenêtre à l’aide des spécifications des ressources de fenêtre Une spécification de ressources est une chaîne spécialement formatée qui constitue un moyen simple et concis de créer une fenêtre et ses éléments composants. Elle permet de définir et de configurer plusieurs composants window dans un script unique facile à référencer. La chaîne spéciale est transmise en tant que paramètre type à la fonction de construction Window, comme suit : // crea te a n e w d ia l o g from a reso urce s p e c i fi c a t i on v ar a l er tBu i l derReso u rce = “d i a l o g { text: ‘Al er t B ox Bu il der ’, b ou n d s : [ 1 0 0 1 0 0 4 8 0 4 9 0 ] , \ ms g Pn l : Pa n e l { text: ‘Me s s a ge s’, b ou n d s : [ 2 5 , 1 5 , 3 5 5 , 1 3 0 ] , \ t i tl eS t: S ta t i cText { tex t : ’ Aler t b ox t i t le : ’, \ b o u n d s: [15, 15, 1 0 5 , 3 5 ] } , \ t i tl eEt: E d itText { text: ’S a mple Aler t’, b ou n d s : [ 1 1 5 , 1 5 , 3 1 5 , 3 5 ] } , \ ms g S t: S ta t icText { text: ’Al er t m e s s a g e : ’, \ b o u n d s: [15, 65, 105, 85] }, \ ms g Et: E d i tText { text: ’ ’, \ b o u n d s: [115, 45, 315 , 1 0 5 ] , prop er t i e s : { mu lt i li n e : t r u e } } \ }, \ ha sB t n sC b: Che ck b ox { text: ’Ha s aler t but ton s ? ’, a li g n m en t : ’ cen ter ’, \ b o u n d s: [12 5 1 4 5 2 5 5 1 6 5 ] } , \ aler tB t n sPn l : Pa n e l { text: ‘Button a li g n m en t’, b ou n d s : [ 4 5 1 8 0 3 3 5 2 2 5 ] , \ a l ig n LeftR b: R a d i o Button { tex t : ’ Lef t’, b ou n d s : [ 1 5 , 1 5 , 9 5 , 3 5 ] } , \ a l ig n Cen terR b: R a d i o Button { tex t : ’ Cen ter ’, \ b o u n d s: [105, 15, 185, 35] } , \

Comment utiliser l’aide

Page précédente

222

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

223

a l ig n Ri g htR b: R a d i o Button { tex t : ’ R i g h t’, b ou n d s : [ 1 9 5 , 1 5 , 2 7 5 , 3 5 ] } \ }, \ si zePn l : Pa n e l { text: ‘D i men sion s’, b ou n d s : [ 6 0 2 4 0 3 2 0 3 1 5 ] , \ w i d thS t: S ta t i cText { text: ’Widt h : ’, b ou n d s : [ 1 5 , 1 5 , 6 5 , 3 5 ] } , \ w i d thS cr l : S cro l l ba r { mi nv a lu e : 3 0 0 , m a x v a lu e : 8 0 0 , \ b o u n d s: [75 , 1 5 , 1 9 5 , 3 5 ] } , \ w id thEt: E d i tText { b o u n d s: [2 0 5 , 1 5 , 2 4 5 , 3 5 ] } , \ hei g htS t: S ta t icText { text: ’Hei g h t : ’, b ou n d s : [ 1 5 , 4 5 , 6 5 , 6 5 ] } , \ hei g htS cr l : S cro l l ba r { mi nv a lu e : 2 0 0 , m a x v a lu e : 6 0 0 , \ b o u n d s: [75 , 4 5 , 1 9 5 , 6 5 ] } , \ heig htEt: E d itText { b o u n d s: [2 0 5 , 4 5 , 2 4 5 , 6 5 ] } \ }, \ b t n Pn l : Pa n e l { text: ‘Bu i l d it’, b o u n d s : [ 1 5 3 3 0 3 6 5 3 7 5 ] , \ testB t n : Button { text: ’Test’, b ou n d s : [ 1 5 , 1 5 , 1 1 5 , 3 5 ] } , \ bu i l d B t n : Button { text: ’Bu il d ’, b ou n d s : [ 1 2 5 , 1 5 , 2 2 5 , 3 5 ] , \ prop er t ies: { n a m e : ’ ok’ } } , \ ca n ce l B t n : Button { text: ’Ca n ce l’, b ou n d s : [ 2 3 5 , 1 5 , 3 3 5 , 3 5 ] , \ prop er t ies: { n a m e : ’ c a n ce l’ } } \ } \ } ”; d l g = n e w Win dow (a l er tBu i l derRe s ou rce ) ;

La structure générale d’une spécification de ressource de fenêtre est une spécification de type Window (par exemple, « boîte de dialogue »), suivie d’un ensemble d’accolades comprenant une ou plusieurs définitions de propriété. Les options sont définies comme des propriétés au sein de fenêtres et autres conteneurs en spécifiant le nom de classe de l’option dans une définition de propriété, avec des propriétés de l’option comprises entre accolades {}, par exemple : testBtn: Button { text: ‘Test’ }. Les propriétés de création sont spécifiées dans une propriété properties comme propriétés nommées d’un objet texte (voir l’exemple ci-dessus). La syntaxe de chaînes de spécification de ressource de fenêtre est entièrement décrite ci-dessous. Syntaxe de spécification de ressource de fenêtre La syntaxe de spécification de ressource de fenêtre est décrite dans le BNF (formulaire Backus-Naur) suivant : re s o u rce S p e c w i n d owTy p e Na m e in lin eO bj ect proper tiesList proper t y Defn proper t yName proper t y Value

= = = = = = =

st r ing number inlineAr r ay objectDefn namedObject

= = = = =

‘ ” ’ w i n d ow Ty p e Na m e i n l i n e O b j e c t ‘ ” ’ [a modal dialog] “ {“ p ro p er ti e s L i s t “ } ” proper t y De fn { “,” proper t yDefn } proper t y Name “:” proper t yValue [a JavaScr ipt proper t y name] “null” | “t r u e” | “false” | st r ing | number | i n l i n e Ar r ay | o b j e c t D e f n [a JavaScr ipt st r ing liter al] [any JavaScr ipt integer or real number liter al] “[“ proper t y Va lue { “,” proper t yVa lue } “]” ( namedObject | inlineObject ) [ a ny o b j e c t c l a s s n a m e ] i n l i n e O b j e c t

Remarque : pour créer un élément IU, le nom de classe de la définition namedObject cidessus peut être tout nom de classe d’élément référencé dans la section « Types d’éléments d’interface », page 215. Par exemple : “d i a l o g { \ tex t : ‘ From Re s o u rce’, b o u n d s : [ 1 0 , 1 0 , 2 1 0 , 1 1 0 ] , \

Comment utiliser l’aide

Page précédente

223

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

224

b ox : Pa n e l { \ bounds: [10, 10, 190, 90], \ o k : But to n { \ tex t : ‘O K ’, b o u n d s : [ 4 0 , 3 0 , 1 4 0 , 5 0 ] , \ } \ } \ }” ;

Interaction avec des options : événements et rappels d’événements Lorsqu’un script crée une fenêtre, il ajoute habituellement des éléments de contrôle à la fenêtre qu’un utilisateur peut manipuler, par exemple en cliquant sur un bouton, en entrant du texte dans une zone de texte, en déplacement la barre de défilement, etc. Ces actions ou manipulations de la part de l’utilisateur génèrent des événements dans le système d’interface utilisateur. Le script qui crée une fenêtre doit disposer d’un moyen permettant de lui notifier des événements provenant de cette fenêtre ou de ses options. L’interface utilisateur pour script fournit un certain nombre de méthodes de rappel d’événement pouvant être définies par le script comme des propriétés nécessaires à son interaction, pour tout élément IU. Chaque classe d’élément IU possède un ensemble de méthodes de rappel qui lui est propre. Pour les fenêtres, les rappels sont onClose(), onMove(), and onResize(). Pour les options, les rappels varient en fonction du type. Un rappel classique est onClick() pour les boutons, cases d’option et cases à cocher, et onChange() pour les champs de texte modifiable, barres de défilement et curseurs. Pour traiter un événement donné pour un élément IU, définissez simplement une propriété du même nom que le rappel d’événement dans l’élément, puis attribuez une fonction JavaScript que vous lui avez définie. L’exemple ci-dessous utilise des fonctions « texte » qui emploient une syntaxe unique sans requérir de nom. Cependant, vous pouvez également définir la fonction n’importe où dans le script. Dans ce cas, attribuez simplement le nom de la fonction à la propriété de gestion de l’événement. L’interface utilisateur pour script appelle ces fonctions, si définies, sur des notifications d’événements. Exemples : /* ‘ ha s button s’ che ck b ox en a bl es or d i s a ble s t h e p a n e l t h a t de ter mi n es the ju st ifi ca t ion of t h e ‘a ler t’ but ton g rou p * / d l g . ha sB t n sC b. on Cl ick = fu n c t i on () { thi s. p a ren t. a l er t B t n s Pn l. en a ble d = t h i s . v a lu e ; } ; // T he Bu i l d a n d Ca n ce l button s cl os e t h i s d i a lo g w i th (d l g . b t n Pn l ) { bu i l d B t n . on Cl i ck = fu n c t i on () { thi s. p a ren t. p a ren t . clos e ( 1 ) ; } ; ca n ce l B t n . on Cl i ck = fu n c t i on () { thi s. p a ren t. p a ren t . clos e ( 2 ) ; } ; };

Les fonctions de rappel d’événement fonctionnant comme des méthodes de l’objet pour lequel elles sont définies, ces fonctions ont accès à l’objet par le biais du mot clé JavaScript « this ». Dans les exemples ci-dessus, « this » se rapportant à l’objet IU pour lequel un rappel donné est défini, les propriétés de l’objet IU sont alors accessibles par « this ». Par exemple, chaque objet IU ayant une propriété parent servant de référence pour son objet conteneur, this.parent devient une référence pour l’objet parent de l’objet.

Comment utiliser l’aide

Page précédente

224

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

225

Pour approfondir ce point, un élément button( ) est contenu dans un panneau, lequel est contenu dans une fenêtre, tout cet ensemble étant finalement clos. La progression va du plus petit au plus grand déplacement IU, de gauche à droite. buildBtn.onClick = function () {this.parent.parent.close(1);};

bouton panneau boîte de dialogue

Notez que vous pouvez simuler des actions utilisateurs en envoyant une notification d’événement directement à un élément IU, par le biais de la méthode notify() de l’élément. De cette manière, un script peut générer des événements dans les options d’une fenêtre, comme si un utilisateur cliquait sur des boutons, entrait du texte, déplaçait une fenêtre, etc. Des éléments radiobutton et checkbox ont une propriété value booléenne ; l’utilisation de notify() pour simuler un clic sur ces éléments modifie également la valeur de cette propriété, comme si l’on cliquait sur cet élément. Si, par exemple, la valeur d’un élément checkbox « hasBtnsCb » dans notre exemple ci-dessus est true, l’exemple suivant modifie la valeur par false : if (d l g . ha sB t n sC b. v a lu e == t r u e) d l g . ha sB t n sC b. n o t i fy (); // d l g . ha sB t n sC b. v a lu e is n ow fa l se

Pour obtenir une description complète des différentes méthodes de rappel d’événement et de notify(), reportez-vous à la section « Méthodes communes et gestionnaires d’événements », page 238.

Boîtes de dialogue modales Une boîte de dialogue modale est initialement invisible. En appelant la méthode show(), la boîte de dialogue s’affiche et commence son exécution. L’appel de show() n’est pas renvoyé tant que la boîte de dialogue n’est pas fermée, habituellement par un clic de l’utilisateur sur le bouton OK ou Annuler. L’appel des méthodes hide() ou close() au cours de l’exécution d’une boîte de dialogue modale ferme cette dernière. La méthode close() accepte un argument facultatif que l’appel de show() renvoie. Attention : vous ne pouvez pas utiliser le débogage JavaScript pour déboguer des fonctions de rappel d’événement pour des boîtes de dialogue modales car, une fois l’exécution de la boîte de dialogue commencée, il capture tous les événements de souris. La définition d’un point de rupture dans une fonction de rappel d’événement pour une boîte de dialogue modale entraîne un blocage apparent de l’application si le point de rupture est atteint. Pour contourner cette restriction, une technique de débogage efficace consiste à créer une boîte de dialogue sans appeler la méthode show() pour la rendre visible. Il convient ensuite d’utiliser le débogage pour appeler la méthode notify() sur des options appartenant aux fonctions de rappel d’événement à déboguer. Il est d’usage de conserver

Comment utiliser l’aide

Page précédente

225

Aide d’Adobe After Effects

Comment utiliser l’aide

Création d’éléments pour l’interface utilisateur

Page précédente

226

du code dans des fonctions de rappel d’événements simples, tout en reportant l’exécution logique du script primaire jusqu’à ce que la boîte de dialogue soit fermée. Eléments Default et Cancel Les boîtes de dialogue modales peuvent habituellement être fermées au moyen de certains raccourcis clavier. En plus de cliquer sur les boutons « OK » ou « Annuler », le fait d’appuyer sur la touche « Entrée » ou « Echap. » équivaut normalement à cliquer sur le bouton « OK » (ou par défaut) ou « Annuler ». Dans chaque cas, le raccourci clavier est le même que si votre script avait appelé la méthode notify() pour l’élément Button associé. Le concepteur des boîtes de dialogue bénéficie d’une gestion explicite des éléments Button qui sont notifiés par ces raccourcis clavier ; une boîte de dialogue nouvellement créée possède des propriétés defaultElement et cancelElement initialement indéfinies. Ce concepteur peut définir ces propriétés pour les objets représentant les boutons qui devraient être notifiés lorsque le raccourci clavier respectif est actionné. L’interface utilisateur pour script fournit des paramètres par défaut raisonnables si les propriétés defaultElement et cancelElement sont encore indéterminées lorsque le premier affichage de la boîte de dialogue est imminent. Des valeurs par défaut pour la propriété defaultElement sont déterminées par l’algorithme suivant : •

L’interface utilisateur pour script recherche les boutons de la boîte de dialogue pour un bouton dont la propriété name possède la valeur de chaîne « ok » (le cas importe peu). Si un objet est trouvé, defaultElement est défini sur ce dernier.



Dans le cas contraire, l’interface utilisateur pour script recherche les boutons de la boîte de dialogue pour un bouton dont la propriété text possède la valeur de chaîne « ok » (le cas importe peu). Si un objet est trouvé, defaultElement est défini sur ce dernier.

Des valeurs par défaut pour la propriété cancelElement sont déterminées par l’algorithme suivant : •

L’interface utilisateur pour script recherche les boutons de la boîte de dialogue pour un bouton dont la propriété name prend la valeur de chaîne « cancel » (quel que soit le cas). Si un objet est trouvé, cancelElement est défini sur celui-ci.



Dans le cas contraire, l’interface utilisateur pour script recherche les boutons de la boîte de dialogue pour un bouton dont la propriété text prend la valeur de chaîne « cancel » (quel que soit le cas). Si un objet est trouvé, cancelElement est défini sur celui-ci.

Ces algorithmes traitent la plupart des boîtes de dialogue sans que le concepteur n’ait à définir explicitement ces propriétés. Lorsque vous ajoutez des boutons à une boîte de dialogue pour fermer cette même boîte, utilisez creation properties pour définir la propriété name de ces boutons sur « ok » ou « cancel », selon la sémantique voulue ; cette précaution permet à l’algorithme ci-dessus de fonctionner correctement même si le texte de tels boutons est localisé. Si l’interface utilisateur pour script ne peut trouver un bouton correspondant pour chaque cas, la propriété respective est définie sur null, ce qui signifie que des raccourcis clavier pour la valeur par défaut ou pour annuler ne notifieront aucun élément.

Comment utiliser l’aide

Page précédente

226

Aide d’Adobe After Effects

Comment utiliser l’aide

Création d’éléments pour l’interface utilisateur

Page précédente

227

Règles de création et d’utilisation des boîtes de dialogue modales Lors de la création d’une boîte de dialogue par votre script, vous créez habituellement des options avec lesquelles l’utilisateur doit interagir de manière à entrer des valeurs qui seront utilisées par le script. En général, vous pouvez limiter le nombre de fonctions de rappel d’événement associées à diverses options dans vos boîtes de dialogue, à moins que l’interaction avec ces options ne modifie l’opération de la boîte de dialogue proprement dite. Dans la plupart des cas où il suffit simplement de vouloir lire les états des diverses options une fois la boîte de dialogue fermée, vous n’avez pas besoin de traiter des événements pour eux. Par exemple, vous n’avez pas souvent besoin des fonctions onClick() pour chaque élément checkbox et radiobutton dans votre boîte de dialogue : une fois celle-ci fermée, leurs états sont lus à l’aide des propriétés value. Il existe quelques exceptions à cette règle : •

Les fonctions onChange() sont nécessaires pour les éléments edittext, si des utilisateurs entrent des valeurs devant être validées (une valeur numérique dans une plage, par exemple). Le rappel d’événement doit réaliser tout validation nécessaire et interagir avec l’utilisateur en cas d’erreur.



La définition de onClick() pour les boutons OK et Annuler qui permet de fermer la boîte de dialogue avec une valeur donnée.

Remarque : utilisez cette fonction uniquement si vous n’avez pas défini les propriétés defaultElement et/ou cancelElement ou nommé ces boutons de manière à ce qu’ils soient automatiquement identifiés comme les boutons OK et Annuler. Invites et alertes Certains environnements JavaScript proposent des fonctions à l’objet de fenêtre global pour afficher des messages ou des alertes, ainsi qu’une invite présentant deux lignes de texte, permettant ainsi à l’utilisateur d’entrer une ligne de texte. L’interface utilisateur pour script définit des fonctions alert(), confirm() et prompt() pour la classe Window qui fournit cette fonctionnalité standard. L’application hôte contrôle l’apparence de ces boîtes de dialogue simples, de sorte qu’elles soient consistantes avec d’autres alertes et messages affichés par l’application. Pour plus d’informations, reportezvous à la section « Référence IU JavaScript », page 233.

Exemple IU JavaScript Après avoir étudié les composants de script individuels dont est constituée l’interface utilisateur, nous allons maintenant les examiner assemblés en code JavaScript réel pour former une interface utilisateur fonctionnelle complète. L’exemple de code IU JavaScript décrit ci-dessous comprend les fonctions permettant de créer une fenêtre de constructeur d’interface utilisateur simple comportant divers panneaux, cases à cocher, boutons et options. Lors de l’exécution du générateur, le message d’alerte est créé. •

createBuilderDialog() -- Crée une boîte de dialogue vide près du coin supérieur gauche de l’écran et ajoute un panneau de titre, une case à cocher, un panneau d’options et un panneau avec des boutons pour tester les paramètres et créer la spécification du message d’alerte.

Comment utiliser l’aide

Page précédente

227

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

228



initializeBuilder() -- Définit des états d’option initiaux et lie des fonctions de rappel d’événement à des options.



runBuilder() -- Exécute la boîte de dialogue du générateur, puis renvoie l’interface utilisateur du message d’alerte résultante.



createResource() -- Crée et renvoie une chaîne contenant une spécification de ressource de boîte de dialogue qui crée l’interface utilisateur du message d’alerte à partir des paramètres entrés.



stringProperty() -- Renvoie une chaîne formatée.



arrayProperty() -- Renvoie un tableau formaté.



createTestDialog() -- Crée une boîte de dialogue de test.

Ces fonctions sont assemblées dans un script principal, représenté par la boîte de dialogue de message d’alerte finale.

createBuilderDialog La plupart des difficultés relatives aux composants visuels de l’exemple de code IU JavaScript se présentent avec la fonction createBuilderDialog(), où les principaux composants de la boîte de dialogue sont configurés, comme affichés ci-dessous. fon c t i on crea teBui lder D i a lo g() { / /Crea te a n emp t y di a lo g w i ndow nea r the u pp er left of the scre en v ar d lg = new Wi ndow(' di a lo g' , ' Aler t B ox Bu ilder', [ 100 100 480 490] ) ;

1

/ /Add a pa ne l to h old t i tle a nd ' messa ge text' st r ing s d l g .ms gPnl = d lg .a dd(' pa ne l' , [2 5 ,1 5 ,3 55,130] , 'Messages') ; d l g .ms gPnl.t i tleS t = d lg .ms gPnl.a dd(' s t at ic text', [ 15,15,105,35] , 'Aler t b ox t itle:') ; d l g .ms gPnl.t i tleEt = d lg .ms gPnl.a dd(' e dittext', [ 115,15,315,35] , 'S am ple Aler t') ; d l g .ms gPnl.ms gS t = d lg .ms gPnl.a dd(' s tat ic text', [ 15,65,105,85] , 'Aler t m essage:') ; d l g .ms gPnl.ms gEt = d lg .ms gPnl.a dd(' e dittext', [ 115,45,315,105] , '', { mult i li ne:t r ue}); / /Add a ch e ckb ox to cont rol th e pres ence of buttons to dism iss the aler t b ox d l g .h a sBt ns Cb = d lg .a dd(' ch e ckb ox ' , [125 145 255 165] , 'Has aler t buttons?') ;

2

/ /Add pa ne l to de ter mi ne a li g nment of buttons on the aler t b ox d l g .a ler tBt ns Pnl = d lg .a dd(' pa ne l' , [45 180 335 225] , 'Button alig nm ent') ; d l g .a ler tBt ns Pnl.a li g nLeftRb = d lg .a ler tB t nsPnl.a dd( 'r a diobutton', [ 15,15,95,35] , 'Left') ; d l g .a ler tBt ns Pnl.a li g nCenter Rb = d lg .a ler tB t nsPnl.a dd( 'r a diobutton', [ 105,15,185,35] , 'Center') ; d l g .a ler tBt ns Pnl.a li g nRi g h tRb = d lg .a ler tB t nsPnl.a dd( 'r a diobutton', [ 195,15,275,35] , 'Rig ht') ; / /Add a pa ne l w i th cont rols for th e di mensions of the aler t b ox d l g .s i zePnl = d lg .a dd(' pa ne l' , [60 240 320 315] , 'D im ensions') ; d l g .s i zePnl.w i dth S t = d lg .si zePnl.a dd(' stat ic text', [ 15,15,65,35] , 'Width:') ; d l g .s i zePnl.w i dth S cr l = d lg .si zePnl.a dd('sc ro l lbar', [ 75,15,195,35] , 300, 300, 800) ; d l g .s i zePnl.w i dth Et = d lg .s i zePnl.a dd(' e dittext', [ 205,15,245,35] ) ; d l g .s i zePnl.h ei g h tS t = d lg .si zePnl.a dd(' stat ic text', [ 15,45,65,65] , 'Heig ht:') ; d l g .s i zePnl.h ei g h tS cr l = d lg .s i zePnl.a dd( 'sc rol lbar', [ 75,45,195,65] , 200, 200, 600) ; d l g .s i zePnl.h ei g h tEt = d lg .s i zePnl.a dd('e dittext', [ 205,45,245,65] ) ; / /Add a pa ne l w i th buttons to test pa r a m e ters and c reate the aler t b ox sp e c ific at ion d l g .b t nPnl = d lg .a dd(' pa ne l' , [15 3 3 0 365 375] , 'Bu ild it') ; d l g .b t nPnl.tes tBt n = d lg .b t nPnl.a dd(' button', [ 15,15,115,35] , 'Test') ; d l g .b t nPnl.bui ldBt n = d lg .b t nPnl.a dd(' button', [ 125,15,225,35] , 'Bu ild', { nam e:'ok'} ) ; d l g .b t nPnl.ca nce lBt n = d lg .b t nPnl.a dd('button', [ 235,15,335,35] , 'Cance l', { nam e:'c ance l'} ) ;

3 4

re tur n d lg; / / c re ate Bui lder D i a lo g

Comment utiliser l’aide

Page précédente

228

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

229

Cet extrait de code, une fois décomposé en plus petits segments et exécuté dans le contexte d’un exemple de code IU entier, produit la succession de boîtes de dialogue cidessous, combinées dans une seule fenêtre finale de message d’alerte.

1 2

3

4

Boîte de dialogue finale créée

Pour que la boîte de dialogue s’affiche tout en prenant en charge du code pour l’initialisation et l’exécution, il convient d’inclure le générateur des messages d’alerte, comme illustré ci-dessous. function i ni t i a li zeBui lder (bui lder ) { //S e t up i ni t i a l cont rol sta tes w i th (bui lder ) { h a s Bt ns Cb.v a lue = t r ue; a ler tBt ns Pnl.a li g nCenter Rb.v alu e = t r u e; w i th (si zePnl) { w i dth Et.tex t = w i dth S cr l.v alu e;

Comment utiliser l’aide

Page précédente

229

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

230

h ei g h tEt.tex t = h ei g h tSc r l.v alu e; } } //Atta ch e vent ca l lb a ck func t i ons to cont ro ls /*' h a s buttons ' ch e ckb ox ena bles or disables the pane l that de ter mi nes th e just i fica t i on of the 'aler t' button g rou p */ bui lder.h a s Bt ns Cb.onCli ck = func t i on () { th i s .pa rent.a ler tB t nsPnl.enable d = this.v alu e; } ; /*T h e e di ttex t fie lds a nd s crol lb a rs in sizePnl are conne c te d */ w i th (bui lder.si zePnl) { w i dth Et.onCh a nge = func t i on () { th i s .pa rent.w idthSc r l.v alu e = this.text; } ; w i dth S cr l.onCh a nge = func t i on () { th i s .pa rent.w idthEt.text = this.v alu e; } ; h ei g h tEt.onCh a nge = func t i on () { th i s .pa rent.heig htSc r l.v alu e = this.text; } ; h ei g h tS cr l.onCh a nge = func t i on () { th i s .pa rent.heig htEt.text = this.v alu e; } ; } w i th (bui lder.b t nPnl) { //T h e Tes t button crea tes a t r ial Aler t b ox from the c u r rent sp e c ific at ions testBt n.onCli ck = func t i on () { Wi ndow.a ler t(' Ty p e Enter or Esc to dism iss the test Aler t b ox') ; crea teTes tD i a lo g(createResou rce( this.parent.parent) ) ; }; //T h e Bui ld a nd Ca nce l buttons clo se this dialo g bui ldBt n.onCli ck = func t i on () { th i s.pa ren t.parent.close( 1) ; } ; ca nce lBt n.onCli ck = func t i on () { th i s.pa ren t.parent.close( 2) ; } ; }; } / / i ni t i a li zeBui lder f u nc t i on r unBui lder (bui lder ) { //Run th e bui lder di a lo g , re tur n i ts resu lt re tur n bui lder.s h ow(); } / *T h i s func t i on crea tes a nd re tur ns a s t r ing containing a dialog re s ource sp e ci fica t i on th a t w i l l crea te an Aler t dialo g u sing t h e pa r a me ters th e us er entere d. */ f u nc t i on crea teResource(bui lder ) { //D efine th e i ni t i a l pa r t of the reso u rce sp e c w ith dialo g par am e ters v a r d lgWi dth = Numb er (bui lder.sizePnl.w idthEt.text) ; v a r d lgHei g h t = Numb er (bui lder.sizePnl.heig htEt.text) ; v a r res = " di a lo g { " + st r i ngProp er t y (" tex t" , bui lder.m s gPnl.t itleEt.text) + a r r ay Prop er t y (" b ounds" , 0, 0, d lgWidth, d lgHeig ht) + " \n" ; //D efine th e a ler t mes s a ge sta t i c text e lem ent, s i z i n g i t to the aler t b ox v a r ma r g i n = 1 5 ; v a r l, t; v a r ms gWi dth , ms gHei g h t; v a r h a s Buttons = bui lder.h a sBt ns C b.v alu e; v a r b t nsHei g h tUs e d = h a s Buttons ? 20 + m arg in : 0 ; ms gHei g h t = 60; ms gWi dth = d lgWi dth - (ma r g i n * 2) ; l = ma r g i n; t = (d lgHei g h t - ms gHei g h t - b t nsHeig htUse d) / 2; re s + = " m s g: S t a t i cTex t { " + st r i ngProp er t y (" tex t" , bui lder.m s gPnl.m s gEt.text) + a r r ay Prop er t y (" b ounds" , l, t , l + m s gWidth, t + m s gHeig ht) + " jus t i fy :' center ' , prop er t i es :{mu lt iline:t r u e} } "; //D efine buttons i f desi re d i f (h a s Buttons) { v a r b t nWi dth = 9 0 ; //Ali g n buttons a s s p e ci fie d

Comment utiliser l’aide

Page précédente

230

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

231

w i th (bui lder.a ler tBt ns Pnl) { i f (a li g nLeftRb.v a lue) l = ma r g i n; e ls e i f (a li g nCenter Rb.v alu e) l = (d lgWi dth - (b t nWidth * 2 + 10) ) / 2; e lse l = d lgWi dth - ((b t nWidth * 2 + 10) + m arg in) ; } t = d lgHei g h t - b t ns Hei g h tUse d; res + = " ,\n" + " o k B t n: Button { " + s t r i ngProp er t y (" tex t" , "O K") + a r r ay Prop er t y (" b ounds", l, t, l + b t nWidth, t + 20) + " },\n" ; l + = b t nWi dth + 1 0 ; re s + = " c a n ce lBt n: Button { " + s t r i ngProp er t y (" tex t" , "Cance l") + a r r ay Prop er t y (" b ounds", l, t, l + b t nWidth, t + 20) + " }" ; } // Al l done! res + = " \n}" ; re tur n res ; } f u nc t i on s t r i ngProp er t y (pna me, pv a l) { re tur n pna me + " :' " + pva l + " ' , " ; } f u nc t i on a r r ay Prop er t y (pna me, l, t, r, b) { re tur n pna me + " :[" + l + " ," + t + "," + r + "," + b + "] , " ; } f u nc t i on crea teTestD i a lo g(resource) { v a r ta r ge t = new Wi ndow (resource) ; re tur n ta r ge t.s h ow(); } / / ------------- Ma i n scr i p t -------------// v ar bui lder = crea teBui lder D i a lo g(); i n i t i a li zeBui lder (bui lder ); i f (r unBui lder (bui lder ) = = 1 ) { //Crea te th e Aler t di a lo g res ource sp e c ific at ion st r ing v a r res S p e c = crea teResource(bui lder) ; //Wr i te th e resource sp e ci fica t i on st r ing to a file, u s i n g t h e s t a n d a rd file op en dialo g v a r fna me = F i le.op enD i a lo g(' S ave resou rce sp e c ific at ion') ; v a r f = F i le(fna me); i f (f.op en(' w' )) { v a r ok = f.w r i te(res S p e c); i f (ok) ok = f.close(); i f (! ok) Wi ndow.a ler t(" Er ror creat ing " + fnam e + ": " + f . er ror) ; } }

Résumé de l’exemple de code Cet exemple de code est utilisé pour démontrer certaines applications pratiques de l’interface de script. Voici quelques-unes des intentions principales du script. •

Fournir un exemple simple et bien réel de réalisation d’une interface utilisateur aux composants et options multiples.



Présenter l’interaction de certaines options, tels les curseurs et les zones de texte modifiables.



Présenter le fonctionnement des cases d’option et comment les définir sur true et les initialiser.

Comment utiliser l’aide

Page précédente

231

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

232



Afficher une zone d’édition de texte multiligne, comme présentée dans le panneau de message de la boîte de dialogue.



Illustrer comment des zones de texte statiques peuvent être associées à des zones de texte modifiables et du texte statique à d’autres types d’options.



Présenter le fonctionnement de simples fonctions de rappel d’événement et comment associer des fonctions de gestion d’événement à des options pouvant générer des événements.



Décrire comment activer ou désactiver des jeux d’options. Si, par exemple, vous désactivez la case d’alerte, tout élément dans le champ d’alignement du bouton devient grisé.



Illustrer comment fermer une boîte de dialogue modale avec un bouton OK et Annuler.



Démontrer que vous pouvez encore lire des valeurs de propriété de la boîte de dialogue et de ses options, une fois celle-ci fermée.

Exemple de code de spécification de ressource Pour exécuter ce code IU JavaScript à l’aide d’une spécification de ressource, modifiez les lignes indiquées ci-dessous, puis intégrez l’exemple de code de spécification de ressource. Pour plus d’informations sur des spécifications de ressource, reportez-vous à la section « Création d’une fenêtre à l’aide des spécifications des ressources de fenêtre », page 222. Remarque : ceci est un exemple complet d’une chaîne de spécification de ressource. Le code alertBuilderResource() affiché ci-dessous est un moyen de créer la même boîte de dialogue principale créée par la fonction createBuilderDialog().

Comment utiliser l’aide

Page précédente

232

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

233

/ / ------------- Alter na te di a lo g crea t i on u sing resou rce sp e c ific at ion -------------// /* To us e th i s co de, repla ce th e li ne a b ove that says v a r bui lder = crea teBui lder D i a lo g ( ) ; w i th v a r bui lder = crea teBui lder D i a lo g From Reso u rce( ) ; */ v ar a ler tBui lder Resource = " di a lo g { tex t: ' Aler t B ox Bui lder ' , b ou nds:[ 100 100 480 490] , \ ms gPnl: Pa ne l { tex t: ' Mes s ages', b o u nds:[ 25,15,355,130] , \ t i tleS t:S ta t i cTex t { text:'Aler t b ox t itle:', b ou nds:[ 15,15,105,35] } , \ t i tleEt:Edi tTex t { tex t :'S am ple Aler t', b o u nds:[ 115,15,315,35] } , \ ms gS t: S ta t i cTex t { text:'Aler t m essage:', b o u nds:[ 15,65,105,85] } , \ ms gEt: E di tTex t { text:'', b o u nds:[ 115,45,315,105] , prop er t i es:{mult i l ine:t r u e} } \ }, \ h a s Bt ns Cb : Ch e ckb ox { tex t: 'Has aler t buttons?', alig nm ent:'center', b ounds :[125 1 4 5 255 1 65] } , \ a ler tBt ns Pnl: Pa ne l { tex t:' Button alig nm ent', b ou nds:[ 45 180 335 225] , \ a li g nLeftRb :R a di oButton { text:'Left', b ou nds:[ 15,15,95,35] } , \ a li g nCenter Rb :R a di oButton { text:'Center', b ou nds:[ 105,15,185,35] } , \ a li g nRi g h tRb :R a di oBut ton { text:'Rig ht', b ou nds:[ 195,15,275,35] } \ }, \ si zePnl: Pa ne l { tex t: ' D i mensions', b ou nds:[ 60 240 320 315] , \ w i dth S t:S ta t i cTex t { text:'Width:', b ou nds:[ 15,15,65,35] } , \ w i dth S cr l:S crol lb a r { minv alu e:300, m axv alu e:800, b o u nds:[ 75,15,195,35] } , \ w i dth Et:Edi tTex t { b ounds:[ 205,15,245,35] } , \ h ei g h tS t:S ta t i cTex t { text:'Heig ht:', b o u nds:[ 15,45,65,65] } , \ h ei g h tS cr l:S crol lb a r { minv alu e:200, m axv alu e:600, b o u nds:[ 75,45,195,65] } , \ h ei g h tEt:Edi tTex t { b ou nds:[ 205,45,245,65] } \ }, \ b t nPnl: Pa ne l { tex t: ' Bui ld it', b o u nds:[ 15 330 365 375] , \ testBt n: Button { tex t:' Test', b o u nds:[ 15,15,115,35] } , \ bui ldBt n:Button { tex t:' Bui ld', b o u nds:[ 125,15,225,35] , prop er t ies:{ nam e:'o k'} } , \ ca nce lBt n:Button { tex t:' Ca nce l', b o u nds:[ 235,15,335,35] , prop er t ies:{ nam e:'c ance l'} } \ } \ }" ; f u nc t i on crea teBui lder D i a lo gFromRes ou rce( ) { //Crea te from resource re tur n new Wi ndow(a ler tBui lder Resou rce) ; } / / crea teBui lder D i a lo gFromResource

Référence IU JavaScript L’interface utilisateur JavaScript définit les éléments globaux des propriétés et de l’objet Window ainsi que des méthodes de toutes les classes IU.

Eléments globaux de l’objet Window Les fonctions ci-dessous sont des méthodes de classe globale Window uniquement ; ces fonctions ne sont pas définies pour les fenêtres créées avec new Window(). Pour appeler des méthodes de classe, utilisez la syntaxe d’exemple suivante : Window.alert("Class method!");

alert (text)

Affiche la chaîne spécifiée dans un message d’alerte utilisateur proposant un bouton OK. Le message d’alerte n’est pas prévu pour des messages longs. Lorsque l’argument de chaîne de la méthode d’alerte est trop long, le message d’alerte est tronqué. confirm (text)

Comment utiliser l’aide

Page précédente

233

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

234

Affiche la chaîne spécifiée dans une boîte de dialogue modale autodimensionnable proposant des boutons Oui (par défaut) et Non. Lorsque cet utilisateur clique sur l’un des ces boutons, cette méthode masque la boîte de dialogue et renvoie une valeur indiquant le bouton sur lequel l’utilisateur a cliqué pour refermer la boîte de dialogue. Une valeur de renvoie true indique que l’utilisateur a cliqué sur le bouton Oui pour fermer la boîte de confirmation. La boîte de confirmation affiche des messages plus longs que le message d’alerte ou l’invite, mais la boîte de dialogue est tronquée si la chaîne est trop longue. find (type, title)

valeur renvoyée : Object Trouve une fenêtre existante déjà créée par un script. title correspond au titre de la fenêtre, et type à la boîte de dialogue modale. Cette valeur sert d’indice en présence de plusieurs fenêtres portant le même titre ; si le type n’est pas important, une chaîne nulle ou vide peut être transmise. Si la fenêtre a été trouvée, l’objet Window Javascript correspondant est généré et renvoyé ; si la fenêtre ne peut pas être déterminée, la valeur renvoyée est null. prompt (prompt [, default])

Affiche une boîte de dialogue modale qui renvoie l’entrée de texte utilisateur. Une fois la boîte de dialogue ouverte, elle affiche le texte d’invite donné et son champ de texte modifiable est initialisé avec un texte spécifié par défaut. Lorsque l’utilisateur clique sur OK pour fermer la boîte de dialogue, le texte entré par l’utilisateur est renvoyé. Si l’utilisateur clique sur le bouton Annuler de cette boîte de dialogue, le résultat de cette méthode est la valeur null.

Propriétés communes aux objets

EditText

Button

Checkbox

RadioButton

Scrollbar

Slider

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

active

x

bounds

x

x

children

x

enabled

x

StaticText

x

Panel

Window

Le tableau ci-dessous présente les propriétés communes définies pour chaque type d’élément.

x

jumpdelta justify

x

x

x

x

x

x

x

maxvalue

x

x

minvalue

x

x

x

x

parent

x

stepdelta

Comment utiliser l’aide

x

x

x

x

x

x

x

Page précédente

234

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

EditText

Button

Checkbox

RadioButton

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

textselection type

Slider

StaticText

x

x

x

x

x

value visible

235

Scrollbar

Panel

text

Page précédente

Window

Comment utiliser l’aide

x

x

x

x

x

Propriétés Les propriétés définies pour chaque type d’élément répertorié ci-dessus sont les suivantes : Propriété

Type

Description

active

Booléen

Contient la valeur true si l’objet est actif, et la valeur false dans le cas contraire. Une boîte de dialogue flottante active se trouve être la boîte de dialogue en premier plan. Une boîte de dialogue modale visible est par définition la boîte de dialogue active. Une option active est celle qui accepte des raccourcis claviers ou, dans le cas d’un élément Button, d’être activée (par un clic) lorsque l’utilisateur entre un renvoi. Une définition sur true permet d’obtenir une option ou une boîte de dialogue donnée active.

bounds

Limites

Contient un objet Bounds décrivant l’emplacement et la taille de l’élément sous forme de valeurs de tableau représentant les coordonnées des coins supérieur gauche et inférieur droit de l’élément : [left, top, right, bottom]. Il s’agit des coordonnées d’écran pour les éléments de fenêtre, et des coordonnées relatives aux fenêtres pour les autres éléments. Reportez-vous à la section « Taille et emplacement des éléments » pour obtenir une définition de l’objet Bounds.

children

Objet

Comment utiliser l’aide

Collection des éléments IU contenue par l’objet IU. Il s’agit d’un tableau indexé par un numéro ou une chaîne contenant un nom d’élément. La propriété length de ce tableau correspond au nombre d’éléments enfants pour les éléments conteneurs et à zéro pour les options ; des implémentations futures peuvent renvoyer des éléments supplémentaires pour des options composites. Lecture seule.

Page précédente

235

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

236

Propriété

Type

Description

enabled

Booléen

Contient la valeur true si la connexion est active, et la valeur false dans le cas contraire. Si true, les éléments d’options acceptent l’entrée. Si false, les éléments d’options n’acceptent pas d’entrée et tous types d’éléments peuvent apparaître grisés.

jumpdelta

Valeur numérique

Contient la valeur d’incrémentation ou de décrémentation de la position d’un élément Scrollbar, lorsque l’utilisateur clique devant ou derrière l’élément mobile de Scrollbar pour déplacer la position du curseur flottant.

justify

Chaîne

Contrôle la justification du texte dans des options de texte statique ou de texte modifiable. La valeur est « left », « center » ou « right », et la valeur par défaut est aligné à gauche. Certaines implémentations peuvent ne pas prendre en charge entièrement cette propriété, et elle peut être ignorée par certains types d’options.

maxvalue

Valeur numérique

Contient la valeur maximale que la propriété value peut prendre. Si, après réinitialisation, maxvalue est inférieure à value, value est redéfinie sur maxvalue. Si, après réinitialisation, maxvalue est inférieure à minvalue, minvalue est redéfinie sur maxvalue.

minvalue

Valeur numérique

Contient la valeur minimale que la propriété value peut prendre. Si, après réinitialisation, minvalue est supérieure à value, value est redéfinie sur minvalue. Si, après réinitialisation, minvalue est supérieure à maxvalue, maxvalue est redéfinie sur minvalue.

parent

Objet

Objet parent d’un objet IU. Cette propriété renvoie null pour les objets window. Lecture seule.

placement

Limites

Autre nom de la propriété bounds ; l’utilisation du terme bounds est préféré à celui de placement.

stepdelta

Valeur numérique

Contient la valeur d’incrémentation et de décrémentation de la position d’un élément Scrollbar, lorsque l’on clique sur le bouton situé à chaque extrémité de la barre de défilement.

text

Chaîne

Titre, libellé ou texte. Peut être ignoré par certains types de fenêtres. Pour les options, son usage dépend du type d’option. Plusieurs options, tels les boutons, utilisent le texte comme un libellé, tandis que d’autres, tels les champs modifiables, utilisent le texte pour accéder à son contenu.

textselection

Chaîne

Remplace la sélection de texte en cours par la chaîne de texte spécifiée, modifiant ainsi la valeur de la propriété text. S’il n’y a aucune sélection, le texte spécifié est inséré dans la chaîne de propriété text au point d’insertion actuel. La lecture de la propriété textselection renvoie tout texte sélectionné, ou une chaîne vide s’il n’y a aucune sélection.

Comment utiliser l’aide

Page précédente

236

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

237

Propriété

Type

Description

type

Chaîne

Contient le nom de type de l’élément. Pour les objets Window, correspond à la valeur du premier argument de la fonction de construction Window. Pour les options, correspond à la valeur du premier argument de la méthode add(). Lecture seule.

value

Booléen

(pour Checkbox et RadioButton) true si l’option a été définie (par exemple, une case cochée), et false dans le cas contraire.

value

Valeur numérique

(pour Scrollbar et Slider) Valeur de l’option, par exemple, la position de la partie mobile d’un élément Scrollbar ou Slider. Si value est redéfinie en dehors de la plage minvalue - maxvalue, value est définie sur la limite la plus proche.

visible

Booléen

Contient true si l’objet est physiquement visible, et false dans le cas contraire. Si false, l’objet IU est masqué ; si true, l’objet devient invisible.

Propriétés exclusives aux éléments Window Les éléments Window contiennent les propriétés ci-dessous, outre celles décrites dans la section précédente. defaultElement -- Object

Elément à notifier lorsqu’un utilisateur appuie sur la touche Entrée avec pour intention de fermer la boîte de dialogue comme si le bouton « OK » avait été cliqué. cancelElement -- Object

Elément à notifier lorsqu’un utilisateur appuie sur la touche Echap (ou la combinaison pour Mac) avec pour intention de fermer la boîte de dialogue comme si le bouton « Annuler » avait été cliqué.

Objets utilisés comme valeurs de propriété Les valeurs de certaines propriétés sont représentées par des objets définis par l’interface de script. Cette section décrit la sémantique, le mode de création et les propriétés de ces objets. Objet Bounds Un objet Bounds est utilisé pour délimiter un élément Window ou un élément IU dans son espace de coordonnées. Vous ne pouvez pas créer directement un objet Bounds ; celui-ci est créé lorsque vous définissez une propriété bounds pour un élément. La lecture de la propriété bounds produit toujours un objet Bounds. Bounds contient un tableau décrivant la position et la taille d’un élément IU. Les valeurs du tableau représentent les coordonnées des coins supérieur gauche et inférieur droit de l’élément : [left, top, right, bottom]. Il s’agit de coordonnées d’écran pour les éléments de fenêtre, et ses valeurs sont relatives à l’espace de coordonnées de l’élément (conteneur) parent pour d’autres types d’éléments. Vous pouvez définir une propriété bounds pour un élément et créer indirectement un objet Bounds de l’une des façons suivantes : e.bounds = Object

Comment utiliser l’aide

Page précédente

237

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

238

L’objet doit contenir des propriétés nommées left, top, right, bottom ou x, y, width, height, où chaque propriété possède une valeur de coordonnée entière. e.bounds = Array

Le tableau doit disposer de valeurs de coordonnées entières dans l’ordre [left, top, right, bottom]. e.bounds = String

La chaîne doit être une déclaration d’objet texte JavaScript exécutable, contenant les mêmes noms de propriété que pour le cas d’objet décrit précédemment. Reportez-vous à la section « Taille et emplacement des éléments », page 217 pour des exemples.

On peut accéder à un objet Bounds comme à un tableau. En outre, il prend en charge les propriétés suivantes : Propriété

Type

Description

left

Valeur numérique

Valeur de la coordonnée « x » du bord gauche de l’élément.

top

Valeur numérique

Valeur de la coordonnée « y » du bord supérieur de l’élément.

right

Valeur numérique

Valeur de la coordonnée « x » du bord droit de l’élément.

bottom

Valeur numérique

Valeur de la coordonnée « y » du bord inférieur de l’élément.

x

Valeur numérique

Identique à left.

y

Valeur numérique

Identique à top.

width

Valeur numérique

right - left.

height

Valeur numérique

bottom - top.

Méthodes communes et gestionnaires d’événements

x

hide()

x

notify()

Comment utiliser l’aide

x

Slider

close()

Scrollbar

x

RadioButton

center()

Checkbox

x

Button

x

EditText

Panel

add()

StaticText

Window

Les méthodes communes et gestionnaires d’événements définis pour chaque type d’élément sont les suivants :

x

x

x

x

x

x

x

x

x

x

x

x

x

Page précédente

238

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

StaticText

EditText

Button

Checkbox

RadioButton

Scrollbar

Slider

239

Panel

Page précédente

Window

Comment utiliser l’aide

x

x

x

x

x

x

x

x

x

show() onChange()

x

onClick()

x

onClose()

x

onMove()

x

onResize()

x

x

x

x

x

Méthodes Les descriptions des méthodes et gestionnaires d’événements communs répertoriés cidessus sont les suivantes : Méthode

Renvoi

Description

add (type [, bounds, text, {
Objet

Crée un élément IU et l’ajoute au tableau enfant de son élément parent Window ou Panel. Le paramètre facultatif bounds est un objet Bounds décrivant sa position et sa taille. Il peut également s’agir d’un tableau à quatre éléments. Le paramètre facultatif text est attribué à l’élément IU comme texte ou titre initial. L’élément IU décide luimême de l’utilisation de cette chaîne ; elle peut être ignorée.

properties> } ]);

En général, un élément Button utilise le texte comme libellé, tandis qu’un champ modifiable l’utilise comme contenu initial. En interne, le texte est attribué à la propriété text de l’élément. Le paramètre facultatif est un objet doté de propriétés qui spécifient des attributs de l’élément IU qui sont utilisés uniquement lors de la création de l’élément. sont spécifiques au type d’élément IU et sont décrites ci-dessous dans les sections pour chaque type d’élément. La valeur renvoyée correspond à l’élément IU nouvellement créé ou à nul (null) en cas d’erreur. center([window])

Comment utiliser l’aide

aucune valeur renvoyée

Centre un élément Window à l’écran, ou facultativement, au sein de l’objet de fenêtre spécifié.

Page précédente

239

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

240

Méthode

Renvoi

Description

close ([value])

aucune valeur renvoyée

Ferme un élément Window. Pour les boîtes de dialogue modales, la valeur facultative est renvoyée comme résultat de l’appel show() qui entraîne l’affichage et l’exécution de la boîte de dialogue.

hide()

aucune valeur renvoyée

Masque l’élément. Si la méthode hide() est appelée pour une boîte de dialogue modale, elle ferme la boîte de dialogue et définit le résultat sur 0. L’application peut choisir d’ignorer cet appel pour certains types d’objets IU.

notify([event])

aucune valeur renvoyée

Envoie un message de notification aux éléments à l’écoute de l’objet IU. notify() permet effectivement de contrôler une boîte de dialogue par programme. L’appel de cette méthode sans argument sur une option simule l’activation de l’option ; un élément Button signale qu’il a été cliqué par sa méthode onClick(), un élément EditText indique à l’élément à l’écoute que son contenu a été modifié par la méthode onChange(), et ainsi de suite. Vous pouvez fournir un argument facultatif à notify(), qui est le nom du gestionnaire d’événements à appeler. Par exemple, pour simuler une boîte de dialogue dlg en cours de déplacement, vous pouvez envoyer le message de notification suivant : dlg.notify(“onMove”).

Comment utiliser l’aide

Page précédente

240

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

241

Méthode

Renvoi

Description

show()

Valeur numérique

Affiche l’objet IU. Un élément Window peut choisir d’ignorer le paramétrage de l’état de visibilité s’il n’est pas applicable, comme pour les inspecteurs dont la visibilité est contrôlée uniquement par l’application. Si la méthode show() est appelée pour une boîte de dialogue modale, celle-ci est affichée et exécutée. L’appel de la méthode show() ne renvoie rien tant que la boîte de dialogue n’a pas été refermée. Le résultat de show() correspond au résultat de la boîte de dialogue comme fourni par close(). Pour tous les autres éléments, le résultat est 0.

onClick()

aucune valeur renvoyée

Cette méthode est appelée lors de l’activation par clic d’une option. Tous les types d’options n’implémentent pas ce rappel. Si vous êtes intéressé par le traitement de cet événement, définissez une fonction de ce nom dans l’élément d’option.

onChange()

aucune valeur renvoyée

Cette méthode est appelée lors de la modification du contenu d’une option. Tous les types d’options n’implémentent pas ce rappel. Si vous êtes intéressé par le traitement de cet événement, définissez une fonction de ce nom dans l’élément d’option.

onClose()

aucune valeur renvoyée

Cette méthode est appelée lors de la fermeture d’un élément Window. Si vous êtes intéressé par le traitement de cet événement, définissez une fonction de ce nom dans l’objet Window.

Comment utiliser l’aide

Page précédente

241

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

242

Méthode

Renvoi

Description

onMove()

aucune valeur renvoyée

Cette méthode est appelée lors du déplacement d’un élément Window. Si vous êtes intéressé par le traitement de cet événement, définissez une fonction de ce nom dans l’objet Window.

onResize()

aucune valeur renvoyée

Cette méthode est appelée lors du redimensionnement d’un élément Window. Si vous êtes intéressé par le traitement de cet événement, définissez une fonction de ce nom dans l’objet Window.

Descriptions des objets IU Cette section décrit les objets IU, tels que les fenêtres, panneaux, boutons, cases à cocher, etc. L’objet Window Pour créer un objet Window : Méthode

Renvoi

Description

new Window (“dialog” [, title, bounds]);

Objet

Crée un élément Window. L’argument type requis contient le type d’élément demandé pour une boîte de dialogue modale. L’argument facultatif title est utilisé pour définir le titre de la fenêtre, si spécifié. Facultativement, un objet Bounds ou un tableau décrivant les limites de la fenêtre peut être fourni. Si aucune limite n’est définie, une limite par défaut est choisie. La valeur renvoyée correspond à la fenêtre nouvellement créée ou à nul (null) en cas d’erreur.

L’élément Panel Pour ajouter un élément Panel à une fenêtre w : Méthode

Renvoi

Description

w.add (“panel” [, bounds, text, {} ]);

Objet

Le paramètre facultatif bounds définit la position et la taille de l’élément. Le paramètre facultatif text correspond au texte affiché dans la bordure du panneau. Le paramètre facultatif correspond à un objet pouvant contenir l’une des propriétés suivantes :

Comment utiliser l’aide

Page précédente

242

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

243

Pour ajouter un style de bordure au panneau : Méthode

Renvoi

Description

borderStyle

Chaîne

Détermine l’aspect de la bordure du panneau (none, etched, raised, sunken, black). La valeur borderStyle par défaut est etched.

Si vous spécifiez un élément Panel dont la largeur est 0, il s’affiche sous forme de ligne verticale ; un élément Panel dont la hauteur est 0 s’affiche sous forme de ligne horizontale. Lorsqu’un panneau est rendu invisible, tous ses enfants sont également masqués ; lorsqu’un panneau est rendu de nouveau visible, ces enfants qui étaient visibles lorsqu’il était invisible redeviennent également visibles. L’option statictext Pour ajouter un élément StaticText à une fenêtre : Méthode

Renvoi

Description

w.add (“statictext” [, bounds, text, {}]);

Objet

Le paramètre facultatif bounds définit la position et la taille de l’élément. Le paramètre facultatif text correspond au texte affiché par l’option. Le paramètre facultatif correspond à un objet contenant l’une des propriétés suivantes :

multiline

Booléen

Si false (par défaut), l’option accepte une seule ligne de texte. Si true, l’option accepte plusieurs lignes, auquel cas le texte est renvoyé à la ligne en fonction de la largeur de l’option.

scrolling

Booléen

Si false (par défaut), il est impossible de faire défiler le texte affiché. Si true, des boutons de défilement s’affichent et le texte affiché peut défiler verticalement ; ce cas implique multiline.

Comment utiliser l’aide

Page précédente

243

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

244

L’option edittext Pour ajouter un élément EditText à une fenêtre : Méthode

Renvoi

Description

w.add (“edittext” [, bounds, text, {}]);

Objet

Le paramètre facultatif bounds définit la position et la taille de l’élément. Le paramètre facultatif text correspond au texte initial affiché par l’option. Le paramètre facultatif correspond à un objet contenant l’une des propriétés suivantes :

multiline

Booléen

Si false (par défaut), l’option accepte une ligne unique de texte. Si true, l’option accepte plusieurs lignes, auquel cas le texte est renvoyé à la ligne en fonction de la largeur de l’option.

readonly

Booléen

Si false (par défaut), l’option accepte une entrée de texte. Si true, l’option n’accepte pas de texte d’entrée, mais affiche simplement le contenu de sa propriété de texte.

noecho

Booléen

Si false (par défaut), l’option affiche du texte qui est tapé comme entrée. Si true, l’option n’affiche pas de texte d’entrée (utile pour des champs de mot de passe).

L’option EditText appelle la méthode d’événement onChange() si le texte modifiable est modifié ou si sa méthode notify() est appelée. Elle dispose également d’une propriété textselection pour accéder à toutes les sélections de texte dans le champ d’édition. L’option button Pour ajouter un élément Button à une fenêtre : Méthode

Renvoi

Description

w.add (“button” [, bounds, text]);

Objet

Le paramètre facultatif bounds définit la position et la taille de l’élément. Le paramètre facultatif text correspond au texte affiché à l’intérieur de l’option Button.

L’option Button appelle la méthode d’événement onClick() si l’option est cliquée ou si la méthode notify() est appelée.

Comment utiliser l’aide

Page précédente

244

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

245

L’option checkbox Pour ajouter un élément Checkbox à une fenêtre w : Méthode

Renvoi

Description

w.add (“checkbox” [, bounds, text]);

Objet

Le paramètre facultatif bounds définit la position et la taille de l’élément. Le paramètre facultatif text correspond au texte affiché en regard de l’option Checkbox.

L’option Checkbox appelle la méthode d’événement onClick() si l’option est cliquée ou si la méthode notify() est appelée. Elle possède également une propriété value qui indique si l’option est définie ou pas. L’option radiobutton Pour ajouter un élément RadioButton à une fenêtre w : Méthode

Renvoi

Description

w.add (“radiobutton” [, bounds, text]);

Objet

Le paramètre facultatif bounds définit la position et la taille de l’élément. Le paramètre text correspond au texte affiché en regard de l’option Radiobutton.

Tous les éléments RadioButtons d’un groupe doivent être créés de manière séquentielle, sans créer d’autres types d’élément. Un seul élément RadioButton d’un groupe peut être défini à un moment donné ; la définition d’un élément RadioButton différent annule les paramètres d’origine. L’option RadioButton appelle la méthode d’événement onClick() si l’option est cliquée ou si la méthode notify() est appelée. Elle possède également une propriété value qui indique si l’option est définie ou pas. L’option scrollbar Pour ajouter un élément Scrollbar à une fenêtre w : Méthode

Renvoi

Description

w.add (“scrollbar” [, bounds, value, minvalue, maxvalue]);

Objet

Le paramètre facultatif bounds définit la position et la taille de l’élément. Le paramètre facultatif value correspond à la position initiale de l’élément mobile. Les paramètres facultatifs minvalue et maxvalue définissent la plage des valeurs pouvant être renvoyées en modifiant la position de l’élément mobile.

Comment utiliser l’aide

Page précédente

245

Aide d’Adobe After Effects

Création d’éléments pour l’interface utilisateur

Comment utiliser l’aide

Page précédente

246

L’option Scrollbar présente une orientation horizontale si la largeur spécifiée est supérieure à sa hauteur au moment de la création ; son orientation est verticale si la hauteur est supérieure à sa largeur. Elle appelle la méthode d’événement onChange() si la position de l’élément mobile est modifiée par l’utilisateur ou si la méthode notify() est appelée. La propriété value contient la position actuelle de l’indicateur de position mobile de la barre de défilement dans la zone de défilement, comprise dans la plage minvalue et maxvalue. L’option slider Pour ajouter un élément Slider à une fenêtre w : Méthode

Renvoi

Description

w.add (“slider” [, bounds, value, minvalue, maxvalue]);

Objet

Le paramètre facultatif bounds définit la position et la taille de l’élément. Le paramètre facultatif value correspond à la position initiale de l’élément mobile. Les paramètres facultatifs minvalue et maxvalue définissent la plage des valeurs pouvant être renvoyées en modifiant la position de l’élément mobile.

Toutes les options Slider présente une orientation horizontale. L’option Slider appelle la méthode d’événement onChange() si la position du curseur est modifiée par l’utilisateur ou si la méthode notify() est appelée. La propriété value contient la position actuelle de l’indicateur de position mobile du curseur, comprise dans la plage minvalue et maxvalue.

Comment utiliser l’aide

Page précédente

246

Aide d’Adobe After Effects

Comment utiliser l’aide

L’objet Socket

Page précédente

247

Appendix A: L’objet Socket Les connexions TCP constituent la couche transport de base d’Internet. Chaque fois que votre navigateur Web se connecte à un serveur et demande une nouvelle page, il ouvre une connexion TCP pour traiter la demande au serveur ainsi que la réponse de celui-ci. L’objet JavaScript Socket vous permet de vous connecter à tout serveur sur Internet et d’échanger des données avec ce serveur. L’objet Socket fournit la fonctionnalité de base pour se connecter à un serveur distant par le biais d’un réseau TCP/IP ou d’Internet. Il fournit des appels tels que open() et close() pour établir ou mettre fin à une connexion, ou encore read() ou write() pour transférer des données. Cet objet contient également une méthode listen() qui permet d’établir un serveur Internet simple, lequel utilise la méthode poll() pour vérifier la présence de connexions entrantes. Un grand nombre de ces connexions reposent sur un simple échange de données ASCII, tandis que d’autres protocoles plus complexes, tels que le protocole FTP, concernent les données binaires. L’un des protocoles les plus simples est le protocole HTTP. L’exemple de client TCP/IP ci-dessous se connecte à un serveur WWW (qui écoute sur le port 80) ; il envoie ensuite une demande GET HTTP très simple pour obtenir la page d’accueil du serveur, puis lit la réponse, constituée de la page d’accueil et d’un en-tête de réponse HTTP. reply = ""; conn = new Socket; // access Adobe's home page if (conn.open ("www.adobe.com:80")) { // send a HTTP GET request conn.write ("GET /index.html HTTP/1.0\n\n"); // and read the server's reply reply = conn.read(); conn.close(); }

Une fois le code ci-dessus exécuté, la variable homepage contient le contenu de la page d’accueil Adobe et un en-tête de réponse HTTP. L’établissement d’un serveur Internet est un peu plus compliqué. Un programme serveur type attend les connexions entrantes et les traite lorsqu’elles arrivent. En général, vous ne souhaiteriez pas que votre application s’exécute dans une boucle sans fin, dans l’attente de toute demande de connexion entrante. Aussi, vous avez la possibilité de demander un objet Socket pour une connexion entrante en appelant la méthode poll() d’un objet Socket. Cet appel ne fait que vérifier les connexions entrantes, puis revient immédiatement. En présence d’une demande de connexion, l’appel de poll() renvoie un autre objet Socket contenant la toute nouvelle connexion. Utilisez cet objet de connexion pour dialoguer avec le client appelant ; une fois cela fait, fermez la connexion et supprimez l’objet de connexion. Pour qu’un objet Socket puisse vérifier la présence de connexions entrantes, un port d’écoute précis doit lui être indiqué, comme le port 80 pour les demandes HTTP, par exemple. Pour ce faire, appelez la méthode listen() à la place de la méthode open().

Comment utiliser l’aide

Page précédente

247

Aide d’Adobe After Effects

L’objet Socket

Comment utiliser l’aide

Page précédente

248

L’exemple suivant correspond à un serveur Web très simple. Le serveur écoute sur le port 80 et attend afin de détecter toute demande entrante. L’en-tête HTTP est supprimé, et une page HTML fictive est transmise à l’appelant. conn = new Socket; // listen on port 80 if conn.listen (80)) { // wait forever for a connection var incoming; do incoming = conn.poll(); while (incoming == null); // discard the request read(); // Répond avec un en-tête HTTP incoming.writeln ("HTTP/1.0 200 OK"); incoming.writeln ("Content-Type: texte/html"); incoming.writeln(); // Transmit a dummy homepage incoming.writeln ("

Page d’accueil

"); // done! incoming.close(); delete incoming; }

Il est fréquent que le point final distant mette fin à la connexion, une fois les données transmises. Pour cette raison, une propriété connected contient true tant que la connexion existe. Si la propriété connected renvoie la valeur false, la connexion est fermée automatiquement. En cas d’erreur, la propriété error de l’objet Socket contient un court message décrivant le type de l’erreur. L’objet Socket permet de mettre en œuvre facilement des logiciels communiquant entre eux par Internet. Par exemple, vous pouvez laisser deux applications Adobe échanger des documents et des données simplement en écrivant et en exécutant des programmes JavaScript.

Référence JavaScript Propriétés connected

Booléen

Contient la valeur true si la connexion est encore active. Lecture seule.

eof

Booléen

Contient la valeur true si le tampon de réception est vide. Lecture seule.

error

Chaîne

Contient un message décrivant la dernière erreur. Le fait de définir cette valeur efface tout message d’erreur.

host

Chaîne

Contient le nom de l’ordinateur distant lorsqu’une connexion est établie. Si la connexion est fermée ou n’existe pas, la propriété contient la chaîne vide. Lecture seule.

Comment utiliser l’aide

Page précédente

248

Aide d’Adobe After Effects

L’objet Socket

Comment utiliser l’aide

timeout

Valeur numérique

Page précédente

249

Délai, en secondes, à appliquer aux opérations de lecture et d’écriture. Par défaut, défini à 10 (dix secondes).

Méthodes [new] Socket ();

Crée un nouvel objet Socket. Renvoi Objet. close();

Met fin à la connexion ouverte. Renvoie la valeur true si la connexion a été fermée et la valeur false en cas d’erreurs d’E/S. La suppression de la connexion produit le même résultat. Notez cependant que JavaScript supprime l’objet de la mémoire à un moment nul, et que la connexion risque de rester ouverte plus longtemps que vous ne le souhaitez si vous ne la fermez pas explicitement. Renvoi Booléen. listen (Number port [, String encoding]);

Demande à l’objet de commencer à écouter pour détecter une connexion entrante. L’argument port correspond au numéro de port TCP/IP sur lequel l’objet doit écouter ; les valeurs types sont 80 pour un serveur Web, 23 pour un serveur Telnet, etc. Le paramètre d’encodage est facultatif. Les appels de listen() et de open() sont mutuellement exclusifs. Le résultat est true si l’objet de connexion a bien commencé à écouter et false dans le cas inverse. Paramètres port

Valeur numérique

Numéro de port sur lequel écouter. Les numéros de port valides vont de 1 à 65535.

encoding

Chaîne

Encodage à utiliser pour la connexion. Les valeurs types sont « ASCII », « binary » ou « UTF-8 ». Par défaut, ce paramètre est défini à ASCII.

Renvoi Booléen. open (String computer [, String encoding]);

Ouvre la connexion pour les opérations lecture/écriture qui suivent. Le nom d’ordinateur correspond au nom ou à l’adresse IP, suivi du signe deux-points (:) et du numéro de port auquel se connecter. Le numéro de port est facultatif. Un nom d’ordinateur valide sera par exemple « www.adobe.com:80 » ou « 192.150.14.12:80 ». Ce paramètre d’encodage est facultatif ; à ce jour, il peut s’agir de « ASCII », « binary » ou « UTF-8 ». Les appels de open() et de listen() sont mutuellement exclusifs.

Comment utiliser l’aide

Page précédente

249

Aide d’Adobe After Effects

L’objet Socket

Comment utiliser l’aide

Page précédente

250

Paramètres host

Chaîne

Nom ou adresse IP de l’ordinateur distant, suivi du signe deuxpoints (:) et du numéro de port auquel se connecter. Le numéro de port est facultatif. Un nom d’ordinateur valide sera par exemple « www.adobe.com:80 » ou « 192.150.14.12:80 ».

encoding

Chaîne

Encodage à utiliser pour la connexion. Les valeurs types sont « ASCII », « binary » ou « UTF-8 ». Par défaut, ce paramètre est défini à ASCII.

Renvoi Booléen. poll();

Vérifie un objet à l’écoute pour une nouvelle connexion entrante. Si une demande de connexion a été détectée, la méthode renvoie un nouvel objet Socket qui représente la nouvelle connexion. Utilisez cet objet de connexion pour communiquer avec l’ordinateur distant. Après utilisation, fermez la connexion et supprimez l’objet JavaScript. Si aucune nouvelle demande de connexion n’a été détectée, la méthode renvoie la valeur nulle. Renvoi Un nouvel objet Socket ou une valeur nulle. read ([Number count]);

Lit jusqu’au nombre donné de caractères à partir de la connexion. Renvoie une chaîne contenant jusqu’au nombre de caractères supposés être lus. Si aucun compte n’est fourni, la connexion tente de lire autant de caractères qu’elle peut obtenir jusqu’à ce que le serveur distant ferme la connexion ou qu’un dépassement de délai se produise. Paramètres count

Valeur numérique

Nombre de caractères à lire. Si aucun compte n’est fourni, la connexion tente de lire autant de caractères qu’elle peut obtenir jusqu’à ce que le serveur distant ferme la connexion ou qu’un dépassement de délai se produise.

Renvoi Chaîne. readln();

Lit une ligne de texte jusqu’au changement de ligne suivant. Les changements de ligne sont reconnus en tant que paires CR, LF, CRLF ou LFCR. Renvoi Chaîne. write (String text, …);

Ecrit la chaîne donnée vers la connexion. Les paramètres de cette fonction sont concaténés en une seule chaîne. Renvoie true une fois terminé. Comment utiliser l’aide

Page précédente

250

Aide d’Adobe After Effects

L’objet Socket

Comment utiliser l’aide

Page précédente

251

Paramètres text

Chaîne

Tous les arguments sont concaténés pour former la chaîne à écrire.

Renvoi Booléen. writeln (String text, …);

Ecrit la chaîne donnée vers la connexion et ajoute un caractère de changement de ligne. Les paramètres de cette fonction sont concaténés en une seule chaîne. Renvoie true une fois terminé. Paramètres text

Chaîne

Tous les arguments sont concaténés pour former la chaîne à écrire.

Renvoi Booléen.

Exemple de serveur de discussion L’exemple de code suivant met en œuvre un serveur de discussion très simple. Un client de discussion peut se connecter au serveur de discussion, lequel écoute sur le numéro de port 1234. Le serveur répond par un message de bienvenue et attend une ligne d’entrée du client. Le client entre du texte et le transmet au serveur qui affiche le texte et laisse l’utilisateur sur l’ordinateur serveur entrer une ligne de texte, que l’ordinateur client affiche. Ces allers-retours se poursuivent jusqu’à ce que le serveur ou l’ordinateur client entre le texte « au revoir ». function chatServer() { var tcp = new Socket; // listen on port 1234 writeln ("Chat server listening on port 1234"); if (tcp.listen (1234)) { for (;;) { // poll for a new connection var connection = tcp.poll(); if (connection != null) { writeln ("Connection from " + connection.host); // we have a new connection, so welcome and chat // until client terminates the session connection.writeln ("Welcome to a little chat!"); chat (connection); connection.writeln ("*** Goodbye ***"); connection.close(); delete connection; writeln ("Connection closed"); } } }

Comment utiliser l’aide

Page précédente

251

Aide d’Adobe After Effects

Comment utiliser l’aide

L’objet Socket

Page précédente

252

Page précédente

252

} function chatClient() { var connection = new Socket; // connect to sample server if (connection.open ("remote-pc.corp.adobe.com:1234")) { // then chat with server chat (connection); connection.close(); delete connection; } } function chat (c) { // select a long timeout c.timeout=1000; while (true) { // get one line and echo it writeln (c.read()); // stop if the connection is broken if (!c.connected) break; // read a line of text write ("chat: "); var text = readln(); if (text == "bye") // stop conversation if the user entered "bye" break; else // otherwise transmit to server c.writeln (text); } }

Comment utiliser l’aide

Aide d’Adobe After Effects

Comment utiliser l’aide

Noms d’encodage

Page précédente

253

Annexe B : Noms d’encodage Noms d’encodage pris en charge La liste de noms suivante est l’ensemble de base des noms d’encodage pris en charge par l’objet FileSystem. Certains encodeurs de caractères sont intégrés et le système d’exploitation est interrogé pour la plupart des autres encodeurs. En fonction des kits de langue installés, certains encodages peuvent ne pas être disponibles. Les noms se rapportant au même encodage sont énumérés sur une même ligne. Les caractères de soulignement sont remplacés par des tirets avant la mise en correspondance d’un nom d’encodage. Notez toutefois que l’objet FileSystem ne peut pas traiter les caractères Unicode étendus dont les valeurs sont supérieures à 65535. Ces caractères restent non codés, tel que spécifié dans la norme UTF-16, en tant que deux caractères dans la plage à partir de 0xD700-0xDFFF. Les encodages intégrés sont : US-ASCII,ASCII,ISO646-US,ISO-646.IRV:1991,ISO-IR-6, ANSI-X3.41968,CP367,IBM367,US,ISO646.1991-IRV UCS-2,UCS2, ISO-10646-UCS-2 UCS2LE,UCS-2LE,ISO-10646-UCS-2LE UCS2BE,UCS-2BE,ISO-10646-UCS-2BE UCS-4,UCS4, ISO-10646-UCS-4 UCS4LE,UCS-4LE,ISO-10646-UCS-4LE UCS4BE,UCS-4BE,ISO-10646-UCS-4BE UTF-8,UTF8,UNICODE-1-1-UTF-8,UNICODE-2-0-UTF-8,X-UNICODE-2-0-UTF-8 UTF16,UTF-16,ISO-10646-UTF-16 UTF16LE,UTF-16LE,ISO-10646-UTF-16LE UTF16BE,UTF-16BE,ISO-10646-UTF-16BE CP1252,WINDOWS-1252,MS-ANSI ISO-8859-1,ISO-8859-1,ISO-8859-1:1987,ISO-IR-100,LATIN1 MACINTOSH,X-MAC-ROMAN BINARY

L’encodeur ASCII génère des erreurs pour les caractères supérieurs à 127 et l’encodeur BINARY effectue simplement une conversion des octets en caractères Unicode en utilisant les 8 bits inférieurs. Cet encodeur est utile pour la lecture et l’écriture des données binaires.

Encodages supplémentaires Sous Windows, tous les encodages utilisent ce qu’on appelle des pages de code. Des valeurs numériques sont attribuées à ces pages de code. Le jeu de caractères occidentaux (Western) courant utilisé par Windows est, par exemple, la page de code 1252. Les pages de code Windows peuvent être sélectionnées en faisant précéder le numéro de page de code par CP ou WINDOWS-, comme CP1252 pour la page de code 1252. L’objet File possède de nombreux autres noms d’encodage intégrés correspondant aux numéros de page de code prédéfinis. Si une page de code manque, l’encodage ne peut pas être sélectionné.

Comment utiliser l’aide

Page précédente

253

Aide d’Adobe After Effects

Comment utiliser l’aide

Noms d’encodage

Page précédente

254

Sur Mac OS, les encodeurs peuvent être sélectionnés par nom, plutôt que par numéro de page de code. L’objet File demande directement un encodeur à Mac OS. Si les jeux de caractères Mac OS sont identiques aux pages de code Windows, Mac OS connaît également les numéros de page de code Windows.

Noms d’encodage communs Les noms d’encodage suivants sont mis en œuvre sur les systèmes Windows et Mac OS : UTF-7,UTF7,UNICODE-1-1-UTF-7,X-UNICODE-2-0-UTF-7 ISO-8859-2,ISO-8859-2,ISO-8859-2:1987,ISO-IR-101,LATIN2 ISO-8859-3,ISO-8859-3,ISO-8859-3:1988,ISO-IR-109,LATIN3 ISO-8859-4,ISO-8859-4,ISO-8859-4:1988,ISO-IR-110,LATIN4,BALTIC ISO-8859-5,ISO-8859-5,ISO-8859-5:1988,ISO-IR-144,CYRILLIC ISO-8859-6,ISO-8859-6,ISO-8859-6:1987,ISO-IR-127,ECMA-114,ASMO-708,ARABIC ISO-8859-7,ISO-8859-7,ISO-8859-7:1987,ISO-IR-126,ECMA-118,ELOT-928,GREEK8,GREEK ISO-8859-8,ISO-8859-8,ISO-8859-8:1988,ISO-IR-138,HEBREW ISO-8859-9,ISO-8859-9,ISO-8859-9:1989,ISO-IR-148,LATIN5,TURKISH ISO-8859-10,ISO-8859-10,ISO-8859-10:1992,ISO-IR-157,LATIN6 ISO-8859-13,ISO-8859-13,ISO-IR-179,LATIN7 ISO-8859-14,ISO-8859-14,ISO-8859-14,ISO-8859-14:1998,ISO-IR-199,LATIN8 ISO-8859-15,ISO-8859-15,ISO-8859-15:1998,ISO-IR-203 ISO-8859-16,ISO-885,ISO-885,MS-EE CP850,WINDOWS-850,IBM850 CP866,WINDOWS-866,IBM866 CP932,WINDOWS-932,SJIS,SHIFT-JIS,X-SJIS,X-MS-SJIS,MS-SJIS,MS-KANJI CP936,WINDOWS-936,GBK,WINDOWS-936,GB2312,GB-2312-80,ISO-IR-58,CHINESE CP949,WINDOWS-949,UHC,KSC-5601,KS-C-5601-1987,KS-C-5601-1989,ISO-IR-149,KOREAN CP950,WINDOWS-950,BIG5,BIG-5,BIG-FIVE,BIGFIVE,CN-BIG5,X-X-BIG5 CP1251,WINDOWS-1251,MS-CYRL CP1252,WINDOWS-1252,MS-ANSI CP1253,WINDOWS-1253,MS-GREEK CP1254,WINDOWS-1254,MS-TURK CP1255,WINDOWS-1255,MS-HEBR CP1256,WINDOWS-1256,MS-ARAB CP1257,WINDOWS-1257,WINBALTRIM CP1258,WINDOWS-1258 CP1361,WINDOWS-1361,JOHAB EUC-JP,EUCJP,X-EUC-JP EUC-KR,EUCKR,X-EUC-KR HZ,HZ-GB-2312 X-MAC-JAPANESE X-MAC-GREEK X-MAC-CYRILLIC X-MAC-LATIN X-MAC-ICELANDIC X-MAC-TURKISH

Noms d’encodage Windows supplémentaires CP437,IBM850,WINDOWS-437 CP709,WINDOWS-709,ASMO-449,BCONV4 EBCDIC KOI-8R KOI-8U

Comment utiliser l’aide

Page précédente

254

Aide d’Adobe After Effects

Comment utiliser l’aide

Noms d’encodage

Page précédente

255

ISO-2022-JP ISO-2022-KR

Noms d’encodage Mac OS supplémentaires Ces noms sont des alias pour les encodages que Mac OS est susceptible de connaître. TIS-620,TIS620,TIS620-0,TIS620.2529-1,TIS620.2533-0,TIS620.2533-1,ISO-IR-166 CP874,WINDOWS-874 JP,JIS-C6220-1969-RO,ISO646-JP,ISO-IR-14 JIS-X0201,JISX0201-1976,X0201 JIS-X0208,JIS-X0208-1983,JIS-X0208-1990,JIS0208,X0208,ISO-IR-87 JIS-X0212,JIS-X0212.1990-0,JIS-X0212-1990,X0212,ISO-IR-159 CN,GB-1988-80,ISO646-CN,ISO-IR-57 ISO-IR-16,CN-GB-ISOIR165 KSC-5601,KS-C-5601-1987,KS-C-5601-1989,ISO-IR-149 EUC-CN,EUCCN,GB2312,CN-GB EUC-TW,EUCTW,X-EUC-TW

Comment utiliser l’aide

Page précédente

255

Object Properties (output of dump_objects.jsx from After Effects 6.5) =========================================================================== AlphaMode enum --------------------------------------------------------------------------AlphaMode.IGNORE AlphaMode.PREMULTIPLIED AlphaMode.STRAIGHT ---------------------------------------------------------------------------

=========================================================================== Application object --------------------------------------------------------------------------beginSuppressDialogs() no return beginUndoGroup(string undoName) no return buildName : string : readOnly buildNumber : integer : readOnly endSuppressDialogs(boolean showAlert) no return endUndoGroup() no return endWatchFolder() no return exitAfterLaunchAndEval : boolean : read/write exitCode : integer : read/write isProfessionalVersion : boolean : readOnly isRenderEngine : boolean : readOnly isUISuppressed : boolean : readOnly isWatchFolder : boolean : readOnly language : Language : readOnly newProject() no return open([File file]) returns Project pauseWatchFolder(boolean doPause) no return project : Project : readOnly purge(PurgeTarget target) no return quit() no return registeredCompany : string : readOnly registeredName : string : readOnly serialNumber : string : readOnly setMemoryUsageLimits(float imageCachePercent, float maximumMemoryPercent) no return setSavePreferencesOnQuit(boolean doSave) no return settings : Settings : readOnly version : string : readOnly watchFolder(File file) no return onError(string errorString, string severity) no return ---------------------------------------------------------------------------

=========================================================================== AVLayer object --------------------------------------------------------------------------(integer propertyIndex) returns PropertyBase (string propertyName) returns PropertyBase

Page 256

active : boolean activeAtTime(float atTime) addProperty(string propertyName) adjustmentLayer : boolean audioActive : boolean audioActiveAtTime(float atTime) audioEnabled : boolean blendingMode : BlendingMode canAddProperty(string propertyName) canSetCollapseTransformation : boolean canSetEnabled : boolean canSetTimeRemapEnabled : boolean collapseTransformation : boolean copyToComp(CompItem intoComp) duplicate() effectsActive : boolean elided : boolean enabled : boolean frameBlending : boolean guideLayer : boolean hasAudio : boolean hasTrackMatte : boolean hasVideo : boolean height : float inPoint : float index : integer isEffect : boolean isMask : boolean isModified : boolean isNameFromSource : boolean isTrackMatte : boolean locked : boolean matchName : string motionBlur : boolean moveAfter(Layer otherLayer) moveBefore(Layer otherLayer) moveTo(integer index) moveToBeginning() moveToEnd() name : string nullLayer : boolean numProperties : integer outPoint : float parent : Layer parentProperty : PropertyGroup preserveTransparency : boolean property(integer propertyIndex) property(string propertyName) propertyDepth : integer propertyGroup([integer countUp]) propertyType : PropertyType quality : LayerQuality remove() selected : boolean

:

: : : : : : : :

: : : : : : : : : : : : : : : : : : :

: : : : : : :

: : : :

readOnly returns boolean returns PropertyBase read/write readOnly returns boolean read/write read/write returns boolean readOnly readOnly readOnly read/write no return returns AVLayer read/write readOnly read/write read/write read/write readOnly readOnly readOnly readOnly read/write readOnly readOnly readOnly readOnly readOnly readOnly read/write readOnly read/write no return no return no return no return no return read/write readOnly readOnly read/write read/write readOnly read/write returns PropertyBase returns PropertyBase readOnly returns PropertyGroup readOnly read/write no return read/write

Page 257

selectedProperties : Array of PropertyBase: readOnly setParentWithJump(Layer newParent) no return shy : boolean : read/write solo : boolean : read/write source : AVItem : readOnly startTime : float : read/write stretch : float : read/write threeDLayer : boolean : read/write time : float : readOnly timeRemapEnabled : boolean : read/write trackMatteType : TrackMatteType : read/write width : float : readOnly ---------------------------------------------------------------------------

=========================================================================== BlendingMode enum --------------------------------------------------------------------------BlendingMode.ADD BlendingMode.ALPHA_ADD BlendingMode.CLASSIC_COLOR_BURN BlendingMode.CLASSIC_COLOR_DODGE BlendingMode.CLASSIC_DIFFERENCE BlendingMode.COLOR BlendingMode.COLOR_BURN BlendingMode.COLOR_DODGE BlendingMode.DANCING_DISSOLVE BlendingMode.DARKEN BlendingMode.DIFFERENCE BlendingMode.DISSOLVE BlendingMode.EXCLUSION BlendingMode.HARD_LIGHT BlendingMode.HARD_MIX BlendingMode.HUE BlendingMode.LIGHTEN BlendingMode.LINEAR_BURN BlendingMode.LINEAR_DODGE BlendingMode.LINEAR_LIGHT BlendingMode.LUMINESCENT_PREMUL BlendingMode.LUMINOSITY BlendingMode.MULTIPLY BlendingMode.NORMAL BlendingMode.OVERLAY BlendingMode.PIN_LIGHT BlendingMode.SATURATION BlendingMode.SCREEN BlendingMode.SILHOUETE_ALPHA BlendingMode.SILHOUETTE_LUMA BlendingMode.SOFT_LIGHT BlendingMode.STENCIL_ALPHA BlendingMode.STENCIL_LUMA BlendingMode.VIVID_LIGHT ---------------------------------------------------------------------------

Page 258

=========================================================================== CloseOptions enum --------------------------------------------------------------------------CloseOptions.DO_NOT_SAVE_CHANGES CloseOptions.PROMPT_TO_SAVE_CHANGES CloseOptions.SAVE_CHANGES ---------------------------------------------------------------------------

=========================================================================== CompItem object --------------------------------------------------------------------------activeCamera : Layer : readOnly bgColor : Array of float : read/write comment : string : read/write displayStartTime : float : read/write draft3d : boolean : read/write duplicate() returns CompItem duration : float : read/write footageMissing : boolean : readOnly frameBlending : boolean : read/write frameDuration : float : read/write frameRate : float : read/write hasAudio : boolean : readOnly hasVideo : boolean : readOnly height : integer : read/write hideShyLayers : boolean : read/write id : integer : readOnly layer(integer layerIndex) returns Layer layer(string layerName) returns Layer layer(Layer otherLayer, integer relativeIndex) returns Layer layers : LayerCollection: readOnly motionBlur : boolean : read/write name : string : read/write numLayers : integer : readOnly parentFolder : FolderItem : readOnly pixelAspect : float : read/write preserveNestedFrameRate : boolean : read/write preserveNestedResolution : boolean : read/write proxySource : FootageSource : readOnly remove() no return resolutionFactor : Array of integer : read/write selected : boolean : read/write selectedLayers : Array of Layer : readOnly selectedProperties : Array of PropertyBase: readOnly setProxy(File proxyFile) no return setProxyToNone() no return setProxyWithPlaceholder(string name, integer width, integer height, float frameRate, float duration) no return setProxyWithSequence(File proxyFile,

Page 259

boolean forceAlphabetical) no return setProxyWithSolid(ArrayOfFloat color, string name, integer width, integer height, float pixelAspecRatio) no return shutterAngle : integer : read/write shutterPhase : integer : read/write time : float : read/write typeName : string : readOnly useProxy : boolean : read/write usedIn : Array of CompItem : readOnly width : integer : read/write workAreaDuration : float : readOnly workAreaStart : float : readOnly ---------------------------------------------------------------------------

=========================================================================== FieldSeparationType enum --------------------------------------------------------------------------FieldSeparationType.LOWER_FIELD_FIRST FieldSeparationType.OFF FieldSeparationType.UPPER_FIELD_FIRST ---------------------------------------------------------------------------

=========================================================================== FileSource object --------------------------------------------------------------------------alphaMode : AlphaMode : read/write conformFrameRate : float : read/write displayFrameRate : float : readOnly fieldSeparationType : FieldSeparationType : readOnly file : File : readOnly guessAlphaMode() no return guessPulldown(PulldownMethod pulldownMethod) no return hasAlpha : boolean : readOnly highQualityFieldSeparation : boolean : read/write invertAlpha : boolean : read/write isStill : boolean : readOnly loop : integer : read/write nativeFrameRate : float : readOnly premulColor : Array of float : read/write reload() no return removePulldown : PulldownPhase : readOnly ---------------------------------------------------------------------------

=========================================================================== FolderItem object --------------------------------------------------------------------------comment : string : read/write id : integer : readOnly

Page 260

item(integer itemIndex) returns Item items : ItemCollection : readOnly name : string : read/write numItems : integer : readOnly parentFolder : FolderItem : readOnly remove() no return selected : boolean : read/write typeName : string : readOnly ---------------------------------------------------------------------------

=========================================================================== FootageItem object --------------------------------------------------------------------------comment : string : read/write duration : float : readOnly file : File : readOnly footageMissing : boolean : readOnly frameDuration : float : readOnly frameRate : float : readOnly hasAudio : boolean : readOnly hasVideo : boolean : readOnly height : integer : read/write id : integer : readOnly mainSource : FootageSource : readOnly name : string : read/write parentFolder : FolderItem : readOnly pixelAspect : float : read/write proxySource : FootageSource : readOnly remove() no return replace(File proxyFile) no return replaceWithPlaceholder(string name, integer width, integer height, float frameRate, float duration) no return replaceWithSequence(File proxyFile, boolean forceAlphabetical) no return replaceWithSolid(ArrayOfFloat color, string name, integer width, integer height, float pixelAspecRatio) no return selected : boolean : read/write setProxy(File proxyFile) no return setProxyToNone() no return setProxyWithPlaceholder(string name, integer width, integer height, float frameRate, float duration) no return setProxyWithSequence(File proxyFile, boolean forceAlphabetical) no return setProxyWithSolid(ArrayOfFloat color,

Page 261

string name, integer width, integer height, float pixelAspecRatio) no return time : float : readOnly typeName : string : readOnly useProxy : boolean : read/write usedIn : Array of CompItem : readOnly width : integer : read/write ---------------------------------------------------------------------------

=========================================================================== ImportAsType enum --------------------------------------------------------------------------ImportAsType.COMP ImportAsType.COMP_CROPPED_LAYERS ImportAsType.FOOTAGE ImportAsType.PROJECT ---------------------------------------------------------------------------

=========================================================================== ImportOptions object --------------------------------------------------------------------------new ImportOptions(File fileToImport) returns ImportOptions canImportAs(ImportAsType asType) returns boolean file : File : read/write forceAlphabetical : boolean : read/write importAs : ImportAsType : read/write sequence : boolean : read/write ---------------------------------------------------------------------------

=========================================================================== ItemCollection object --------------------------------------------------------------------------addComp(string name, integer width, integer height, float pixelAspectRatio, float duration, float frameRate) returns CompItem ---------------------------------------------------------------------------

=========================================================================== KeyframeEase object --------------------------------------------------------------------------new KeyframeEase(float speed, float influence) returns KeyframeEase influence : float : read/write speed : float : read/write ---------------------------------------------------------------------------

Page 262

=========================================================================== KeyframeInterpolationType enum --------------------------------------------------------------------------KeyframeInterpolationType.BEZIER KeyframeInterpolationType.HOLD KeyframeInterpolationType.LINEAR ---------------------------------------------------------------------------

=========================================================================== Language enum --------------------------------------------------------------------------Language.ENGLISH Language.FRENCH Language.GERMAN Language.JAPANESE ---------------------------------------------------------------------------

=========================================================================== Layer object --------------------------------------------------------------------------(integer propertyIndex) returns PropertyBase (string propertyName) returns PropertyBase active : boolean : readOnly activeAtTime(float atTime) returns boolean addProperty(string propertyName) returns PropertyBase canAddProperty(string propertyName) returns boolean canSetEnabled : boolean : readOnly copyToComp(CompItem intoComp) no return duplicate() returns Layer elided : boolean : readOnly enabled : boolean : read/write hasVideo : boolean : readOnly inPoint : float : read/write index : integer : readOnly isEffect : boolean : readOnly isMask : boolean : readOnly isModified : boolean : readOnly locked : boolean : read/write matchName : string : readOnly moveAfter(Layer otherLayer) no return moveBefore(Layer otherLayer) no return moveTo(integer index) no return moveToBeginning() no return moveToEnd() no return name : string : read/write nullLayer : boolean : readOnly numProperties : integer : readOnly outPoint : float : read/write parent : Layer : read/write parentProperty : PropertyGroup : readOnly

Page 263

property(integer propertyIndex) returns PropertyBase property(string propertyName) returns PropertyBase propertyDepth : integer : readOnly propertyGroup([integer countUp]) returns PropertyGroup propertyType : PropertyType : readOnly remove() no return selected : boolean : read/write selectedProperties : Array of PropertyBase: readOnly setParentWithJump(Layer newParent) no return shy : boolean : read/write solo : boolean : read/write startTime : float : read/write stretch : float : read/write time : float : readOnly ---------------------------------------------------------------------------

=========================================================================== LayerCollection object --------------------------------------------------------------------------add(AVItem theItem, [float duration]) returns AVLayer addCamera(string name, ArrayOfFloat centerPoint) returns Layer addLight(string name, ArrayOfFloat centerPoint) returns Layer addNull([float duration]) returns AVLayer addSolid(ArrayOfFloat color, string name, integer width, integer height, float pixelAspectRatio, [float duration]) returns AVLayer addText([TextDocument textDoc]) returns AVLayer addText(string text) returns AVLayer byName(string name) returns Layer precompose(ArrayOfInteger layerIndices, string name, [boolean moveAllAttributes]) returns CompItem ---------------------------------------------------------------------------

=========================================================================== LayerQuality enum --------------------------------------------------------------------------LayerQuality.BEST LayerQuality.DRAFT LayerQuality.WIREFRAME ---------------------------------------------------------------------------

=========================================================================== LogType enum ---------------------------------------------------------------------------

Page 264

LogType.ERRORS_AND_PER_FRAME_INFO LogType.ERRORS_AND_SETTINGS LogType.ERRORS_ONLY ---------------------------------------------------------------------------

=========================================================================== MarkerValue object --------------------------------------------------------------------------new MarkerValue(string comment, [string chapter], [string url], [string frameTarget]) returns MarkerValue chapter : string : read/write comment : string : read/write frameTarget : string : read/write url : string : read/write ---------------------------------------------------------------------------

=========================================================================== MaskMode enum --------------------------------------------------------------------------MaskMode.ADD MaskMode.DARKEN MaskMode.DIFFERENCE MaskMode.INTERSECT MaskMode.LIGHTEN MaskMode.NONE MaskMode.SUBTRACT ---------------------------------------------------------------------------

=========================================================================== MaskMotionBlur enum --------------------------------------------------------------------------MaskMotionBlur.OFF MaskMotionBlur.ON MaskMotionBlur.SAME_AS_LAYER ---------------------------------------------------------------------------

=========================================================================== MaskPropertyGroup object --------------------------------------------------------------------------(integer propertyIndex) returns PropertyBase (string propertyName) returns PropertyBase active : boolean : readOnly addProperty(string propertyName) returns PropertyBase canAddProperty(string propertyName) returns boolean canSetEnabled : boolean : readOnly color : Array of float : read/write duplicate() returns MaskPropertyGroup elided : boolean : readOnly

Page 265

enabled : boolean : readOnly inverted : boolean : read/write isEffect : boolean : readOnly isMask : boolean : readOnly isModified : boolean : readOnly locked : boolean : read/write maskMode : MaskMode : read/write maskMotionBlur : MaskMotionBlur : read/write matchName : string : readOnly moveTo(integer index) no return name : string : read/write numProperties : integer : readOnly parentProperty : PropertyGroup : readOnly property(integer propertyIndex) returns PropertyBase property(string propertyName) returns PropertyBase propertyDepth : integer : readOnly propertyGroup([integer countUp]) returns PropertyGroup propertyIndex : integer : readOnly propertyType : PropertyType : readOnly remove() no return rotoBezier : boolean : read/write selected : boolean : read/write ---------------------------------------------------------------------------

=========================================================================== OMCollection object --------------------------------------------------------------------------add() returns OutputModule ---------------------------------------------------------------------------

=========================================================================== OutputModule object --------------------------------------------------------------------------applyTemplate(string templateName) no return file : File : read/write name : string : readOnly postRenderAction : PostRenderAction : read/write remove() no return saveAsTemplate(string templateName) no return templates : Array of string: readOnly ---------------------------------------------------------------------------

=========================================================================== PlaceholderSource object --------------------------------------------------------------------------alphaMode : AlphaMode : read/write conformFrameRate : float : read/write displayFrameRate : float : readOnly fieldSeparationType : FieldSeparationType : read/write guessAlphaMode() no return guessPulldown(PulldownMethod pulldownMethod) no return

Page 266

hasAlpha : boolean : readOnly highQualityFieldSeparation : boolean : read/write invertAlpha : boolean : read/write isStill : boolean : readOnly loop : integer : read/write nativeFrameRate : float : readOnly premulColor : Array of float : read/write removePulldown : PulldownPhase : read/write ---------------------------------------------------------------------------

=========================================================================== PostRenderAction enum --------------------------------------------------------------------------PostRenderAction.IMPORT PostRenderAction.IMPORT_AND_REPLACE_USAGE PostRenderAction.NONE PostRenderAction.SET_PROXY ---------------------------------------------------------------------------

=========================================================================== Project object --------------------------------------------------------------------------activeItem : Item : readOnly bitsPerChannel : integer : read/write close(CloseOptions closeOptions) returns boolean consolidateFootage() returns integer file : File : readOnly importFile(ImportOptions importOptions) returns Item importFileWithDialog() returns ArrayOfItem importPlaceholder(string itemName, integer itemWidth, integer itemHeight, float frameRate, float duration) returns FootageItem item(integer itemIndex) returns Item items : ItemCollection : readOnly numItems : integer : readOnly reduceProject(ArrayOfItem itemsToPreserve) returns integer removeUnusedFootage() returns integer renderQueue : RenderQueue : readOnly rootFolder : FolderItem : readOnly save(File toFile) returns boolean saveWithDialog() returns boolean selection : Array of Item : readOnly showWindow(boolean doShow) no return timecodeBaseType : TimecodeBaseType : read/write timecodeDisplayType : TimecodeDisplayType : read/write timecodeFilmType : TimecodeFilmType : read/write timecodeNTSCDropFrame : boolean : read/write transparencyGridThumbnails : boolean : read/write ---------------------------------------------------------------------------

Page 267

=========================================================================== Property object --------------------------------------------------------------------------active : boolean : readOnly addKey(float atTime) returns integer canSetEnabled : boolean : readOnly canVaryOverTime : boolean : readOnly duplicate() returns Property elided : boolean : readOnly enabled : boolean : readOnly expression : string : read/write expressionEnabled : boolean : read/write expressionError : string : readOnly hasMax : boolean : readOnly hasMin : boolean : readOnly isEffect : boolean : readOnly isInterpolationTypeValid( KeyframeInterpolationType type) returns boolean isMask : boolean : readOnly isModified : boolean : readOnly isSpatial : boolean : readOnly isTimeVarying : boolean : readOnly keyInInterpolationType(integer keyIndex) returns KeyframeInterpolationType keyInSpatialTangent(integer keyIndex) returns ArrayOfFloat keyInTemporalEase(integer keyIndex) returns ArrayOfKeyframeEase keyOutInterpolationType(integer keyIndex) returns KeyframeInterpolationType keyOutSpatialTangent(integer keyIndex) returns ArrayOfFloat keyOutTemporalEase(integer keyIndex) returns ArrayOfKeyframeEase keyRoving(integer keyIndex) returns boolean keySelected(integer keyIndex) returns boolean keySpatialAutoBezier(integer keyIndex) returns boolean keySpatialContinuous(integer keyIndex) returns boolean keyTemporalAutoBezier(integer keyIndex) returns boolean keyTemporalContinuous(integer keyIndex) returns boolean keyTime(integer keyIndex) returns float keyTime(string markerName) returns float keyValue(integer keyIndex) returns type-stored-inproperty keyValue(string markerName) returns type-stored-inproperty matchName : string : readOnly moveTo(integer index) no return name : string : readOnly nearestKeyIndex(float atTime) returns integer numKeys : integer : readOnly parentProperty : PropertyGroup : readOnly propertyDepth : integer : readOnly propertyGroup([integer countUp]) returns PropertyGroup propertyType : PropertyType : readOnly

Page 268

propertyValueType : PropertyValueType : readOnly remove() no return removeKey(integer keyIndex) no return selected : boolean : read/write selectedKeys : Array of integer : readOnly setInterpolationTypeAtKey(integer keyIndex, KeyframeInterpolationType inType, [KeyframeInterpolationType outType]) no return setRovingAtKey(integer keyIndex, boolean isRoving) no return setSelectedAtKey(integer keyIndex, boolean isSelected) no return setSpatialAutoBezierAtKey(integer keyIndex, boolean isAutoBezier) no return setSpatialContinuousAtKey(integer keyIndex, boolean isContinuous) no return setSpatialTangentsAtKey(integer keyIndex, ArrayOfFloat inTangent, [ArrayOfFloat outTangent]) no return setTemporalAutoBezierAtKey(integer keyIndex, boolean isAutoBezier) no return setTemporalContinuousAtKey(integer keyIndex, boolean isContinuous) no return setTemporalEaseAtKey(integer keyIndex, ArrayOfKeyframeEase inEase, [ArrayOfKeyframeEase outEase]) no return setValue(type-stored-in-property newValue) no return setValueAtKey(integer keyIndex, type-stored-in-property newValue) no return setValueAtTime(float atTime, type-stored-in-property newValue) no return setValuesAtTimes(ArrayOfFloat atTimes, ArrayOf-type-stored-in-property newValues) no return unitsText : string : readOnly value : type-stored-in-property: readOnly valueAtTime(float atTime, bool preExpression) returns type-stored-inproperty ---------------------------------------------------------------------------

=========================================================================== PropertyGroup object --------------------------------------------------------------------------(integer propertyIndex) returns PropertyBase (string propertyName) returns PropertyBase active : boolean : readOnly addProperty(string propertyName) returns PropertyBase canAddProperty(string propertyName) returns boolean canSetEnabled : boolean : readOnly duplicate() returns PropertyGroup elided : boolean : readOnly enabled : boolean : readOnly isEffect : boolean : readOnly

Page 269

isMask : boolean : readOnly isModified : boolean : readOnly matchName : string : readOnly moveTo(integer index) no return name : string : readOnly numProperties : integer : readOnly parentProperty : PropertyGroup : readOnly property(integer propertyIndex) returns PropertyBase property(string propertyName) returns PropertyBase propertyDepth : integer : readOnly propertyGroup([integer countUp]) returns PropertyGroup propertyIndex : integer : readOnly propertyType : PropertyType : readOnly remove() no return selected : boolean : readOnly ---------------------------------------------------------------------------

=========================================================================== PropertyType enum --------------------------------------------------------------------------PropertyType.INDEXED_GROUP PropertyType.NAMED_GROUP PropertyType.PROPERTY ---------------------------------------------------------------------------

=========================================================================== PropertyValueType enum --------------------------------------------------------------------------PropertyValueType.COLOR PropertyValueType.CUSTOM_VALUE PropertyValueType.LAYER_INDEX PropertyValueType.MARKER PropertyValueType.MASK_INDEX PropertyValueType.NO_VALUE PropertyValueType.OneD PropertyValueType.SHAPE PropertyValueType.TEXT_DOCUMENT PropertyValueType.ThreeD PropertyValueType.ThreeD_SPATIAL PropertyValueType.TwoD PropertyValueType.TwoD_SPATIAL ---------------------------------------------------------------------------

=========================================================================== PulldownPhase enum --------------------------------------------------------------------------PulldownPhase.OFF PulldownPhase.SSWWW PulldownPhase.SWWWS PulldownPhase.SWWWW_24P_ADVANCE PulldownPhase.WSSWW

Page 270

PulldownPhase.WSWWW_24P_ADVANCE PulldownPhase.WWSSW PulldownPhase.WWSWW_24P_ADVANCE PulldownPhase.WWWSS PulldownPhase.WWWSW_24P_ADVANCE PulldownPhase.WWWWS_24P_ADVANCE ---------------------------------------------------------------------------

=========================================================================== PulldownMethod enum --------------------------------------------------------------------------PulldownMethod.ADVANCE_24P PulldownMethod.PULLDOWN_3_2 ---------------------------------------------------------------------------

=========================================================================== PurgeTarget enum --------------------------------------------------------------------------PurgeTarget.ALL_CACHES PurgeTarget.IMAGE_CACHES PurgeTarget.SNAPSHOT_CACHES PurgeTarget.UNDO_CACHES ---------------------------------------------------------------------------

=========================================================================== RenderQueue object --------------------------------------------------------------------------item(integer itemIndex) returns RenderQueueItem items : RQItemCollection : readOnly numItems : integer : readOnly pauseRendering(boolean doPause) no return render() no return rendering : boolean : readOnly showWindow(boolean doShow) no return stopRendering() no return ---------------------------------------------------------------------------

=========================================================================== RenderQueueItem object --------------------------------------------------------------------------applyTemplate(string templateName) no return comp : CompItem : readOnly elapsedSeconds : float : readOnly logType : LogType : read/write numOutputModules : integer : readOnly outputModule(integer outputModuleIndex) returns OutputModule outputModules : OMCollection : readOnly remove() no return render : boolean : read/write saveAsTemplate(string templateName) no return

Page 271

skipFrames : integer : read/write startTime : float : readOnly status : RQItemStatus : readOnly templates : Array of string: readOnly timeSpanDuration : float : read/write timeSpanStart : float : read/write onStatusChanged() no return ---------------------------------------------------------------------------

=========================================================================== RQItemCollection object --------------------------------------------------------------------------add(CompItem compToAdd) returns RenderQueueItem ---------------------------------------------------------------------------

=========================================================================== RQItemStatus enum --------------------------------------------------------------------------RQItemStatus.DONE RQItemStatus.ERR_STOPPED RQItemStatus.NEEDS_OUTPUT RQItemStatus.QUEUED RQItemStatus.RENDERING RQItemStatus.UNQUEUED RQItemStatus.USER_STOPPED RQItemStatus.WILL_CONTINUE ---------------------------------------------------------------------------

=========================================================================== Settings object --------------------------------------------------------------------------getSetting(string sectionName, string sectionKey) returns string haveSetting(string sectionName, string sectionKey) returns boolean saveSetting(string sectionName, string sectionKey, string newValue) no return ---------------------------------------------------------------------------

=========================================================================== Shape object --------------------------------------------------------------------------new Shape() returns Shape closed : boolean : read/write inTangents : Array of float[2] : read/write outTangents : Array of float[2] : read/write vertices : Array of float[2] : read/write ---------------------------------------------------------------------------

Page 272

=========================================================================== SolidSource object --------------------------------------------------------------------------alphaMode : AlphaMode : read/write color : Array of float : read/write conformFrameRate : float : readOnly displayFrameRate : float : readOnly fieldSeparationType : FieldSeparationType : readOnly guessAlphaMode() no return guessPulldown(PulldownMethod pulldownMethod) no return hasAlpha : boolean : readOnly highQualityFieldSeparation : boolean : readOnly invertAlpha : boolean : read/write isStill : boolean : readOnly loop : integer : readOnly nativeFrameRate : float : readOnly premulColor : Array of float : read/write removePulldown : PulldownPhase : readOnly ---------------------------------------------------------------------------

=========================================================================== System object --------------------------------------------------------------------------machineName : string : readOnly osName : string : readOnly osVersion : string : readOnly userName : string : readOnly ---------------------------------------------------------------------------

=========================================================================== TextDocument object --------------------------------------------------------------------------new TextDocument(string text) returns TextDocument text : string : read/write ---------------------------------------------------------------------------

=========================================================================== TimecodeBaseType enum --------------------------------------------------------------------------TimecodeBaseType.FPS100 TimecodeBaseType.FPS24 TimecodeBaseType.FPS25 TimecodeBaseType.FPS30 TimecodeBaseType.FPS48 TimecodeBaseType.FPS50 TimecodeBaseType.FPS60 ---------------------------------------------------------------------------

===========================================================================

Page 273

TimecodeDisplayType enum --------------------------------------------------------------------------TimecodeDisplayType.FEET_AND_FRAMES TimecodeDisplayType.FRAMES TimecodeDisplayType.TIMECODE ---------------------------------------------------------------------------

=========================================================================== TimecodeFilmType enum --------------------------------------------------------------------------TimecodeFilmType.MM16 TimecodeFilmType.MM35 ---------------------------------------------------------------------------

=========================================================================== TrackMatteType enum --------------------------------------------------------------------------TrackMatteType.ALPHA TrackMatteType.ALPHA_INVERTED TrackMatteType.LUMA TrackMatteType.LUMA_INVERTED TrackMatteType.NO_TRACK_MATTE ---------------------------------------------------------------------------

Page 274

Related Documents

Shell Scripting
April 2020 7
Shell Scripting
November 2019 24
Ksh Scripting
December 2019 37
Scripting Guide
November 2019 21
Scripting Guide.pdf
December 2019 33
Web Scripting
November 2019 64

More Documents from ""

Ketelitian Alat Ukur.docx
November 2019 23
Scripting Guide.pdf
December 2019 33
Scripting Guide.pdf
December 2019 17
Digital Anarchy Products.pdf
December 2019 26
Globaliozation Ch1.docx
November 2019 22