# 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

```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))
```