Académique Documents
Professionnel Documents
Culture Documents
b.
Télécharger
Pygame.
• La
page
de
téléchargement
du
site
“officiel”
h8p://www.pygame.org
n’est
pas
à
jour.
– h8ps://bitbucket.org/pygame/pygame/downloads
– h8p://www.lfd.uci.edu/~gohlke/pythonlibs/#pygame
b.
Télécharger
Pygame.
Remarque
:
• Pour
tester
que
l’installa/on
s’est
bien
déroulé,
tapez
“import
pygame”
dans
votre
console.
pygame.init()
maSurface = pygame.display.set_mode((500,
300))
pygame.display.set_caption('Hello
SUPINFO')
while True:
for event in pygame.event.get():
...
while True:
for event in pygame.event.get():
...
if event.type == QUIT:
pygame.quit()
sys.exit()
pygame.display.update()
ini/alisa/on
Exécu/on
des
fonc/onnalités
du
programme
ini/alisa/on
Exécu/on
des
Souris,
Récep/on
fonc/onnalités
du
clavier
...
d’événements
programme
2. PREMIERS DESSINS.
maSurface = pygame.display.set_mode((l,h))
• Ce8e
commande
créé
donc
une
surface
de
l
pixels
de
large
sur
h
pixels
de
hauteur.
• Un
pixel
de
la
surface
est
reperé
par
un
t-‐uple
(x,y),
où
x
est
entre
0
et
l
-‐
1,
et
y
entre
0
et
h
-‐
1
0
1
2
3
4
5
6
7
8
b.
Les
couleurs.
Codage
des
couleurs
:
• Les
différentes
couleurs
des
pixels
sont
codées
en
RGB,
Red
Green
Blue.
• Une
couleur
sera
donc
représentée
par
un
t-‐uple
(r,g,b)
où
r,
g
et
b
sont
des
en/ers
entre
0
et
255.
b.
Les
couleurs.
Remarque
:
• Pour
améliorer
la
lisibilité
de
nos
codes,
on
prendra
l’habitude
de
déclarer
des
constantes
correspondantes
aux
différentes
couleurs
que
l’on
u/lisera
:
b.
Les
couleurs.
Remarque
:
• Par
défaut,
à
la
créa/on
d’une
surface,
celle-‐ci
est
noire.
maSurface.fill(COLOR)
• Par
défaut
épaisseur
vaut
0,
i.e.
le
rectangle
est
“plein”.
©
SUPINFO
Interna/onal
University
–
h8p://www.supinfo.com
2.
Premiers
dessins.
• Par
défaut
épaisseur
vaut
0,
i.e.
le
cercle
est
“plein”.
©
SUPINFO
Interna/onal
University
–
h8p://www.supinfo.com
2.
Premiers
dessins.
pygame.draw.rect(maSurface,BLUE,
(10,10,200,100))
pygame.draw.line(maSurface,BLUE,(20,200),
(200,250),5)
pygame.draw.circle(maSurface,WHITE,
(400,100),20)
pygame.draw.polygon(maSurface,BLACK,(
(400,70),(440,80),(440,130),(290,130),
(270,100)),1)
pygame.draw.ellipse(maSurface,GREEN,
(250,200,100,50))
while True:
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
pygame.display.update()
• Par
contre,
un
tel
objet
peut
être
passé
en
paramètre
aux
fonc/ons
de
dessins
des
rectangles
et
ellipses.
©
SUPINFO
Interna/onal
University
–
h8p://www.supinfo.com
2.
Premiers
dessins.
fond = pygame.image.load("fond.jpg”)
maSurface.blit(fond,(0,0))
ariane = pygame.image.load('avion.png')
maSurface.blit(ariane,(500,300))
fpsClock = pygame.time.Clock()
• À
la
fin
de
la
“boucle
de
jeu”,
après
la
mise
à
jour
de
la
surface
:
fpsClock.tick(FPS)
fond = pygame.image.load("fond.jpg”)
maSurface.blit(fond,(0,0))
ariane = pygame.image.load('avion.png')
y = 300
while True:
maSurface.blit(fond,(0,0))
y -= 5
maSurface.blit(ariane,(500,y))
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
pygame.display.update()
fpsClock.tick(FPS)
fontObj = pygame.font.Font
('freesansbold.ttf',48)
texteSurface = fontObj.render('Jolie
écorce',True,BLACK,WHITE)
texteRect = texteSurface.get_rect()
texteRect.topleft = (100,100)
maSurface.blit(texteSurface,texteRect)
fond = pygame.image.load("fond.jpg")
ariane = pygame.image.load('avion.png')
y = 300
pygame.key.set_repeat(t1,t2)
event.pos[0], event.pos[1]
fond = pygame.image.load("fond.jpg")
ariane = pygame.image.load('avion.png')
maSurface.blit(fond,(0,0))
maSurface.blit(ariane,(500,300))
while True:
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
if event.type == MOUSEBUTTONUP:
x,y = event.pos
maSurface.blit(fond,(0,0))
maSurface.blit(ariane,(x,y))
pygame.display.update()
THE END.