This quarter, the labs will be demoed to the grader, not electronically submitted. I will make a sign-up sheet available for lab grading.
Some skeleton code will be provided which can be modified to do the labs. You will not be given sample labs; you are expected to design and implement your own lab.
You will have to demo your lab to the grader in order to have it evaluated.
Labs count for 30% of the final grade.
Contents:
k2
#-of-vertices=n #-of-faces=m
x1 y1 z1
x2 y2 z2
...
xn yn zn
#-of-vertices-in-first-face=k1 v11 v12 ... v1k1
#-of-vertices-in-second-face=k2 v21 v22 ... v2k2
....
#-of-vertices-in-mth-face=km vm1 vm2 ... vmkm
For example, a cube looks like:
8 6
-1 1 1
1 1 1
1 -1 1
-1 -1 1
-1 1 -1
1 1 -1
1 -1 -1
-1 -1 -1
4 3 2 1 0
4 4 5 6 7
4 5 4 0 1
4 6 5 1 2
4 7 6 2 3
4 4 7 3 0
Extra Credit:
These curves would then be used in your existing solids of revolution, extrusion and sweep operations.
Allow the user to generate a curve, go back and edit a point on the control wire, and then regenerate a new curve replacing the original curve.
Extra credit will be assigned for doing the more involved items or more of the simpler ones. (Extra credit percentage is the maximum given and usually requires supportive interface.)
You must generate .det objects as final output by polygonizing the surfaces using equally spaced u,v coordinates.
You will be graded on the design of the user interface and the generation power of your program.
To receive an A on the project, you will have to enhance the basic functionality in some interesting and/or significant manner. For example, choose two out of the following list:
You can choose to do something else that interests you as long as the complexity is comparable to the basic lab and you clear it with me first. Such as:
I would like examples of interesting objects that I can put up on the class web site.