2024.10.29 삼각함수, 역삼각함수

장재영·2024년 10월 28일
0

삼각함수

정의: (직각)삼각형의 각도로 양변의 길이를 구하는것

삼각비

  1. sinθ=높이빗변sinθ = \frac{높이} {빗변{}}
  • 주기가 2π이며, -1과 1 사이에서 반복
  1. cosθ=밑변빗변cosθ = \frac{밑변} {빗변{}}
  • 주기가 2π이며, 사인 함수와 비슷하게 -1과 1 사이에서 반복되지만, 위상이 π/2만큼 차이
  1. tanθ=높이밑변tanθ = \frac{높이} {밑변{}}
  • 주기가 π이며, 특정 각도(예: π/2, 3π/2)에서 비연속적인 극점이 발생
각도sinθcosθtanθ
010
30°12\frac1232\frac{\sqrt3}213\frac1{\sqrt3}
45°22\frac{\sqrt2}222\frac{\sqrt2}21
60°32\frac{\sqrt3}212\frac123\sqrt3
90°10

사진1

사인법칙(사진1 참조)

asinA=bsinB=csinC\frac {a} {sinA} = \frac {b} {sinB} = \frac {c} {sinC}

코사인법칙(사진1 참조)

c2=a2+b22abcosCc^2 = a^2 + b^2 - 2ab cos C


역삼각함수

정의: (직각)삼각형의 변의 길이로 각도를 구하는 것
1. θ=arcsin높이빗변θ = arcsin\frac{높이} {빗변{}}

  • 정의역은 [−1,1]이며, 출력값(각도)은 −π/2에서 π/2 사이
  1. θ=arccos밑변빗변θ = arccos\frac{밑변} {빗변{}}
  • 정의역은 [−1,1]이고, 출력값은 0에서 π 사이
  1. θ=arctan높이밑변θ = arctan\frac{높이} {밑변{}}
  • 정의역은 모든 실수이며, 출력값은 −π/2에서 π/2 사이로 제한

어디서 사용될까?

1. 2D 캐릭터 회전과 방향 계산

  • 2D 슈팅 게임에서 플레이어가 마우스로 클릭한 방향을 계산
    θ=arctan2(Δy,Δx)θ = arctan2(Δy,Δx)
  • Δy와 Δx는 캐릭터와 마우스 위치의 y, x 차이
  • (0, 0)에서 (Δx,Δy)까지 선을 그어서 나온 각도가 θ
    라디안=θ×π180라디안=θ×\frac{π}{180}
    ex: 90도 = π2\frac{π}{2}

2. 투사체의 궤적 계산

  • 포탄이 발사되는 포물선(앵그리버드)
    x(t)=vcos(θ)tx(t) = v * cos(θ) * t
    y(t)=vsin(θ)t12gt2y(t) = v * sin(θ) * t - \frac{1}{2}gt^2
    v = 초기속도, g = 중력, t = 시간
    ps: 공기저항은 계산 안했음

3. 3D 회전

  • 3D에서 특정 점의 좌표값을 계산
    x=rcos(θ)cos(ϕ)x = r * cos(θ)*cos(ϕ)
    y=rsin(ϕ)y = r * sin(ϕ)
    z=rsin(θ)cos(ϕ)z = r * sin(θ)*cos(ϕ)
    r: 반지름, θ: 수평 회전 각도, ϕ: 수직 회전 각도

4. 거리계산

  • 피타고라스!
    a2+b2=c2a^2 + b^2 = c^2
    Δx2+Δy2=거리Δx^2 + Δy^2 = 거리

등이 있다.

profile
개발 하고 싶은 비버

0개의 댓글