Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pygame, random, math
- pygame.init()
- #Vastava suurusega aken (globaalsed muutujad)
- aknaMõõtmed = [300, 100]
- ekraan = pygame.display.set_mode(aknaMõõtmed)
- #Loome juhuslike väärtuste listi
- def looMüra(amplituud, sagedus):
- punktid = random.sample(range(100000 * amplituud), sagedus)
- punktid = [x / 100000 for x in punktid]
- return punktid
- #Interpoleerime juhuslikke väärtusi koosinuse kaalu abil
- def interpoleeri(eelmine, järgmine, x):
- x = x * math.pi
- kaal = 0.5 * (1 - math.cos(x))
- return eelmine * (1 - kaal) + järgmine * kaal
- amplituud = 100
- sagedus = 60
- müra = looMüra(amplituud, sagedus)
- print(müra)
- print(len(müra))
- while True:
- ekraan.fill((0,0,0))
- eelminePunkt = False
- for x in range(0, 300):
- müraXtäpne = x * len(müra) / 300
- müraX = int(müraXtäpne)
- müraY = int(interpoleeri(müra[müraX - 1], müra[müraX], müraX - müraXtäpne))
- punkt = [x, müraY]
- if eelminePunkt:
- pygame.draw.line(ekraan, (255, 255, 255), eelminePunkt, punkt)
- if abs(müraX - müraXtäpne) <= 0.0001:
- pygame.draw.circle(ekraan, (255, 0, 0), eelminePunkt, 2)
- eelminePunkt = punkt
- pygame.display.flip()
- pygame.time.delay(10)
- events = pygame.event.get()
- for event in events:
- if event.type == pygame.QUIT:
- exit()
- break;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement