home *** CD-ROM | disk | FTP | other *** search
/ Sams Teach Yourself C in 21 Days (6th Edition) / STYC216E.ISO / mac / Examples / Day27 / drawing.java < prev    next >
Text File  |  2002-05-26  |  1KB  |  40 lines

  1. import java.awt.*;
  2. import java.awt.geom.*;
  3.  
  4. public class DrawingTest extends Frame {
  5.     Shape shapes[] = new Shape[4];
  6.     public DrawingTest (String title) {
  7.       super(title);
  8.       setSize(500, 400);
  9.       drawShapes();
  10.       add("Center", new MyCanvas());
  11.     }
  12.     public static void main(String args[]) {
  13.       DrawingTest app = new DrawingTest("Drawing test");
  14.       app.show();
  15.     }
  16.     void drawShapes () {
  17.       shapes[0] = new Rectangle2D.Double(12.0,12.0, 98.0, 120.0);
  18.       shapes[1] = new Ellipse2D.Double(150.0, 150.0,90.0,30.0);
  19.       shapes[2] = new RoundRectangle2D.Double(200.0, 25, 
  20.                   235.0, 250.0, 50.0, 100.0);
  21.       GeneralPath path = new GeneralPath(new Line2D.Double(100.0, 
  22.                   350.0, 150.0, 300.0));
  23.       path.append(new Line2D.Double(150.0, 300.0, 
  24.                   200.0, 350.0), true);
  25.       path.append(new Line2D.Double(200.0, 350.0, 
  26.                   250.0, 300.0), true);
  27.       path.append(new Line2D.Double(250.0, 300.0, 
  28.                   300.0, 350.0), true);
  29.       shapes[3] = path;
  30.     }
  31.  
  32.     class MyCanvas extends Canvas {
  33.       public void paint(Graphics graphics) {
  34.          Graphics2D gr = (Graphics2D) graphics;
  35.          for (int i=0; i<4; i++)
  36.             gr.draw(shapes[i]);
  37.       }
  38.     }
  39. }
  40.