Explication sur la séquence pygame en ISN
This commit is contained in:
parent
391b5949c3
commit
449a76d5a6
@ -19,15 +19,9 @@ color_border = RED
|
|||||||
running = True
|
running = True
|
||||||
while running:
|
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)
|
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))
|
((146, 0), (291, 106), (236, 277), (56, 277), (0, 106))
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -44,6 +38,12 @@ while running:
|
|||||||
text_rect.width + 40, text_rect.height + 40)
|
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)
|
windowSurface.blit(text, text_rect)
|
||||||
|
|
||||||
pygame.display.update()
|
pygame.display.update()
|
||||||
|
42
ISN/pygame/index.rst
Normal file
42
ISN/pygame/index.rst
Normal 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>`_
|
||||||
|
|
Loading…
Reference in New Issue
Block a user