水波效果程序: import java.awt.*; import java.applet.Applet; public class Splash extends Applet implements Runnable{  int XMAX=112;  float[] m_Height=new float[XMAX];  float[] m_G=new float[XMAX];  float b=1.01f;  float fWeight=3;  private Thread m_NAMI2D=null;  public boolean mouseDown(Event event,int i,int j){   m_Height[i/4-1]+=j/2;   m_Height[i/4]+=j;   m_Height[i/4+1]+=j/2;   return false;  }  public void paint(Graphics g){   g.setColor(Color.blue);   float f1=3F*fWeight;   float f2=f1-2.0F;   m_Height[0]=m_Height[1];   m_Height[XMAX-1]=m_Height[XMAX-2];   float f=m_Height[0];   for(int i=1;i<XMAX-1;i++){    float f3=((f+f2*m_Height[i]+m_Height[i+1])/f1+m_G[i])/b;    f=m_Height[i];    m_G[i]=f3-f;    m_Height[i]=f3;    g.clearRect((i-1)*4,(int)f3-30,4,60);    g.fillRect((i-1)*4,(int)f3+30,4,60);   }  }  public void run(){   do        try{        repaint();        Thread.sleep(50L);           }   catch(InterruptedException _ex){    stop();   }      while(true);  }  public void start(){   if(m_NAMI2D==null){    m_NAMI2D=new Thread(this);    m_NAMI2D.start();    }  }  public void stop(){   if(m_NAMI2D!=null){    m_NAMI2D.stop();    m_NAMI2D=null;   }  }  public void update(Graphics g){   paint(g);  } }   
 
  |