TYPE: SOP State
TITLE: PolyKnit Operation

The PolyKnit operation stitches together two disjoint sets of polygons.

PolyKnit can be used to manually knit joining polygons between existing
polygons.  Polygons are created by specifying a list of input points from which
to "knit" the new polygons.  Both triangles and quadrilaterals can be created.  

Click on at least three geometry points to define a knitting path, then
right-click to complete.  To modify the path after it has been completed,
shift-left-click anywhere to continue building the path.  Shift-left-click close
to an end-point along the path to continue building from that end-point.

With only four points specified, PolyKnit can find two paths of unshared
connected edges and use their points to knit polygons.  Each of the paths is
called a "meta" edge.  The polygons that are created along these paths can
either be triangles or quadrilaterals.  The paths are computed to minimize the
number of edges that are produced (and thus minimizing the number of polygons
that are produced).  The "meta" edges are drawn in a thicker line to give visual
feedback that the resulting knit will produce multiple polygons for this edge.
Middle-clicking on the next point will disable "meta" edge detection for that
edge and will force PolyKnit to use only the edge that was specified.

It is important to note that points are specified in a strip-like fashion.  The
points should be specified in an order such that they zig-zag along the geometry
to knit.  The first two points, for example, should each belong to the opposite
geometries that are to be knitted together.

If the points are being specified interactively, the operation will try to
automatically determine whether the polygons created should be triangles or
quads.  For example, to start knitting first click on a vertex, then click on a
vertex of the opposite set.  Now, if the third point clicked belongs to the
first set, we build triangles, otherwise we build quads.  This process is
carried out throughout the knit, allowing you to intermix the creation of quads
and triangles.  Ctrl-left-clicking anywhere will swap the last knit between
triangles and quad.  For example, if the last two knits were triangles,
Ctrl-left-click will turn them into a quad; or if the last knit was a quad,
Cltr-left-click will turn it into two triangles.

See also: PolyCap, PolyLoft, PolyStitch
