mandel.java
来自「分形算法的Java程序」· Java 代码 · 共 106 行
JAVA
106 行
//Newton迭代法(fractal.cn)
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
class Fractal extends Canvas
{
public Fractal()
{
this.setBackground(Color.white);
}
public void paint(Graphics g) {
int a=640;
int b=480;
int M=100;
int K=100;
double pMin=-2.2;
double qMin=-1.2;
double pMax=0.7;
double qMax=1.2;
double p1,q1;
p1=(pMax-pMin)/(a-1);
q1=(qMax-qMin)/(b-1);
for(int i=0;i<a;i++)
for( int j=0;j<b;j++)
{
double p0=pMin+i*p1;
double q0=qMin+j*q1;
double x0=0;
double y0=0;
int k=0;
int color=0;
double x1;
double y1;
double r;
for(k=1;k<K;k++)
{
x1=x0;
y1=y0;
x0=x1*x1-y1*y1+p0;
y0=2*x1*y1+q0;
r=x0*x0+y0*y0;
if(r>M){
color=200*k;
break;
}
}
g.setColor(new Color(color));
if(k==K){
g.setColor(Color.white);
}
g.drawLine(i,j,i,j);
}//end for
}//end of paint
}
public class Mandel extends Applet
{
Fractal fractal;
public void init()
{
setLayout(new BorderLayout());
fractal=new Fractal();
add("Center",fractal);
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?