MAN/Fraktale
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>Java</language>
== Julia-Menge ==
<code id="4d8cd536683a3">
double reC, imC;
int checkZo(double reZ_minus1,double imZ_minus1) {
double reZ,imZ;
int i;
for (i=0;i<50;i++) // Iteration
{
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; //Prüfung der Fluchtschranke
reZ_minus1=reZ;
imZ_minus1=imZ;
}
return i;
}
void start(double a,double b) {
double reZo, imZo, zelle=0.0065; // Ein Pixel = 0.0065
int i;
canvas.clear(0,0,500,200); // Löschen und Formatieren der Zeichenfläche
reC = a; // -0.65175;
imC = b; // 0.41850;
imZo=0; // oberer Rand
for (int y=0;y<200;y++) //Zeilen
{
reZo=-0.1; // linker Rand
for (int x=0;x<500;x++) //Spalten
{
i=checkZo(reZo,imZo);
canvas.setColor(255-i%10*25,255-i%20*12,255-i%5*50); // Farbe Juliamenge in RGB
canvas.fillRect(x, y, 1, 1); // Punkt zeichnen
reZo=reZo+zelle; // nächste Spalte
}
imZo=imZo+zelle; // nächste Zeile
}
}
</code>
<run id="4d8cd53668408">start(-0.65175,0.41850); // start(double reC, double imC)
</run>
<canvas></canvas>