TYPE: SOP
TITLE: Copy SOP

Copy lets you make copies of the geometry of other operations and apply 
transformations to the copies.  It also allows you to copy geometry in the 
Copy Data operation to points in a Template operation.


Parameters:
    Source Group         - A subset of input primitives to copy from.
    Template Group       - A subset of Template primitives to copy onto.
    Number of copies     - The number of copies of the original geometry.   /ncy
    Rotate to Normal     - Rotates/translates copies to face Template normals.
    Transform Cumulative - Each copy is transformed relative to the previous.
    Transform Order      - Order transformations occur.
    Rotate Order         - Order rotations occur.
    Translate            - Translation along xyz axes.              /tx /ty /tz
    Rotation             - Rotation about xyz axes.                 /rx /ry /rz
    Scale                - Non-uniform scaling along xyz axes.      /sx /sy /sz
    Pivot                - The local pivot point of the copy.       /px /py /pz
    Uniform Scale        - Uniform scaling.                         /scale
    Preserve Normal Length - Normals to maintain length after transformations.
    Create Output Groups - Creates a primitive group and places all copies in it
    Copy Groups          - The name of the group to create.
    Stamp Inputs         - Stamp proceeding variables for each input copied.
    Param 1-10           - Token and value of each stamp variable. Changes
                           values of parameters which include param function.

    Attribute Fields     - The attribute folder specifies how template point 
			   attributes affect the copies. For example,
			   specifying "*" in "To Prim" will set all
			   primitive attributes in the copy to the
			   template point values. Another example is
			   one where you want to multiply primitive
			   colors by the attribute color of the
			   template and add the texture coordinates of
			   the template to those of the source. To
			   this end, set the "Mult To Prim" field to
			   "Cd" and the "Add To Point" field to "uv".
			   /doattr, /setpt, /setprim, /setvtx, /mulpt, /mulprim,
			   /mulvtx, /addpt, /addprim, /addvtx, /subpt,
			   /subprim, /subvtx

Local Variables:
    CY   - The copy number.
    NCY  - The number of copies.
    PT   - The point number of the Template.  If there is a template
	    group, this will be the index into the group, NOT the actual
	    point number.
    NPT  - The number of points in the Template geometry.
    TPT  - This is the actual point number of the currently processed
	    template point, independent of any template groups.
    Variables for point attributes on the template: - ~s
    AGE  - The seconds a particle in the template has been alive
    LIFE - The ratio of the age of a particle to its expected life
           This number is between 0 (when born) and 1 (when about to die)
    ID   - The ID of the particle in the input

    Variables for the input geometry/template geometry (if there is a template input): - ~s
    CEX, CEY, CEZ        - The centroid of the geometry
    XMIN, XMAX           - The X extents of the bounding box of the geometry
    YMIN, YMAX           - The Y extents of the bounding box of the geometry
    ZMIN, ZMAX           - The Z extents of the bounding box of the geometry
    SIZEX, SIZEY, SIZEZ  - The size of the bounding box
    BBX, BBY, BBZ        - The point's relative position in the bounding box

See also: Duplicate
