3D graphics with Tkinter
Tkinter's Canvas widget provides for drawing with exact coordinate specifications. Therefore, it can be used to create all sorts of 3D graphics.
Further, we have already seen the animation abilities of Tkinter. We can apply this ability to also animate 3D.
Let's create a simple application where we create a cube in the center. We add event listeners to rotate the cube on mouse events. We also do a small animation whereby the cube keeps rotating by itself when no mouse intervention occurs.
In its final form, the application would look as follows: 7.17_3D_graphics.py
Any point in a 3D space can be represented by x, y, and z coordinates. This is usually represented by a vector of the form:
This is an example of a row vector as all three points are written in a single row. This is convenient for humans to read. However, as per convention and for some mathematical advantage that we will see later, positions are taken as a column vector. So it is written in a column as follows...