Programming/수학&물리

두 원의 충돌(원과 점의 충돌)

군자동꽃미남 2015. 11. 21. 22:48

float check_x = 좌표1.x - 좌표2.x; // 좌표 1과 좌표 2의 x 값 만큼의 차이

float check_y = 좌표1.y - 좌표2.y; // 좌표 1과 좌표 2의 y 값 만큼의 차이

int distance = sqrt((check_x * check_x) + (check_y * check_y)); // 피타고라스의 정리에 의해 C^2 = A^2 + B^2


// 만약 구해진 사잇값이 원의 반지름보다 크면 비충돌, 작으면 충돌.

// 두 원 사이의 충돌도 구할 수 있음. ex) 사잇값 <= 원1.반지름 + 원2.반지름

if( distance <= 반지름 )

{

충돌

}

else

{

비충돌

}