Как сделать requestAnimationFrame в pyscriptPython

Программы на Python
Ответить
Anonymous
 Как сделать requestAnimationFrame в pyscript

Сообщение Anonymous »

Код: Выделить всё

from pyscript import document, window
from pyscript.ffi import create_proxy

class Canvas:
def __init__(self, id, width=64*9, height=64*9):
self.canvas = document.querySelector(id)
self.ctx = self.canvas.getContext('2d')
self.canvas.height = height
self.canvas.width = width
self.y = 100
self.set_bg_color('black')
self.animation()

def clear(self, color='black', pos=(0,0), size=None):
x,y = pos
if size:
width, height = size
else:
width, height = (self.canvas.width, self.canvas.height)
self.ctx.fillStyle = color
self.ctx.clearRect(x,y,width,height)

def set_bg_color(self, color):

self.ctx.fillStyle = color
self.ctx.fillRect(0, 0, self.canvas.width, self.canvas.height)

def animation(self):
self.ctx.fillStyle = 'red'
self.ctx.fillRect(100, self.y, 100, 100)
self.y += 1
self.clear()
proxy = create_proxy(self.animation)
window.requestAnimationFrame(proxy)
Я получаю эту ошибку в pyscript
Неперехваченная ошибка Python: TypeError: Canvas.animation() принимает 1 позиционный аргумент, но задано 2
Я попробовал передать event=None на всякий случай, но холст не появляется, но ошибок нет

Подробнее здесь: https://stackoverflow.com/questions/791 ... n-pyscript
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»