Silverback9

#야생으로

Creative Coding 독학 제080일 2024년06월15일(토)

오늘은 나전칠기 공예를 해보겠습니다~^^*

밤바다의 잔물결들 그리고 그 힘이 응축된 파도를 나전칠기 공예로 표현해 보겠습니다~~^^*

아래 동영상을 클릭하시면 오늘 공부 내용을 바로 시작(8:09)하실 수 있어요~^^*

물결들을 담을 배열을 준비하고,

물결들의 높이의 합을 담을 변수도 준비하고,

물결의 phase를 증가시켜 흐름도 표현해 볼게요~^^*

코드 안의 자세한 내용을 살펴 보셔도 좋겠지요~~^^*

class Wave{
  constructor(amp, period, phase){
    this.amplitude = amp;
    this.period = period;
    this.phase = phase;
  }
  calculate(x) {
    return sin(this.phase + TWO_PI*x/this.period)*this.amplitude;
    // x좌표값을 받아 사인곡선의 y좌표값을 계산해서 반환합니다. 
  }
}

let waves = [];
//잔물결 한 올 한 올을 담을 배열을 준비하겠습니다~

function setup() {
  createCanvas(400, 400);
    
  for(let i = 0; i < 5; i++){
   
    waves[i] = new Wave(random(20, 50), random(50, 400), random(TWO_PI));
    //amplitude 20~50, period 50~400, phase 0~2파이 사이값을 가진 잔물결 다섯 올을 만들어 보겠습니다.  
  }
}

function draw() {
  background(0);
  translate(0, 200);
  
  for(let x = 0; x< width+1; x += 5){

    let sumY = 0;
    // 사인 곡선들의 y축 좌표값의 합을 담을 변수 sumY를 준비합니다. 
    
    for(let wave of waves ) {
      //모든 잔물결 각각에 대해 
      
      let y = wave.calculate(x);
      // 개별 사인 곡선의 y축 좌표값을 받아 변수 y에 담습니다. 
      
      sumY += y;
      // 개별 사인 곡선의 y축 좌표값을 sumY에 더합니다. 
      
      fill(random(0,255), random(0, 255), random(0, 255));
      //반짝반짝 나전칠기 잔물결을 새겨 봅시다~!
      ellipse(x, y, 5);
      
    }
    fill(255,0,0);
    ellipse(x, sumY, 5);
    //모든 잔물결의 힘을 응축한 붉은 파도를 일으켜 봅시다!  
    
  }
  
   // for(let wave of waves) {
   //  wave.phase += 0.1;
   // 사인 곡선들의 phase 값을 0.1씩 증가시켜 마치 곡선들이 왼쪽방향으로 흐르는 듯한 효과를 주겠습니다. 
   // }
   
}

먼저, 잔물결과 파도를 움직임 없는 상태로 살펴 보시죠~^^* 붉은 파도가 오색영롱한 잔물결들의 높이의 합을 잘 표현하고 있나요? 새카만 밤바다의 멋진 풍경사진 감상하셔요~^^* 실행을 반복하실 때 마다 다른 형태의 잔물결과 파도를 만나보실 수 있어요~~^^*

이번에는 밤바다 동영상을 감상해 보시죠~~^^* 물론, 실행을 반복하실 때 마다 다른 모습의 밤바다 파도를 보실 수 있어요~~^^* 아시죠? 실행은 삼각형~ 종료는 사각형~^^*

오늘 아침에 뭍에 올라오니 예쁜 다리가 생겼어요. 기쁜 마음으로 해변을 산책하며 예쁜 조개 껍질을 주웠어요. 속껍질을 벗겨 가늘게 쪼개어 새까맣게 옻칠을 한 나무조각 위에 새겨 넣었어요. 오색영롱 잔물결 예쁘지요~~^^* Saturday 선물이예요~~^^*

오늘도 저와 함께 코딩 공부 해주셔서 감사합니다~^^*

저는 이제, 파도 소리를 녹음하고 있는 큰 소라님을 만나러 바다 속으로 들어가 볼게요~~

네~~ 네~~ 시원한 수박 주스 드시며 파라솔 아래에서 한 숨 코 주무시고 계셔요~~^^*

내일 뭍으로 돌아와 다리가 다시 생긴 저와 함께 코딩공부의 길 또 같이 걸어요~~^^*

강의 물결이 이끌어 준 바다, 그 파도를 믿고 또 항해를 하면 다다르게 될 소중한 꿈들!

네!!! 꿈은 이루어 집니다~~!!!^^*

댓글 남기기