画一个半径为半径并指向边缘的圆

我真的对如何进行编程深感困惑。如何用Java在半径和边缘周围画一个圆?


我需要在JFrame中绘制一个半径和围绕圆周的圆。我可以数学计算如何找到边缘周围的点的坐标,但我似乎无法编程圆。我目前正在使用Ellipse2D方法,但是该方法似乎不起作用并且没有返回半径,因为据我所知,它不是从中心绘制圆,而是从使用高度和宽度的起始坐标绘制圆。


我当前的代码在单独的框架上,但是我需要将其添加到现有框架中。


import java.awt.*; 

import javax.swing.*; 

import java.awt.geom.*; 


public class circle extends JFrame { 

  public circle() { 

     super("circle"); 

     setSize(410, 435); 

     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

     Panel sp = new Panel(); 

     Container content = getContentPane(); 

     content.add(sp); 

     setContentPane(content); 

     setVisible(true); 

 } 


 public static void main (String args[]){

  circle sign = new circle(); 

 } 


class Panel extends JPanel { 

 public void paintComponent(Graphics comp) { 

     super.paintComponent(comp); 

     Graphics2D comp2D = (Graphics2D) comp; 


     comp2D.setColor(Color.red); 

     Ellipse2D.Float sign1 = new Ellipse2D.Float(0F, 0F, 350F, 350F); 

     comp2D.fill(sign1); 

 } 

}


白板的微信
浏览 349回答 3
3回答

芜湖不芜

我建议花一些时间来复习“中点圆算法或布雷森汉姆圆算法”。公认的解决方案基于非常昂贵的数学运算,例如浮点乘法和三角函数。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java