PK_TOPOL_delete_redundant_2   

PK_ERROR_code_t                        PK_TOPOL_delete_redundant_2
(
--- received arguments ---
int                                    n_topols, --- number of topols
const PK_TOPOL_t                       topols[], --- array of topols
const PK_TOPOL_delete_redundant_2_o_t *options,  --- options structure

--- returned arguments ---
PK_TOPOL_track_r_t              *const tracking  --- tracking information
)


This function removes redundant topology or sub-topology from the given list
of topologies.


Redundant topologies are removed from the given array of topols, which may be
a single body, list of faces, list of edges or list of vertices.

A topology may be identified as redundant if it forms the boundary between two
topologies which have geometry on their interior that is either shared or
equivalent and smooth across that entire boundary topology.

A redundant topology can be an edge or a vertex.

A vertex will normally be redundant if it is attached to a split ring edge, or
if it is attached to only two edges, with the same curve geometry.

An edge will normally be redundant if it is a wire edge (including
parametric seam lines), or if the faces on either side have the same or
equivalent surface geometry.

For models with facet geometry, the criterion used to decide which pieces of
topology are redundant is determined by the 'facet_geom_continuity' and
'vertex_angle' fields in the function option structure.

Topologies will be combined if they share a redundant boundary. When merging
two faces with meshes attached, the two original meshes are destroyed, and a
new mesh is attached to the resulting face. In particular, mtopols which
reference either of the original meshes will not necessarily remain valid. The
situation is the same when merging edges with polylines attached; the original
geometry is destroyed, and a new composite polyline is attached to the
surviving edge.

Track records will be returned, with delete records for redundant topologies
that have been removed, and merge records for topologies that have been
combined as a result.

The behaviour of the function is controlled by option structure
PK_TOPOL_delete_redundant_2_o_t.