public class Circle {
int radius; // 원의 반지름을 저장하는 멤버 변수
int Px, Py; // 좌표
public Circle(int Sx, int Sy){
Px = Sy;
Py = Sy;
}
public Circle(int Sx, int Sy, int r){
Px = Sy;
Py = Sy;
radius = r;
}
public double getArea() { // 멤버 메소드
return 3.14*radius*radius;
}
public boolean Invoke(Circle p1, Circle p2)
{
double dis1, dis2;
dis1 = Math.sqrt((p1.Px-p2.Px)*(p1.Px-p2.Px))+((p1.Py-p2.Py)*(p1.Py-p2.Py)); //두 원 중심의 거리
dis2 = p1.radius+p2.radius; //두 원 반지름 합계
if(dis1 > dis2) return false; // 두 원 중심의 거리가 두 원 반지름의 합계보다 크면 충돌하지 않음
else return true;
}
public static void main(String[] args) {
Circle c1 = new Circle(0, 0, 10);
Circle c2 = new Circle(15, 0, 10);
boolean check;
check = c1.Invoke(c1, c2);
System.out.println(check);
}
}