Files
SantoscopeUI/main.py

48 lines
1.2 KiB
Python
Raw Normal View History

2025-02-23 15:26:53 +01:00
import pygame
2025-02-23 16:17:11 +01:00
from knob import *
2025-02-23 15:26:53 +01:00
# pygame setup
pygame.init()
2025-02-23 16:17:11 +01:00
screenW = 561
screenH = 325
screen = pygame.display.set_mode((screenW, screenH))
2025-02-23 21:11:49 +01:00
# Create and position the knobs
knobs_radius = screenW / 25
knobs_spacing = knobs_radius * 2
knobs_x = (screenW - (knobs_radius + knobs_spacing) * 2) / 2
x = knobs_x
knobs_y = (screenH - (knobs_radius + knobs_spacing) * 3) / 2
y = knobs_y
knobs = []
for i in range(8):
knobs.append(Knob(screen, (0, 210, 200), knobs_radius, (x, y)))
y += knobs_radius + knobs_spacing
if i == 3 or i == 6:
x += knobs_radius + knobs_spacing
y = knobs_y
2025-02-23 16:17:11 +01:00
2025-02-23 15:26:53 +01:00
clock = pygame.time.Clock()
running = True
while running:
# poll for events
# pygame.QUIT event means the user clicked X to close your window
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# fill the screen with a color to wipe away anything from last frame
2025-02-23 16:17:11 +01:00
screen.fill("black")
2025-02-23 15:26:53 +01:00
# RENDER YOUR GAME HERE
for i in range(8):
knobs[i].display()
2025-02-23 16:17:11 +01:00
pygame.draw.polygon(screen, "white", [(0, screenH/2), (screenW*3/19, screenH), (0, screenH)])
2025-02-23 15:26:53 +01:00
# flip() the display to put your work on screen
pygame.display.flip()
clock.tick(60) # limits FPS to 60
pygame.quit()