1 page = require('webpage').create()
3 page.viewportSize = { width: 400, height : 400 }
4 page.content = '<html><body><canvas id="surface"></canvas></body></html>'
7 el = document.getElementById 'surface'
8 context = el.getContext '2d'
9 width = window.innerWidth
10 height = window.innerHeight
18 imageData = context.createImageData(width, height)
19 pixels = imageData.data
27 if d < radius * radius
28 hue = 6 * (Math.atan2(ry, rx) + Math.PI) / (2 * Math.PI)
29 sat = Math.sqrt(d) / radius
33 v = 255 * (1 - sat * f)
34 w = 255 * (1 - sat * (1 - f))
35 pixels[i] = [255, v, u, u, w, 255, 255][g]
36 pixels[i + 1] = [w, 255, 255, v, u, u, w][g]
37 pixels[i + 2] = [u, u, w, 255, 255, v, u][g]
40 context.putImageData imageData, 0, 0
41 document.body.style.backgroundColor = 'white'
42 document.body.style.margin = '0px'
44 page.render('colorwheel.png')