Covering (component COVR) is a modeling technique that fits a surface through one or more circuits of edges and builds the required topology for the resulting face or faces. A "circuit" of edges is a set of edges that are connected end-to-end and form a closed "loop". The term "circuit" is used to avoid confusion with the topological term "loop". The covering algorithm typically converts each circuit of edges into a loop on a face. Covering can be used to create sheet or open solid bodies from wire bodies, as well as add faces to existing sheet or solid bodies. The input edges can be specified using stand-alone edges (that is, edges with no upper topology), edges in sheet or solid bodies, or wire bodies.
Two distinct goals for covering are:
Cover a wire body that has no associated face or surface information.
The pair of figures below demonstrates the covering of a wire. The four wire edges shown in Figure. A Wire Body Consisting of Four Edges are covered with a surface and the necessary topology is constructed to create the sheet body shown in Figure. A Sheet Body Consisting of a Single Face.
Before Covering: A Wire Body Consisting of Four Edges
After Covering: A Sheet Body Consisting of a Single Face
Cover an opening in a sheet or solid body.
This is done by covering one or more circuits of free edges with a surface. When adjacent faces exist, it is not uncommon for the surface underlying one of them to be used to cover the opening. The pair of figures below illustrates how an existing surface can be utilized to cover an opening. The hole in the face shown in Figure. A Sheet Body Consisting of One Face with an L-shaped Hole is covered using the surface underlying the face. The resulting sheet body is shown in Figure. A Sheet Body Consisting of Two Faces Residing on the Same Surface.
Before Covering: A Sheet Body Consisting of One Face with an L-shaped Hole
After Covering: A Sheet Body Consisting of Two Faces Residing on the Same Surface
One variation of this is covering a circuit of edges in a solid body to create an internal face. The pair of figures below illustrates how an existing surface can be utilized to create an internal face.
Before Covering: A Closed Solid Body
After Covering: A Non-manifold Solid Body
Note: When covering a sheet body to create a solid, the sheet body should first be converted into a open solid body. This can be done with the function api_body_to_1d.
All of the covering API functions not restricted to generating planar surfaces use the same algorithm to generate a surface, if a surface is not specified. This surface generation algorithm makes multiple attempts to compute a surface. It attempts to generate the simplest analytic, B-spline, or procedural surface that will fit the boundary curves.
Tolerant Entity Creation
All of the covering API functions not restricted to generating planar surfaces have a signature that accepts a cover_options object as an argument. A covering_options object allows a maximum gap tolerance to be specified. If a maximum gap tolerance greater than SPAresabs is specified, the API function may produce tolerant edges and vertices. For more information refer to Creation of Tolerant Entities.
Advanced Covering Functionality
It is possible that standard covering will not generate a suitable surface to cover the boundary edges. If this occurs, Advanced Covering is recommended.
Tables correlating the Scheme Extensions for covering with their corresponding API functions are presented in Covering Scheme Extensions. A complete listing of all covering related Scheme extensions is also available.