from flask import Flask, render_template, send_from_directory from flask_socketio import SocketIO, emit from plotbot import PlotBot from time import sleep, time from threading import Thread from gpiozero import Button app = Flask(__name__) socketio = SocketIO(app, async_mode='threading') bot = PlotBot() user_id = None timestamp = None background_thread = None background_run = True lines = [] def reset(): global user_id, lines user_id = None lines = [] socketio.emit('reset') notify() button = Button(18, pull_up=True, hold_time=2) button.when_held = reset def notify(broadcast=True): global user_id
from plotbot import PlotBot from time import sleep def drange(start, stop, step): r = start while True: yield r r += step if start < stop and r > stop or start > stop and r < stop: break b = PlotBot() def rect(x1, y1, x2, y2): for x in drange(x1, x2, 0.1): b.goto([x, y1]) sleep(.0005) for y in drange(y1, y2, 0.1): b.goto([x2, y]) sleep(.0005) for x in drange(x2, x1, -0.1): b.goto([x, y2]) sleep(.0005) for y in drange(y2, y1, -0.1): b.goto([x1, y]) sleep(.0005)