Oficina de GIFs animados

De Garoa Hacker Clube
Ir para navegação Ir para pesquisar

Carnahacking.gif

Primeira edição: Carnahacking_2016 Sábado 6/2 à 18h

Começou lá pelas 19h30...

Atividades:

  • Instalação do Processing e da biblioteca nos computadores
  • Demonstração do exemplo da biblioteca, no Modo Java/Standard
  • Exportar GIFs de outros sketchs/exemplos (não rolou)
  • Portar um exemplo para o Modo Python (rolou)

Foi usado Processing (http://processing.org) e o Processing Python Mode (http://py.processing.org)

O IDE Processing pode ser baixado em http://processing.org/download

Biblioteca gifAnimation para Processing 1.0 e 2.0 http://extrapixel.github.io/gif-animation/

Biblioteca gifAnimation para Processing 3.0 https://github.com/01010101/GifAnimation ou Google Drive: gifAnimation.zzz(renomeie .zzz -> .zip)

Pasta completa do 'sketch' portado para Processing Modo Python pela Yumi: Google Drive: python_Sukita.zip

""" Exemplo portado de Processing Java para Processing Python pela Yumi na Oficina de GIFs animados do Villares no Carnahaking_2016 """ add_library('gifAnimation') # usa-se esta sintaxe para importar bibliotecas Java no Python Mode rotation = 0.0 def setup(): global logo logo = loadImage("Sukita.png") # carrega num objeto PImage arquivo da pasta /data size(400, 500, P3D) # canvas OPGL está deprecado, nova constante P3D ativa canvas com 3D frameRate(12) global gifExport gifExport = GifMaker(this, "exportsukita.gif") # (this é p/ bibl. Java, "arquivo que exporta") gifExport.setRepeat(0) # número de loops no GIF exportado, ou 0 = loopa infinitamente gifExport.setTransparent(0,0,0) # seta R, G, B da cor transparente (alpha) no GIF def draw(): background(0) translate(width/2, height/2) global rotation rotation+=0.12 rotateY(rotation) image(logo, -logo.width/2,-logo.height/2) gifExport.setDelay(1) # seta delay do frame no GIF exportado gifExport.addFrame() # põe um frame do canvas atual no GIF sendo exportado def keyPressed(): # se apertada uma tecla no teclado gifExport.finish() # termina a exportação do GIF print("gif saved")