struct PK_BODY_knit_pattern_s { int n_edges; PK_EDGE_t *edges; PK_EDGE_t *matches; int n_reversals; PK_BODY_t *reversals; }; typedef struct PK_BODY_knit_pattern_s PK_BODY_knit_pattern_t; A structure describing matches between coincident edges on a given set of bodies. The structure also specifies which owning bodies need to be reversed in order to correctly knit the bodies together. PK_BODY_knit_pattern_t lists pairs of edges that are tolerantly or accurately coincident and which may be simply joined together by topological operations to assemble a larger composite body. The structure is normally expected to be completed by a call to PK_BODY_find_knit_pattern, though an application can construct one itself. The structure can be passed to PK_BODY_knit_bodies to specify how a collection of sheet bodies can be assembled into a larger composite body. edges: An ordered list of edges that can be matched wholly will other edges coincident with them. matches: An ordered list of edges. Each entry is wholly coincident with the corresponding entry in edges. reversals: A list of bodies owning edges in either of the edges or matches lists that must be reversed in order that an attempt to assemble a composite body by topologically fusing the paired edges may succeed.