Enseignement de l'informatique et du numérique au lycée Boissy d'Anglas https://icn-isn-boissy.yj.fr/wp/2017/11/03/programmation-javascript-avec-p5-js/ Export date: Wed Feb 26 14:56:39 2025 / +0000 GMT |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Programmation javascript avec p5.jsDébuter avec le javascriptLe javascript est un langage de programmation que l'on peut insérer dans une page web et qui est interprété par le navigateur internet. IntroductionPour commencer un utilisera, l'excellent site Silent Teacher 1 (ne pas y consacrer plus qu'une heure). Note : Si besoin, notamment si vous vous êtes interrompu, il est possible de faire apparaître le menu permettant de choisir le niveau de difficulté en tapant dans la console javascript (généralement accessible avec Variable, conditions et bouclePour apprendre les bases de la programmation, on utilisera le livre en ligne JavaScript Éloquent, Une introduction moderne à la programmation de Marijn Haverbeke (dont on pourra lire l'introduction 2 à la maison). ![]() Dans ce livre en ligne, les exemple de code peuvent être lancé en cliquant sur ![]() ![]() Commencer par lire le chapitre : Les bases du JavaScript : valeurs, variables et structures de contrôle 3 Premiers pas avec p5.jsRécupération des fichiersPour commencer, télécharger l'archive ZIP applications-javascript.zip 4contenant les fichiers qui seront utilisés pour découvrir le javascript et la bibliothèque p5.js. Extraire les fichiers dans un répertoire dédié et observer leur organisation :
On trouvera dans le répertoire scripts les fichiers p5.js et p5.sound.js. Ces deux fichiers font partie de la bibliothèque p5.js. Une bibliothèque (library) rassemble un ensemble de fonctions déjà codées qui peuvent alors être utilisées directement dans un programme. p5.js 5 permet très facilement de dessiner, de jouer un son, de faire des animations... Il s'agit du portage en en javascript du programme Processing 6 (qui utilise un autre langage de programmation, le Java). Toutes les fonctions de p5.js sont recensées sur la page : Par ailleurs on trouvera sur le site de nombreux exemples et tutoriaux. HTML et javascriptPour être interprétable par un navigateur web, un programme javascript doit être intégré dans une page web. On utilise pour cela la balise <script> :
Il est aussi possible de lier directement un fichier javascript avec :
Ouvrir le fichier exercice-debogage.html avec un éditeur de texte (Notepad++, Sublimtext...) et identifier les deux fichiers javascript qui sont appelés. Puis ouvrir le fichier exercice-debogage.html dans un navigateur web et observer ce qu'il fait. Outils de débogageLes navigateurs modernes possèdent des outils avancés (les Outils de développement) permettant de faire la chasse aux erreurs d'un programme (les bugs ou bogues). On utilisera le navigateur Mozilla Firefox et son Débogueur accessible dans le menu Développment (ou avec le raccourcis clavier Control-Maj-S). Voici à quoi il ressemble (cliquer pour agrandir): ![]() Conseils :
Premier exercice avec les outils de débogageOuvrir le fichier exercice-debogage.html et l'outil de débogage de Firefox (si besoin on peut relancer le programme en actualisant la page - touche F5). Mettre le programme en pause (avec l'outil de débogage de Firefox), puis écrire dans la console les commandes suivantes (aide : on peut reprendre une commande précédente en utilisant la touche flèche haute) : fill(200); En déduire à quoi correspondent chacun des nombres passés entre parenthèse à la fonction ellipse(). Consulter la documentation de la fonction ellipse() pour vérifier votre réponse. Deuxième exercice avec les outils de débogageRecharger la page exercice-debogage.html et, avec l'outil de débogage de Firefox, chercher dans le fichier exercice-debogage.js la ligne : ellipse(400,300,diametre); Insérer un point d'arrêt sur cette ligne et créer une nouvelle expression espionne sur la variable diametre. Mettre enfin le fichier p5.js dans une boîte noire. Recharger la page et exécuter pas à pas le programme avec les outils de débogage. Suivre au fur et à mesure de l'exécution du programme l'évolution de la valeur de la variable diametre. Quelle est la ligne de code qui permet de faire évoluer la taille du disque ? Application n°1 : Créer un petit programme de dessinOuvrir dans un éditeur de texte (comme Notepad++ ou Sublimtext) le fichiers application-1_dessin.js. Ce programme est normalement appelé par le fichier html application-1_dessin.html. Ce fichier contient deux fonctions (on verra ce qu'est une fonction à la partie suivante) :
Le but de cette partie est de créer un petit programme de dessin. Ne pas hésiter à tester des bouts de code dans la console, ou à consulter la documentation 8. On écrira du code javascript uniquement dans la fonction draw() (chercher le commentaire indiquant le début de l'exercice).Travail à effectuer :
Apprendre le javascript (suite) : les fonctionsReprendre le livre JavaScript Éloquent et lire maintenant le chapitre suivant (mais ne pas y passer plus d'une séance, tant pis si vous n'avez pas tout lu) : Fonctions 10 Application n°2 : Transformer votre clavier en pianoCette fois on travaillera avec le fichier application-2_piano.js. Vérifier qu'il est bien appelé par le fichier HTML application-2_piano.html. Au passage vous remarquerez qu'en plus de la bibliothèque p5.js on utilise p5.sound.js (qui est la partie de p5.js qui permet de gérer les sons). La documentation de la bibliothèque p5.sound.js se trouve ici 11. Ouvrir le fichier application-2_piano.js avec un éditeur. Vous observerez qu'il contient déjà :
Ouvrir le fichier application-2_piano.html dans un navigateur. Normalement vous devez avoir le son de la mesure (un bruit de tambour, une fois par seconde). Vérifier que le son fonctionne (utiliser des écouteurs pour ne pas déranger vos voisins). Le but de cette partie est de transformer le clavier de l'ordinateur en piano, capable de jouer des notes sur plusieurs octaves. Pour cela, on donne les fréquences des notes pour l'octave n°3 :
Sachant que pour une autre octave les notes s'en déduisent par : fréquence de l'octave n = fréquence de l'octave 3 multipliée par (2 à la puissance [n-3]) Travail à effectuer :
Apprendre le javascript (fin) : les tableauReprendre le livre JavaScript Éloquent et lire maintenant le chapitre d'après (mais ne pas y passer plus d'une séance, tant pis si vous n'avez pas tout lu) : Structures de données : objets et tableaux 14 Application n°3 : Faire voler un dragonLe fichier javascript de la troisième application s'appelle application-3_sprites.js et est appelé dans le fichier html correspondant (on appelle sprite, ou lutin, un élément graphique qui peut se déplacer sur l'écran). Le but de cette application est de créer une animation avec un dragon puis un rouge-gorge. Les images à utiliser se trouvent dans le répertoire assets/images/ .Attention : si le nom de l'image n'est pas correct, le programme peut bloquer sur Loading, sans afficher de message d'erreur dans la console. Travail à effectuer :
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Links:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Post date: 2017-11-03 19:26:15 Post date GMT: 2017-11-03 18:26:15 Post modified date: 2017-11-07 13:26:27 Post modified date GMT: 2017-11-07 12:26:27 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Export date: Wed Feb 26 14:56:39 2025 / +0000 GMT This page was exported from Enseignement de l'informatique et du numérique au lycée Boissy d'Anglas [ https://icn-isn-boissy.yj.fr/wp ] Export of Post and Page has been powered by [ Universal Post Manager ] plugin from www.ProfProjects.com |