The 2D robot was rendered from scratch using matrix transformations in 2D and then drawing the shapes using the draw functions. The robot was then able to move certain joints using spinners to control the angle and position of each degree of freedom. The user could capture key frames and the program interpolates the animation from each key frame to key frame.