Dear SAP Community Member,
In order to fully benefit from what the SAP Community has to offer, please register at:
Thank you,
The SAP Community team.
Skip to end of metadata
Go to start of metadata
* The Java Graphics class draws a circle with drawOval(),
* It uses a point at the top left of an imaginary
* bounding rectangle and the width and height.
* The programme below shows how can we draw circle using
* a center point and a radius instead of the the standard
* parameters of drawOval()
import java.awt.*;
import javax.swing.*;
public class Circle extends JFrame{
CirclePanel drawing = new CirclePanel();
Circle() {
//--- Get content pane, set layout, add components
Container content = this.getContentPane();
content.setLayout(new BorderLayout());
content.add(drawing, BorderLayout.CENTER); // Note 2
this.pack(); // finalize the layout
public static void main(String[] args) {
JFrame myWindow = new Circle();
class CirclePanel extends JPanel {
//=========================================== constructor
public CirclePanel() {
setPreferredSize(new Dimension(100, 100));
}//end constructor
//=========================================== paintComponent
public void paintComponent(Graphics g) {
drawCircle(g, 30, 30, 20); // center (30,30) r=20
// Convenience method to draw from center with radius
public void drawCircle(Graphics cg, int xCenter, int yCenter, int r) {
cg.drawOval(xCenter-r, yCenter-r, 2*r, 2*r);
}//end drawCircle