직선과 구의 교차여부 테스트. 직선은 시작점 start와 방향벡터 dir로 표현하고 구는 중점 center와 반지름 radius로 표현한다. 직선과 구의 교차여부를 테스트하기 위해서는 구의 중점에서 직선으로 수선(직교하는 선)을 그린 후 수선의 길이와 구의 반지름의 길이를 비교해야 한다. 즉, 수선의 길이를 구하는 것이 핵심인 것이다. 이 수선의 길이를 구하기 위해서 피타고라스의 정리를 이용한다. 우선 수선을 직각삼각형의 높이라고 가정하고, 직각삼각형의 빗변은 직선의 시작점에서 구의 중점을 이은 선분으로 가정한다. 그럼 자연스레 직각삼각형의 밑변은 직선의 시작점에서 수선의 발(직선과 수선이 직교하는 점)까지를 이은 선분이 된다. 바로 빗변과 밑변의 길이를 구함으로써 우리가 구하고자 하는 높이(수선의 길이)를 구할수가 있게 된다. ○ .. 더보기 이전 1 ··· 113 114 115 116 117 118 119 ··· 176 다음