rendered paste bodyimport java.awt.*;import javax.swing.*;import java.applet.*;import java.awt.Panel.*;public class Draw2 extends Applet{ Button erase=new Button("erase"); Button color=new Button("new color"); DrawPanel canvas; Color colour=new Color(0,0,0); public void init() { canvas=new DrawPanel(getImage(getCodeBase(),"blank-canvas-640-480.gif")); BorderLayout bord=new BorderLayout(); setLayout(bord); add(canvas,"Center"); Panel commandPanel=new Panel(); commandPanel.add(erase); commandPanel.add(color); add(commandPanel,"South"); } public boolean action(Event evt,Object obj) { if(evt.target==erase) { canvas.numPoints=-1; canvas.repaint(); } else if(evt.target==color) { String rVal=JOptionPane.showInputDialog(null,"Enter amount of red (0-255):"); String gVal=JOptionPane.showInputDialog(null,"Enter amount of green (0-255):"); String bVal=JOptionPane.showInputDialog(null,"Enter amount of blue (0-255):"); int rValue=Integer.parseInt(rVal); int gValue=Integer.parseInt(gVal); int bValue=Integer.parseInt(bVal); colour=new Color(rValue,gValue,bValue); } return true; }class DrawPanel extends Panel{ Image picture; int[]drawX=new int[1000]; int[]drawY=new int[1000]; int numPoints=-1; public void paint(Graphics screen) { screen.drawImage(picture,0,0,this); screen.setColor(colour); for(int i=0;i<=numPoints;i++) { screen.fillOval(drawX[i]-3,drawY[i]-3,6,6); } } public void update(Graphics screen) { paint(screen); } public boolean mouseDown(Event evt,int x,int y) { if(numPoints<1000) { numPoints++; drawX[numPoints]=x; drawY[numPoints]=y; } repaint(); return true; } public boolean mouseDrag(Event evt,int x,int y) { mouseDown(evt,x,y); return true; } DrawPanel(Image inputImage) { picture=inputImage; }}}