Ich möchte folgendes Java Applet auf einer Website ausführen. Was muss ich noch hinzufügen?
Java
import java.awt.*;
import java.applet.*;
public class SierpinskiTriangle extends Applet
{
private Graphics g;
private int dMin=4; // Grenze für Rekursion in Pixels
public void paint(Graphics g)
{
this.g = g;
int d = 1024; // Basis (Größe des Dreiecks)
int x0 = 50; // Abstand vom linken Rand
int y0 = 50; // Abstand vom oberen Rand
int h = (int)(d*Math.sqrt(3)/2); // Höhe
// so: passend für gleichseitiges Dreieck
int xA=x0, yA=y0+h; // (unten-links)
int xB=x0+d, yB=y0+h; // (unten-rechts)
// int xB=x0, yB=y0; // (oben-links)
// int xB=x0+d, yB=y0; // (oben-rechts)
int xC=x0+d/2, yC=y0; // gleichseitiges Dreieck (oben-Mitte)
// int xC=x0, yC=y0; // rechtwinkliges Dreieck, rechter Winkel bei A
// (oben-links)
// int xC=x0+d, yC=y0; // rechtwinkliges Dreieck, rechter Winkel bei B
// (oben-rechts)
int[] x = { xA, xB, xC };
int[] y = { yA, yB, yC };
drawSierpinskiTriangle( x, y, d/2 ); // Rekursion starten
}
private void drawSierpinskiTriangle ( int[] x, int[] y, int d )
{
if (d<=dMin)
{
g.fillPolygon ( x, y, 3 ); // Verankerung der Rekursion
}
else
{
// Mittelpunkte der Seiten:
int xMc = (x[0]+x[1])/2, yMc = (y[0]+y[1])/2;
int xMb = (x[0]+x[2])/2, yMb = (y[0]+y[2])/2;
int xMa = (x[1]+x[2])/2, yMa = (y[1]+y[2])/2;
int[] xNeu1 = { x[0], xMc, xMb };
int[] yNeu1 = { y[0], yMc, yMb };
drawSierpinskiTriangle ( xNeu1, yNeu1, d/2 ); // Rekursion
int[] xNeu2 = { x[1], xMc, xMa };
int[] yNeu2 = { y[1], yMc, yMa };
drawSierpinskiTriangle ( xNeu2, yNeu2, d/2 ); // Rekursion
int[] xNeu3 = { x[2], xMb, xMa };
int[] yNeu3 = { y[2], yMb, yMa };
drawSierpinskiTriangle ( xNeu3, yNeu3, d/2 ); // Rekursion
}
}
}
Alles anzeigen