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