Mudanças entre as edições de "Oficina de GIFs animados"
Ir para navegação
Ir para pesquisar
Linha 25: | Linha 25: | ||
[https://drive.google.com/file/d/0B1vJ6aH--6MJQUFqVDNueGROMUdCazZXWDlUTF9tWHU4WDlN/view?usp=sharing Google Drive: python_Sukita.zip] |
[https://drive.google.com/file/d/0B1vJ6aH--6MJQUFqVDNueGROMUdCazZXWDlUTF9tWHU4WDlN/view?usp=sharing Google Drive: python_Sukita.zip] |
||
+ | <code> |
||
− | <syntaxhighlight lang="Python"> |
||
− | """ |
+ | """ |
− | Exemplo portado de Processing Java para Processing Python pela Yumi |
+ | Exemplo portado de Processing Java para Processing Python pela Yumi |
− | na Oficina de GIFs animados do Villares no Carnahaking_2016 |
+ | na Oficina de GIFs animados do Villares no Carnahaking_2016 |
− | """ |
+ | """ |
− | add_library('gifAnimation') # usa-se esta sintaxe para importar bibliotecas Java no Python Mode |
+ | add_library('gifAnimation') # usa-se esta sintaxe para importar bibliotecas Java no Python Mode |
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
− | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
− | def draw(): |
+ | def draw(): |
− | background(0) |
+ | background(0) |
− | translate(width/2, height/2) |
+ | translate(width/2, height/2) |
− | global rotation |
+ | global rotation |
− | rotation+=0.12 |
+ | rotation+=0.12 |
− | rotateY(rotation) |
+ | rotateY(rotation) |
− | image(logo, -logo.width/2,-logo.height/2) |
+ | image(logo, -logo.width/2,-logo.height/2) |
− | gifExport.setDelay(1) # seta delay do frame no GIF exportado |
+ | gifExport.setDelay(1) # seta delay do frame no GIF exportado |
− | gifExport.addFrame() # põe um frame do canvas atual no GIF sendo exportado |
+ | gifExport.addFrame() # põe um frame do canvas atual no GIF sendo exportado |
− | def keyPressed(): # se apertada uma tecla no teclado |
+ | def keyPressed(): # se apertada uma tecla no teclado |
− | gifExport.finish() # termina a exportação do GIF |
+ | gifExport.finish() # termina a exportação do GIF |
− | print("gif saved") |
+ | print("gif saved") |
+ | </code> |
||
− | </syntaxhighlight> |
Edição das 18h39min de 12 de fevereiro de 2016
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")