Skip to content

Instantly share code, notes, and snippets.

View tai2's full-sized avatar
🐢

Taiju Muto tai2

🐢
View GitHub Profile
@tai2
tai2 / trim.py
Created June 27, 2012 21:02
Remove all Log.x function calls in a project for Android
#!/usr/bin/env python
import sys
import os
import re
def gather(path):
result = []
def f(arg, dirname, names):
for name in names:
@tai2
tai2 / progress.py
Last active October 6, 2015 14:28
Display progress of work
#!/usr/bin/env python
import sys
import time
if __name__ == '__main__':
N = 100
for i in range(N):
time.sleep(1)
# http://en.wikipedia.org/wiki/ANSI_escape_code
@tai2
tai2 / marzullo.py
Created September 9, 2012 13:59
Marzullo's algorithm
# c.f. http://en.wikipedia.org/wiki/Marzullo%27s_algorithm
def marzullo_algorithm(ranges):
table = []
for l,r in ranges:
table.append((l,-1))
table.append((r,+1))
def my_cmp(x, y):
result = cmp(x[0], y[0])
if result == 0:
@tai2
tai2 / bandswap.py
Created October 11, 2012 12:24
swap each color band of image
import Image
def bandswap(pr,pg,pb):
im = Image.open('Lenna.png')
b = im.split()
im = Image.merge('RGB', (b[pr], b[pg], b[pb]))
im.save('Lenna_%d%d%d.png'%(pr,pg,pb));
if __name__ == '__main__':
bandswap(0,1,2)
@tai2
tai2 / android_resize.py
Last active October 11, 2015 14:37
generate resized bitmaps for each dpi
#!/usr/bin/env python
import sys
import os
import Image
def resize(src_dir, dest_dir, num, den):
if not os.path.exists(dest_dir):
os.makedirs(dest_dir)
files = os.listdir(src_dir)
@tai2
tai2 / pthread_infinit.c
Created October 12, 2012 22:51
test how many nateve threads the platform can create
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>
void *
thread_func(void *p)
{
for(;;);
return NULL;
}
@tai2
tai2 / huecircle.py
Created January 19, 2013 07:51
draw hue circle
import Image
import math
def hsv_to_rgb(h, s, v):
if s * v == 0:
r, g, b = v, v, v
else:
hi = int(math.floor(3 * h / math.pi)) % 6
f = 3 * h / math.pi - hi;
p = v * (1.0 - s)
@tai2
tai2 / gaussblur.py
Last active December 11, 2015 12:08
gaussian blur
import sys
import os
import math
import Image
def make_filter_kernel(size, sigma_sq):
s = 0.0
half = size / 2
f_min = -(size / 2)
f_ub = size / 2 + 1
@tai2
tai2 / dropshadow.py
Created January 26, 2013 01:00
drop shadow using gaussian filter(very slow)
import sys
import os
import math
import Image
def make_filter_kernel(size, sigma_sq):
s = 0.0
half = size / 2
f_min = -(size / 2)
f_ub = size / 2 + 1
@tai2
tai2 / dropshadow2.py
Created February 20, 2013 19:45
drop shadow using scaled rectangles.corner area representation is poor.
import sys
import os
import math
import Image
def create_shadow_image(image_size, shadow_size):
mergin = (shadow_size, shadow_size)
new_size = map(sum, zip(image_size, mergin, mergin))
im = Image.new('RGBA', new_size, 0xFFFFFFFF)
buf = im.load()