This is the webpage for the course Geometry and Algorithms in Three-Dimensional Modeling at Oklahoma State University.

Classes will consist of lectures on the mathematical underpinnings of 3D design software, and "workshop classes", spent learning the use of the software and working on projects. We will also use the 3D printing lab, MSCS 421. Students in the class will have 24 hour keycard access to the lab with their university ID card.

Lectures

We will cover a number of sections from the course text, Applied Geometry for Computer Graphics and CAD (Springer Undergraduate Mathematics Series) 2nd Edition, by Duncan Marsh. (The text is freely available in electronic form from library.okstate.edu.) We will go through parts of chapters 1-3 (transformations, homogeneous coordinates), and chapters 6-7 (Bézier curves).

Homeworks

Homeworks will consist of standard problem sets to be handed in during class, and virtual 3D models/animations/interactive content to be handed in via Canvas, or real-life 3D printed models to be submitted in class.

Tutorials

You cannot effectively learn how to use a piece of software by listening to lectures. You have to use the software. The modelling homework sets and projects will give concrete goals to guide exploration of the software. Students will also follow tutorials.

Midterms

There will be two take home midterms. See Canvas for the due dates. There will be no final exam.

Projects

There will be three major projects due throughout the semester. Check the calendar on Canvas for due dates. For information on expectations for your projects see: Project Guidelines.

Project 1: Goblet

Design and 3D print a goblet. This will likely be a surface of revolution (although if you wish you may depart from this). The goblet should hold precisely 100ml of water. The shape should be interesting in some way, either mathematically, culturally, and/or aesthetically. Along with the 3D print, students will complete a writeup on the mathematics, including a calculation of the volume of the goblet, and other relevant details of the design and present their work to the class. For an example of what your writeup might look like, see: Sample project writeup.

Check Canvas for the due dates for the following activities:

Project 2: Programming project

Produce an artwork or illustration, in the form of a 3D design, an animation, or an interactive demonstration, using some form of programming, in either Rhino-Python or Grasshopper. Some possible ideas: Show a parametrised curve in space (a graph, the path of an object in motion etc.), show the graph of a function of two variables, make a tree-like fractal (or perhaps investigate L-systems), simulate a natural process (nautilus shell, pinecone etc.), explore tessellations or cellular automata. See this page on patterns in nature for lots of inspiration. Check Canvas for the due dates for the following activities:

Project 3: Illustrate something mathematical

Produce a model (or animation, or interactive demonstration) illustrating a mathematical object, process, algorithm etc. The model may be drawn from your previous mathematics classes, or (even better) mathematics that is new to you. I can give you references to read. For example there are many ideas in symmetry or knot theory or other areas of mathematics that are accessible and would be good to illustrate with a 3D model. Check Canvas for the due dates for the following activities:

The "make something cool" alternative

For any of the three graded projects, you can come to me before the initial "project proposal due" date, and suggest doing some entirely different project, drawn from your personal interests, other classes, or anything else you want to make. If the project has a suitable amount of mathematical content, then you may replace the graded project with your own.

Resources

This page last updated: