java计算图形周长和面积,java定义接口求图形面积周长

  java计算图形周长和面积,java定义接口求图形面积周长

  00-1010 1.背景2。开发工具3。数据存储设计。项目功能设计。部分代码显示6。项目结构7。总结。

  

目录

规则几何图形解题程序是根据输入的规则几何图形的一些特定参数,求解规则几何图形的面积和周长,并根据输入的参数绘制相应的图形。

 

  在程序中,按规则几何的类型输入相应的参数,部分程序得到相应的解和图形。从而方便计算图形,直观的找到图形,帮助计算器有更高的计算效率。

  关键词:Java,swing,规则几何,文件操作

  00-1010本程序开发使用的IDE是idea!

  00-1010 1.程序使用文件流操作将数据存储到一个. txt文件中,文件的路径为d: xxx.txt。

  2.基础数据存储在文件中,包括输入的规则几何图形的长、宽等数据,以及计算出的面积周长等数据!例如:

  00-1010在程序中,可以求解添加的几何图形的面积和周长,绘制其对应的图形并改变其形状、线条的粗细和颜色。根据提示,我们可以输入相关特征的参数来查找它们的面积和周长并更改它们的参数,还可以根据提示更改每边线条的粗细和颜色。

  在解决规则几何问题时,系统主要包括主系统、三角形系统、矩形系统、正方形系统、圆形系统、菱形系统、梯形系统、等边梯形系统和直角梯形系统。

  

1.背景

导入Java . io . *;导入Java . awt . *;导入Java . awt . event . *;导入javax . swing . *;导入Java . text . *;public class circle play { public static void main(String args[]){ window circle circle play=new window circle();Circleplay.setTitle(几何计算);circleplay.setSize(500,300);circleplay.setLocation(500,250);} }类WindowCircle扩展JFrame { Circle circle//数据对象JTextField textA,textB,textC//查看数据对象的JTextArea showArea//查看数据对象的JButton controlButton1//控制器对象JButton controlButton2window circle(){ init();set visible(true);setDefaultCloseOperation(JFrame。DISPOSE _ ON _ CLOSE);} void init(){ Circle=new Circle();textA=new JTextField(5);textB=new JTextField(5);showArea=new JTextArea();control button 1=new JButton(“calculation”);control button 2=new JButton( exit );JPanel p north=new JPanel();JPanel pnorth 1=new JPanel();p . add(new jlabel( radius ));p north . add(textA);p north . add(control button 1);p north . add(control button 2);pNorth.setLocation(250,250);PNorth1.add(new JLabel(图形线条粗细));String[] s1=新字符串[]{1 , 2 , 3 , 4 , 5 , 6 , 7 , 8

 

  ","9"}; final JComboBox<String> comboBox1 = new JComboBox<String>(s1); pNorth1.add(comboBox1); pNorth1.add(new JLabel("图形线条颜色")); String[] s2 = new String[]{"黑色","红色","灰色","蓝色","黄色","绿色","紫色"}; final JComboBox<String> comboBox2 = new JComboBox<String>(s2); pNorth1.add(comboBox2); add(pNorth, BorderLayout.NORTH); pNorth1.setPreferredSize(new Dimension(90,150)); add(pNorth1, BorderLayout.WEST); add(new JScrollPane(showArea), BorderLayout.CENTER); controlButton1.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ try { double a = Double.parseDouble(textA.getText().trim()); // circle.setA(a); // 更新数据 circle.paint(); String area1 = circle.getlength(); String area2 = circle.getArea(); showArea.append("半径为"+a+"的圆"+" "+"周长为:" +area1+""+"面积为:"+area2+"n"); } catch (Exception ex) { showArea.append("n" + ex + "n"); } }}); controlButton2.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ dispose(); }}); comboBox1.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent e) { if (e.getStateChange() == ItemEvent.SELECTED) { circle.Line(comboBox1.getSelectedIndex()+1); circle.paint(); } }}); comboBox2.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent e) { if (e.getStateChange() == ItemEvent.SELECTED) { circle.Colour(comboBox2.getSelectedIndex()+1); circle.paint(); } }}); }}class Circle { FileWriter dout; double sideA, sideB, area,p; int line = 1,colournumber = 1; public void setA(double a) { sideA = a; } public String getArea() { area = 3.14*sideA*sideA; return String.valueOf(area); // Double.toString(area) } public String getlength() { p = 3.14 * sideA; return String.valueOf(p); } public void Line(int line) { this.line = line; } public void Colour(int colournumber) { this.colournumber = colournumber; } public void paint(){ try{ dout = new FileWriter("d:\Circle.txt"); }catch(IOException e){} JFrame jFrame = new JFrame("圆的图形"); // 创建画板 JPanel jpanel = new JPanel() { public void paint(Graphics graphics) { // 必须先调用父类的paint方法 super.paint(graphics); Graphics2D g=(Graphics2D) graphics.create(); g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); if(colournumber == 1) g.setColor(Color.BLACK); else if(colournumber == 2) g.setColor(Color.RED); else if(colournumber == 3) g.setColor(Color.GRAY); else if(colournumber == 4) g.setColor(Color.BLUE); else if(colournumber == 5) g.setColor(Color.YELLOW); else if(colournumber == 6) g.setColor(Color.GREEN); else if(colournumber == 7) g.setColor(Color.magenta); if(line == 1){ try{ dout.write("圆形线条粗细为"); dout.write(String.valueOf(line)); dout.write(" rn"); }catch(IOException a){} } if(line == 2){ try{ dout.write("圆形线条粗细为"); dout.write(String.valueOf(line)); dout.write(" rn"); }catch(IOException a){} } if(line == 3){ try{ dout.write("圆形线条粗细为"); dout.write(String.valueOf(line)); dout.write(" rn"); }catch(IOException a){} } if(line == 4){ try{ dout.write("圆形线条粗细为"); dout.write(String.valueOf(line)); dout.write(" rn"); }catch(IOException a){} } if(line == 5){ try{ dout.write("长方形线条粗细为"); dout.write(String.valueOf(line)); dout.write(" rn"); }catch(IOException a){} } if(line == 6){ try{ dout.write("圆形线条粗细为"); dout.write(String.valueOf(line)); dout.write(" rn"); }catch(IOException a){} } if(line == 7){ try{ dout.write("圆形线条粗细为"); dout.write(String.valueOf(line)); dout.write(" rn"); }catch(IOException a){} } if(line == 8){ try{ dout.write("圆形线条粗细为"); dout.write(String.valueOf(line)); dout.write(" rn"); }catch(IOException a){} } if(line == 9){ try{ dout.write("圆形线条粗细为"); dout.write(String.valueOf(line)); dout.write(" rn"); }catch(IOException a){} } if(colournumber == 1) { g.setColor(Color.BLACK); try{ dout.write("圆形颜色为"); dout.write("黑色"); dout.write(" rn"); }catch(IOException e){} } else if(colournumber == 2) { g.setColor(Color.RED); try{ dout.write("圆形颜色为"); dout.write("红色"); dout.write(" rn"); }catch(IOException e){} } else if(colournumber == 3) { g.setColor(Color.GRAY); try{ dout.write("圆形颜色为"); dout.write("灰色"); dout.write(" rn"); }catch(IOException e){} } else if(colournumber == 4) { g.setColor(Color.BLUE); try{ dout.write("圆形颜色为"); dout.write("蓝色"); dout.write(" rn"); }catch(IOException e){} } else if(colournumber == 5) { g.setColor(Color.YELLOW); try{ dout.write("圆形颜色为"); dout.write("黄色"); dout.write(" rn"); }catch(IOException e){} } else if(colournumber == 6) { g.setColor(Color.GREEN); try{ dout.write("圆形颜色为"); dout.write("绿色"); dout.write(" rn"); }catch(IOException e){} } else if(colournumber == 7) { g.setColor(Color.magenta); try{ dout.write("圆形颜色为"); dout.write("紫色"); dout.write(" rn"); }catch(IOException e){} } Stroke stroke=new BasicStroke(line); g.setStroke(stroke); DecimalFormat df = new DecimalFormat("######0"); String str1 = df.format(sideA); int a = Integer.parseInt(str1); g.drawOval(100, 50, a*10,a*10); try{ dout.write("圆形半径为"); dout.write(String.valueOf(a)); dout.write(" rn"); dout.write("圆形周长为"); dout.write(String.valueOf(p)); dout.write(" rn"); dout.write("圆形面积为"); dout.write(String.valueOf(area)); dout.write(" rn"); dout.close(); }catch(IOException exa){} } }; jFrame.add(jpanel); // 设置画框大小(宽度,高度),默认都为0 jFrame.setSize(300, 300); // 将画框展示出来。true设置可见,默认为false隐藏 jFrame.setVisible(true); jFrame.setLocation(1000,250); }}

 

  

6.项目结构

以下是项目结构的展示:

 

  

 

  

 

  

7.总结

规则几何图形求解根据图形的某些特征设置输入参数,根据这些参数来计算相应图形的面积和周长。在绘制图形方面,是根据所输入的参数来确定坐标,再连接坐标形成的图形。在改变图形方面,用绘图的类去改变图形。

 

  这个程序适合在新手学习完Java基础知识以后练习,可以加深对Java编程的理解,同时对Java流的操作这一个抽象的概念有了更加深入的理解,学习完GUI技术不仅提升了编程兴趣,同时为Java下一阶段的学习奠定了基础。

  

 

  以上就是Java实现规则几何图形的绘制与周长面积计算详解的详细内容,更多关于Java几何图形绘制 计算的资料请关注盛行IT其它相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: