# Live de Python 2024-03-04 ## `hackmd.io/@villares/live-de-python-2024-03-04` ### Links - [**A gravação da live!**](https://www.youtube.com/watch?v=dAnIWmJ-2NI) - [PDF slides da apresentação](https://drive.google.com/file/d/120j893ePGBi0FpJGa6ar7_ROV-__5wUq/view?usp=sharing) - https://py5coding.org - forum e issues em https://github.com/py5coding/py5generator - [Como instalar e usar com Thonny + plugin](https://abav.lugaralgum.com/como-instalar-py5/) - https://abav.lugaralgum.com/pyp5js/py5mode/ - variante do editor online `pyp5js` do Bernardo Fontes - https://github.com/villares/material-aulas meu material didatico aberto baseado no py5 - [Primeiros passos](https://abav.lugaralgum.com/material-aulas/Processing-Python-py5/desenho-basico_py.html) - [Manipulando sistema de coordenadas](https://abav.lugaralgum.com/material-aulas/Processing-Python-py5/transformacoes_coordenadas.html) - [Seno e cosseno](https://abav.lugaralgum.com/material-aulas/Processing-Python-py5/seno_cosseno_atan2.html) - [Exemplo de exportar PDF](https://abav.lugaralgum.com/material-aulas/Processing-Python-py5/exportando_pdf.html) - [Material sobre exportar animações](https://abav.lugaralgum.com/material-aulas/Processing-Python-py5/exportar_animacoes.html) - https://abav.lugaralgum.com/sketch-a-day (desenhos diários) - Exemplo com OpenCV/Captura da câmera [sketch_2023_04_27](https://abav.lugaralgum.com/sketch-a-day/2023.html#sketch_2023_04_27) (precisa instalar `opencv-python`, veja alguns sketches antes e depois!) ### Exemplo com evento do mouse arrastado e estrutura de dados para guargar o gesto ![peek_1-ezgif.com-speed](https://hackmd.io/_uploads/SkPlElraa.gif) ```python= # from py5 import sin, PI, TWO_PI, TAU, QUARTER_PI from collections import deque gesto = deque(maxlen=300) # Double-ended queue limitada! def setup(): size(800, 800) color_mode(HSB) # Hue, Sat, Brightness def draw(): background(0) # r, g, b for i, (x, y) in enumerate(gesto): d = 50 + 40 * sin((i + frame_count) / 20) no_fill() stroke((d + frame_count) % 255, 255, 255) circle(x, y, d) def mouse_dragged(): gesto.append((mouse_x, mouse_y)) ```