quinta-feira, 27 de novembro de 2014

Aula 21 - Envelhecimento Digital

Tarefa
Implemente uma aplicação que realize o envelhecimento de uma imagem, a sua escolha, a partir de variáveis de controle (porcentagem de ruído, quantidade de amarelo e de vermelho) presentes no código desenvolvido. 



Aula 20 - 50 tons de brilho

Tarefa
Incluir ajuste do brilho da imagem original de acordo com uma determinada variável, que varia de -128 a +128, e postar em seu blog a tela resultante da aplicação, apresentando a imagem original e simultaneamente todos os filtros desenvolvidos.





Errata: por um erro de interpretação no enunciado da tarefa, acabei postando apenas a atividade do brilho, então, aqui vão os outros filtros.


Imagem original, filtro ciano, magenta, amarelo,
Imagem original, filtro vermelho, verde, azul,
Imagem original, filtro p&b aritmético, p&b ponderado e negativo.


Aula 19 - Olho perseguidor

I seeeeeeeeee you

Aula 18 - Cronômetro


Aula 17 - Barquinho

Tarefa
Criar o movimento de um barco no mar e discutir os resultados no blog.


Aula 16 - Polígono

Tarefa
Criar uma aplicação que desenha um polígono regular centralizado na tela com a quantidade de lados informada no próprio código. Discutir a solução adotada em seu blog. 



segunda-feira, 29 de setembro de 2014

Trabalho: Mondrian Generator



"Com base no exemplo selecionado, discuta em seu blog
 os processos de transição entre os modelos natural,
 matemático e computacional"

O exemplo que selecionei foi "Mondrian generator".



Piet Mondrian        


Em torno de 1920, retângulos azuis, vermelhos, amarelos (as cores elementares do Universo, segundo o próprio) e brancos separados por linhas pretas. Assim podemos uma parte das pinturas famosas de Mondrian, contudo, não é tão simples assim. 
Piet Mondrian almejava o total equilíbrio em suas pinturas. Cada cor tem um peso, diagonais nunca aparecem. A arte de Mondrian é o natural e o matemático intimamente ligados, especialmente no início fase Neoplasticista, da qual falaremos aqui. 


          

O modelo natural:



Quadro nº2

Técnica: Óleo sobre tela | Dimensões (em cm): 75 x 65 | Local de exposição: Coleção Max Bill, Zurique, Suíça.


Modrian geralmente usava óleo sobre tela em seus quadros. 
Piet Mondrian (1920)

Hoje podemos achar tinta à óleo e tela em lojas especializadas por toda a cidade. O processo de pintura, com as tintas atuais: 

                                                     
Tintas à óleo

Preferencialmente, prepara-se a tela lixando as imperfeições do tecido e passando uma camada de selante, para que a tinta não seja "sugada" pelo tecido. Mistura-se óleo de linhaça à tinta para diluí-la, pois a mesma é muito densa. Pode-se adicionar terebentina ou secante de cobalto para catalizar o processo de secagem, que dura em torno de 3 dias. Para um quadro estilo "Mondrian-Neoplasticista" deve-se usar apenas as cores primárias: vermelho, amarelo, azul em sua forma pura (sem misturas), além do preto (ausência de luz) e do branco (luz), que podem ser misturados.




O matemático:

Piet Mondrian foi bastante influenciado pelo movimento teosófico e pelo matemático M.H.J. Schoenmaekers, especialmente no tratado "Matemática Expressiva". O movimento alegava ter resolvido o conflito entre a espiritualidade e ciência ao aplicar o conceito de evolução a uma escala cósmica — todo o universo estaria evoluindo, não só as espécies, e nós estaríamos vivendo sucessivas encarnações rumo à perfeição.

Além de atribuir certo "peso" para as cores e linhas a fim de equilibrar assimetricamente, Mondrian trabalhou, na fase em questão, com linhas perfeitamente verticais e horizontais e o retângulo de ouro - originário do número de ouro: (1+raiz quadrada(5))/2, aproximadamente 1,61803398874989484...



Se desenharmos um retângulo cuja razão entre os comprimentos dos lados maior e menor é igual ao número de ouro obtemos um retângulo de ouro.



Fazendo algumas observações bem superficiais vemos que não é difícil achar alguns desses retângulos. Circulei de verde alguns retângulos que se encaixam na regra.



Se alongarmos os segmentos de retângulos que seguem o padrão de ouro obtemos boa parte do grid preto em algumas ocasiões:

A partir do primeiro par de retângulos dessa obra, o alongamento de suas hastes forma boa parte do grid, que formam sucessivamente áreas proporcionais e alinhadas.

O computacional:

Primeiro são definidas as variáveis, incluindo as cores. No setup é chamada a função "drawPainting()". A função organiza a chamadas das outras funções que desenharão o "quadro". Após temos um "mousePressed()" que define que a cada clique uma nova tela será gerada (chamando de volta a "drawPainting()"). 
As funções:
- drawHorizontalLines() e drawVerticalLines(): desenham as linhas pretas horizontais e verticais, respectivamente, por meio de um laço semelhante ao que usamos pra desenhar grids, porém com alguns parâmetros aleatórios. Aqui também temos a chamada de "linesLimit()" que determina o número máximo de sorteio para a randomização do número de linhas.

- drawFrame(): desenha uma "moldura" do tamanho definido em "size".

- deleteLines() e removeLineLeftOfRectangle(xPosition,yPosition): removem alguns segmentos das linhas pretas, dando a impressão de retângulos brancos. A primeira chama e passa parâmetros para a segunda.

- fillRectangles() e fillSingleRectangle(blue/red/yellow): definem a cor e posição dos retângulos coloridos. Logo no início temos um sorteio de quantos existirão na tela. Então um laço é chamado para desenhá-los. 

O código encontrado no Openprocessing.org: 




O resultado:







Fontes:






See ya!