게임을 만들기 위해서 프로그래밍을 할 때 1도부터 360까지 나타내는 체계는 사용하지 않습니다.
육십분법 말고 호도법이란 각을 나타내는 체계를 사용합니다.
(이런 각도 체계를 육십분법이라 합니다.)
(프로그래밍에서 사용하지 않는 각도 체계의 일반각 : 360n +a ) (n은 정수)
그래서, 프로그래밍을 할때 sin함수, cos함수, tan함수의 인자에 육십분법의 각을 넣으면 값이 예상하던 것과는 다르게 나올 겁니다. 그 이유는 이쪽 업계에서는 호도법을 사용하기 때문이죠.
호도법은 반지름의 길이가 r인 원에서 길이가 r인 호의 중심각의 크기를 1 라디안이라 하고, 이를 단위로 하여 각의 크기를 나타내는 방법입니다.
이때 1 라디안은 반지름에 상관없이 항상 일정한 값을 갖게 됩니다.
1 라디안 = (180도)/π
1도 = π/180 라디안
1도는 π/180 라디안입니다.
2도는 2π/180 라디안입니다.
3도는 3π/180 라디안입니다.
......
360도는 360π/180 라디안입니다.
n도는 (n*π)/180 라디안입니다.
(n도를 라디안으로 바꾸는 과정은 블로그 하단에 있습니다.)
n도를 라디안으로 표현하는 것은 엄청나게 중요합니다. 만약 사용자에게 각도의 값을 보여줘야 할때 이를 호도법을 사용하여서 라디안으로 보여준다면,
'뭐지 이건...' 하고 당혹감을 느낄 것입니다.
그리고 또 각도의 값을 입력 받을때 일반 사용자들에게 더욱 익숙한 육십분법으로 값을 받아야 하는 경우가 있을 것입니다.
이를 위해서 n도를 nπ/180라디안으로 변환하는 과정이 중요합니다.
이와 마찬가지로 호도법을 육십분법으로도 변환하는 과정도 중요합니다.
1 라디안 = (180도)/π
n라디안을 n도 * 180/π로 변환합니다.
<일반으로 많이 쓰이는 값>
육십분법 | 0 | 30 | 45 | 60 | 90 | 180 | 270 | 360 |
호도법 | 0 | π/6 | π/4 | π/3 | π/2 | π | 3π/2 | 2π |
그런데 2π 라디안, 3π라디안 등 값뒤에 라디안 붙이기가 굉장히 어마무시하게 귀.찮.습.니.다!!
그래서 우리는 라디안을 떼고 그냥, 2π, 3π만불러도됩니다.
이제 라디안이 나오는 과정을 설명해 볼게요~
위에서 말했듯이
호도법은 반지름의 길이가 r인 원에서 길이가 r인 호의 중심각의 크기를 1 라디안이라 하고, 이를 단위로 하여 각의 크기를 나타내는 방법입니다.
이 말에 들어 있는 의미는 중심각과 호의 길이의 비를 사용해서 각도를 나타내는 것입니다.
360도 : 2πr = angle : L (L : 호의 길이)
이렇게 비례식을 세워서 풀면 angle이 나오게 됩니다.
angle = (360 * L)/2πr
그럼 이제 호도법에서의 일반각을 알아보러 가자구욧~
육십분법에서의 일반각이 360n + a입니다.
이것을 이용하여서 호도법에서의 일반각을 구해 보겠습니다.
360도 = 2π
a도 = aπ/180 = θ
θ는 보통 (0<= θ<=360)의 범위에서 택합니다
따라서 호도법에서의 일반각은
2πn + θ (n은 정수)이 됩니다.
로그함수 f(x)가 같는 성질에 대한 함수 표현 (0) | 2020.04.02 |
---|---|
수열의 합, 알아두면 쓸데없지만 편한 풀이 (0) | 2020.02.17 |
뭐 게임제작의 기본? 2D 벡터의 회전변환 공식 (0) | 2019.12.11 |
댓글 영역