finished gelb

This commit is contained in:
Kieran McAuliffe 2025-09-30 11:13:50 +02:00
parent 44b7caed76
commit 06524577ff

View File

@ -20,20 +20,22 @@ client = udp_client.SimpleUDPClient(args.ip, args.port)
angle = 0 angle = 0
magnitude = 0 magnitude = 0
mean = 74.1 mean = 74.1
client.send_message("/color", "yellow")
for msg in mid.tracks[1]: for msg in mid.tracks[1]:
t = mido.tick2second(msg.time, mid.ticks_per_beat, 1000000) t = mido.tick2second(msg.time, mid.ticks_per_beat, 1000000)
beats = msg.time / mid.ticks_per_beat beats = msg.time / mid.ticks_per_beat
time.sleep(t)
rotation = 2 * math.pi * beats / 16 rotation = 2 * math.pi * beats / 16
angle += rotation angle += rotation
magnitude += beats * 3 magnitude += beats * 3
if msg.type != "note_on" or msg.time == 0: if msg.type != "note_on" or msg.time == 0:
time.sleep(t)
continue continue
print(msg.note)
adj_angle = angle + (msg.note - mean) / 9 adj_angle = angle + (msg.note - mean) / 9
y = math.sin(adj_angle) * magnitude y = math.sin(adj_angle) * magnitude
x = math.cos(adj_angle) * magnitude x = math.cos(adj_angle) * magnitude
client.send_message("/tcp_coordinates", (x, y, 6, 0, 0, 0)) client.send_message("/tcp_coordinates", (x, y, 6, 0, 0, 0))
time.sleep(t)