MAN/Fraktale

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

Julia-Menge
<code>
   double reC, imC;

 int checkZo(double reZ_minus1,double imZ_minus1) {
         double reZ,imZ;
        int i;
        for (i=0;i<47;i++) {
            imZ=2*reZ_minus1*imZ_minus1+imC;
            reZ=reZ_minus1*reZ_minus1-imZ_minus1*imZ_minus1+reC;
            if (reZ*reZ+imZ*imZ>4) return i;
            reZ_minus1=reZ;
            imZ_minus1=imZ;
        }
        return i;
    }

  void start() {
   double reZo, imZo, zelle=0.0065; // Ein Pixel = 0.0065
   canvas.clear();
        int x,y,iterationenZo;
        //Color colJulia = new Color(0,0,200); // Farbe Juliamenge
        reC = -0.65175;
        imC = 0.41850;

        imZo=-0.96; // oberer Rand
        canvas.setColor(0,0,200);
        for (y=0;y<300;y++) {
            reZo=-1.5; // linker Rand
            for (x=0;x<500;x++) {
                if (checkZo(reZo,imZo)==47) {
                    canvas.fillRect(x, y, 1, 1);
                }
                reZo=reZo+zelle; // nächste Spalte
            }
            imZo=imZo+zelle; // nächste Zeile
        }
    }
</code>
<run>
start();
</run>
<canvas></canvas>