More animations in this post. A complete material for learning how to make this is in another post, in Chinese though.
EulerTop_sharp_cube from KT Gump on Vimeo.
Original Video - More videos at TinyPic
The python code is provided here.
A snapshot png figure:
The three lines originated from origin are the gyroscope's z axis, angular velocity, and angular momentum normalized vector.
I also use matplotlib to create the following vector-based gyroscope figure. The ring-shape stripe of a nutating precession of a gyroscope is mathematically projected and mapped to the surface of the top to give a virtually appealing skin.
Keywords: axes.plot_surface, axes.plot_wireframe, pgf backend, projection, texture