▶함께배우는 프로세싱 ::Complex modules in a grid
이번 글에서는 generative design에서 제공하고있는 예제를 살펴보려고합니다.
이번 예제는 Complex modules in a grid이며 마우스 움직임에 따라 그리드형태로 이루어진 shape의 모습이 바뀌게 되는 구조입니다.
P.2.1.3 Complex modules in a grid의 특징은 그리드 구조가 for구문의 중첩으로 형성되는데 이거 그 안에서도 또한 번 for구문을 활용하여 특정모양을 중첩시킨다는 것입니다.
예제의 결과는 이렇게 for()구문의 중첩을 활용한 그리드의 형태로 나타나게 됩니다. 그리드 내의 타일 크기는 화면의 너비와 미리 설정하는 전체타일 개수에 의해 설정됩니다.
처음에는 한개의 원이 그리드형태로 그려지지만, 마우스의 움직임에따라 그리드, 그리고 그 위에 다시 중첩적으로 shape들이 그려지게 됩니다.
정리해보자면 for구문의 중첩으로 그리드를 구성한 뒤, 각 그리드 안에 생성되는 원형의 형태는 점점 작아지며 중첩되고, 각 그리드내에 위치한 원형의 형태들은 동일한 방향으로 움직이게 됩니다. 각 그리드 내에서는 동일한 방향을 띄지만 그리드 간에는 다른뱡항으로 설정되기때문에, 마우스움직임만으로 다양한 shape들을 만들어 낼 수 있게 됩니다.
각 그리드 내 원형의 형태들이 향하는 방향은 랜덤하게 설정됩니다. 그리고 각 그리드 내부에 중첩되는 원의 개수를 결정하는 것은 마우스위치의 X값이며, 각 그리드 내부의 원들과 목표지점의거리는 마우스위치의Y값에 의해 그 크기가 결정되게 됩니다.
예제의 결과영상은 다음과 같습니다.
Generative Gestaltung, ISBN: 978-3-87439-759-9
First Edition, Hermann Schmidt, Mainz, 2009
Hartmut Bohnacker, Benedikt Gross, Julia Laub, Claudius Lazzeroni
ⓒCopyright 2009 Hartmut Bohnacker, Benedikt Gross, Julia Laub, Claudius Lazzeroni
http://www.generative-gestaltung.de
'시각화 > 프로세싱' 카테고리의 다른 글
▶프로세싱 활용노트 ③ - loadStrings(), arrayList() (0) | 2015.01.17 |
---|---|
▶프로세싱활용노트② ambientLight(), directionalLight() (2) | 2015.01.13 |
▶프로세싱 에러해결 ① You might be missing a library. (5) | 2015.01.11 |
▶프로세싱활용노트① - 나머지연산(모듈로, modulo) 이해하기 (0) | 2015.01.09 |
▶함께배우는 프로세싱 :: 프로세싱에서 데이터활용하기① - Table() (0) | 2015.01.09 |