https://www.sccs.swarthmore.edu/users/02/jill/graphics/hw3/hw3.html
http://web.cs.ucdavis.edu/~ma/ECS175_S00/Notes/0411_b.pdf
https://www.sccs.swarthmore.edu/users/02/jill/graphics/hw3/hw3.html
http://web.cs.ucdavis.edu/~ma/ECS175_S00/Notes/0411_b.pdf