[Nature of Code] processing 7. 진동의 진폭과 주기

2023. 2. 6. 01:00
반응형

왼쪽 끝과 오른쪽 끝을 왔다갔다하는 운동을 단순 조화 운동이라고 한다.

 


진폭 : 움직임의 중심과 가장 멀리 이동했을 때의 거리


주기 : 한 번 완전히 진동하는 데 걸리는 시간

진동수 : 단위 시간마다 진동한 횟수

 

 

예제 3-5. 단순 조화 운동 1

void setup() {
  size(400, 200);
}

void draw() {
  background(177);
  
  float period = 120;
  float amplitude = 100;
  
  //단순 조화 운동의 기본 공식으로 x축 위치를 구한다.
  float x = amplitude * cos(TWO_PI * frameCount / period);
  
  stroke(0);
  translate(width / 2, height / 2);
  line(0,0,x,0);
  ellipse(x,0,20,20);
}

 

 

예제 3-6. 단순 조화 운동 2 (위 예제와 결과물은 같으나, 조금 더 쉽게 다듬은 코드)

float angle = 0;
float aVelocity = 0.05;

void setup() {
  size(400, 200);
}

void draw() {
  background(177);
  
  float amplitude = 100;
  float x = amplitude * cos(angle);
 
  //각속도의 개념을 활용해 변수를 증가시킨다.
  angle += aVelocity;
  
  ellipseMode(CENTER);
  stroke(0);
  fill(185);
  translate(width / 2, height / 2);
  line(0,0,x,0);
  ellipse(x,0,20,20);
}

 

 

결과물

 

 

 

 

 

 

반응형

BELATED ARTICLES

more