Explication sur la séquence pygame en ISN

This commit is contained in:
Bertrand Benjamin 2018-04-03 14:01:18 +03:00
parent 391b5949c3
commit 449a76d5a6
2 changed files with 49 additions and 7 deletions

View File

@ -19,15 +19,9 @@ color_border = RED
running = True
while running:
basic_font = pygame.font.SysFont(None, 48)
text = basic_font.render('Hello world!', True, color_text ,BLUE)
text_rect = text.get_rect()
text_rect.centerx = windowSurface.get_rect().centerx
text_rect.centery = windowSurface.get_rect().centery
windowSurface.fill(color_background)
pygame.draw.polygon(windowSurface, color_polygon,
pygame.draw.polygon(windowSurface, color_polygon,
((146, 0), (291, 106), (236, 277), (56, 277), (0, 106))
)
@ -44,6 +38,12 @@ while running:
text_rect.width + 40, text_rect.height + 40)
)
basic_font = pygame.font.SysFont(None, 48)
text = basic_font.render('Hello world!', True, color_text ,BLUE)
text_rect = text.get_rect()
text_rect.centerx = windowSurface.get_rect().centerx
text_rect.centery = windowSurface.get_rect().centery
windowSurface.blit(text, text_rect)
pygame.display.update()

42
ISN/pygame/index.rst Normal file
View File

@ -0,0 +1,42 @@
Découverte de Pygame pour l'ISN en 2017-2018
############################################
:date: 2018-04-03
:modified: 2018-04-03
:authors: Bertrand Benjamin
:category: ISN
:tags: Programmation
:summary: Découverte de la librairie Pygame avec la classe d'ISN en 2017-2018
Étape 1: découverte de Pygame
=============================
Les élèves travaillent sur `le programme draw.py <./draw.py>`_.
Ils doivent l'exécuter, commenter chaque ligne en expliquant ce qu'il s'y passe et se construire un mémo des fonctions de Pygame.
Ils sont très fortement invité à modifier le programme pour se l'approprier.
On coupera régulièrement la séance pour faire des petits bilans sur les questions intéressantes que se posent les élèves. Voici quelques sujets qui seront sans aucuns doutes traités (quitte à les pousser!):
- La couleur et le code RGB
- Le repère et les coordonnées dans Pygame
- Les coordonnées dans les fonctions pour tracer les éléments
- la gestion des évènements
Il est intéressant de faire cette étape sur 2 séances. Cela renforcera l'intérêt de faire de bons commentaires, de bien prendre des notes et de sauvegarder son travail (...!).
Étape 2: Projet Snake
=====================
Le but est de refaire le `jeu snake <./snake.pdf>`_.
Ce projet est décomposer en étapes. Les premières sont à faire dans l'ordre mais on peut laisser à partir de l'étape 4 la liberté aux élèves d'ajouter des étapes ou de faire les étapes dans l'ordre qui leur convient le mieux.
Pour les accompagner, on peut leur donner `ce modèle <./pygame_base.py>`_ pour commencer un projet Pygame.
Quelques mois après cette séquence, des élèves m'ont demandé une version de ce projet codé. La voici:
- `snake version avancé <./snake_corr.py>`_ (Il y a potentiellement encore des milliers de choses à ajouter!)
- `Explication sur la géométrie de la fenêtre <./snake_expl.pdf>`_