Skip to content

Instantly share code, notes, and snippets.

View illume's full-sized avatar

René Dudfield illume

View GitHub Profile
@illume
illume / flask_matplotlib.py
Last active September 21, 2022 02:14
Shows how to use flask and matplotlib together.
""" Shows how to use flask and matplotlib together.
Shows SVG, and png.
The SVG is easier to style with CSS, and hook JS events to in browser.
python3 -m venv venv
. ./venv/bin/activate
pip install flask matplotlib
python flask_matplotlib.py
"""
@illume
illume / pypy-bench-testsprite.py
Last active January 4, 2019 10:28
pypy hacky benchmark based on example testsprite.py
#!/usr/bin/env python
# like the testsprite.c that comes with sdl, this pygame version shows
# lots of sprites moving around.
import pygame, sys, os
from pygame.locals import *
from random import randint
from time import time
import gc
import pygame.joystick
diff --git a/src/audio/SDL_wave.c b/src/audio/SDL_wave.c
index b4ad6c7..2d50486 100644
--- a/src/audio/SDL_wave.c
+++ b/src/audio/SDL_wave.c
@@ -445,7 +445,7 @@ SDL_AudioSpec * SDL_LoadWAV_RW (SDL_RWops *src, int freesrc,
}
/* 2 Uint32's for chunk header+len, plus the lenread */
headerDiff += lenread + 2 * sizeof(Uint32);
- } while ( (chunk.magic == FACT) || (chunk.magic == LIST) );
+ } while ( (chunk.magic == FACT) || (chunk.magic == LIST) || (chunk.magic == BEXT) );
@illume
illume / portmidi.rb
Last active May 17, 2018 11:49
portmidi homebrew formular without broken python
class Portmidi < Formula
desc "Cross-platform library for real-time MIDI I/O"
homepage "https://sourceforge.net/projects/portmedia/"
url "https://downloads.sourceforge.net/project/portmedia/portmidi/217/portmidi-src-217.zip"
sha256 "08e9a892bd80bdb1115213fb72dc29a7bf2ff108b378180586aa65f3cfd42e0f"
revision 1
bottle do
cellar :any
sha256 "c8f2755fd775064c282da84d666336d9125c6e70082975ffdc0867dee60b5802" => :high_sierra
@illume
illume / invertit.py
Last active April 18, 2018 23:40
Shows the invert function.
import os
import pygame as pg
main_dir = os.path.split(os.path.abspath(__file__))[0]
# data_dir = os.path.join(main_dir, 'data')
data_dir = main_dir
def show(image):
screen = pg.display.get_surface()
screen.fill((0, 255, 255))
@illume
illume / custom_events.py
Created March 16, 2018 00:42
pygame custom events, arudino serial ports.
# Shows how to send custom events with pygame.
# AND serial port data (from perhaps an arduino).
# It sends the serial data into pygame (with custom events).
# The SERIAL event is only posts when it receives a new line.
# NOTE: No error correction is done here. Serial data can corrupt.
import pygame as pg
import serial
ser = serial.Serial('/dev/tty.usbmodem1411', 9600, timeout = 0)
@illume
illume / sound_samples.py
Last active March 15, 2018 22:52
Plays short Tone using only pygame + python builtin 'array' type.
""" Some examples for generating and converting sounds for pygame.
Python 2.7, 3.6
Shows:
- a simple 'square wave' generated
- resampling sample rates (eg, 8363 to 44100)
- using built in python array for making pygame.Sound samples.
- samples at different bit sizes
- converting from signed 8 to signed 16bit
@illume
illume / weirdomouse.py
Created March 1, 2018 10:29
See if there are weird mouse coordinates in the corners?
import pygame
pygame.init()
pygame.display.set_mode((500, 400), 0, 32)
while True:
for event in pygame.event.get():
print(event)
@illume
illume / circle.py
Created February 19, 2018 17:08
circle.py thick circle bug
#circle.py
import pygame
def draw_outlined_circle2(surf, color, origin, radius, thickness):
width = radius * 2 + thickness * 2
background = (0, 0, 0, 0)
circle = pygame.Surface((width, width)).convert_alpha()
rect = circle.get_rect()
circle.fill(background)
pygame.draw.circle(circle, color, rect.center, radius)
@illume
illume / circle.py
Created February 9, 2018 23:30
For testing out drawing pygame circles with thicknesses.
import pygame
def draw_outlined_circle2(surf, color, origin, radius, thickness):
width = radius * 2 + thickness * 2
background = (0, 0, 0, 0)
circle = pygame.Surface((width, width)).convert_alpha()
rect = circle.get_rect()
circle.fill(background)
pygame.draw.circle(circle, color, rect.center, radius)
pygame.draw.circle(circle, background, rect.center, radius - thickness)