import java.awt.image.*; import java.awt.*; import java.awt.event.*; import java.applet.Applet; public class Yleminek extends Applet implements MouseListener{ int hx=100, hy=100; public Yleminek(){ addMouseListener(this); } public Image looPilt1(){ int laius=200; int korgus=200; int punktid[] = new int[laius*korgus]; int nr=0; for (int y = 0; y < korgus; y++){ for (int x = 0; x < laius; x++) { int punane=Math.max(255-(int)(255*Math.sqrt((x-hx)*(x-hx)+(y-hy)*(y-hy))/(laius)), 0); int sinine = 0; int roheline = 0; punktid[nr++] = (255<<24)|(punane << 16) | sinine; } } return createImage(new MemoryImageSource(laius, korgus, punktid, 0, laius)); } public Image looPilt2(){ int laius=200; int korgus=200; int punktid[] = new int[laius*korgus]; int nr=0; for (int y = 0; y < korgus; y++){ for (int x = 0; x < laius; x++) { int sinine=Math.max(255-(int)(255*Math.sqrt((x-hx)*(x-hx)+(y-hy)*(y-hy))/(laius)), 0); int punane = 0; punktid[nr++] = sinine|(punane << 16) | (255<<24); } } return createImage(new MemoryImageSource(laius, korgus, punktid, 0, laius)); } public Image looPilt3(){ int laius=200; int korgus=200; int punktid[] = new int[laius*korgus]; int nr=0; for (int y = 0; y < korgus; y++){ for (int x = 0; x < laius; x++) { int roheline=Math.max(255-(int)(255*Math.sqrt((x-hx)*(x-hx)+(y-hy)*(y-hy))/(laius)), 0); int punane = 0; int sinine = 0; punktid[nr++] = (255<<24)|(punane << 16) | roheline << 8 | sinine; } } return createImage(new MemoryImageSource(laius, korgus, punktid, 0, laius)); } public void paint(Graphics g){ Image pilt1=looPilt1(); Image pilt2=looPilt2(); Image pilt3=looPilt3(); g.drawImage(pilt1, 0, 0, null); g.drawImage(pilt2, 200, 0, null); g.drawImage(pilt3, 400, 0, null); } public void update(Graphics g){ paint(g); } public void mousePressed(MouseEvent e){ hx=e.getX(); hy=e.getY(); repaint(); } public void mouseReleased(MouseEvent e){} public void mouseClicked(MouseEvent e){} public void mouseEntered(MouseEvent e){} public void mouseExited(MouseEvent e){} public static void main(String argumendid[]){ Frame f=new Frame(); f.add(new Yleminek()); f.setSize(600, 200); f.setVisible(true); } }