Java & JavaScript


Home
Applets
   3D:
 · Würfel
 · Würfel 2
 · Würfel 3
 · Tetraeder
 · Tetraeder 2
 · Dodekaeder
 · Ikosaeder
 · Fußball
 · Kugel
 · Kugel 2
   Fraktale:
 · Apfelmännchen
 · Apfelmännchen 2
 · Apfelmännchen 3
 · Apfelmännchen MA
 · Apfelmännchen Zoom
 · Apfelmännchen Zoom 2
 · Juliamenge
 · Juliamenge MA
 · Julia-Generator
 · Koch-Kurve
 · Koch-Kurve 2
 · Hilbert-Kurve
 · Sierpinski-Dreieck
 · Sierpinski-Dreieck 2
 · Sierpinski-Dreieck 3
 · Sierpinski-Teppich
 · Pythagoras-Baum
 · Lindenmayer-System
 · Lindenmayer-System 2
   Mathematik:
 · Funktionsplotter
 · Eratosthenes-Sieb
 · Miller-Rabin-Test
   Verschiedenes:
 · Morsezeichen-Ticker
 · Analoguhr
Scripts
Gäste
Kontakt

- Applets : Fraktale : Apfelmännchen 3 -


Apfelmännchen mit Animation. (In Erinnerung an mein erstes Apfelmännchen mit JavaScript ;-)

[Das fraktale Apfelmännchen. Das Apfelmännchen-Applet lässt sich allerdings nur mit aktiviertem Java betrachten !]

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