PK_TOPOL_delete_redundant   


PK_ERROR_code_t PK_TOPOL_delete_redundant
(
--- received arguments ---
PK_TOPOL_t      topol     --- Topology to delete
)


This function removes redundant topology from the given topol.


Redundant ('mergeable') edges and vertices are removed from the given
entity, which may be a body, face, edge or vertex.

A vertex will normally be mergeable if it is attached to only one edge, or
if it is attached to only two edges, with the same curve geometry.

An edge will normally be mergeable if it is a wire edge, or if the faces
on either side have the same surface geometry.

The allowed entity classes are treated as follows:

Vertex:
  The vertex will be removed if it is mergeable.

Edge:
  If the edge is mergeable, it will be removed. If its vertices are then
  mergeable, they will be removed.

Face:
  Any mergeable wire edges in the face will be removed. Then any mergeable
  vertices in or on the boundary of the face will be removed.

Body:
  Mergeable edges and vertices are removed from the body until none remain.

  If the body contains B-curves or B-surfaces then connected sets of edges
  on each B-curve and connected sets of faces on each B-surface
  will be merged into a single edge or face provided that the B-geometry
  is capable of passing the composite geometry checks.
  However if any of the B-curves or B-surfaces are not capable
  of passing the composite geometry checks then these curves and surfaces
  will be split to produce smaller curves and surfaces that do pass the
  checks. These will then be merged as above.