draw a pikachu in java package arreyreview; import java.awt.*; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.geom.*; import javax.swing.*; public class Pikachu extends JFrame implements MouseListener{ private static final long serialVersionUID = 1L; public void paint(Graphics g) { Graphics2D ga = (Graphics2D) g; // Background Rectangle2D.Double background = new Rectangle2D.Double (0,0,600,450); ga.draw (background); GradientPaint gp = new GradientPaint(100, 400, new Color (255,255,204) , 400, 595, new Color (255,153,0), true); ga.setPaint (gp); ga.fill (background); ga.fill(background); // Ears Polygon leftEar = new Polygon(new int[] { 95, 85, 75 }, new int[] { 150, 100, 150 }, 3); ga.setColor(new Color(255, 204, 51)); ga.fill(leftEar); Polygon rightEar = new Polygon(new int[] { 205, 215, 225 }, new int[] { 150, 100, 150 }, 3); ga.setColor(new Color(255, 204, 51)); ga.fill(rightEar); // Head Ellipse2D.Double head = new Ellipse2D.Double(100, 70, 100, 120); ga.setColor(new Color(255, 204, 51)); ga.fill(head); // Eyes Ellipse2D.Double leftEye = new Ellipse2D.Double(118, 100, 25, 30); ga.setColor(Color.white); ga.fill(leftEye); ga.setColor(Color.black); ga.draw(leftEye); Ellipse2D.Double rightEye = new Ellipse2D.Double(157, 100, 25, 30); ga.setColor(Color.white); ga.fill(rightEye); ga.setColor(Color.black); ga.draw(rightEye); // Pupils Ellipse2D.Double leftPupil = new Ellipse2D.Double(126, 112, 10, 10); ga.setColor(Color.black); ga.fill(leftPupil); Ellipse2D.Double rightPupil = new Ellipse2D.Double(166, 112, 10, 10); ga.setColor(Color.black); ga.fill(rightPupil); // Cheeks Ellipse2D.Double leftCheek = new Ellipse2D.Double(90, 160, 30, 20); ga.setColor(new Color(255, 102, 102)); ga.fill(leftCheek); Ellipse2D.Double rightCheek = new Ellipse2D.Double(180, 160, 30, 20); ga.setColor(new Color(255, 102, 102)); ga.fill(rightCheek); // Mouth Line2D.Double mouth = new Line2D.Double(128, 167, 163, 167); ga.setColor(Color.black); ga.draw(mouth); // Nose Polygon nose = new Polygon(new int[] { 150, 155, 145 }, new int[] { 135, 145, 145 }, 3); ga.setColor(new Color(204, 0, 0)); ga.fill(nose); // Body Ellipse2D.Double body = new Ellipse2D.Double(80, 200, 140, 160); ga.setColor(new Color(255, 204, 51)); ga.fill(body); // Arms Rectangle2D.Double leftArm = new Rectangle2D.Double(60, 210, 30, 100); ga.setColor(new Color(255, 204, 51)); ga.fill(leftArm); Rectangle2D.Double rightArm = new Rectangle2D.Double(310, 210, 30, 100); ga.setColor(new Color(255, 204, 51)); ga.fill(rightArm); // Feet Ellipse2D.Double leftFoot = new Ellipse2D.Double(105, 350, 45, 20); ga.setColor(new Color(204, 0, 0)); ga.fill(leftFoot); Ellipse2D.Double rightFoot = new Ellipse2D.Double(185, 350, 45, 20); ga.setColor(new Color(204, 0, 0)); ga.fill(rightFoot); // Tail Path2D.Double tail = new Path2D.Double(); tail.moveTo(290, 260); tail.quadTo(240, 300, 290, 340); tail.quadTo(340, 300, 290, 260); ga.setColor(new Color(255, 204, 51)); ga.fill(tail); } publ.