Calvin University Computer Science Senior Design 2020
About Us
Ian Adams: Ian Adams is a computer scientist from Grand Rapids, Michigan. He is currently pursuing a career in software development.
Contact: LinkedIn, ian.sam.adams@gmail.com
Nate Herder: I grew up in Portage, Michigan and attended Kalamazoo Christian High School. I plan to pursue a career in software development. Please feel free to contact me with any questions regarding my project.
Contact: LinkedIn, nateherder@gmail.com
Technology Used
TSGL: A thread-safe graphics library perfect for drawing graphics. You can do a wide variety of things with TSGL, including: image manipulation and rendering (.bmp, .jpeg, and .png image formats supported), 2D polygon drawing (rectangles, circles, triangles, etc.), text rendering, animations with keyboard and/or mouse events, and much more. All drawing and rendering is done with threads and in parallel.
TSAL: A thread safe audio library that uses audiolizations to assist in the understanding of concurrent and parallel processing.
Our Projects
Ian Adams:
-
Vision: To expand TSGL’s functionality so that it has three-dimensional graphical capabilities.
-
Summary: TSGL is Calvin’s Thread-Safe Graphics Library. Currently, there is a working object-oriented version of TSGL that runs on Linux, utilizing underlying OpenGL3 calls. In Fall 2019, TSGL was limited to two-dimensional functionality. In order to provide a more complete parallel graphical experience, increased functionality and was an important next step for TSGL. In order to take the logical next step towards increasing TSGL’s functionality, Ian Adams worked to add three-dimensional graphical capabilities to the library while maintaining its thread-safe status. In the process, some functionality was lost; while Adams has restored much of what was lost, extra restoration will be required before the current version has the required functionality to be considered stable. As such, the work done has not yet been consolidated into the master branch of the TSGL GitHub repository, The current version of the project that contains a large amount of the desired 3D functionality resides within the SeniorProjectIA branch. With modification the branch will hopefully be ready to move into master by the end of summer 2020.
-
View Ian’s project on GitHub
Nate Herder:
-
The vision and description of my senior design project has been to create a library that joins together the functionality of two other c++ libraries that have been created by Calvin Students over the years. Those two libraries being TSGL (Thread Safe Graphics Library) and TSAL (Thread Safe Audio Library). The purpose of this wasn’t only to make a higher level general purpose library that combines the functionality of both libraries, but also to create and explore some pedagogical tools to potentially help computer science students to understand various sorting algorithms through visualizations and audializations. My Audio Visual library serves to give others the ability to create programs that utilize both the visual elements of TSGL combined with audio. The other main goal that the library fulfills is allowing audialization, visualization, or a combination of the two to be played.
-
View Nate’s project on GitHub