Silverback9

#야생으로

Creative Coding 독학 제315일 2025년02월05일(수)

오늘은 귀엽고 총명한 우리의 vehicle 차량이 poison 독약을 만나는 모습을 표현해 보는 날~^^*

귀엽고 총명한 발레 꿈나무들이 두근두근거리면서도 펀안편안하게 시험치는 모습을 들으며~^^*

한 주의 한 가운데 있는 오늘~^^*

수요일의 기운을 탄탄하게 편안하게 스트레칭 해 볼까요~^^*

저는 코딩 공부 정리해서 돌아올게요~~^^* 쓔우웅~~^^*

네~^^* 먼저, poison 독약을 만들어서 여기저기 놓아 두겠습니다. 위험한 것이므로, 주의 경고의 의미로 빨간색으로 표현해 볼까요?

처음에 우리의 vehicle 차량이 몸에 좋은 음식과 몸에 나쁜 독약을 구분하지 못하고 둘 다 열심히 먹는 안타까운 모습을 표현해 보겠습니다.

var poison = [];

function setup() {
   .
   .
   .
  for( var i = 0; i < 10; i++) {
    var x = random(width);
    var y = random(height);
    poison.push(createVector(x, y));
  }
}

function draw() {
   .
   .
   .
  for(var i = 0; i < poison.length; i++) {
    fill(255, 0, 0);
    noStroke();
    ellipse(poison[i].x, poison[i].y, 8, 8);
  }
  
  vehicle.eat(food);
  vehicle.eat(poison);
  vehicle.update();
  vehicle.display();
}

네…우리의 소중한 vehicle 차량이 몸에 좋은 food 음식과 몸에 위험한 poison 독약을 구분하지 않고 맛있게 먹는데요. 어떤 순간은, 어느 것을 먹을까요~~ 둘 다 맛있어 보여서 고를 수가 없네…고민하느라 머뭇머뭇거리는 순간도 보이시나요?

네~^^* 차량의 움직임 방향과 같은 방향의 선상에서 차량 앞에 차량 뒤에 food와 posion이 놓여 있는 경우, vehicle이 엄청 많이 머뭇거리는 것 같기도 하네요.

그런데요…독약을 먼저 다 먹어버린 경우나 음식을 먼저 다 먹어버린 경우, 프로그램이 에러 메시지를 내며 멈추는 것 같아요.

class Vehicle {
   .
   .
   . 
  eat(list) {
    var record = Infinity;
    var closest = -1;
    for (var i = 0; i < list.length; i++) {
      var d = this.position.dist(list[i]);
      if(d < record) {
        record = d;
        closest = i;
      }
    }
    this.seek(list[closest]);
    
    if(record < 5) {
      list.splice(closest, 1);
    }
  }
}

poison 독약을 다 먹으면, 배열 poison[]에 구성요소가 남아있지 않은데, 존재하지 않는 독약 구성요소와 vehicle 사이의 거리계산을 하는 작업문을 수행해야 하고,

food 음식을 다 먹으면, 배열 food[]에 구성요소가 남아있지 않은데, 존재하지 않는 음식 구성요소와 vehicle 사이의 거리계산을 하는 작업문을 수행해야 해서,

존재하지 않는 것과의 거리계산에 컴퓨터가 혼란스러워하며 에러메시지를 내는 것 같아요.

이 문제를 우리가 어떻게 해결하면 좋을까요…?

아…이것도 또한 고민이네요…

이 고민을 발견한 이 순간 우리는 어머나! 벌써 동영상 강의 하나를 마무리 해내었어요!

음…몸에 좋은 음식 food와 몸에 위험한 독약 poison이 구별되지 않아서 어느 것을 먼저 먹을까 고민하는 vehicle 차량을 보니 안타까운 마음이 들어요…

네…!

오늘 저와 함께, 몸에 위험한 독약 poison을 몸에 좋은 음식 food와 구별하지 않고 먹는 동작을 코드로 구현하여, 이 상황이 얼마나 안타까운 상황인지를 시각적으로 표현해 주셔서 감사합니다…!

우리들의 소중한 친구! 우리들의 자랑스런 꿈나무! 귀엽고 총명한 vehicle이 이런 위험한 poison을 잘 식별해서 미리미리 멀어질 수 있도록 우리가 나서서 신경을 쓰고 도와주면 좋을 것 같아요…!

그래서요. 내일은, poison을 잘 식별해서 피해가는 동작을 코드로 구현해 볼까요?

네~^^* 좋아요~^^* 고마워요~^^*

네, 그럼 내일은! 우리의 소중한 친구인 vehicle 차량을 지키고 보호하는 진실한 우정과 단단한 책임감을 가지고! poison 독약에서 멀어지는 동작을 코드로 구현해 보겠습니다!

우리들의 귀엽고 총명한 vehicle! 세상 그 누구보다 소중한 vehicle! 우리들의 꿈나무! 우리가 지켜줄게요!

오늘도!

맛있는 점심!

보람찬 하루!

따뜻한 저녁!

누리시고요!

포근하고 깊은 밤! 코~^^* 하시기 바래요~^^*

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

댓글 남기기