我目前正在計劃編寫一些碰撞檢測代碼。但是,我遇到了一個問題。我想繪製的JFrame窗口上的多個領域,但下面的代碼是不工作...請幫我... 這是我的代碼: -在java中繪製多個橢圓
import javax.swing.*;
import java.awt.*;
class Draw extends JPanel
{
public void paintComponent(Graphics g)
{
super.paintComponent(g);
for(int i=0;i<20;i++)
drawing(g,new Sphere());
}
public void drawing(Graphics g,Sphere s)
{
g.setColor(s.color);
g.fillOval(s.x,s.y,s.radius*2,s.radius*2);
}
public static void main(String args[])
{
JFrame jf = new JFrame("Renderer");
jf.getContentPane().add(new Draw(),BorderLayout.CENTER);
jf.setBounds(100,100,400,300);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setVisible(true);
}
}
class Sphere
{
int x;
int y;
int radius;
Color color;
public Sphere()
{
this.x = (int)Math.random()*100;
this.y = (int)Math.random()*100;
this.radius = (int)Math.random()*20;
this.color = new Color((int)(Math.random()*255),
(int)(Math.random()*255),(int)(Math.random()*255));
}
}
什麼意思_「不工作」 _ ?你期望什麼,你的程序做什麼? –
嗯,我的意思是球體沒有在屏幕上繪製。只有一個空白窗口出現。 –
另請參見[使用複雜形狀的碰撞檢測](http://stackoverflow.com/a/14575043/418556)。 –