2010-02-26 5 views
14

P1과 P2가 주어지면 P1에서 P2까지의 각도를 어떻게 알 수 있습니까? 감사합니다각도 2도 계산

+9

angle * 180/PI을 라디안에, 두 점 사이의 각도가 없습니다. 그러나 두 가지 벡터가 있습니다. 내적 제품을 살펴보고 거기에서 얻을 수있는 것을 확인하십시오. – GManNickG

+1

OP는 P1과 P2를 연결하는 선이 x 축과 이루는 각도를 의미합니다. 적어도, 그것은 선택된 대답이하는 것입니다. –

답변

33

그냥 float angle = atan2(p1.y - p2.y, p1.x - p2.x)입니다. 물론

는 반환 형식은 당신도 그것을 필요로하는 경우 단지 부유 되려면

6

고등학생을 기억하고 있습니다. 이것이 내가 얻는 것입니다.

두 점 A (X1, Y1)이며, B (X2, Y2)

나는 당신이 두 점과 원점 O (0,0) 사이의 각도를 원하는 가정합니다.

각 점은 그 높이, 밑변 및 빗변으로 경계가 정해 지므로 두 개의 각도 alpha1과 alpha2를 얻습니다. 베타 = alpha1 - alpha2 (여기서 alpha1은 alpha1> alpha2 임)를 수행하여 각 각도를 찾고 필요한 각도 베타를 계산하는 것이 아이디어입니다.

다음 베타 = 알파 1을

계산 알파 1 = inv_tan (Y1/1 개) 및 알파 2 = inv_tan (Y2/X2) - 알파 2는

+1

다른 답변은 동일한 내용이지만 더 간결합니다. – Ankur