안드로이드 개발 질문/답변
(글 수 45,052)
qqqqq
2012.03.13 15:58:04
각도가 이상하게 계산되는게 아니라 atan으로 계산하면 라디안 값이 나옵니다.
거기서 나온 값으로 각도를 구하시려면
각도 = rad * (180 / PI) 를 해야 합니다.
2012.03.13 17:41:03
원점과 지점을 연결한다고 했을떄
그걸 안드로이드 전용의 좌표로 봤을떄
각도를 구할건데요
안드로이드 좌표는 오른쪽으로 가면 x+
아래로 가면 y+ 잖아요
그니까 워점과 지점의 각도를 구하는 거죠
0도
270도 90도
180도
이런거 처럼 이런 포맷처럼 이런 식의 각도를 알고싶은데요
이런 각도요 구할떄
센터는 정중앙
터치는 터치 지점 인데요
float dx = centers_X - touch_X;
float dy = centers_Y - touch_Y;
float radian = (float) Math.atan2(dx, dy);
double degree = Math.toDegrees(radian);
이렇게 해서 각도를 잿는데 이상하네요
왼쪽은 양수고, 오른쪽은 음수네요.......




아까 계산하는 그식이 맞는식입니다.
다만 탄젠트의 특성 (주기가 PI)라는 특성 때문에 좌우를 따로 계산해야 하는 것밖에 없습니다.
Math.atan 혹은 Math.atan2 쓰는건 맞는겁니다.