현재 mandelbrot-set을 생성하는 프로그램을 코딩하려고합니다. 그러나 비록 내가 각 단일 방법으로 많은 테스트를 했더라도. 전체 세트의 모양이 틀린 것 같습니다. 도움을 요청하고 누군가 그것을 수정하는 방법을 알고 있다면 정말 기쁠 것입니다.Mandelbrot 잘못된 모양 설정
import java.awt.*;
import javax.swing.*;
public class MandelbrotMenge extends JComponent {
int WIDTH = 600;
int HEIGHT = 600;
static int n = 1; // anzahl iterationen
static double a; // reeller Anteil von komplexer Zahl
static double b; // imaginärer Anteil
public MandelbrotMenge(int p_n) {
setSize(WIDTH, HEIGHT);
n = p_n;
}
public static boolean isMandelbrot(double a_n, double b_n, int n) { // prüft
// ob
// komplexe
// zahl
// divergiert
a = a_n;
b = b_n;
double a2 ;
for (int i = 0; i < n; i++) {
a2 = a * a - b * b + a;
b = 2 * a * b + b;
a=a2;
if (a * a + b * b >= 4)
return false;
}
return true;
}
public static void zeichneMandelbrot(Graphics g,int n) {
for (int i = 100; i <= 600; i++) {
for (int j = 0; j <= 600; j++) {
// i ist pixel und j auch
// komplexe zahl:
a = -3 + 0.01 * i; // x min = -3 x max = 6 pixel =600 --> 0.01*i
b = 3 - 0.01 * j;
if (isMandelbrot(a, b, n)) {
g.setColor(Color.white);
} else {
g.setColor(Color.black);
}
g.drawLine(i, j, i, j);
}
}
}
protected void paintComponent(Graphics g) {
zeichneMandelbrot(g, n);
}
}
모양의 모습 (완전하게) 잘못된 :
'n'의 어떤 값을 사용하고 있습니까? –