a cycloid gear script in grasshopper... it is based on a alternating epicycloid and hypocycloid tooth profile,...
http://demonstrations.wolfram.com/CycloidalGears/