DrawPolygons.java


DrawPolygons.java

// Fig. 13.28: DrawPolygons.java
// Drawing polygons.
import java.awt.Graphics;
import java.awt.Polygon;
import javax.swing.JPanel;
import javax.swing.JFrame;

class PolygonsJPanel extends JPanel 
{
   // draw polygons and polylines
   @Override
   public void paintComponent(Graphics g)
   {
      super.paintComponent(g); 

      // draw polygon with Polygon object
      int[] xValues = {20, 40, 50, 30, 20, 15};
      int[] yValues = {50, 50, 60, 80, 80, 60};
      Polygon polygon1 = new Polygon(xValues, yValues, 6);
      g.drawPolygon(polygon1);

      // draw polylines with two arrays
      int[] xValues2 = {70, 90, 100, 80, 70, 65, 60};
      int[] yValues2 = {100, 100, 110, 110, 130, 110, 90};
      g.drawPolyline(xValues2, yValues2, 7);

      // fill polygon with two arrays
      int[] xValues3 = {120, 140, 150, 190};
      int[] yValues3 = {40, 70, 80, 60};
      g.fillPolygon(xValues3, yValues3, 4);

      // draw filled polygon with Polygon object
      Polygon polygon2 = new Polygon();
      polygon2.addPoint(165, 135);
      polygon2.addPoint(175, 150);
      polygon2.addPoint(270, 200);
      polygon2.addPoint(200, 220);
      polygon2.addPoint(130, 180);
      g.fillPolygon(polygon2);
   } 
} // end class PolygonsJPanel
public class DrawPolygons 
{
   // execute application
   public static void main(String[] args)
   {
      // create frame for PolygonsJPanel
      JFrame frame = new JFrame("Drawing Polygons");
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

      PolygonsJPanel polygonsJPanel = new PolygonsJPanel(); 
      frame.add(polygonsJPanel); 
      frame.setSize(280, 270);
      frame.setVisible(true);
   } 
} // end class DrawPolygons


Maintained by John Loomis, updated Wed Feb 08 12:27:07 2017