![]() A polyline scaled and rotated |
For the first task, we implemented translate2D, scale2D, scaleArbitrary2D, rotate2D, rotateArbitrary2D, matrix3x3Multiply, matrix3x3Identity, vector3Transform, matrix3x3Print, matrix3x3Copy, and matrix3x3Clear. These allowed us to move points around the screen with translations, rotations, and scales. |
![]() |
For the second part of the assignment, we used our matrix manipulations to construct the Starship Enterprise from a unit circle and a unit square. |
![]() |
For the third part, we animated our Starship. We drew it next to a planet, then rotated all the pieces about the center of the planet. |
![]() |
For the fourth and final part, we created a 2D viewing pipeline. This allows for "zooming in" on parts of the scene and moving the view box around. | ![]() Spacequake! |
![]() |
For an extension, we make the Enterprise go to warp speed. We wrote a loop to stretch and translate the pieces, then collapse and translate them. |