Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit


CS-3388 Computer Graphics Winter 2022 Assignment 2

Assignment 2

 

The purpose of this assignment is to complete a 3D graphics program capable of displaying parametric objects as wire-mesh. For this purpose, you need to program the following:

•    the helper methods in class cameraMatrix as exactly specified in the class notes on the camera matrix. These helper methods are:

o    __setMv

o    __setMp

o    __setS1

o    __setT1

o    __setS2

o    __setT2

 

•    classes for additional parametric objects, inspiring yourself from the provided  classes parametricSphere and parametricTorus (name the classes as specified below):

o    parametricPlane

o    parametricCircle

o    parametricCone

o    parametricCylinder

 

Here are some general considerations concerning this assignment:

•    The Python code needed for this assignment can be found in OWL under     Resources, Python Programs, Assignment 2. Do not include your code from assignment 1. Use the code that is provided instead.

•    You must not change provided file names and class names. In addition, exactly follow the instructions as to the naming of the files and classes you will have to  program for this assignment.

•    The test program for this assignment is testAssignment2.py and is found with the rest of the provided code.

•    The output of the test program should correspond exactly to the image                  assignment2Image.png.This image is found with the rest of the provided code

•    Use OWL to submit the following files.

Each file must contain the class that corresponds to the file name. These files are:

•    cameraMatrix.py

•    parametricPlane.py

•    parametricCircle.py

•    parametricCone.py

•    parametricCylinder.py

 

Marking Scheme and Submission

•    Working program (50%): A working program which satisfies all of the requirements automatically   receives   50%   of   the   total   assignment   mark.   Each   element   of noncompliance will be penalized with respect to its severity

•    Program Structure (25%): A program which follows the structured programming rules (procedural, modular, uses parameters) to perfection automatically receives 25% of the total assignment  mark.  Marks are deducted  depending on severity  and  number of occurrences of non-compliant elements

•    Program Documentation (15%): Documentation should be complete. That is to say, every non trivial part of the code should have a clear comment that explains it. In addition, every  method  or function,  including  the  main  program  should  have  an  explicative comment header. This header includes: module name, author, date of creation and purpose. A description of parameters and their classification as either input or output parameters. Marks are deducted according to the absence of these elements

•    Program Style (10%): Style refers to Occam's razor principle. Code that is needlessly tricky, obscure, or difficult to read will be marked accordingly. Program text indentation is also an element of style and must be present. Significant constant, variable and structure names must be used. Marks are deducted on the basis of the frequency of these errors

•    Submission: Through OWL exclusively. Only attachments are allowed