klasa regal

This commit is contained in:
s473561 2023-03-21 12:36:50 +01:00
parent c4d21146a9
commit 4049d92e25
2 changed files with 48 additions and 1 deletions

14
main.py
View File

@ -1,5 +1,6 @@
import pygame
import sys import sys
import pygame
import regal
pygame.init() pygame.init()
screen = pygame.display.set_mode((980, 980)) screen = pygame.display.set_mode((980, 980))
@ -28,6 +29,7 @@ class Wozek:
def main(): def main():
wozek = Wozek() wozek = Wozek()
while True: while True:
for event in pygame.event.get(): for event in pygame.event.get():
@ -48,10 +50,20 @@ def main():
if wozek.x >= 100: if wozek.x >= 100:
wozek.x -= 80 wozek.x -= 80
# Drawing # Drawing
screen.fill((0, 0, 0)) # removes object trail screen.fill((0, 0, 0)) # removes object trail
# idRegału, Długość regału podana w kratkach, Współrzędne od których ma być tworzony regał (wiersz,kolumna) - poziomo
# Współrzędne od (1,1) do (10,10)
regal1 = regal.Regal(1, 5, 1, 1)
regal.Regal(2, 10, 2, 3)
regal.Regal(3, 2, 3, 7)
regal.Regal(4, 1, 10, 10)
draw_grid() draw_grid()
wozek.draw() wozek.draw()
pygame.display.flip() # updating frames pygame.display.flip() # updating frames

35
regal.py Normal file
View File

@ -0,0 +1,35 @@
import pygame
from main import screen
def obliczPixeleNaPodstawieKratek(wymiar): #Przeliczanie współrzędnych podanych w kratkach na pixele
i = 1
pixele = 100
while (i < wymiar):
pixele = pixele + 80
i = i + 1
return pixele
def obliczPixeleDlugosciRegalu(self): #Przeliczanie dlugości regału podanego w kratkach na pixele
i = 1
dlugoscRegalu = 40
while (i < self.dlugoscRegaluWKratkach) and (i <= 11 - self.numerKolumny): #Sprawdzenie, żeby regał nie wychodził poza plansze, jeżeli tak to jest ucinany tak, żeby nie wychodził
dlugoscRegalu = dlugoscRegalu + 80
i = i + 1
return dlugoscRegalu
class Regal:
def __init__(self, numerRegalu, dlugoscRegaluWKratkach, numerWiersza, numerKolumny):
self.numerRegalu = numerRegalu
self.wysokoscRegalu = 40
self.dlugoscRegaluWKratkach = dlugoscRegaluWKratkach
self.numerKolumny = numerKolumny
self.wiersz = obliczPixeleNaPodstawieKratek(numerWiersza)
self.kolumna = obliczPixeleNaPodstawieKratek(numerKolumny)
self.dlugosc = obliczPixeleDlugosciRegalu(self)
reg = pygame.Surface([self.dlugosc, self.wysokoscRegalu])
reg.fill((255, 0, 0))
screen.blit(reg, (self.wiersz, self.kolumna))