4 ms·
Just playing around: import js c = js.globals.document.createElement("canvas") js.globals.document.body.appendChild(c) ctx = c.getContext("2d")
by Retr0spectrum 11y ago
Just playing around:
import js
c = js.globals.document.createElement("canvas")
js.globals.document.body.appendChild(c)
ctx = c.getContext("2d")
ctx.fillRect(10, 10, 10, 10)
Edit: Here is a simple animation:
import js
import math
import time
c = js.globals.document.createElement("canvas")
js.globals.document.body.appendChild(c)
ctx = c.getContext("2d")
def render():
ctx.clearRect(0, 0, c.width, c.height)
t = time.time()
ctx.fillRect(20+math.sin(t*10)*10, 20+math.cos(t*10)*10, 10, 10)
js.globals.window.setInterval(render, 20)
Here's a version you can paste in properly: http://pastebin.com/raw.php?i=67GadSUV http://pastebin.com/raw.php?i=67GadSUV
- fragmede 11y agoSadly, if I paste that in, I get: >>> import js ... c = js.globals.document.createElement("canvas") ... debug: OperationError: debug: operror-type: SyntaxError debug: operror-value: ('EOL while scanning string literal', ('c callback', 1, 12, "r = c.push('import js\n", 0)) debug: OperationError: debug: operror-type: KeyError debug: operror-value: 'r' And then the input window hangs. Strangely enough, if I type it in instead, it's okay. (ChromeOS v43 beta-channel)
- Retr0spectrum 11y agoI think the only way around it is to paste each line separately. It seems to be caused by newline characters in the wrong place
- fragmede 11y ago'that' refers to import js c = js.globals.document.createElement("canvas") and not the pastebin. The pastebin works for me, but only the first time. Subsequent runs result in: <RuntimeError object at 0x15d648> RPython traceback: ... Fatal RPython error: