Transformation Matrix Projects

Introduction

The following are possible projects that demonstrate the use of a transformation matrix. These are only suggestions. I'm sure you can come up with better ones.

The projects are listed in no particular order.

Note: A few graphics.py only projects are included to keep things interesting.

Project #1

Create a program to draw a 2D object in a graphics window. The object can be a 2D circle or 2D wire frame rectangle or 2D blob (polygon) or ...

Project #2

Create a program to draw a 2D object in a graphics window and display a menu to manipulate it. The object can be a 2D circle or 2D rectangle or 2D wire frame rectangle or 2D blob (polygon) or ...

The menu should allows the user to:

Notes:

Project #3

Modify Project #2.

Add to the menu the capability change the color of the object.

(optional) If the object is a wire frame, make each line a different color.

Project #4

Draw a circle using points or line segments.

Project #5

Draw a 3D wire frame object. (see the wire frame examples).

Project #6

Add a menu to manipulate the object in Problem #5.

Project #7

Add scaling to Project #6.

Project #8

Create a button or buttons in the graphics windows that do something. For example:

Project #9

Draw blob (polygon) and rotate it in place.

Project #10

Draw a blob. Demonstrate the effect of multiple translation matrices and the order of operations.

Project #11

Create some small demo programs to demo Graphics.py "stuff".

Project #12

Create a simple 3D wire frame object. Assume it is solid and draw the normal vectors for each side of the object.

Note: The normal vectors should point away from the object.

Project #13

Create a simple 3D wire frame object. Assume the object is solid. Draw only those sides that are seen by a viewer at +Z infinity.

Note: The normal vectors should point away from the object.