exercício 5: St. Mary Axe (grasshopper)
Autor: Mariana | Publicado: 2011-09-18T12:12:00-07:00

Novo desafio: modelar o mesmo edifício do exercício anterior só que através do grasshopper. Para isso, tivemos mais algumas noções do que é algoritmo e nos utilizamos bastante delas para trabalhar com o grasshopper.

A. Passo a Passo para fazer a FORMA:

1. CIRCLE: palete curve &gt; primitive &gt; circle
*para o input R (Raio): palete params &gt; special &gt; panel (escreve raio 11,47).

2. MOVE:&nbsp;(clica 2x na tela e busca move)
*para o input G (Geometria): ligar no output C da pilha circle;
*para o input T: informar eixo.
[lembrando que o move, no grasshopper, é um copy, porque deixa os resíduos - isso vale para as outras ações]

3. UNIT Z: (clica 2x na tela e busca unit z)
*para o input F: informar alturas - panel (0; 20; 60; 80; 90; 100);
*liga o output V no input T da pilha move.




4.&nbsp;SCALE&nbsp;(clica 2x na tela e busca scale):
*para o input G (Geometria): liga no output G da pilha move;
*para o input F (Fator):&nbsp;informar fatores de escala -&nbsp;panel&nbsp;(0.9; 1.2; 1.2; 0.9; 0.6; 0.09);
[com isso, cada círculo vai ser escalado de acordo com seu fator]
*para o input C: informar o plano (xy) de escala, isto é informar os centros dos círculos.

5. CENTER: palete curve &gt; analysis &gt;&nbsp;center
*para o input A: liga no output G da pilha move;
[os centros de cada círculo vão ser identificados]
*liga o output C no input C da pilha scale.
&nbsp;[com isso, cada círculo vai ser escalado de acordo com seu centro]
(opcional: liga um panel no output C para visualizar as coordenadas dos centros)




6. LOFT: palete surface &gt; freeforms &gt; loft
*para o input S (Superfície): liga no output G da pilha scale
*não liga nada no output L (Loft): a forma está feita.

B. Passo a Passo para fazer uma CURVA ao redor da FORMA:

1. END: (clica 2x na tela e busca end points)
*para o input C: liga no&nbsp;output G da pilha&nbsp;scale.
[os endpoints de cada círculo vão ser identificados]


2. INTCRV:&nbsp;palete curve &gt; spline &gt; interpolate
*para o input V (Valor): liga no output S da pilha end
[vai se formar uma curva ligando os endpoints - mas não é exatamente isso que queremos]

3. POLYGON&nbsp;(clica 2x na tela e busca polygon)
*para o input P (Ponto): liga no output S da pilha IntCrv
[para ter um polígono em cada endpoint]
*para o input R (Raio):&nbsp;palete params &gt; special &gt; number slider&nbsp;(limites de 0 a 1 - integers - deixa no 1).
*para o input S (Lados):&nbsp;palete params &gt; special &gt;&nbsp;panel (coloca o número 3 - triângulo)




[os próximos passos terão como objetivo rotacionar os polígonos um a um até a curva voltar ao endpoint no topo]

4. DIVIDE:&nbsp;(clica 2x&nbsp;na tela e busca&nbsp;divide)
*para o input C: liga no output C da pilha IntCrv;
*o input P da pilha polygon deve ser desligado do output da pilha&nbsp;IntCrv e ligado no output da pilha divide;
*para o input N (Número de divisões):&nbsp;palete params &gt; special &gt;&nbsp;number slider&nbsp;(limites de 0 a 100- integers - deixa no 40).
[agora temos 40 polígonos ao longo da curva, mas temos que rotacionar um a um]

5. F(x):&nbsp;palete math &gt; script &gt; F1
[clica 2x na pilha para escrever a expressão: 360/x*0,0174 (para transformar o ângulo 360/40 - 9 graus - em radianos)]
*para o input x (variável da função): liga no number slider com o número 40;
*o output r (Resultado) é justamente o quanto cada polígono deve rotacionar.

6. SERIES:&nbsp;(clica 2x&nbsp;na tela e busca&nbsp;series)
[essa pilha serve para criar uma série]
*para o input N (intervalo): liga no output r da pilha F(x);
*para o input C (número de passos): liga no&nbsp;number slider com o número 40;

7. ROTATE:&nbsp;(clica 2x&nbsp;na tela e busca&nbsp;rotate)
*para o input G (Geometria): ligar no output P da pilha polygon;
*para o input A (Ângulo): ligar no output S da pilha series.
[agora sim, cada um dos 40 polígonos está rotacionado de 9 em 9 graus]



8. LOFT:&nbsp;palete surface &gt; freeforms &gt;&nbsp;loft
*para o input S (Superfície): liga no output G da pilha&nbsp;rotate;[temos a curva ao redor da forma!]


(Paramos aqui na aula do dia 12.09, para continuar na aula do dia 14.09)

C. Passo a Passo para MULTIPLICAR e ROTACIONAR a CURVA:

1. DOMAIN:&nbsp;(clica 2x&nbsp;na tela e busca&nbsp;domain - ver figurinha com intervalo 0 a 1)
[define um domínio com início e fim]
*os inputs são A (começo) e B (fim): ligar um panel&nbsp;em cada com os valores 0 e 360, respectivamente.

2. RANGE:&nbsp;(clica 2x&nbsp;na tela e busca&nbsp;range)
[pega os valores do domínio e divide por uma quantidade específica]
*para o input D (domínio): ligar no output I da pilha domínio;
*para o input N (quantidade de passos):&nbsp;palete params &gt; special &gt;&nbsp;number slider&nbsp;(limites de 0 a 10 - integers - deixa no 10).

(opcional: liga um&nbsp;panel&nbsp;no output R para&nbsp;visualizar&nbsp;os valores)
3. F(x): palete math &gt; script &gt;&nbsp;F1[clica 2x na pilha para escrever a expressão: x*0,0174 (para transformar o ângulo x em radianos)]*para o input x (variável da função): liga no output R da pilha range;
4.&nbsp;ROTATE:&nbsp;(clica 2x&nbsp;na tela e busca&nbsp;rotate)*para o input G (Geometria): ligar no output L da pilha&nbsp;loft;*para o input A (Ângulo): ligar no output r da pilha&nbsp;F(x).[o output r (Resultado) é justamente o quanto a curva vai rotacionar (a rotação também deixa resíduos), totalizando 10 curvas]


5. MIRROR:&nbsp;(clica 2x&nbsp;na tela e busca&nbsp;mirror)
*para o input G (Geometria): liga no output G da pilha rotate;
*para o input P (Plano): informar plano do espelho -&nbsp;palete vector &gt; plane &gt; XY plan




E PRONTO!