How to draw a polygon using GUI?
SolutionFollowing example demonstrates how to draw a polygon by creating Polygon() object. addPoint() & drawPolygon() method is used to draw the Polygon.
import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Main extends JPanel { public void paintComponent(Graphics g) { super.paintComponent(g); Polygon p = new Polygon(); for (int i = 0; i < 5; i++) p.addPoint((int) ( 100 + 50 * Math.cos(i * 2 * Math.PI / 5)),(int) (100 + 50 * Math.sin( i * 2 * Math.PI / 5))); g.drawPolygon(p); } public static void main(String[] args) { JFrame frame = new JFrame(); frame.setTitle("Polygon"); frame.setSize(350, 250); frame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); Container contentPane = frame.getContentPane(); contentPane.add(new Main()); frame.setVisible(true); } }Result
The above code sample will produce the following result.
Polygon is displayed in a frame.
The following is an another sample example to draw a polygon using GUI.
import java.awt.Color; import java.awt.Container; import java.awt.Graphics; import java.awt.Polygon; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import javax.swing.JFrame; import javax.swing.JPanel; public class Panel extends JPanel { public void paintComponent(Graphics g) { super.paintComponent(g); Polygon p = new Polygon(); for (int i = 0; i < 5; i++) p.addPoint((int) ( 100 + 50 * Math.cos(i * 2 * Math.PI / 5)),(int) ( 100 + 50 * Math.sin(i * 2 * Math.PI / 5))); g.drawPolygon(p); } public static void main(String[] args) { JFrame frame = new JFrame(); frame.getContentPane().setBackground(Color.YELLOW); frame.setTitle("DrawPoly"); frame.setSize(350, 250); frame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); Container contentPane = frame.getContentPane(); contentPane.add(new Panel()); frame.show(); } }
The above code sample will produce the following result.
Polygon is displayed in a frame.
java_simple_gui.htm
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4