MnMWizard icon

Paint Project

MnMWizard | PRO | 11/25/17 10:17:37 PM UTC | 0 ⭐ | 393 👁️ | Never ⏰ | []
text |

7.39 KB

|

None

|

0 👍

/

0 👎

//Screenshots attached to submission
// By Mason Marnell
 // Lab13ast.java
// The Paint Brush Program
// Student Version
 // The Student version starts with just one color (red) and all that can be drawn is one pixel at a time.
 import java.applet.Applet;
import java.awt.*;
import java.util.Random;
 public class PaintProgram extends Applet {
     Rectangle red, blue, pink, green, yellow, black, lightGray, orange, cyan, gray, rand ;
    int numColor, numTool, xClick, yClick;
     Rectangle smallBox, mediumBox, largeBox, smallCirc, largeCirc, vertOval, horOval, splatter, ex, carat ;
      public void init() {
        numColor = 1;
        numTool = 1;
         red = new Rectangle(5, 5, 42, 42);
        blue = new Rectangle(55, 5, 42, 42);
        pink = new Rectangle(105, 5, 42, 42);
        green = new Rectangle(155, 5, 42, 42);
        yellow = new Rectangle(205, 5, 42, 42);
        black = new Rectangle(255, 5, 42, 42);
        lightGray = new Rectangle(305, 5, 42, 42);
        orange = new Rectangle(355, 5, 42, 42);
        cyan = new Rectangle(405, 5, 42, 42);
        gray = new Rectangle(455, 5, 42, 42);
        rand = new Rectangle(505, 5, 42, 42);
        smallBox = new Rectangle(5, 55, 42, 42);
        mediumBox = new Rectangle(5, 105, 42, 42);
        largeBox = new Rectangle(5, 155, 42, 42);
        smallCirc = new Rectangle(5, 205, 42, 42);
        largeCirc = new Rectangle(5, 255, 42, 42);
        vertOval = new Rectangle(5, 305, 42, 42);
        horOval = new Rectangle(5, 355, 42, 42);
        splatter = new Rectangle(5, 405, 42, 42); 
        ex = new Rectangle(5, 455, 42, 42);
        carat = new Rectangle(5, 505, 42, 42);
      }
     public void paint(Graphics g) {
    	g.setColor(Color.red);
        g.fillRect(5, 5, 42, 42);
        g.setColor(Color.blue);
        g.fillRect(55, 5, 42, 42);
        g.setColor(Color.pink);
        g.fillRect(105, 5, 42, 42);
        g.setColor(Color.green);
        g.fillRect(155, 5, 42, 42);
        g.setColor(Color.yellow);
        g.fillRect(205, 5, 42, 42);
        g.setColor(Color.black);
        g.fillRect(255, 5, 42, 42);
        g.setColor(Color.lightGray);
        g.fillRect(305, 5, 42, 42);
        g.setColor(Color.orange);
        g.fillRect(355, 5, 42, 42);
        g.setColor(Color.cyan);
        g.fillRect(405, 5, 42, 42);
        g.setColor(Color.gray);
        g.fillRect(455, 5, 42, 42);
         int red = (int)(Math.random()*255);
        int green = (int)(Math.random()*255);
        int blue = (int)(Math.random()*255);
        Color rand = new Color(red,green, blue);
        g.setColor(rand);
        g.fillRect(505, 5, 42, 42);
         int rando = red / 20;
          g.setColor(Color.black);
        g.drawRect(5, 55, 42, 42);
        g.drawRect(5, 105, 42, 42);
        g.drawRect(5, 155, 42, 42);
        g.drawOval(5, 205, 30, 30);
        g.drawOval(5, 255, 40, 40);
        g.drawOval(5, 305, 20, 40);
        g.drawOval(5, 355, 40, 20);
        g.drawRect(5, 405, 30, 30); //splatter tool
        g.drawRect(5, 455, 30, 30);
        g.drawString("x", 20, 470);
        g.drawRect(5, 505, 30, 30);
        g.drawString("^",20 ,520);
         switch (numColor) {
            case 1:
                g.setColor(Color.red);
                break;
            case 2:
            	g.setColor(Color.blue);
            	break;
            case 3:
                g.setColor(Color.pink);
                break;
            case 4:
            	g.setColor(Color.green);
            	break;
            case 5:
                g.setColor(Color.yellow);
                break;
            case 6:
            	g.setColor(Color.black);
            	break;
            case 7:
                g.setColor(Color.lightGray);
                break;
            case 8:
            	g.setColor(Color.orange);
            	break;
            case 9:
                g.setColor(Color.cyan);
                break;
            case 10:
            	g.setColor(Color.gray);
            	break;
            case 11:
            	g.setColor(rand);
            	break;
        }
         switch (numTool) {
        	case 1:
        		g.fillRect(xClick, yClick, 2, 2);
        		break;
        	case 2:
                g.fillRect(xClick, yClick, 10, 10);
                break;
        	case 3:
                g.fillRect(xClick, yClick, 25, 25);
                break;
        	case 4:
                g.fillOval(xClick, yClick, 22, 22);
                break;
        	case 5:
                g.fillOval(xClick, yClick, 44, 44);
                break;
        	case 6:
                g.fillOval(xClick, yClick, 20, 40);
                break;
        	case 7:
                g.fillOval(xClick, yClick, 40, 20);
                break;
        	case 8:
         		for(int i = 0;i < 50; i++){
        			g.fillRect(xClick+rando, yClick+rando, 2, 2);
        			g.fillRect(xClick-rando, yClick+rando, 2, 2);
        			g.fillRect(xClick+rando, yClick-rando, 2, 2);
        			g.fillRect(xClick-rando, yClick-rando, 2, 2);
        		}
                 break;
        	case 9:
                g.drawString("x", xClick, yClick);
                break;
        	case 10:
                g.drawString("^", xClick, yClick);
                break;
         }
    }
     public boolean mouseDown(Event e, int x, int y) {
    	if (red.inside(x, y)) {
            numColor = 1;
        }
        if (blue.inside(x, y)) {
            numColor = 2;
        }
        if (pink.inside(x, y)) {
            numColor = 3;
        }
        if (green.inside(x, y)) {
            numColor = 4;
        }
        if (yellow.inside(x, y)) {
            numColor = 5;
        }
        if (black.inside(x, y)) {
            numColor = 6;
        }
        if (lightGray.inside(x, y)) {
            numColor = 7;
        }
        if (orange.inside(x, y)) {
            numColor = 8;
        }
        if (cyan.inside(x, y)) {
            numColor = 9;
        }
        if (gray.inside(x, y)) {
            numColor = 10;
        }
        if (rand.inside(x, y)) {
            numColor = 11;
        }
          if (smallBox.inside(x, y)) {
            numTool = 1;
        }
         if (mediumBox.inside(x, y)) {
            numTool = 2;
        }
         if (largeBox.inside(x, y)) {
            numTool = 3;
        }
        if (smallCirc.inside(x, y)) {
            numTool = 4;
        }
        if (largeCirc.inside(x, y)) {
            numTool = 5;
        }
        if (vertOval.inside(x, y)) {
            numTool = 6;
        }
        if (horOval.inside(x, y)) {
            numTool = 7;
        }
        if (splatter.inside(x, y)) {
            numTool = 8;
        }
        if (ex.inside(x, y)) {
            numTool = 9;
        }
        if (carat.inside(x, y)) {
            numTool = 10;
        }
         xClick = x;
        yClick = y;
        repaint();
        return true;
    }
     public boolean mouseUp(Event e, int x, int y) {
         return true;
    }
     public boolean mouseDrag(Event e, int x, int y) 
    {
        xClick = x;
        yClick = y; 
        repaint();
        return true;
    }
     public void update(Graphics g) {
        paint(g);
    }
 }

Comments