added a pointer to the knob

This commit is contained in:
2025-02-23 17:05:46 +01:00
parent d7d3603dc7
commit 9276965f7b

13
knob.py
View File

@ -1,4 +1,5 @@
import pygame import pygame
import math
class Knob: class Knob:
@ -7,7 +8,17 @@ class Knob:
self.radius = screen.get_width()/20 self.radius = screen.get_width()/20
self.fill_color = (255,0,255) self.fill_color = (255,0,255)
self.position = (screen.get_width()/2, screen.get_height()/2) self.position = (screen.get_width()/2, screen.get_height()/2)
self.value = 0.1
def set_value(self, value):
self.value = value
def get_pointer_position(self):
x = self.radius * math.cos((self.value * 2 + 0.5) * math.pi) + self.position[0]
y = self.radius * math.sin((self.value * 2 + 0.5) * math.pi) + self.position[1]
return(x, y)
def display(self): def display(self):
pygame.draw.circle(self.screen, self.fill_color , self.position, self.radius) pygame.draw.circle(self.screen, self.fill_color, self.position, self.radius)
pygame.draw.line(self.screen, "black", self.position, self.get_pointer_position(), 3)