Hello World! Processing.

myimage

Cof Cof!(Som de tosse). Tirando um pouco da poeira do blog.

Admito, não sou do tipo programador, gosto de experimentar e aprender, mas sou do lado hardware da força mesmo.

Recentemente estava precisando criar um programa para um dos meus projetos, uma espécie de impressora de matriz de pontos a partir de sucata, fiz o projeto para participar de um concurso no instructables, enfim, o que eu precisava era de uma linguagem que me permitisse(um noob em programação) fazer uso de processamento de imagens e uso de porta serial.

Complicado…. Meio que tenho mexido com java ultimamente, mas nem me atrevo a tentar algo assim no nível em que estou, que linguagem poderia usar? Foi ai que me lembrei do Processing, e que o Arduino havia sido baseado no mesmo, se o Arduino torna as coisas fáceis do lado dos microcontroladores, talvez tornasse fácil do lado dos computadores também. Estava correto, Processing é uma ferramenta de uso muito fácil, e estou adorando.

O legal com o Processing pra quem quer ter um primeiro contato com programação é que em vez de te dar de cara uma tela preta ou branca ou seja lá qual fora cor do console que você esteja usando, você tem uma tela de desenho pra experimentar, o que quer dizer que com ele você pode nessa tela desenhar linhas, formas, escrever texto, carregar imagens e fazer animações e exercitar sua criatividade.Como o Java, o Processing pode ser executado em Windows, Linux e Mac.

Bom, parece bacana, se você quiser fazer o download acesse essa página. Recomendo baixar a versão 32 bits mesmo que você use um sistema 64 bits, pois algumas bibliotecas, como a Serial, podem não funcionar no pacote 64 bits.

Se você já usou Arduino alguma vez, deve entender como bibliotecas funcionam, uma biblioteca é um conjunto de códigos criados por alguém que são disponibilizados para serem utilizados por qualquer pessoa, a ideia é tornar mais fácil o uso de alguma ferramenta. Por exemplo, a biblioteca Serial permite o fácil uso das portas seriais disponíveis no seu computador. Para adicionar uma nova biblioteca ao Processing basta colocar a pasta da biblioteca que você baixou na pasta libraries do Processing, simples assim. Há bibliotecas para tocar sons, criar modelos em 3D, animações entre outras.

Hello World!

Vamos ver um exemplo que criei para demonstrar algumas coisas bacaninhas do Processing.

Hum, talvez você tenha jogado a segunda geração dos jogos de Pokémon. Nessa geração foram introduzidos os Unowns, Pokémons em forma de letras que em certas partes do game, Crystal pelo menos, apareciam formando a seguinte frase:

unown1c

“Our words shall remain here for the ages”

Tradução:

“Nossas palavras continuarão aqui pelas eras”

Isso me deu uma ideia, criar um sketch (é assim que são chamados os códigos no Processing) que gerasse a partir de uma frase qualquer uma imagem dessa frase formada a partir de Unows.

Então, como proceder?

Primeiro, conseguir as imagens dos Unowsn. Isso foi fácil, de fato se você pesquisar no google pode encontrar os sprites dos Pokémons de qualquer jogo, os sprites que usei foram da versão Diammond.

Segundo, interpretar a string com o texto a ser mostrado e relacionar cada letra a um sprite de Unown.

Terceiro, mostrar na tela a frase usando os sprites.

Abaixo o código:

Os métodos loadImage() e Image() carregam a imagem na memória e a mostram na tela respectivamente. Para formar uma frase bastava carregar as imagens na posição correta. Imagine uma matriz onde as posições podem ser preenchidas com letras ou espaços em branco.

Você pode baixar o projeto aqui.

Para escrever algo, basta colocar a frase desejada entre as aspas na String name, por exemplo:

Para separar as linhas, use o “/”. Você pode usar os caracteres “!” e “?” também, use apenas letras minúsculas.

Abaixo estão alguns exemplos:

 dragao sem chama“Dragao sem chama”

myimage“Hello world!”

myimage

“Escrevendo com unowns”

É isso, obrigado pela leitura, quem sabe a gente volte com outro post experimentando outra linguagem. Até mais.

 

Robson Couto

Estudante de engenharia elétrica. Gosto de dedicar meu tempo a aprender sobre computadores, eletrônica, programação e engenharia reversa. Documento meus projetos no Dragão quando possível.

Leave a Reply

Your email address will not be published. Required fields are marked *