ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 1. 주변건물 만들기
    Grasshopper 2021. 1. 15. 20:30

    오늘 배워볼 주제는 사각형안에 무작위의 너비와 높이를 가지는 직육면체들을 만들어 볼것이다.

    만들기에 앞서 간단한 알고리즘을 설명하면,

     

    1.  가로 세로 (12,000 , 12,000)을 가지는 정사각형을 만들고

    2. 정사각형 안에 랜덤의 점을 찍는다

    3. 랜덤의 점을 기준으로 가로 세로 (범위 300-500) 안의 랜덤의 사각형을 형성한후

    4. 그 사각형을 extrude 시킨다. 이때 z 값도 랜덤으로 (범위 300-600) 으로 설정하면

    5.    가로 세로 (12,000 , 12,000)을 가지는 정사각형안에 랜덤의 매스들이 생긴다.

     

     

    먼저 라이노창에 'Grasshopper' 명령어를 입력해준다.

     

    'Rectangle' 이라는 노드를 놓고 x,y 값에 12000 을 입력한다.

     

    그다음 'Populate 2d' 의 노드를 놓고 'Rectangle' 과 연결시킨다. 

     

    이렇게 되면 12000,12000 정사각형 안에 무작위의 점이 찍히는데  왼쪽 input 란에 'count'는 점의 갯수  'seed' 는 쉽게 말하면 주사위를 한번 더 던지는 거다.

     여기서 점을 기준으로 200~500 길이를 가진 정사각형을 만들기위해 왼쪽붜 'Product domain' ' Number' 'Rectangle' 노드를 사용할건데,

    (200 ~ 500)의 범위를 나타내는 노드인 'Product domain' 노드를 만들고 이를 랜덤으로 실행시켜주는 'Random' 노드와 연결한후 'Rectangle' 에 연결해주면 된다. 

    (domain start 에 범위가 시작되는 값, domain end 에는 범위가 끝나는 값을 입력하고 output을 'Random' 의 range에 연결해준다.)

     

    여기까지가 12000,12000 정사각형 안에 (200 ~ 500)사이의 길이를 가진 정사각형이 200개가 무작위로 배치가 되었다. 

    이제 이것을 서피스로 만들어주고 extrude만 시켜주면 된다.

     

    'Boundary surface' 의 노드를 'Rectangle' 의 output 과 연결해주면 지금까지 만들었던 사각형의 surface가 만들어진다.

    이제 surface 를 무작위의 z 값으로 extrude를 시키려면된다.

     

    'Extrude' 노드를만들고 z값을 정해주는 노드인 'Unitz' 를 놓고 이를 랜덤 값으로 정해주는 'Random' 'Construct domain' 을 놓아준다.

    그렇게 해서 모두 연결해주면 된다.

     

    이제 여지까지 만든걸 'Bake' 로 구워서 라이노로 돌아가 확인해보면

     

    무작위의 매스들이 놓여진것을 볼 수 있다.

Designed by Tistory.