
My assignment is to write a program that prompts the user to enter the center and a point on the circle, which is (x,y)(x2,y2). The program should then output the circle's radius, circumference, and area. I did my code but I can't seem to figure out the mathematical code, can someone please help me?
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class CircleGUI extends JFrame {
//variables
double clx = 0.0, cly = 0.0, circumrx = 0.0, circumry = 0.0; //top-left and bottom-right coordinates
ButtonHandler buttonHandler;
//GUI components
JLabel lClx, lCly, lCircumrx, lCircumry, lRadius, lArea, lCircumference;
JTextField tClx, tCly, tCircumrx, tCircumry, tRadius, tArea, tCircumference;
JButton bReset, bCompute;
Container c;
JPanel pNorth, pWest, pCenter, pSouth;
//methods
//constructor
public CircleGUI() {
//create GUI
lClx = new JLabel("Center X");
lCly = new JLabel("Center Y");
lCircumrx = new JLabel("Circumference X");
lCircumry = new JLabel("Circumference Y");
lRadius = new JLabel("Radius");
lArea = new JLabel("Area");
lCircumference = new JLabel("Circumference");
tClx = new JTextField();
tCly = new JTextField();
tCircumrx = new JTextField();
tCircumry = new JTextField();
tRadius = new JTextField();
tArea = new JTextField();
tCircumference= new JTextField();
bReset = new JButton("Reset");
bCompute = new JButton("Compute");
pNorth = new JPanel();
pWest = new JPanel();
pCenter = new JPanel();
pSouth = new JPanel();
c = getContentPane();
//add components
c.setLayout(new BorderLayout());
pNorth.setLayout(new GridLayout(2,4));
pWest.setLayout(new GridLayout(4,2));
pCenter.setLayout(new GridLayout(4,2));
pSouth.setLayout(new GridLayout(1,2));
c.add(pNorth, BorderLayout.NORTH);
c.add(pWest, BorderLayout.WEST);
c.add(pCenter, BorderLayout.CENTER);
c.add(pSouth, BorderLayout.SOUTH);
pNorth.add(lClx);
pNorth.add(tClx);
pNorth.add(lCly);
pNorth.add(tCly);
pNorth.add(lCircumrx);
pNorth.add(tCircumrx);
pNorth.add(lCircumry);
pNorth.add(tCircumry);
pWest.add(lRadius);
pWest.add(lArea);
pWest.add(lCircumference);
pCenter.add(tRadius);
pCenter.add(tArea);
pCenter.add(tCircumference);
pSouth.add(bReset);
pSouth.add(bCompute);
//register with buttons
buttonHandler = new ButtonHandler();
bReset.addActionListener(buttonHandler);
bCompute.addActionListener(buttonHandler);
//render the window
setSize(400, 200);
setLocation(100, 100);
setResizable(false);
setTitle("Circle GUI");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
//button handler class
private class ButtonHandler implements ActionListener {
public void actionPerformed(ActionEvent ae) {
if (ae.getSource().equals(bCompute)) {
try {
clx = Double.parseDouble(tClx.getText());
cly = Double.parseDouble(tCly.getText());
circumrx = Double.parseDouble(tCircumrx.getText());
circumry = Double.parseDouble(tCircumry.getText());
Circle obj = new Circle(clx, cly, circumrx, circumry);
tRadius.setText(obj.getLength()+"");
tArea.setText(obj.getArea()+"");
tCircumference.setText(obj.getCircumference()+"");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Fix your input");
return;
}
}
else {
tClx.setText("");
tCly.setText("");
tCircumrx.setText("");
tCircumry.setText("");
tRadius.setText("");
tArea.setText("");
tCircumference.setText("");
}
}
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
CircleGUI newApp = new CircleGUI();
}
}

Java find radius, area and circumference of a circle
import java.awt.*;
import java.text.*;
import javax.swing.*;
import java.awt.event.*;
public class CircleGUI extends JFrame {
double clx = 0.0, cly = 0.0, circumrx = 0.0, circumry = 0.0;
ButtonHandler buttonHandler;
JLabel lClx, lCly, lCircumrx, lCircumry, lRadius, lArea, lCircumference;
JTextField tClx, tCly, tCircumrx, tCircumry, tRadius, tArea, tCircumference;
JButton bReset, bCompute;
Container c;
JPanel pNorth, pWest, pCenter, pSouth;
public CircleGUI(){
lClx = new JLabel("Center X");
lCly = new JLabel("Center Y");
lCircumrx = new JLabel("Circumference X");
lCircumry = new JLabel("Circumference Y");
lRadius = new JLabel("Radius");
lArea = new JLabel("Area");
lCircumference = new JLabel("Circumference");
tClx = new JTextField();
tCly = new JTextField();
tCircumrx = new JTextField();
tCircumry = new JTextField();
tRadius = new JTextField();
tArea = new JTextField();
tCircumference= new JTextField();
bReset = new JButton("Reset");
bCompute = new JButton("Compute");
pNorth = new JPanel();
pWest = new JPanel();
pCenter = new JPanel();
pSouth = new JPanel();
c = getContentPane();
c.setLayout(new BorderLayout());
pNorth.setLayout(new GridLayout(2,4));
pWest.setLayout(new GridLayout(4,2));
pCenter.setLayout(new GridLayout(4,2));
pSouth.setLayout(new GridLayout(1,2));
c.add(pNorth, BorderLayout.NORTH);
c.add(pWest, BorderLayout.WEST);
c.add(pCenter, BorderLayout.CENTER);
c.add(pSouth, BorderLayout.SOUTH);
pNorth.add(lClx);
pNorth.add(tClx);
pNorth.add(lCly);
pNorth.add(tCly);
pNorth.add(lCircumrx);
pNorth.add(tCircumrx);
pNorth.add(lCircumry);
pNorth.add(tCircumry);
pWest.add(lRadius);
pWest.add(lArea);
pWest.add(lCircumference);
pCenter.add(tRadius);
pCenter.add(tArea);
pCenter.add(tCircumference);
pSouth.add(bReset);
pSouth.add(bCompute);
buttonHandler = new ButtonHandler();
bReset.addActionListener(buttonHandler);
bCompute.addActionListener(buttonHandler);
setSize(400, 200);
setLocation(100, 100);
setResizable(false);
setTitle("Circle GUI");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}

continue..
private class ButtonHandler implements ActionListener {
public void actionPerformed(ActionEvent ae) {
if (ae.getSource().equals(bCompute)) {
try {
DecimalFormat df=new DecimalFormat("##.##");
clx = Double.parseDouble(tClx.getText());
cly = Double.parseDouble(tCly.getText());
circumrx = Double.parseDouble(tCircumrx.getText());
circumry = Double.parseDouble(tCircumry.getText());
double p1=circumrx-clx;
double p2=circumry-cly;
double pp1=p1*p1;
double pp2=p2*p2;
double s=pp1+pp2;
double radius=Math.sqrt(s);
double area=3.14*radius*radius;
double circumference=2*3.14*radius;
tRadius.setText(df.format(radius));
tArea.setText(df.format(area));
tCircumference.setText(df.format(circumference));
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Fix your input");
return;
}
}
else {
tClx.setText("");
tCly.setText("");
tCircumrx.setText("");
tCircumry.setText("");
tRadius.setText("");
tArea.setText("");
tCircumference.setText("");
}
}
}
public static void main(String[] args) {
CircleGUI newApp = new CircleGUI();
}
}
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.