quarta-feira, 1 de junho de 2016

M.A.M.I. Trabalho 01 - 2016.1 - Gerador Automático de "Arte"

Jackson Pollock:

      Paul Jackson Pollcok(28 de janeiro de 1912 - 11 de agosto de 1956) foi um pintor norte-americano e referência no movimento do expressionismo abstrato.
      Suas obras possuíam um grau de "caos" ou desordem na estrutura das composições, que causavam efeitos ou resultados estéticos complexos. Ele utilizava um estilo de pintura próprio chamado drip painting, método pelo qual despejava quantidades de tinta líquida sobre a tela esticada no chão. Apesar da aparente confusão, o efeito de profundidade e movimento de padrões são inconfundíveis em seus trabalhos.

Alguns exemplo de quadros de Pollock: 




Vídeo explicando a natureza dos fractais de Pollock:

Fractais:

    Do latim fractus, fração, quebrado, são figuras da geometria não-Euclidiana.
      A geometria fractal é o ramo da matemática que estuda as propriedades e comportamento dos fractais. Descreve muitas situações que não podem ser explicadas facilmente pela geometria clássica, e foram aplicadas em ciência, tecnologia, e arte gerada por computador. As raízes conceituais dos fractais remontam as tentativas de medir o tamanho dos objetos para os quais as definições tradicionais baseadas na geometria Euclidiana falham.
      Um fractal mais comum é um objeto geométrico que pode ser dividido em partes, cada uma das quais semelhante ao objeto original. Diz-se que os fractais têm infinitos detalhes, são geralmente autossimilares e de escala. Em muitos casos um fractal pode ser gerado por um padrão repetido, tipicamente um processo recorrente ou iterativo. Em outros casos ele pode ser uma composição de formas randômicas com tamanhos, posições e até cores aleatórios.
      O termo foi criado em 1975 por Benoît Mandelbrot, matemático francês nascido na Polônia, que descobriu a geometria fractal na década de 70 do século XX. Vários tipos de fractais foram originalmente estudados como objetos matemáticos, e atualmente são usados como elementos de peças artísticas.

Gerador de "Arte" baseado no trabalho de Pollock e na aleatoriedade dos Fractais:

      Softwares como o Processing possuem funções que simulam a aleatoriedade, os números randômicos, gerados pelo comando 'random()'. Tomado como base algumas obras de Pollock, desenvolvi uma aplicação que gera uma imagem composta de várias curvas, com tamanhos, posições e cores aleatórias. Uma imagem diferente cada vez que for rodado.

Exemplos:





Referências:

https://pt.wikipedia.org/wiki/Jackson_Pollock
http://navax.net.br/blog/?p=670 
https://pt.wikipedia.org/wiki/Fractal

Outros trabalhos artísticos com uso de fractais:

Grupo Fractarte - Galeria 

Código:


float interacoes = int(random(10));
float X = 0;
float Y = 0;
float raio = 0;
void setup() {
  size(600,600);
  background(random(255),random(255),random(255));
  for (int i = 0; i <= interacoes; i++){
    X = random(200,400);
    Y = random(200,400);
    raio = random(100,200);
    drawCircle(X, Y, raio);
  }
}

void drawCircle(float x, float y, float radius) {
  fill(random(255),random(255),random(255));
  if (radius > 8) { //Enquanto radius não for menor do que 8 executa recursivamente o método drawCircle
    drawCircle(x + radius/2, y, radius/2); //Desenha uma elipse
                                                          // na borda direita do círculo central com
                                                          // o tamanho sendo:
                                                          //   (metade do radius do círculo original)
                                                          // - (10% da posição X ou posiçao Y do mouse)
    drawCircle(x - radius/2, y, radius/2); //Desenha uma elipse na borda esquerda do círculo central
    drawCircle(x, y + radius/2, radius/2); //Desenha um círculo na parte superior do círculo central
    drawCircle(x, y - radius/2, radius/2); //Desenha um circulo na parte inferior do círculo central
  }
   curve(random(x),random(y),random(x),random(y),random(x),random(y),random(x),random(y)); //Altera todos os círculos para curvas com tamanho, posições e cores randômicas
   curve(random(x,600),random(y,600),random(x,600),random(y,600),random(x,600),random(y,600),random(x,600),random(y,600));
   curve(random(x,600),random(y),random(x,600),random(y),random(x,600),random(y),random(x,600),random(y));
   curve(random(x),random(y,600),random(x),random(y,600),random(x),random(y,600),random(x),random(y,600));
 
}