我真的没有任何的代码,但除了我,在一个JFrame仅消耗圈。我必须画出两个圈,一个内圈和一个圈,形成一个圈。圆圈的起点是(50,50)。外环必须是内圈的宽度的两倍和外圆的起始RING_WIDTH是40.如何绘制2个同心圆?
任何帮助不胜感激。谢谢。
我真的没有任何的代码,但除了我,在一个JFrame仅消耗圈。我必须画出两个圈,一个内圈和一个圈,形成一个圈。圆圈的起点是(50,50)。外环必须是内圈的宽度的两倍和外圆的起始RING_WIDTH是40.如何绘制2个同心圆?
任何帮助不胜感激。谢谢。
抬升最这个代码从这里,第一谷歌结果:http://java2everyone.blogspot.com/2008/12/draw-circle-in-jframe.html
import javax.swing.JFrame;
import java.awt.Graphics;
import java.awt.Color;
public class DrawCirclesInJFrame extends JFrame {
public static final int INNER_WIDTH = 20;
public static final int OUTER_WIDTH = 40;
public DrawCirclesInJFrame() {
super("Draw Circles In JFrame");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(400, 400);
setVisible(true);
}
public void paint(Graphics g) {
super.paint(g);
g.drawOval(50-INNER_WIDTH/2, 50-INNER_WIDTH/2, INNER_WIDTH, INNER_WIDTH);
g.drawOval(50-OUTER_WIDTH/2, 50-OUTER_WIDTH/2, OUTER_WIDTH, OUTER_WIDTH);
}
public static void main(String[] args) {
DrawCirclesInJFrame dlijf = new DrawCirclesInJFrame();
}
}
两者都在50,50居中。内圆直径是/ 20的宽度,圆和外圆的两倍,在40处
注意:此答案假定由“起点”,则指的是“中心点”。
这不会将第二个环居中在第一个环的中间。这是我的问题。有一些计算,我无法想出中心内圈。 – user2953556
我的坏..修复 – sdanzig
谢谢!这正是我需要的 – user2953556
首先,试着写代码,可以画一个圆,一个特定的中心。 – Justin
我不明白这个问题。如果你可以绘制一个圆圈,为什么你不能绘制两个圆圈。你所做的就是改变绘制方法的参数来绘制第二个圆。 – camickr
看看到[这个答案](http://stackoverflow.com/questions/19254551/jslider-advice-needed/19256985#19256985)。它可以帮助您找到合适的坐标。 – dic19