quinta-feira, 7 de maio de 2009

'Processing' em processo


Finalmente eu consegui sentar para mexer e aprender o Processing. É uma saída de um estado de observação para um de 'autoria'. O programa à princípio apresenta-se um pouco complexo (... a princípio e à posteriori tambem rs), porém a chave está em entender sua sintaxe, o que é muito facilitado pelo site do programa. A partir do momento que se consegue 'ler' a programação torna-se mais controlável o resultado final.

Em relacao à imagem acima, tentei produzir algo interativo. Os movimentos da esfera, bem como a variacao de seu tamanho estao relacionados às coordenadas do movimento do mouse (X e Y, - mouseX e mouseY - nesse caso apenas X).

Abaixo segue-se o código, com uma tentativa de explicação em português do mesmo:


int x; // introduzindo um numero inteiro


void setup(){
size(800,600, P3D); //dar _sensacao_ de 3D... nesse caso de profundidade).
background(255,194,14); // cor do fundo
}

void draw(){
translate(width/2 - 10, width/2 - 10, -mouseX*20); //(mov. direita/esquerda, p/ cima e p/ baixo, pra frente e pra tras... devido a esse ultimo eh q se coloca o P3D).

rotate(x++); //angulo de rotaçao, o sinal ++ aumenta o valor de 1 em 1)

fill (196, 45,14, 75); // preenchimento da figura(cores R,G,B, transparencia... valores tirados de qqer programa de edicao de imagens.. no caso o paint que estava mais facil).

ellipse(width/2 - 10, width/2 - 10, 55, x++); //// (x e y do primeiro ponto,largura, altura)sendo altura = x++, ela sempre vai aumentar de 1 em 1

}





*variando a cor*



PS: O output das imagens foi um Print Screen, fato que justifica a baixa qualidade. Eu encontrei no site apenas uma maneira que o programa salvava os frames da imagem - saveFrame() - (ou seja, cada leitura do void draw e com isso eu teria milhares de imagens com uma esfera em cada).

Nenhum comentário:

Postar um comentário