Project Page

Here is a brief list of some of the projects I have worked on.

Gedit Grammar Check

I often find myself using gedit for things beyond coding. This means that things like spell check and grammar check are important. Since there is already a spellcheck, I have decided to make a grammar check that works by building up a database of nearby words for pairs of easily

BVH Animation

I am writing a program that reads in bvh files and draws the skeleton moving. I have it drawing the skeleton. Ideally there will be a way to blend between animations, im still working on it.

BVH Image

Previous Projects

This is a list of some cool projects I have worked on.

House Interior Generation

I generate a house by recursively cutting down a rectangle into rooms. It stops on rooms that are smaller than a certain threshold. Doors are then generated for all ajacent rooms with enough room to make them. Room labels are assigned and the doors are cut to minimize a badness function. For example, It would be bad if your bathroom opened directly into your dining room.

Furniture is calculated in a similar way, starting with the rooms and their labels. It reads a split grammar and divides the room into sections based on function. For example, a bedroom could be broken down into a sleep area and a study area. It continues to cut down into smaller chunks, and then places furniture on the appropriate chunks. The code then exports these rooms and furniture to a text file.

Next, I wrote a script in blender to pull in this file and draw cubes, scale and transform them into the room positions. I had to use a custom boolean intersection script to get better intersection.

Music Arangement

Well, I got bored, and my music's arrangement has bothered me for a while. So I finally got around to make a python script to fix most of it.
####################################################################
#!/bin/bash
#This gets it started. We pull all mp3's into main folder for sorting
#move all mp3 files to the central area
find /media/ArchiveIII/bkup/Music -type f -path '*.mp3' -exec mv {} /media/ArchiveIII/bkup/Music \;

# we need to kill all empty folders
find /media/ArchiveIII/bkup/Music -depth -type d -empty -exec rmdir {} \;

# run our python script to rebuild folders
python musicSort.py
####################################################################

musicSort.py reads in files from the directory, using id3Reader to get tag data. I guess I could have done the first steps from python, but it was 4:40am and find was so much faster. If I make the mistake of drinking a frappiccino at 11:30 again I should look into reading flac tags.