MagPI 3 Page 27

De Le French MagPi
Aller à : Navigation, rechercher

Nous réalisons du noir transparent sur la surface du soleil en ajoutant la ligne : soleil.set_colorkey([0,0,0]) Cela signifie que tout ce qui sera dessiné sur la surface rectangulaire du soleil dans la couleur [0,0,0] sera transparent. Les graphiques sur les surfaces du dessous seront vues dans les zones transparentes. Maintenant nous modifions les positions x,y de la surface du soleil. Nous utiliserons les coordonnées de la souris pour la position du soleil et le programme restera dans une boucle.

  1. THREE SURFACES V2
  2. By Jaseman - 13 June 2012
  3. TROIS SURFACES V2
  4. Traduit par SF - 23 Juillet 2012

import sys, os, pygame; from pygame.locals import * pygame.init(); horloge = pygame.time.Clock() os.environ['SDL_VIDEO_WINDOW_POS'] = 'center' pygame.display.set_caption("Trois Surfaces") ecran = pygame.display.set_mode([400,200],0,32) # L'écran principal screen ciel = pygame.Surface((400,200)) # La surface ciel ciel.fill((200,255,255)) # Rempli la surface ciel en bleu herbe = pygame.Surface((400,100)) # La surface herbe herbe.fill((50,150,50)) # Rempli la surface herbe en vert soleil = pygame.Surface((40,40)) # La surface soleil soleil.set_colorkey([0,0,0]) pygame.draw.circle(soleil,(255,255,0),(20,20),20) while True: # Une boucle infinie pour garder l'éxecution du programme for event in pygame.event.get(): if event.type == QUIT: pygame.quit() sys.exit() sourisx,sourisy = pygame.mouse.get_pos() ecran.blit(ciel,(0,0)) # Place la surface ciel en x,y ecran.blit(soleil,(sourisx,sourisy)) # Place la surface soleil en x,y ecran.blit(herbe,(0,100)) # Place la surface herbe en x,y grass pygame.display.update()

Lorsque vous exécutez le programme et que vous déplacez la souris, regardez le comportement du soleil. Si vous bougez le soleil sous le niveau de l'herbe, il passe sous la surface de l'herbe. C'est dû à l'ordre de positionnement des surfaces à l'écran. Si vous intervertissez les commandes screen.blit pour le soleil et l'herbe, alors le soleil passera sous la surface de l'herbe. Un gestionnaire d'évènement ("event handler") a été ajouté dans la section "while True" pour gérer l'évènement QUIT. Cela permet de fermer le programme plus proprement lorsque vous souhaitez le quitter.

Outils personnels
Espaces de noms

Variantes
Actions
Navigation
Boîte à outils