Enoncé du TP
Transcription
Enoncé du TP
CPP_TP1 Programmation C++ SFML – TP1 G.COLIN Objectifs : Installer Code Blocks et SMFL Ecrire des premiers programmes en C++ et utiliser la bibliothèque SFML Ressources : Pour Code Blocks : de nombreuses ressources sur Internet pour l’utilisation de Code Blocks Pour SFML : http://www.sfml-dev.org/index-fr.php Installation : CodeBlocks est un IDE ou EDI en français: Environnement de Développement Intégré. Il permet d’éditer des programmes, de compiler les programmes, d’utiliser des bibliothèques pré-compilées. CodeBlock doit être installé sur le PC. Pour une utilisation personnelle, télécharger et installer Code Blocks pour Windows : codeblocks-13.12mingw-setup.exe. SFML est une bibliothèque de programmes destinée à développer des jeux vidéo ou des programmes interactifs. Elle est écrite en C++. Télécharger SFML 2.1 (GCC 4.7 TDM - 32 bits) – Placer le répertoire SFML-2.1 dans un répertoire nommé SFML, dans le répertoire TRAVAIL. Télécharger le projet 01_fenetre, à placer dans un répertoire nommé Projets, lui-même placé dans le répertoire SFML du répertoire TRAVAIL. Organiser les répertoires de la manière suivante : Le répertoire SFML contient 2 répertoires : - SFML-2.1 - Projets 1 – Création d’une première fenêtre. Premier programme : Exécuter Code Blocks Ouvrir le projet nommé « projet.cbp » se trouvant dans le répertoire 01_fenetre : File / Open Project files Le projet comporte un seul fichier source (main.cpp). Les fonctions utilisées sont des fonctions définies par SFML (des explications détaillées sont données sur le site http://www.sfml-dev.org/index-fr.php). On crée une fenêtre graphique appelée window de 600 x 600 pixels On crée un objet événement appelé event On lit la liste d’attente des événements dans la fenêtre window, tant que cette liste n’est pas vide On efface la fenêtre window On exécute le programme tant que la fenêtre window est ouverte On affiche la fenêtre window Si l’événement est de type « Closed » , on ferme la fenêtre window (et le programme s’arrête car voir ci-dessus) Compiler le projet : Build / Build Exécuter le programme : Build / Run une fenêtre noire doit apparaître L’exécutable se trouve alors dans le répertoire 01_fenetre : fenetre.exe et il peut être lancé indépendamment de Code Blocks Modifications du programme : Apporter les modifications ci-dessous, compiler et exécuter le programme. Sous Code Blocks, ouvrir le fichier « Couleur.h » se trouvant dans le répertoire : 01_fenetre\include Modifier le programme « main.cpp » pour avoir une fenêtre Bleu_Clair Les couleurs peuvent être personnalisées. Les valeurs RVB (Rouge Vert Bleu) peuvent être déterminées à l’aide du logiciel Paint. Créer une 2ème fenêtre nommée window2 de dimensions 200x200 pixels, avec un fond vert clair. L’application se fermera si la fenêtre window uniquement est fermée. Les lignes à dupliquer et à modifier sont les suivantes : Personnaliser le nom de cette 2ème fenêtre pour qu’on puisse identifier l’auteur du programme. Faire constater le fonctionnement au prof. 2 – Led - Bouton Télécharger le projet 02_led_bouton, à placer dans un répertoire nommé Projets, lui-même placé dans le répertoire SFML du répertoire TRAVAIL. Programme : Exécuter Code Blocks Ouvrir le projet nommé « projet.cbp » se trouvant dans le répertoire 02_led_bouton : File / Open Project files Le projet comporte un seul fichier source (main.cpp). Les fonctions « sf :: » utilisées sont définies dans les bibliothèques SFML. Les fonctions Led et Bouton, écrites par G.COLIN, sont incluses dans la bibliothèque libmede.a. Les nouveautés : On inclut la déclaration des fonctions utilisées pour créer des objets Led et Bouton On déclare un Bouton appelé bouton1, qui sera placé dans la fenêtre window, avec le texte ON On déclare une Led appelée led1 qui sera placée dans la fenêtre window On positionne led1 et bouton1 dans la fenêtre window Le programme principal : on lit l’état du bouton1 et si ce bouton est « cliqué », il retourne 1 (0 sinon) et on allume la led1 (led1.on()) sinon on éteint la led1 (led1.off()) Compiler le projet : Build / Build Exécuter le programme : Build / Run et tester le. L’exécutable se trouve alors dans le répertoire 02_led_bouton : led_bouton.exe et il peut être lancé indépendamment de Code Blocks Modifications du programme : Modifier le programme pour avoir le fonctionnement suivant : Un bouton « ON » permet d’allumer la led1 Un bouton « OFF » permet d’éteindre la led1 Compiler et tester le programme Modifier le programme en ajoutant une 2ème Led qui prend le même état que la led1. Personnaliser le nom de la fenêtre pour qu’on puisse identifier l’auteur du programme. Faire constater le fonctionnement au prof. 3 – Temps Télécharger le projet 03_temps, à placer dans un répertoire nommé Projets, lui-même placé dans le répertoire SFML du répertoire TRAVAIL. Exécuter Code Blocks Ouvrir le projet nommé « projet.cbp » se trouvant dans le répertoire 03_temps : File / Open Le projet comporte un seul fichier source (main.cpp). Les fonctions « sf :: » utilisées sont définies dans les bibliothèques SFML. Les fonctions Led, Bouton et Tempo, écrites par G.COLIN, sont incluses dans la bibliothèque libmede.a. Les nouveautés : On inclut le fichier Tempo.h On créer un objet Tempo, appelé t1. On lit la valeur de t1 qui retourne le temps en ms. Si le temps écoulé est > à 200ms, on effectue la partie du programme entre { } On lit la valeur de la led1, si elle est à 1 on la met à 0, sinon on la met à 1. On met la temporisation t1 à 0 Compiler le projet : Build / Build Exécuter le programme : Build / Run et tester le. Modifications du programme : Modifier le programme pour avoir le fonctionnement suivant : Dans la fenêtre principale, 1 led clignote à la fréquence de 2 Hertz et 1 led clignote à la fréquence de 1 Hertz Compiler et tester le programme Faire constater le fonctionnement au prof. 4 – Chenillard Télécharger le projet 04_chenillard, à placer dans un répertoire nommé Projets, lui-même placé dans le répertoire SFML du répertoire TRAVAIL. Exécuter Code Blocks Ouvrir le projet nommé « projet.cbp » se trouvant dans le répertoire 04_chenillard : File / Open On déclare 4 objets Led On déclare 4 booléens Si la tempo t1 est écoulée On lit l’état des leds, valeurs placées dans les booléens On place la led1 dans l’état de la led4 Compiler le projet : Build / Build Exécuter le programme : Build / Run et tester le. Modifications du programme : Modifier le programme pour avoir un chenillard avec décalage à gauche sur 4 leds. Compiler et tester le programme Faire constater le fonctionnement au prof. Modifier le programme pour avoir un chenillard avec décalage à gauche sur 8 leds. Compiler et tester le programme Faire constater le fonctionnement au prof.