For the most part this page is used to distribute SageMath notebooks used to illustrate key concepts. Students must during the course of the semester download and actually run these notebooks. It is not enough to passivly review them, it is essential to get into the examples, make changes, and learn from interaction.

There are links to the 'dead' HTML output of notebooks below. This is useful for a quick read through. However, to actually run the notebook, you must download the IPYNB file and upload it to a SageMath Jupyter Server. Server software is installed on the CS Department Machines (instructions coming soon) and you may also download SageMath to your own machine.

Lecture 3 Notebook 1
Notebook cs410lec03n01 illustrates the dot product as a projection operator in 2D. In other words, measuring the distance from the origin to a point in the direction of a vector u.
Zipped IPYNB Notebook File
Lecture 3 Notebook 2
Notebook cs410lec03n02 builds upon the previous notebood carrying through to illustrate 2D rotation as simply projection onto a pair of orthongonal unit length basis vectors.
Zipped IPYNB Notebook File
Lecture 3 Notebook 3
Notebook cs410lec03n03 illustrates the composition of 2D rotation, translation and scaling using 2D homogeneous transforms.
Zipped IPYNB Notebook File
Lecture 5 Notebook 1
Notebook cs410lec05n01 illustrates the construction of a three by three rotation matrix from an axis-angle specification.
Zipped IPYNB Notebook File
Lecture 6 Notebook 1
Notebook cs410lec06n01 illustrates the relative placement of a camera and a 3D model.
Zipped IPYNB Notebook File
Lecture 8 Notebook 1
Notebook cs410lec08n01 illustrates the enumeration of 3D rays from pixels.
Zipped IPYNB Notebook File
Lecture 9 Notebook 1
Notebook cs410lec09n01 illustrates how to find the intersection of two 2D parametric lines.
Zipped IPYNB Notebook File
Lecture 10 Notebook 1
Notebook cs410lec10n01 presents the linear algebraic symbolic solution to the ray triangle intersection problem.
Zipped IPYNB Notebook File
Lecture 10 Notebook 2
Notebook cs410lec10n02 illustrates with 3D visualization examples of ray triangle intersections.
Zipped IPYNB Notebook File
Lecture 13 Notebook 1
Notebook cs410lec13n01 illustrates the algebraic brute force solution to ray sphere intersection
Zipped IPYNB Notebook File
Lecture 13 Notebook 2
Notebook cs410lec13n02 illustrates with 3D visualization examples of brute force ray sphere intersection.
Zipped IPYNB Notebook File
Lecture 13 Notebook 3
Notebook cs410lec13n03 illustrates with 3D visualization the better and faster way to compute ray sphere intersections.
Zipped IPYNB Notebook File
Lecture 14 Notebook 1
Notebook cs410lec14n01 provides complete ray casting example for one sphere. Includes ambient, diffuse and specular illumination from multiple light sources.
Zipped IPYNB Notebook File
Lecture 15 Notebook 1
Notebook cs410lec15n01 provides a recursive ray tracing example with three spheres and two light sources.
Zipped IPYNB Notebook File PDF File. Also, there is a 2048 by 2048 rendering from this notebook.
Lecture 17 Notebook 1
Notebook cs410lec17n01 provides a complete illustration of the geometric transformation from world coordinates to the Canonical View Volume.
Zipped IPYNB Notebook File PDF File.
Lecture 19 Notebook 1
Notebook cs410lec19n01 highlights pseudo-dept calculation used to form the Canonical View Volume.
Zipped IPYNB Notebook File PDF File.
Lecture 21 Notebook 1
Notebook cs410lec21n01 illustrates recursive ray tracing with refraction using 4 spheres.
Zipped IPYNB Notebook File PDF File. (last updated December 6, 2018)
Lecture 21 Notebook 2
Notebook cs410lec21n02 illustrates recursive ray tracing with refraction using spheres orbiting a central semi-transparent sphere.
Zipped IPYNB Notebook File PDF File. (last updated December 6, 2018)
Lecture 23 Notebook 1
Notebook cs410lec23n01 illustrates Bezier Curves.
Zipped IPYNB Notebook File PDF File.
Lecture 24 Notebook 1
Notebook cs410lec24n01 illustrates Bezier Surface Patches.
Zipped IPYNB Notebook File PDF File.
Lecture 24 Notebook 2
Notebook cs410lec24n02 illustrates B-Spline curves.
Zipped IPYNB Notebook File.