Receitas Clássicas: Image Sampler

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.

Imagem Base.

Imagem Base.

Ingredientes:

  • 4 Number Sliders.

  • 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.

image_sampler_circle_definition_components.png

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.

icons.png

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.

image_sampler.jpg

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’

image_sampler_circle_definition_spiral.png

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.

image_sampler_circle_definition_deconstruct_point.png

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.

image_sampler_circle_definition_remap_bounds.png

6- Em seguida juntamos estes valores em uma coordenada com o componente Construct Point.

image_sampler_circle_definition_construct_point.png

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.

image_sampler_circle_definition_sampler.png

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.

image_sampler_circle_definition_circles.png

10- Por fim, se quiserem, podem usar um Custom Preview para pintar os círculos.

image_sampler_circle_definition.png
 
Produto final.

Produto final.

O que acharam desta definição? Postem nos comentários suas impressões e trabalhos que fizeram a partir dela!

Quem é esse Componente? É o Construct Point!

Quem é esse Componente? É o Construct Point!

Concurso: Vamos pela Sombra

Concurso: Vamos pela Sombra