// コッホ曲線(向きを乱数) [Kochr.java] import java.awt.*; public class Kochr extends Koch { // Koch.javaを継承 //============== 向きを乱数にしたコッホ曲線 ============== public void rkoch(Graphics g,int nn) { double x,y,angR; if (nn <= 0) { angR=Math.PI/180.0*ang; // ラジアンに変換 x=len*Math.cos(angR)+x0; //(f) xの計算 y=len*Math.sin(angR)+y0; //(f) yの計算 g.drawLine((int)x0,(int)(160-y0),(int)x,(int)(160-y)); x0=x; y0=y; // x,yの置き換え return; } int r=(Math.random() > 0.5 ) ? 1: -1; // 乱数 rkoch(g,nn-1); //(g) ang=ang+r*60; rkoch(g,nn-1); //(g) 60度回転 ang=ang-r*120; rkoch(g,nn-1); //(g) -120度回転 ang=ang+r*60; rkoch(g,nn-1); //(g) 60度回転 } //end rkoch } //end Kochr