アットウィキロゴ

package polygon;
 
 
public class pro {
 
   int px,py,avgx,avgy;
   int th,r; 
   int x1,y1;
   int[] rs=new int[36];
 
    public static void main(String[] args) {
       pro test=new pro();
    }
 
   pro(){ 
 
 
       px=200;
       py=200;
 
 
       search(px,py);
 
 
         System.out.println(px+","+py);
 
 
 
 
 
 
   }
   void search(int px1,int py1){
 
       int x1,y1,e;
       int mode;
       x1=0;
       y1=0;
       mode=0;
      px=px1;
       py=py1;
 
       while(mode<50){
 
 
       polygon(px,py);
 
       px=avgx;
       py=avgy;
 
       e=(px-x1)*(px-x1)+(py-y1)*(py-y1);
 
       if(e<10)mode=100;
       x1=px;
       y1=py;
 
       }
 
 
 
   }
   void polygon(int px2,int py2){
 
       int h;
 
   for(th=0;th<36;th++){
     rs[th]=0;
     for(r=0;r<500;r++){
     circle(px2,py2,r,th);
     h=0;
     if(x1<500)h=h+1;
     if(y1<500)h=h+1;
     if(x1>100)h=h+1;
     if(y1>0)h=h+1;
     if(h==4)rs[th]=r;
     }
 
     }
 
     avgx=0;
     avgy=0;
 
        for(th=0;th<36;th++){
        circle(px2,py2,rs[th],th);
        avgx=x1+avgx;
         avgy=y1+avgy;
        }
        avgx=avgx/36;
        avgy=avgy/36;
 
 
   }
void circle(int px,int py,int r,int th){
x1=px+(int)(r*Math.cos(th*Math.PI/18));
y1=py+(int)(r*Math.sin(th*Math.PI/18));   
}
 
}
 
最終更新:2014年04月24日 20:01