⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 j.java

📁 分形算法的Java程序
💻 JAVA
字号:
//基于逃逸时间算法的Sierpinski三角形(分形频道:fractal.cn)2004
import java.awt.*;
import java.awt.Color;
import java.awt.Image;

public class j extends java.applet.Applet{
	public Graphics offScreenBuffer=null;
	public Image offScreenImage=null;
	
	private float a,b,c,d;
	private int n,m,r,p,q;
	int width=400;
	int height=400;
	private float x,y,x0,y0;
	
	public j(){}
	
	public void init(){
               setBackground(new Color(255,255,255));//设置背景色为白色
		offScreenImage=this.createImage(400,400);
		offScreenBuffer=offScreenImage.getGraphics();
	}
	
	public void update(Graphics gc){
		paint(gc);
	}
	
	public void paint(Graphics gc){
		offScreenBuffer.setColor(Color.black);
		serpirski(offScreenBuffer,0,0,1,1,12,200,200);
		gc.drawImage(offScreenImage,0,0,this);
	}
	
   public void serpirski(Graphics gc,float a,float b,float c,float d,float n,int m,int r){
	boolean flag=true;
	for(p=1;p<m;p++){
        	x0=a+(c-a)*p/m;
        	for(q=1;q<m;q++){
        		y0=b+(d-b)*q/m;
        		x=x0;
			y=y0;
        		for(int k=1;k<n+1;k++){
			        if(y>0.5){
        				x=2*x;
					y=2*y-1;
				}
        			else if(x>=0.5){
        				x=2*x-1;
					y=2*y;
        			}
				else{
					x=2*x;
					y=2*y;
				}
				if((x*x+y*y)>r){flag=false;}
			}
			if(flag) gc.drawRect(p+100,q+100,1,1);
			flag=true;
        		
		}
	}
   }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -