TUIO protokoll implementation based on OSC protocol. It is implemented with the python-osc
libary.
http://www.tuio.org/?specification
http://opensoundcontrol.org/spec-1_0 and https://python-osc.readthedocs.io/en/latest/
pip3 install python-tuio
from pythontuio import TuioServer
from pythontuio import Cursor
server = TuioServer()
cursor = Cursor(123) # sets session_id to 123
cursor.velocity = (0.2,0.1)
cursor.motion_acceleration = 0.1
server.cursors.append(cursor)
i = 0
while i < 10:
i+=1
cursor.position = (0.5+0.01*i,0.5)
server.send_bundle()
time.sleep(0.1)
from pythontuio import TuioClient
from pythontuio import Cursor
from pythontuio import TuioListener
from threading import Thread
class MyListener(TuioListener):
def add_tuio_cursor(self, cursor: Cursor):
print("detect a new Cursor")
(...)
client = TuioClient(("localhost",3333))
t = Thread(target=client.start)
listener = MyListener()
client.add_listener(listener)
t.start()
from pythontuio import TuioClient
from pythontuio import Cursor
from pythontuio import TuioListener
from threading import Thread
def _add_tuio_cursor(self, cursor: Cursor):
print("detect a new Cursor")
(...)
client = TuioClient(("localhost",3333))
t = Thread(target=client.start)
listener = TuioListener()
listener.add_tuio_cursor = _add_tuio_cursor
client.add_listener(listener)
t.start()
Feel free to contribute inputs. Just start a MR with your changes.