/ecs175_computer_graphics

class projects and related side projects

Primary LanguageC++

# ecs175_computer_graphics
class projects and related side projects

project 1:
implemented the DDA and Bresenham line drawing algorithms, the algorithm for rasterizing polygons, the algorithm for two-dimensional clipping, and the two-dimensional transformations for scaling a polygon with respect to its centroid, translating a polygon by a translation vector and rotating a polygon about its centroid by an arbitray angle.

project 2:
implemented 3D translation, 3D rotation about an arbitrary axis in 3D space, and 3D scaling.

project 3:
implemented the Phong lighting model, Gouraud shading for rasterizing shaded triangles, half-toning for simulating different brightness on a binary display device, and the painter's algorithm for solving hidden surface problem.

project 4:
created a 2D Bezier and B-spline curve editor.