P8 Project

Due April 4 before class, Teams of 1 and 2
Create a joint web page and put a link to it from the PPPs of each team member. Include in the project:

Start with your P3 assignment with a CSG editor
You will not need it tree editing (but it is nice if you have it)
You need to be able to render a CSG defined region and to circulate which one is the current primitive and to move the primitive
Implement a recursive procedure that compute the path to each primitive and stores it with the primitive (you can represent the path as a string of characters or bits).

Let A be the current primitive, Z its active zone, and S0 the region defined by the expression S whith A replaced by the empty set
Render the background in white, S0 in blue, AZ in red, Z–A in green. Remember that S0 and AZ are disjoint and that their union is S.
Hardwire your code with an interesting CSG tree and select the default current primitive so that it has at at least 3 branching nodes, two of which being Boolean expression with two or more primtives, with at least one i-node and one u-node.

In the project web page, print the CSG expression, say which primtive is the defailt active primitive, provide the CSG expressions for its I-zone, U-zone, active zone, and S0. Include an image showing the corresponding regions and explain the color coding.