본문 바로가기

Nature of Code

Nature of Code 3강. 진동.

code137.5 (creative coding lab)

한태재

각도

디그리 (도)

한바퀴 도는 각도를 360도로 나타내는 단위, 90도(직각)

라디안

호의 길이와 반지름의 비율로 각도를 나타내는 단위 1라디안은 호의 길이와 반지름의 길이가 같아지는 시점의 각도. (180도 = PI 라디안, 360도 = 2 * PI 라디안, 90도 = PI/2 라디안)

라디안 = 2 * PI * (디그리/360)

 

회전 운동

  • 위치, 속도, 가속도의 관게도 회전 운동에 똑같이 적용됨
  • (단 위치,속도,가속도는 벡터이고 각도, 각속도, 각가속도는 스칼라 값)
  • 물체의 각도를 매프레임마다 그려주고 각도는 각속도로, 각속도는 각가속도로 변화시킨다.
  • 각가속도는 직접입력해도 되지만 돌림힘(토크)나 관성모멘트 값을 구해서 각가속도에 적용할 수 있다.
위치 = 위치 + 속도 
속도 = 속도 + 가속도

각도 = 각도 + 각속도 
각속도 = 각속도 + 각가속도

 

삼각법

  • 사인, 코사인, 탄젠트 등
  • 각도를 계산하거나 두 점의 거리를 구하거나 원(또는 호,선)을 만들 때 사용합니다

 

사인(각도) = 대변 / 빗변
코사인(각도) = 밑변 / 빗변
탄젠트(각도) = 대변 / 밑변

 

속도 벡터를 알고 있는 상황에서 속도 벡터의 각도를 구하려면

탄젠트(각도) = 대변 / 밑변

  • tan(angle) = y / x; 여기서 angle을 구하려면 아크탄젠트
  • angle = atan(y/x);

vectorAB = [12, 4] 일 경우
  • angle = atan(12/4);
  • angle(라디안) = 1.249
  • (angle(디그리) = 71.565)

 

극 좌표계와 직교 좌표계

  • x좌표와 y 좌표를 사용해서 표시하는 방법을 '직교 좌표계'라고 부른다 (데카르트 수학자)
  • 원점에서의 각도와 거리로 나타내는 방법을 '극 좌표계'라고 부른다
  • '극 좌표계'로 생각하면 쉬운 방법일 경우에는 계산 후에 '직교 좌표계'로 변환하여 나타낸다

예를 들어 거리가 50, 각도(theta)가 45도(PI/4라디안)이라면 x,y를 구할 수 있다

  • y = r * sin(theta)
  • x = r * cos(theta)

 

진동의 진폭과 주기

  • y = sin(x)의 그래프를 그려보면 -1과 1을 왔다갔다하는 곡선이 나옵니다
  • 이러한 형태의 곡선을 진동이라고 합니다.
  • 이 값을 물체의 위치로 넣으면 물체를 진동하게 할 수 있습니다
  • 진폭(amplitude) : 움직임의 중심과 가장 멀리 이동했을 때의 거리
  • 주기(period) : 한 번 완전히 진동하는데 걸리는 시간

See the Pen sin, cos by TaejaeHan (@TaejaeHan) on CodePen.




삼각법과 힘: 진자

  • 진자는 고정점에 추가 매달려 있는 것으로 (2차원에서 표현하자면) 중력과 고정점과의 각도에 따라 적용되는 힘을 알아야 한다.
  • 진자의 암(줄)의 길이는 고정되어 있다고 생각하면 변하는것은 각도뿐 이다.
  • 각가속도를 구하는 방법은 뉴턴의 운동 2법칙과 삼각법을 함께 사용해야 한다.
  • 중력은 아래방향으로, 전자의 힘은 암(줄)의 직각 방향으로 힘이 발생했을 때 두 개의 벡터로 직각삼각형을 만들고 삼각법을 사용하여 전자의 각 가속도를 구할 수 있다.
사인(각도) = 암(줄)의 장력 / 중력 sin(theta) = Fp / Fg Fp = Fg * sin(theta)

전자의 각가속도 = 중력 가속도 / sin(theta)

' 각 가속도 = 중력 * sin(theta) '

(증명보다는 이것을 아는 것만으로 충분하다.)

 


code137.5 (creative coding lab)

한태재

10년차 크리에이티브 디벨로퍼 / 웹 그래픽 엔지니어 / 프론트엔드 개발자

로서 가장 좋아하는 작업은 (HTML5)에서 2D/3D Canvas 그래픽스를 다루는 프로젝트입니다

'Nature of Code' 카테고리의 다른 글

벡터 힘,질량,중력  (0) 2024.06.09
벡터 기본 방향과 크기  (0) 2024.06.03
Nature of Code 2강. 힘.  (0) 2024.05.15
Nature of Code 1강. 벡터.  (1) 2024.05.07