TYPE: SOP
TITLE: Cookie SOP

The Cookie operation applies a cookie cutter between two polygonal objects which
may be open or closed. Cookie determines inside and outside by looking at the
polygons normals. The normals are assumed to point to the outside of the object.

The polygons need to be planar for this to produce accurate results.
If point or vertex attributes are present, they need to have at most
four sides to be able to interpolate those attributes. 

Parameters:
    Group A        - The polygons to form the A object.
    Group B        - The polygons to form the B object.
    3D Tolerance   - The distance to determine if polygons are
                     degenerate.                                       /tol3d
    Pre-Convex Geometry - Convexes the incoming geometry to ensure all
                     polygons are planar.  If point or vertex attributes 
                     are present, it also ensures maximum number of sides 
                     on a polygon is four.
		     
Boolean
    Overview	   - This does boolean style operations.
Type
    Overview	   - This contains the options to control the type of boolean.
    Operation      - 
	Union      - Remove the interior of the two.
	Intersect  - Remove the exterior of the two.
	A minus B  - Cut B out of A.
	B minus A  - Cut A out of B.
	User       - Use the toggles to determine what is
		     kept.
    Keep Inside A  - Keep all of the A object inside of the B object.
    Keep Inside B  - Keep all of the B object inside of the A object.
    Keep Outside A - Keep all of the A object outside of the B object.
    Keep Outside B - Keep all of the B object outside of the A object.
    Check Full Enclosure - Cookie usually determines whether a polygon
                           is inside or outside the other object's geometry 
                           by looking how that polygon, or it's neighbours, 
                           intersected with the geometry.  However, if a 
                           polygon is not connected to any other polygon, an
                           explicit ray cast needs to be made to determine 
                           the side.  This flag enables that ray cast.
			   
Groups
    Overview	   - This controls the creation of primitive groups.
    Create Groups  - If checked, groups will be created for the pieces
                     created by the Cookie operation.
    Inside/Outside A/B - This is the name of the group to assign to
                     the piece of geometry created by Cookie.  If it is 
                     blank, no group will be created.  If two entries have 
                     the same name, the resulting group is the union of 
                     them.  If the group already exists, the cookie will add 
                     its pieces to the group.
    
Crease
    Overview	   - This generates the polygonal crease between the two
		     pieces of geometry.
    Keep Source    - Determines if the original geometry should be
                     included in the output.
    Autojoin Creases - Tries to connect the crease segments into long
                     continuous polygons.

Jitter Options
    Do Jitter      - If checked, the second input is "jittered" by a
                     small amount before intersection, and unjittered
                     afterwards.  Turn this on if you have coincident
                     faces which prevent you from cutting properly.
    Jitter Seed    - This is the random number seed for the jitter
                     amount.                                            /seed
    Jitter Amount  - This is the scale of the jitter variable.  /jitteramount
    
See also: Clip, Surfsect
