Pygame

(Aller sur Thonny pour que ça fonctionne si on est chanceux)

Programme pour afficher une maison avec un toit :

import pygame

violet=(84,22,180)
orange=(255,127,0)
blanc=(255,255,255)

pygame.init()
screen = pygame.display.set_mode((640,480))
screen.fill(blanc)
pygame.draw.rect(screen,violet,(320,240,40,40))
pygame.draw.polygon(screen,orange, ( (320,240),(340,220),(359,240)))

pygame.display.flip()
continuer= True
while continuer:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            continuer= False
pygame.quit()

Programme pour dessiner des immeubles :

Sans fonction :

import pygame

violet=(84,22,180)
orange=(255,127,0)
blanc=(255,255,255)

pygame.init()
screen = pygame.display.set_mode((640,480))
screen.fill(blanc)
pygame.draw.rect(screen,violet,(320,440,40,40))
pygame.draw.rect(screen,orange,(320,400,40,40))
pygame.draw.rect(screen,violet,(320,360,40,40))
pygame.draw.rect(screen,orange,(320,320,40,40))
pygame.draw.rect(screen,violet,(320,280,40,40))
pygame.draw.rect(screen,orange,(320,240,40,40))
pygame.draw.rect(screen,violet,(320,200,40,40))
pygame.draw.rect(screen,orange,(320,160,40,40))




pygame.display.flip()
continuer= True
while continuer:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            continuer= False
pygame.quit()

Avec une fonction :

import pygame

violet=(84,22,180)
orange=(255,127,0)
blanc=(255,255,255)

pygame.init()
screen = pygame.display.set_mode((640,480))
screen.fill(blanc)

def immeuble(x,y,L,l,etage):
    pygame.draw.rect(screen,violet,(x,y,40,40))
    for i in range(etage):
        y=y-40
        pygame.draw.rect(screen,violet,(x,y,40,40))

immeuble(300,440,40,40,8)
immeuble(380,440,40,40,10)
immeuble(230,440,40,40,3)

pygame.display.flip()
continuer= True
while continuer:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            continuer= False
pygame.quit()

Correction :

import pygame

rouge=(255,0,0)
vert=(0,255,0)
gris=(100,100,100)
pygame.init()
L=640
H=480
a=L/20

def immeuble(i,etages,couleur):
    x=i*a
    y=H-etages*a
    pygame.draw.rect(screen,couleur,(x,y,a,etages*a))

screen=pygame.display.set_mode((L,H))
screen.fill(gris)

immeuble(5,4,vert)
immeuble(2,8,rouge)

pygame.display.flip()

Avec les toits :

import pygame

rouge=(255,0,0)
vert=(0,255,0)
gris=(100,100,100)
cyan=(0,255,255)
pygame.init()
L=640
H=480
a=L/20

def immeuble(i,etages,couleur):
    x=i*a
    y=H-etages*a
    pygame.draw.rect(screen,couleur,(x,y,a,etages*a))
    pygame.draw.polygon(screen,gris,((x,y),(x+a/2,y-a/2),(x+a,y)))

screen=pygame.display.set_mode((L,H))
screen.fill(cyan)

immeuble(5,4,vert)
immeuble(2,8,rouge)

pygame.display.flip()

Aucune réponse

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *