Pratique d ActionScript 3

Documents pareils
Toute personne souhaitant maîtriser les techniques liées à la conception de produits multimédia et à la création de sites Web.

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Logiciel libre, OpenMeetings permet de créer ou simplement de participer à des conférences en ligne.

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Modules Multimédia PAO (Adobe)

Bienvenue à l historien virtuel 2.0

Guide de l utilisateur. Faites connaissance avec la nouvelle plateforme interactive de

Chapitre 1 L interface de Windows 7 9

REQUEA. v PD 20 mars Mouvements d arrivée / départ de personnels Description produit

JPEG, PNG, PDF, CMJN, HTML, Préparez-vous à communiquer!

Devenez un véritable développeur web en 3 mois!

Optimisation des performances pour la plate-forme ADOBE FLASH

FileMaker Server 12. publication Web personnalisée avec XML

WORDPRESS : réaliser un site web

Le logiciel de création de site internet IZISPOT est un outil très puissant et qui est assez simple après quelques temps d utilisation.

Objet du document. Version document : 1.00

Open-Sankoré. Mise en route. Guide utilisateur Février 2013 NTICE (E. S.)

Module Communication - Messagerie V6. Infostance. Messagerie

Initiation au logiciel imovie HD

Utilisation d ADOBE SCENE7

Table des matières ENVIRONNEMENT

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

UltraBackup NetStation 4. Guide de démarrage rapide

PG208, Projet n 3 : Serveur HTTP évolué

FLEX 3. Applications Internet riches avec Flash ActionScript 3, MXML et Flex Builder. Aurélien Vannieuwenhuyze

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

Guide d utilisation 2012

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

«Petit guide d utilisation Prezi» par Marc Nolet

Table des matières Introduction Démarrage Les composants graphiques... 26

Faire une présentation avec

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

VidZone, qu est-ce que c est? INSTALLATION DE VidZone

Réalisation d un diaporama en haute définition avec. Adobe Premiere Elements 3.0 ou Adobe Premiere Pro 2.0. Encodage pour Internet

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Support de formation Notebook

La programmation orientée objet et le langage C++

Installation d un manuel numérique 2.0

INSTALLATIONS. Vous adapterez l installation en fonction des nouvelles versions qui peuvent légèrement différer.

Système de Gestion de Fichiers

Comment utiliser L application I-USBKey?

Maîtriser l'utilisation des outils bureautiques. Maîtriser le logiciel de traitement de texte - Word. Maitriser le logiciel tableur - Excel

Manuel d'installation de GESLAB Client Lourd

nom : Collège Ste Clotilde

pas à pas prise en main du service sur le web Le Cloud

Plateforme PAYZEN. Intégration du module de paiement pour la plateforme Magento version 1.3.x.x. Paiement en plusieurs fois. Version 1.

Aide Webmail. L environnement de RoundCube est très intuitif et fonctionne comme la plupart des logiciels de messagerie traditionnels.

données en connaissance et en actions?

Créer une trace, obtenir son fichier gpx et sa carte Ou Afficher un fichier trace GPX

Les outils actuels permettent-ils d automatiser la production de cartes? De quels outils dispose-t-on?

KIELA CONSULTING. Microsoft Office Open Office Windows - Internet. Formation sur mesure

Février Novanet-IS. Suite progicielle WEB pour l Assurance. Description fonctionnelle

Tutoriel QSOS. Version /02/2013

WysiUpStudio. CMS professionnel. pour la création et la maintenance évolutive de sites et applications Internet V. 6.x

Sélection du contrôleur

Modalités pratiques. Objectifs de la Formation

Projet en nouvelles technologies de l information et de la communication

L espace de travail de Photoshop

Silhouette Studio Leçon N 2

Synoptique des icônes Interwrite Workspace

CREATION D UNE EVALUATION AVEC JADE par Patrick RUER (

La technologie Java Card TM

TELEPHONE SANS FIL TELEFUNKEN TC 151. (avec répondeur) TELEFUNKEN TC 101 MODE D EMPLOI

Sommaire. 1 Introduction Présentation du logiciel de commerce électronique 23

1. Installation du Module

Principales Evolutions Version

FICHE PRODUIT COREYE CACHE Architecture technique En bref Plateforme Clients Web Coreye Cache applicative Références Principe de fonctionnement

GUIDE D UTILISATION DU TABLEAU BLANC INTERACTIF EBEAM EDGE

WordPress Référencement naturel (SEO) Optimiser. son référencement. Daniel Roch. Préface d Olivier Andrieu

Utilisation de l éditeur.

Le service de création de site Internet : Mode d emploi. La Création de Site Internet

26 Centre de Sécurité et de

PRESENTATION DU LOGICIEL

Manuel d Utilisation Nouvelle Plateforme CYBERLIBRIS : ScholarVox Management

Lutter contre les virus et les attaques... 15

Comment utiliser RoundCube?

Solution ing dédiée aux professionnels du marketing et de la communication

Site web établissement sous Drupal

Un serveur web léger et ouvert

Bureautique Initiation Excel-Powerpoint

Programmation C. Apprendre à développer des programmes simples dans le langage C

Sommaire. Introduction. Nouveautés d Adobe InDesign CS3. Visite guidée d Adobe InDesign

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

Les logiciels gratuits en ligne

MODE D EMPLOI V.2.0. Installation. Nouveautés V.02. Fais ton journal - version mars Mode d emploi -

Diffuser un contenu sur Internet : notions de base... 13

Espace Client Aide au démarrage

MANUELS NUMÉRIQUES PROCÉDURE DE TÉLÉCHARGEMENT

Connecteur Zimbra pour Outlook 2007 et 2010 (ZCO) w

Cahier Technique Liaison Comptabilité Api / Sage ECF

Description des pratiques à adopter pour la mise à jour du layout en utilisant le gestionnaire de conception de Sharepoint 2013

Création de maquette web

BES WEBDEVELOPER ACTIVITÉ RÔLE

Certificats de signature de code (CodeSigning)

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

Sommaire. Images Actives Logiciel libre développé par le CRDP de l académie de Versailles 2 Rue Pierre Bourdan Marly le Roi

Your Detecting Connection. Manuel de l utilisateur. support@xchange2.net

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT

WordPress Référencement naturel (SEO) Optimiser. son référencement. Daniel Roch. Préface d Olivier Andrieu

Transcription:

Pratique d ActionScript 3 Thibault Imbert Relecture technique : Mathieu Anthoine Jérôme Decoster

Table des matières Avant-propos... XIII À propos de l auteur...xiv Préface... XV Prérequis... XV Organisation de cet ouvrage... XV Conventions...XVI Remerciements...XVI Partie I Principes essentiels 1 Qu est-ce que l ActionScript 3...1 Historique...1 Dix raisons de coder en ActionScript 3...2 Outils...3 La plateforme Flash...3 2 Langage et API...5 Le langage ActionScript 3...5 Machines virtuelles...7 Traduction dynamique...8 Gérer les types à l exécution...9 Erreurs à l exécution...13 Nouveaux types primitifs...15 Nouveaux opérateurs...18 Valeurs par défaut...22 Nouveaux types composites...24 Fonctions et paramètres facultatifs...24 Contexte d exécution...27 Boucles...27 Nouveautés de la classe Array...29 La classe Vector...31 Ramasse-miettes...36 Bonnes pratiques...38 Autres subtilités...40 Optimisations du lecteur Flash...41 Accélération matérielle...42

IV Table des matières 3 Le modèle événementiel...47 L ancien modèle événementiel...47 Un nouveau modèle événementiel...50 Tout est événementiel...52 Écouter un événement...53 L objet événementiel...56 La classe Event...58 Les sous-classes d Event...59 Arrêter l écoute d un événement...60 Mise en application...61 La puissance du couplage faible...64 Souplesse de code...66 Ordre de notification...68 Références faibles...69 Subtilités...71 4 La liste d affichage...73 Classes graphiques...73 Liste d affichage...75 Instancier des classes graphiques...77 Ajouter des objets d affichage...78 Réattribuer le conteneur...78 Liste interne d objets enfants...79 Accéder aux objets d affichage...81 Supprimer les objets d affichage...86 Effondrement des profondeurs...89 Gérer l empilement des objets d affichage...91 Échange de profondeurs...93 Désactiver des objets graphiques...95 Fonctionnement de la tête de lecture...99 Comportement asynchrone...100 Événements spécifiques...101 Subtilités de la propriété stage...102 Subtilités de la propriété root...104 Les _level...105 5 Symboles prédéfinis...107 Les types de symbole...107 Le symbole clip...108 La propriété name...109 Instancier des symboles par programmation...111 Instancier des symboles prédéfinis...111 Extraire une classe dynamiquement...115 Le symbole bouton...122 Le symbole graphique...122 Les images bitmap...123 Afficher une image bitmap...124

Table des matières V Le symbole Sprite...126 Définition de code dans un symbole...127 6 Propagation événementielle...129 Concept...129 La phase de capture...130 La notion de nœuds...132 Déterminer la phase en cours...133 Optimiser le code avec la phase de capture...135 La phase cible...139 Intervenir sur la propagation...142 La phase de remontée...146 La propriété Event.bubbles...150 Écouter plusieurs phases...151 Supprimer des écouteurs...152 7 Interactivité...155 Interactivité avec SimpleButton...155 Enrichir graphiquement un SimpleButton...157 Créer un menu dynamique...160 Mouvement programmatique...163 Les pièges du ramasse-miettes...167 Ajouter un comportement de type bouton...168 Gérer le focus...175 Pour aller plus loin...179 Espace de coordonnées...181 Événement global...183 Exemple : une application de dessin...184 Mettre à jour le rendu...186 Gérer le clavier...188 Déterminer la touche appuyée...189 Gérer simultanément des touches...190 Simuler un ancien comportement...194 Gérer la souris...196 Curseur souris...198 Superposition...199 L événement Event.RESIZE...201 Partie II Penser objet 8 Programmation orientée objet...203 Concevoir autrement...204 Tout est objet...205 Notre première classe...208 Introduction aux paquetages...209 Définition de propriétés...211 Attributs de propriétés de classe...212

VI Table des matières Attributs de classe...213 Le constructeur...215 Utiliser le mot-clé this...218 Définir des méthodes...219 L encapsulation...221 Mise en pratique...223 Les méthodes d accès...223 Contrôler l affectation...229 Méthodes de lecture et écriture...232 Cas d utilisation de l attribut static...237 La classe JoueurManager...242 L héritage...246 Sous-type et super-type...248 Spécialiser une classe...250 Le transtypage...252 Surcharge...256 Le polymorphisme...261 9 Étendre les classes natives...263 Le vieil ami prototype...263 Étendre les classes non graphiques...266 Étendre les classes graphiques...271 Accéder à l objet Stage de manière sécurisée...276 Ajouter des fonctionnalités...278 Réutiliser le code...297 Classe dynamique...298 Un vrai constructeur...299 Créer des boutons dynamiques...300 10 Diffusion d événements personnalisés...325 L histoire...325 La classe EventDispatcher...326 Mise en application...327 Choisir un nom d événement...331 Étendre EventDispatcher...333 Stocker EventDispatcher...335 Passer des informations...340 Menu et événement personnalisé...343 11 Classe du document...347 La classe MainTimeline...347 Classe du document...348 Limitations de la classe Sprite...351 Actions d images...352 Déclarer automatiquement des occurrences...353 Déclarer manuellement des occurrences...355 Accès global à l objet Stage...356 Automatiser l accès global à l objet Stage...358

Table des matières VII Partie III Création graphique 12 Programmation bitmap...363 Couleurs...364 Manipuler les couleurs...366 La classe BitmapData...368 Coder les couleurs...369 Gérer les ressources avec le profiler...370 La classe Bitmap...371 Réutiliser des données bitmap...374 Libérer les ressources...376 Calculer le poids d une image en mémoire...381 Limitations mémoire...382 Images de la bibliothèque...383 Peindre des pixels...384 Lire des pixels...389 Accrocher aux pixels et lisser...393 Mettre en cache sous forme bitmap...395 Effets pervers...398 Les filtres...400 Filtres sur une image bitmap...409 Animer un filtre...411 Rendu bitmap d objets vectoriels...412 Optimiser les performances...421 Pixel Bender...427 Les types de données...430 Charger le shader...433 Remplissage...436 Filtres...446 13 API de dessin...449 Une API enrichie...449 La méthode drawpath...450 La méthode drawgraphicsdata...460 La méthode drawtriangles...465 Culling...471 Plaquer une texture...473 Plaquer des coordonnées UV...477 14 Gestion de la 3D...491 Espace 3D...491 Fonctionnement interne du lecteur...493 API 3D...498 Projection...505 Réorganisation simple de l affichage (z-order)...511 Conteneur 3D...514

VIII Table des matières Interactivité 3D...516 Pointer vers un objet...517 Réorganisation avancée de l affichage (z-order)...523 Déterminer la face visible d un DisplayObject...525 Gérer la lumière...533 Partie IV Gérer du contenu 15 Chargement du contenu...539 La classe Loader...539 Charger un élément externe...540 La classe LoaderInfo...541 Interagir avec le contenu...552 Créer une galerie...558 La composition...560 Redimensionner automatiquement...563 Gérer le lissage...570 Précharger le contenu...573 Interrompre le chargement...579 Communiquer entre deux animations...580 Modèle de sécurité du lecteur Flash...582 Programmation croisée...583 Utiliser un fichier de régulation...584 Contexte de chargement...585 Contourner les restrictions de sécurité...586 Bibliothèque partagée...590 Embarquer du contenu...596 Désactiver une animation chargée...596 Communication AVM1 et AVM2...598 16 Chargement et envoi de données...601 La classe URLLoader...601 Charger du texte...602 L encodage URL...610 Charger des variables...611 Charger des données XML...615 Charger des données et sécurité...623 Charger des données binaires...624 Envoyer des données...628 Envoyer des variables...628 La méthode GET ou POST...633 Envoyer des variables discrètement...635 Renvoyer des données depuis le serveur...637 Aller plus loin...641

Table des matières IX Télécharger un fichier...643 Publier un fichier...648 Publier plusieurs fichiers...652 Créer la classe EnvoiMultiple...657 Retourner des données une fois l envoi terminé...663 Accéder et sauvegarder des flux binaires...667 Aller plus loin...671 17 XML...677 Les avantages du format XML...677 Qu est-ce que E4X?...678 Lire un document XML...678 Lire des nœuds texte...687 Accéder à un attribut...689 Filtrer des données...692 Caractères spéciaux...694 Aller plus loin...696 Envoyer des données XML...697 Mise en application...699 18 Communication externe...705 Passer des variables...705 Intégrer avec JavaScript...706 La propriété parameters...708 Les FlashVars...711 Passer des variables dynamiques...712 Accéder facilement aux FlashVars...715 Appeler une fonction...717 L API ExternalInterface...718 Appeler une fonction externe depuis ActionScript...720 Appeler une fonction ActionScript depuis le conteneur...723 Communication et sécurité...725 19 Le texte...729 Le texte dans Flash...729 Afficher du texte dans Flash...730 Afficher du texte en programmant...732 Les types de champs texte...738 Formater du texte...739 Rendu HTML...740 La classe TextFormat...741 Étendre la classe TextField...747 La classe StyleSheet...751 Modifier le contenu d un champ texte...754 Remplacer du texte...757 L événement TextEvent.LINK...758 Charger du contenu externe...761

X Table des matières Exporter une police dans l animation...765 Charger dynamiquement une police...768 Créer un éditeur de texte...771 Aller plus loin...781 20 Son et vidéo...791 Lire des sons...791 Lire un son provenant de la bibliothèque...792 Lire un son dynamiquement...793 La classe SoundLoaderContext...796 Transformer un son...797 Modifier globalement le son...812 Lire le spectre d un son...812 Le format MPEG-4 Audio...830 La vidéo dans Flash...834 Le format MPEG-4 Video...834 La classe Video...836 Transformer un son lié à un objet NetStream...838 Mode plein-écran...839 Partie V Aller plus loin 21 Sockets...843 Une passerelle universelle...843 Créer un serveur de sockets XML...847 La classe XMLSocket...848 Créer un chat multi-utilisateurs...851 La classe Socket...858 Créer un serveur de sockets binaires...859 Échanger des données...862 22 Flash Remoting...871 La technologie...871 Un format optimisé...871 Passerelle remoting...873 Déployer...874 Se connecter au service...879 La classe Responder...881 Appeler une méthode distante...882 Échanger des données primitives...885 Échanger des données composites...889 Échanger des données typées...892 Envoyer un e-mail avec Flash Remoting...893 Exporter une image...898 Se connecter à une base de données...905 Sécurité...913

Table des matières XI La classe Service...914 Aller plus loin...923 Utiliser la classe WebService...923 23 ByteArray...927 Le codage binaire...927 Position et poids du bit...929 Octet...934 L ordre des octets...936 La classe ByteArray...937 Méthodes de lecture et d écriture...938 Copier des objets...949 Écrire des données au format texte...950 Lire des données au format texte...951 Compresser des données...954 Sauvegarder un flux binaire...957 Générer un PDF...959 24 Bibliothèques partagées...963 Décomposer l application...963 Gérer les chemins d accès...964 Créer un fichier XML de configuration...964 Employer des bibliothèques partagées...966 Générer et charger les bibliothèques...968 Extraire des définitions de classe...973 Aller plus loin...983 25 Introduction à Flex et AIR...987 Présentation de Flex...987 Présentation de AIR...988 L avenir...990 Index...993