top of page

Rotation of Curves

Project Type:            Personal/Educational
Project Status :        Unfinished

Software Used:        OpenGL, GLFW, ImGUI

Languages Used :   C++, GLSL

Primary Role(s) :      Programmer


This project was developed in my 2nd year of college. I wanted to tackle how to implement a simple 3d graphics engine that would display 3d meshes generated from the rotation of curves. The project was made with the use of some open libraries: OpenGL, GLFW, and ImGUI.

There is not a lot to show off as it was designed to be a very simple beginners project, but it helped me gain a better understanding of a very simplified 3d engine pipeline.


  • Equation Parsing

The program allows for the user to type in some basic polynomial equations. That will then be evaluated and used to generate a 3d mesh. Trig functions are not yet supported. Parsing is achieved with the use of stacks and string regex to read the user's input.

  • Mesh Generation

Values within the domain (-1,1) will be evaluated using the equations that was parsed. These values are used to setup the vertices along the xy-plane. Each vertex generated along the xy-plane are used as offsets from the x-axis to generate additional vertices that would form the final 3d shape. This will show the volume generated by rotating a polynomial curve. Below are some examples of generated 3d meshes.

bottom of page