我的计划的目标是为圈子生成随机中心,并找到圆圈中心之间的长度
问题在于,在getd1()
方法中,对于0
,center1X
,所有值均为center1Y
(在添加50之前,因此长度最终为0),等
但是在代码中我省略了那些中心被分配给确实在随机位置绘制的圆圈,所以我知道中心坐标的值不能为0.
我也尝试将值分配给center1X
等,当前它们已被初始化,我得到的错误是"n must be a positive number"
,我怀疑是因为{{1}之前没有宽度和高度}} 被建造。任何建议表示赞赏。
JFrame
PS:public class Draw extends JFrame {
public class Circle extends JPanel {
int center1X;
int center1Y;
int center2X;
int center2Y;
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Random rand = new Random();
center1X=rand.nextInt(getWidth()-100);
center1Y=rand.nextInt(getHeight()-100);
center2X=rand.nextInt(getWidth()-100);
center2Y=rand.nextInt(getHeight()-100);
//these are coordinates of circles
}
public double getd1() {
//Distance is a method that has been omitted, it functions properly and is not part of the issue
double d1 = Distance(center1X+50,center1Y+50,center2X+50,center2Y+50);
return d1;
}
}
}
函数已被省略,因为它不是问题的一部分,但它只是使用距离公式。