transfer to other computer
This commit is contained in:
parent
0d8e0a85c7
commit
2f7f6d0a1c
57
eisblau.py
Normal file
57
eisblau.py
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
import argparse
|
||||||
|
import math
|
||||||
|
import time
|
||||||
|
from mido import MidiFile
|
||||||
|
from pythonosc import udp_client
|
||||||
|
import mido
|
||||||
|
import random
|
||||||
|
|
||||||
|
mid = MidiFile('7eisblau.mid')
|
||||||
|
|
||||||
|
random.seed(10)
|
||||||
|
|
||||||
|
parser = argparse.ArgumentParser()
|
||||||
|
parser.add_argument("--ip", default="127.0.0.1",
|
||||||
|
help="The ip of the OSC server")
|
||||||
|
parser.add_argument("--port", type=int, default=5005,
|
||||||
|
help="The port the OSC server is listening on")
|
||||||
|
args = parser.parse_args()
|
||||||
|
|
||||||
|
client = udp_client.SimpleUDPClient(args.ip, args.port)
|
||||||
|
client.send_message("/color", "blue")
|
||||||
|
|
||||||
|
|
||||||
|
accrued_time = 0
|
||||||
|
note_count = 0
|
||||||
|
coor = (50, 50)
|
||||||
|
direction = [1, 0]
|
||||||
|
|
||||||
|
|
||||||
|
client.send_message("/tcp_coordinates", (50, 50, 0, 0, 0, 0))
|
||||||
|
for msg in mid.tracks[1]:
|
||||||
|
t = mido.tick2second(msg.time, mid.ticks_per_beat, 1000000)
|
||||||
|
beats = msg.time / mid.ticks_per_beat
|
||||||
|
accrued_time += t
|
||||||
|
if msg.type != "note_on" or msg.time == 0:
|
||||||
|
time.sleep(t)
|
||||||
|
continue
|
||||||
|
note_count += 1
|
||||||
|
if note_count > 4:
|
||||||
|
note_count = 0
|
||||||
|
coor = (coor[0] + direction[0] * accrued_time * 21, coor[1] + direction[1] * accrued_time * 21)
|
||||||
|
client.send_message("/tcp_coordinates", (coor[0], coor[1], 6, 0, 0, 0))
|
||||||
|
accrued_time = 0
|
||||||
|
for i, m in enumerate(direction):
|
||||||
|
if m != 0:
|
||||||
|
direction[i] = 0
|
||||||
|
else:
|
||||||
|
direction[i] = random.choice((1, -1))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
print(msg.note)
|
||||||
|
time.sleep(t)
|
||||||
|
|
||||||
|
|
||||||
|
client.send_message("/tcp_coordinates", (coor[0], coor[1], 0, 0, 0, 0))
|
@ -39,3 +39,5 @@ for msg in mid.tracks[1]:
|
|||||||
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)
|
time.sleep(t)
|
||||||
|
|
||||||
|
client.send_message("/tcp_coordinates", (x, y, 0, 0, 0, 0))
|
4
main.py
4
main.py
@ -20,12 +20,14 @@ def color_handler(unused_addr, c):
|
|||||||
t.pencolor(c)
|
t.pencolor(c)
|
||||||
|
|
||||||
def coordinate_handler(unused_addr, x, y, z, roll, pitch, yaw):
|
def coordinate_handler(unused_addr, x, y, z, roll, pitch, yaw):
|
||||||
|
prev_size = t.pensize
|
||||||
t.pen(pensize=z)
|
t.pen(pensize=z)
|
||||||
if z <= 0:
|
if z <= 0:
|
||||||
t.penup()
|
t.penup()
|
||||||
else:
|
else:
|
||||||
t.pendown()
|
t.pendown()
|
||||||
|
if prev_size == 0:
|
||||||
|
t.dot()
|
||||||
t.goto(x, y)
|
t.goto(x, y)
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
57
rot.py
Normal file
57
rot.py
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
import argparse
|
||||||
|
import math
|
||||||
|
import time
|
||||||
|
from mido import MidiFile
|
||||||
|
from pythonosc import udp_client
|
||||||
|
import mido
|
||||||
|
import random
|
||||||
|
|
||||||
|
mid = MidiFile('6rot.mid')
|
||||||
|
|
||||||
|
random.seed(10)
|
||||||
|
|
||||||
|
parser = argparse.ArgumentParser()
|
||||||
|
parser.add_argument("--ip", default="127.0.0.1",
|
||||||
|
help="The ip of the OSC server")
|
||||||
|
parser.add_argument("--port", type=int, default=5005,
|
||||||
|
help="The port the OSC server is listening on")
|
||||||
|
args = parser.parse_args()
|
||||||
|
|
||||||
|
client = udp_client.SimpleUDPClient(args.ip, args.port)
|
||||||
|
client.send_message("/color", "red")
|
||||||
|
|
||||||
|
|
||||||
|
accrued_time = 0
|
||||||
|
note_count = 0
|
||||||
|
center = (50, 50)
|
||||||
|
radius = 10
|
||||||
|
direction = [1, 0]
|
||||||
|
|
||||||
|
|
||||||
|
client.send_message("/tcp_coordinates", (50, 50, 0, 0, 0, 0))
|
||||||
|
for msg in mid.tracks[1]:
|
||||||
|
t = mido.tick2second(msg.time, mid.ticks_per_beat, 1000000)
|
||||||
|
beats = msg.time / mid.ticks_per_beat
|
||||||
|
accrued_time += t
|
||||||
|
if msg.type != "note_on" or msg.time == 0 or msg.velocity == 0:
|
||||||
|
time.sleep(t)
|
||||||
|
continue
|
||||||
|
print(msg.note)
|
||||||
|
|
||||||
|
note_count += 1
|
||||||
|
client.send_message("/tcp_coordinates", (center[0], center[1], 6, 0, 0, 0))
|
||||||
|
|
||||||
|
client.send_message("/tcp_coordinates", (center[0], center[1], 0, 0, 0, 0))
|
||||||
|
if note_count > 4:
|
||||||
|
client.send_message("/tcp_coordinates", (center[0], center[1], 0, 0, 0, 0))
|
||||||
|
center = (random.randint(0, 300), random.randint(0, 300))
|
||||||
|
client.send_message("/tcp_coordinates", (center[0], center[1], 0, 0, 0, 0))
|
||||||
|
|
||||||
|
note_count = 0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
time.sleep(t)
|
||||||
|
|
||||||
|
|
||||||
|
client.send_message("/tcp_coordinates", (coor[0], coor[1], 0, 0, 0, 0))
|
Loading…
Reference in New Issue
Block a user