Grasshopper 패턴 만들기 — 반복 배열 기초
그래스호퍼(Grasshopper)가 라이노 직접 모델링보다 압도적으로 유리한 상황이 반복 배열이다. 같은 형상을 수십, 수백 개 배치해야 할 때 라이노에서 Array로 하나씩 처리하면 수정할 때마다 처음부터 다시 해야 한다. Grasshopper는 슬라이더 하나로 개수와 간격을 즉시 바꿀 수 있다. 반복 배열의 기본 패턴 세 가지를 정리한다.1. 직선 배열 — Linear Array
구성
- Number Slider (간격)
- Number Slider (개수)
- ↓
- Series — 등차수열 생성
- ↓
- Unit X — X 방향 벡터
- ↓
- Move — 기준 형상을 각 거리만큼 이동
- ↓
- 배열 결과
Series 컴포넌트
더블클릭 → "series" 검색입력: S — 시작값 (기본 0), N — 간격, C — 개수
출력: S — 수열 [0, N, 2N, 3N...]
Move 컴포넌트
더블클릭 → "move" 검색입력: G — 이동할 형상, T — 이동 벡터
출력: G — 이동된 형상, X — 이동 벡터
Unit X / Y / Z 컴포넌트
더블클릭 → "unit x" 검색입력: F — 거리
출력: V — X 방향 벡터
전체 연결
Circle (기준 형상) ↓ G Move ↓ T Amplitude (Unit X × Series 출력)슬라이더로 간격과 개수를 바꾸면 배열이 즉시 업데이트된다.
2. 격자 배열 — Grid Array
X, Y 방향으로 동시에 배열하는 패턴이다.구성
- Series (X 방향) → Move (X 방향)
- Series (Y 방향) → Move (Y 방향)
- ↓
- Cross Reference — X, Y 모든 조합 생성
Cross Reference 컴포넌트
더블클릭 → "cross reference" 검색두 리스트의 모든 조합을 만든다.
- 입력 A: [0, 1, 2] (X 위치)
- 입력 B: [0, 1, 2] (Y 위치)
- 출력: A: [0,0,0,1,1,1,2,2,2], B: [0,1,2,0,1,2,0,1,2] → 3×3 격자의 모든 조합
Construct Point로 격자 점 생성
- Cross Reference 출력 A → Construct Point X
- Cross Reference 출력 B → Construct Point Y
- ↓
- 격자 점 배열 생성
3. 원형 배열 — Polar Array
중심점을 기준으로 원형으로 배열하는 패턴이다.구성
- Number Slider (개수 N)
- ↓
- Range (0 ~ 2π를 N등분)
- ↓
- Rotate (기준 형상을 각 각도로 회전)
- ↓
- 원형 배열 결과
Range 컴포넌트
더블클릭 → "range" 검색입력: D — 도메인 (0 to 360 또는 0 to 2π), N — 분할 수
출력: R — 등간격 숫자 배열
Rotate 컴포넌트
더블클릭 → "rotate" 검색입력: G — 회전할 형상, A — 각도 (라디안), P — 회전 중심점
출력: G — 회전된 형상
실무 팁: Grasshopper에서 각도는 기본으로 라디안을 쓴다. 도(degree)로 입력하려면 Deg to Rad 컴포넌트를 거쳐서 변환한다.
4. 커브 위 배열 — Array on Curve
커브를 따라 형상을 배열한다. 라이노의 ArrayCrv와 같은 기능이다.구성
- Curve (경로 커브)
- ↓
- Divide Curve (N등분) ↓ P (분할점) ↓ T (접선 벡터)
- Orient (기준 형상을 각 점에 배치)
- ↓
- 커브 따라 배열된 형상
Orient 컴포넌트
더블클릭 → "orient" 검색입력: G — 배치할 형상, A — 기준 평면 (원래 위치), B — 목적 평면 (배치할 위치)
출력: G — 배치된 형상
Divide Curve의 출력 T(접선 벡터)로 목적 평면을 만들면 형상이 커브 방향에 맞춰 회전하면서 배열된다.
5. 서페이스 위 배열 — Array on Surface
서페이스를 격자로 분할하고 각 점에 형상을 배치한다. 비정형 파사드 패널링의 기본 패턴이다.구성
- Surface (파사드 서페이스)
- ↓
- Divide Surface (U×V 분할) ↓ P (격자 점) ↓ N (법선 벡터)
- Orient (패널 형상을 각 점에 배치)
- ↓
- 서페이스 위 패널 배열
6. 조건부 패턴 — 홀짝 필터링
배열된 형상 중 홀수 / 짝수 번째만 선택해서 다른 처리를 하는 패턴이다.구성
- Series → List
- ↓
- Cull Pattern (True/False 패턴으로 필터링)
- ↓
- 홀수 인덱스 형상 / 짝수 인덱스 형상 분리
Cull Pattern 컴포넌트
더블클릭 → "cull pattern" 검색입력: L — 리스트, P — True/False 패턴 (예: {True, False, True, False})
출력: L — 필터링된 리스트
실무 팁: 파사드에서 홀짝으로 패널을 다르게 처리할 때 Cull Pattern을 쓴다. 예를 들어 홀수 패널은 열림, 짝수 패널은 닫힘으로 설정하는 루버 패턴을 만들 수 있다.
7. 실무 적용 예시 — 루버 파사드
수직 루버가 일정 각도로 기울어진 파사드 패턴이다.- 1. 파사드 서페이스 준비
- 2. Divide Surface → U×V 분할점 추출
- 3. 각 점에 직사각형 패널 배치 (Orient)
- 4. Number Slider → 루버 각도 설정
- 5. Rotate → 각 패널을 같은 각도로 회전
- 6. OffsetSrf → 패널 두께 적용
- → 슬라이더로 루버 각도 실시간 조정
정리
| 패턴 | 핵심 컴포넌트 |
|---|---|
| 직선 배열 | Series + Move |
| 격자 배열 | Cross Reference + Construct Point |
| 원형 배열 | Range + Rotate |
| 커브 위 배열 | Divide Curve + Orient |
| 서페이스 위 배열 | Divide Surface + Orient |
| 조건부 필터 | Cull Pattern |
관련글
- Grasshopper 기본 컴포넌트 — Point / Curve / Surface
- Grasshopper란? — 파라메트릭 디자인 개념
- 라이노 비정형 파사드 기초 — 패널링과 곡면 제어
댓글 없음:
댓글 쓰기