Skip to content

Instantly share code, notes, and snippets.

@roundrobin
Created July 13, 2012 02:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save roundrobin/3102359 to your computer and use it in GitHub Desktop.
Save roundrobin/3102359 to your computer and use it in GitHub Desktop.
just another inlet to tributary
var r = 153
var i = 0;
var draw = false
var element;
var element2;
keyup = function(){element = undefined;element2 = undefined};
keydown = function(){};
keypress = function(){
console.log('Hello',this,d3.event)
var keyChar = d3.event.keyCode
console.log(keyChar)
if(keyChar == 100){
charD()
}
if(keyChar == 99){
charC()
}
i++;
}
function charD(){
if(element2){
console.log(element)
if(i % 10 == 0)
element2.attr('r',Math.random(2)*40)
element2.attr('transform','translate('+[Math.random(2)*800,Math.random(2)*80]+')')
}else{
element2 = g.append('rect')
.attr('width',Math.random(2)*40)
.attr('height',Math.random(2)*40)
.attr('x',Math.random(2)*900)
.attr('y',Math.random(2)*400)
.attr('id','element')
}
}
function charC(){
if(element){
console.log(element)
if(i % 10 == 0)
element.attr('r',Math.random(2)*40)
element.attr('transform','translate('+[Math.random(2)*800,Math.random(2)*80]+')')
}else{
element = g.append('circle')
g.append('circle').attr('r',Math.random(2)*40)
.attr('cx',Math.random(2)*900)
.attr('cy',Math.random(2)*400)
.attr('id','element')
}
}
d3.select(window).on("keypress", keypress);
d3.select(window).on("keyup", keyup);
d3.select(window).on("keydown", keydown);
g.append('text').text('The Drawing Piano')
.attr('y',50).attr('x',500).attr('font-size',50)
g.append('text').text('Use your keyboard to paint your dreams')
.attr('y',91).attr('x',503).attr('font-size',23)
g.append('path')
.attr('d','M100,100')
.attr('stroke-width',11.56)
.attr('stroke','black')
.attr('fill','none')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment