アットウィキロゴ

あにうめx

var x=new Array();
var y=new Array();
var dir=new Array();
var number_dir=new Array();
var link_a=new Array();
var link_b=new Array();
var number_link;
var card_a=new Array();
var card_b=new Array();
var number_card;
 
 
function sample(){
 
tx=0;    
for(s=1;s<11;s++){
for(sx=1;sx<11;sx++){
tx=tx+1;  
x[tx]=s;
y[tx]=sx;
}       
}
 
for(s=1;s<101;s++){
dir[s]=new Array();   
}
 
for(s=1;s<101;s++){
tx=0;
for(s1=-1;s1<2;s1++){
for(s2=-1;s2<2;s2++){
x1=x[s]+s1;
y1=y[s]+s2;
sx=search(x1,y1);
if(sx==s)sx=0;
if(sx>0)tx=tx+1;
if(sx>0)dir[s][tx]=sx;
}    
}    
number_dir[s]=tx;    
}
 
 
link_a[1]=1;
link_b[1]=dir[1][1];
 
number_link=1;
 
var timer;
var delay = 1000;
 
 
var loop = function () {
 
 
card();
 
number_link=number_link+1;
 
n1=number_card*Math.random();
n2=Math.floor(n1)+1;
link_a[number_link]=card_a[n2];
link_b[number_link]=card_b[n2];
 
 
paint();
 
if(number_link>100)fresh();
 
clearTimeout(timer);
timer = setTimeout(loop, delay);
}
 
loop();
 
 
}
function card(){
 
    var c=new Array();
    var d=new Array();
 
    for(s=1;s<number_link+1;s++){
    sx=link_a[s];
    c[sx]=100;
    sx=link_b[s];
    c[sx]=100;
    }
 
 
    sx=0;
     for(s=1;s<101;s++){
    if(c[s]>50)sx=sx+1; 
    if(c[s]>50)d[sx]=s; 
    }
 
    number_d=sx;
 
   var sublink_a=new Array();
   var sublink_b=new Array();
 
   tx=0;
    for(s=1;s<number_d+1;s++){
    s1=d[s];
    for(sx=1;sx<number_dir[s1]+1;sx++){
    tx=tx+1;
    sublink_a[tx]=s1;
    sublink_b[tx]=dir[s1][sx];
    } 
    }
 
    number_sub=tx;
 
 
number_card=0;
 
    for(s=1;s<number_sub+1;s++){
    s1=sublink_a[s];
    s2=sublink_b[s];
    z=0;
    for(sx=1;sx<number_link+1;sx++){
    h=0;
    if(link_a[sx]==s1)h=h+1;    
    if(link_b[sx]==s2)h=h+1;  
    if(h==2)z=100;
    h=0;
    if(link_a[sx]==s2)h=h+1;    
    if(link_b[sx]==s1)h=h+1;  
    if(h==2)z=100;
    }
 
    for(sx=1;sx<number_card+1;sx++){
    h=0;
    if(card_a[sx]==s1)h=h+1;    
    if(card_b[sx]==s2)h=h+1;  
    if(h==2)z=100;
    h=0;
    if(card_a[sx]==s2)h=h+1;    
    if(card_b[sx]==s1)h=h+1;  
    if(h==2)z=100;
    }
 
     if(z<50)number_card=number_card+1;
    if(z<50)card_a[number_card]=s1;
    if(z<50)card_b[number_card]=s2;  
    }
 
 
 
 
 
}
 
 
 
function search(x1,y1){
 
    var s,sx,h;
    sx=0;
    for (s = 1; s < 101; s++) {
        h = 0;
        if (x[s] == x1) h = h + 1;
        if (y[s] == y1) h = h + 1;
        if (h == 2) sx = s;
    }
    return sx;
 
}
 
 
function paint(){
 
var sub=new svgpaint();
 
str="<svg width=\"500\" height=\"500\">";
 
str=str+sub.rect(0,0,500,500,"blue");
for(s=1;s<number_link+1;s++){    
s1=link_a[s];
s2=link_b[s];
str=str+sub.line(50*x[s1],50*y[s1],50*x[s2],50*y[s2],2,"black");
} 
 
str=str+"</svg>";
 
$("#memo").html(str);   
 
}
 
function fresh(){
 
number_link=1;
 
}
 
最終更新:2015年12月14日 00:21