О модальных операторах в Blender Python - PullRequest
0 голосов
/ 23 сентября 2019

Я хочу создать программу, которая использует модальные операторы для продолжения печати («тест») каждые 0,01 секунды в Python Blender.

Я также хочу выйти, когда я нажимаю клавишу Esc.

Что я могу сделать?

Я написал и выполнил следующий код, но Blender зависает.Использование модального оператора, похоже, позволяет избежать зависания, но я не был уверен, как его использовать.

import time
import threading

#A function that keeps executing print ("test")
def worker():
    while True:
        print("test")

def schedule(interval, f, wait=True):
    base_time = time.time()
    next_time = 0
    while True:
        t = threading.Thread(target=f)
        t.start()
        if wait:
            t.join()
        next_time = ((base_time - time.time()) % interval) or interval
        time.sleep(next_time)

#Execute worker function every 0.01 second
schedule(0.01, worker, False)
...