Receitas Clássicas: Image Sampler
Hoje vou mostrar uma das receitas mais divertidas de se trabalhar dentro do Grasshopper: o Image Sampler.
Resumindo, esta definição permite fazer uso de uma imagem qualquer para controlar parâmetros de projeto.
Ingredientes:
1 Espiral (criei no Python, mas vocês podem usar qualquer outro componente que cria uma malha de pontos, como por exemplo 1 Square Grid).
2 Bounds.
2 Remaps.
1 Construct Point.
1 Desconstruct Point.
2 Image Sampler.
1 Multiplication (ou qualquer outra expressão matemática).
1 Circle (ou qualquer outra forma geométrica).
1 Custom Preview.
Antes de começarmos, deixe-me explicar 1 pouco sobre o Image Sampler. Trata-se de um componente que nos permite carregar um arquivo de imagem para dentro do Grasshopper, retornando valores como RGB, Alpha e Brightness.
Notem que por padrão, ele fica vermelho. Isto significa que faltam informações para ele começar a operar. Percebam também que ele possui apenas 1 Input e 1 Output.
Se clicarmos 2 vezes no componente, uma caixa de opções será aberta.Nela podemos carregar 1 imagem no ‘File path’, escolher qual canal queremos operar (RGB, Alpha, etc.), e definir um domínio de intervalo (vou voltar nisso depois). Pretendo, em breve, criar um post falando exclusivamente do componente Image Sampler, então entendam isto como uma introdução.
Modo de Preparo:
1- Vamos começar essa definição criando uma malha de pontos qualquer - neste caso, criei a malha em espiral através de um códico feito em Python (disponibilizei para download no final do post).
2- Para ela funcionar, precisamos de 3 Number Sliders, para os Inputs ‘turns’, ‘step’ 'e ‘size’
3-Este componente me retorna uma malha de pontos que utilizaremos para alimentar o Input do Image Sampler. Contudo, antes precisamos formatar as informações: coordenadas bidimensionais contidas entre um intervalo de 0 e 1 (referente ao domínio do Image Sampler).
4- Para tanto, começamos por desconstruir, com o componente Deconstruct Point, as coordenadas do Output da Espiral.
5- Agora vamos utilizar 1 Remap e 1 Bounds para as coordenadas X e Y dos Outputs do Decontruct Point. Esta combinação retorna um valor numérico contido entre 0 e 1.
6- Em seguida juntamos estes valores em uma coordenada com o componente Construct Point.
7- Este valor alimenta o Image Sampler. Definam, dentro das opções do componente, para avaliar apenas o Brightness em 1 Sampler e RGB no outro.
8- Os Outputs do Brightness podem ser multiplicados, com 1 Multiplication e 1 Number Slider.
9- Conecte esta multiplicação no Input R do Circle e para o P, use os Outputs da Espiral.
10- Por fim, se quiserem, podem usar um Custom Preview para pintar os círculos.
O que acharam desta definição? Postem nos comentários suas impressões e trabalhos que fizeram a partir dela!