wiggler0xa1
wiggler0xa1
by Eshy Lavi
HTML
<body>
<button id="b" style="position:fixed;bottom:41px;left:80%;">
fill
</button>
<button id="d" style="position:fixed;bottom:41px;left:68%;">
looser
</button>
<button id="e" style="position:fixed;bottom:41px;left:53%;">
faster
</button>
<button id="bb" style="position:fixed;bottom:11px;left:80%;">
connected
</button>
<button id="d2" style="position:fixed;bottom:11px;left:68%;">
tighter
</button>
<button id="e2" style="position:fixed;bottom:11px;left:53%;">
slower
</button>
<div style="color:white;position:fixed;left:71.4%;top:3.6%;">
<p class="ps author" id='p1'>
</p>
<p class="ps es" id='p2'>
</p>
<p class="ps hy" id='p3'>
</p>
<p class="ps lavi" id="p4">
By Eshy Lavi
</p>
</div>
<canvas id="c" width="366" height="366" style="border:4px solid white;"></canvas>
</body>
CSS
body{background-color:black;}
.ps{margin:0;padding:0;}
JavaScript
var c = document.getElementById('c');
var ctx = c.getContext('2d');
var author = "Eshy Lavi try emailing me at the g."
var _r=243; var _b=228; var _g=213;
var _dg=2 ; var _dr=1 ; var _db=3 ;
var _a=1;
var xs=[] ; var ys=[]; //position arrays
var odiss=[]; //original distances
var diss=[]; //distances
var N=64; //N
var od_i=0;
var d_i=0;
var d_n=0;
var theta=0;
var rate=0.4;
var delta=15;
var c_w=document.getElementById('c').width;
var c_h=document.getElementById('c').height;
var maxrad=Math.floor(c_w/2)-10;
var radnow;
var xzero=Math.floor(c_w/2);
var yzero=Math.floor(c_h/2);
var dnf=true;
var oxs=[];var oys=[];
var rnr=0;var nrn=0;
var fillitv;
var fullyconnected=-1;
var j=0;
function updateps(){
document.getElementById('p1').innerHTML="N = "+N;
document.getElementById('p2').innerHTML="rate = "+rate.toFixed(2);
document.getElementById('p3').innerHTML="delta = "+delta.toFixed(2);
}
function filliter(){
fillitv*=-1;
if (fillitv>0)fullyconnected=-1;
}
function looserter(){
delta+=5;
updateps();
}
function fasterter(){
rate+=0.05;
updateps();
}
function loosertera(){
delta-=5;
updateps();
}
function fastertera(){
rate-=0.05;
updateps();
}
function connected(){
fullyconnected*=-1;
if (fullyconnected>0)fillitv=-1;
}
function init(){
updateps();
for (var i=0;i<N;i++){
radnow=/*Math.random()**/maxrad;
theta=(i*360/N);/*+Math.random()*360/N;*/
xs.push(xzero+radnow*Math.cos(theta/57.3));
ys.push(yzero-radnow*Math.sin(theta/57.3));
}
//od_i=0;
for (var iii=0;iii<N;iii++){
for (var ii=0;ii<N;ii++){
j=iii*N+ii;
odiss[j]=Math.sqrt((xs[iii]-xs[ii])*(xs[iii]-xs[ii])+(ys[iii]-ys[ii])*(ys[iii]-ys[ii]));
// od_i+=odiss[j];
}
}
fillitv=-1;
document.getElementById('b').onclick=function(){filliter();};
document.getElementById('d').onclick=function(){looserter();};
document.getElementById('e').onclick=function(){fasterter();};
...