Skip to content

Instantly share code, notes, and snippets.

View villares's full-sized avatar
💥

Alexandre B A Villares villares

💥
View GitHub Profile
@villares
villares / truchet.md
Last active March 12, 2024 02:49
Elementos para criar Truchet Tiles https://en.wikipedia.org/wiki/Truchet_tiles com py5 #Truchet #Pyhon #py5 #ProgramaçãoCriativa

Truchet tiles

Vídeos

Os exemplos mais abaixo neste Gist são a inspiração para 3 videozinhos sobre Azulejos de Truchet com py5 (usando py5 imported mode no Thonny)

Se você gostar, considere apoiar a instância do PeerTube do LHC que hospeda os vídeos https://peertube.lhc.net.br e me apoiar (que fiz esse material) https://liberapay.com/villares

@villares
villares / multiple_page_pdf_py5_imported_mode.py
Last active January 26, 2024 15:21
Template for generating a multi-page PDF with py5 (and a bonus PDF "overlay" script)
"""
An example/template for generating a mutiple page PDF using py5.
Imported mode style - You'll need to use the thonny-py5mode plug-in or the sketch_runner tool
CC0 / Public Domain dedication - by Alexandre B A Villares
"""
NUM_PAGES = 10
s = 0.71 # scale factor 1 => 356 x 275 trying 252 x 195
rs = 1 # starting random seed
@villares
villares / make_a_box.py
Created January 22, 2024 19:26
Caixinha com corte laser, versão com py5
import py5
fator_escala = 3.78 * 50 / 189
NOME = "caixa_flex-v1" # Precisa ser cortado 2x! só desenha "meia caixa"
W, H, P = 200, 120, 50 # dimensões
R = 30 # raio
XO, YO = 50, 50 # offset do desenho na página
def setup():
@villares
villares / silly_set_gol.py
Last active November 28, 2023 18:01
silly game of life with Processing and Python, using py5
# You *need* to install py5!
# Instructions at https://py5.ixora.io/
from collections import Counter
from random import randint
import py5
cell_size = 4
current_board = set()
# -----------------------------------------------------------------------------
# From Pytnon to Numpy
# Copyright (2017) Nicolas P. Rougier - BSD license
# More information at https://github.com/rougier/numpy-book
# -----------------------------------------------------------------------------
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.path import Path
from matplotlib.animation import FuncAnimation
from matplotlib.collections import PathCollection
@villares
villares / download_images_modify_files.py
Last active November 13, 2023 00:10
Backup HackMD.io Notes
"""
Downloads images from my notes at HackMD.io.
Creates new MD files with relative path image links.
Uses the links from the 'notes-backup' files downloaded with
download_notes.py (run it first)
I was skipping images hosted from my dreamhost account
but decided to download them too.
"""
@villares
villares / dados.md
Created November 9, 2023 01:03
Lê uma planilha de Excel e altera um arquivo de Word

image

image

@villares
villares / image_viewer.py
Last active September 25, 2023 00:25
Tweaking a PySimpleGUI Image viewer example
#!/home/villares/miniconda3/bin/python
"""
Based on: PytSimpleGUI demo for displaying any format of image file.
2022 - Alexandre B A Villares - I just added some PNG metadata viewing
for use with villares.helpers.save_png_with_src()
github.com/villares/villares/
2023 - Alexandre B A Villares - Moved from os.path to pathlib.Path
and added folders to the list!
@villares
villares / fitz-zine-impostion.py
Last active September 10, 2023 14:30
Faz a "imposição" de páginas de um zine em um A3
"""
Make a PDF A3 zine combining 8 pages from a source PDF
WIP: I'd like to have an option for the 9th page (index=8) to be a poster in the backside or not.
-------------------------------------------------------------------------------
License: GNU GPL V3
(c) 2023 Alexandre Villares
Based on https://github.com/pymupdf/PyMuPDF-Utilities/blob/master/examples/combine-pages/combine.py
(c) 2018 Jorj X. McKie