|
- Applets : Fraktale : Apfelmännchen 3 -
Apfelmännchen mit Animation. (In Erinnerung an mein erstes Apfelmännchen mit JavaScript ;-)
Einen Hauch schneller als mit JavaScript !
Apfelmaennchen3.java
import java.awt.*;
import java.applet.*;
public class Apfelmaennchen3 extends Applet {
public void init() {
setBackground(new Color(255,255,255)); //Hintergrundfarbe Applet
}
//C-Werte checken nach Zn+1 = Zn^2 + C, Zo = 0.
//100 Iterationen: Höherer Wert -> schärferes Bild
//bzw. Punkte werden langsamer gesetzt.
public int checkC(double reC,double imC) {
double reZ=0,imZ=0,reZ_minus1=0,imZ_minus1=0;
int i;
for (i=0;i<100;i++) {
imZ=2*reZ_minus1*imZ_minus1+imC;
reZ=reZ_minus1*reZ_minus1-imZ_minus1*imZ_minus1+reC;
if (reZ*reZ+imZ*imZ>200) return i;
reZ_minus1=reZ;
imZ_minus1=imZ;
}
return i;
}
//Punkte berechnen und setzen
//750000 C-Werte müssen 25 Iterationen überstehen.
//Vergrößerung: 100. Nullpunkt: (210,125)
//Ausschnitt: von (-2, -1.35) bis (0.5, 1.35)
public void paint (Graphics g) {
double reC, imC;
int j,x,y;
Color colAppleman = new Color(0,0,0); //Farbe Apfelmännchen
for(j=0;j<750000;j++) {
reC = Math.random()*2.5-2;
imC = Math.random()*2.7-1.35;
if(checkC(reC,imC)>25) {
x = (int) (reC*100+210);
y = (int) (imC*100+125);
g.setColor(colAppleman);
g.drawLine(x,y,x,y);
}
}
}
}
Download Apfelmaennchen_3.zip (Applet und Code, ca. 2 kb)
© 2001-2004 Albert Kluge - Alle Rechte vorbehalten
Impressum | Datenschutz | Nutzung | eMail
|