 |
PK_TOPOL_fctab_error_facet_t |
|
struct PK_TOPOL_fctab_error_facet_s
{
int *facet;
int length;
};
typedef struct PK_TOPOL_fctab_error_facet_s
PK_TOPOL_fctab_error_facet_t;
Used in:
PK_TOPOL_facet_r_t
This is a support structure for PK_TOPOL_facet_r_t. It is a lookup table of
pairs of alternating integers which indicate whether any faults were detected
during facetting. If the table is returned empty, this denotes that no faults
were found.
The first entry is an integer token of type PK_facet_fault_t.
The second is its associated facet index or a PK entity value.
first integer value in pair second integer value in pair
--------------------------- ----------------------------
PK_facet_fault_body_c The specified PK_BODY_t entity could not be
facetted using the specified mesh controls due
to an invalidity in the body (for example, if
the body is not entirely contained within the
Parasolid size box). It implies that no facet
mesh has been generated for this body.
PK_facet_fault_face_c The specified PK_FACE_t entity could not be
facetted using the specified mesh controls (for
example, if faces on the part being facetted
are invalid). It implies that part of the
generated facet mesh is missing.
Where possible the application should inform
the user that an error has occurred rather than
simply ignoring missing faces.
PK_facet_fault_facet_c The specified facet (whose index is given) is
disconnected from some neighbouring facets due
to fin-fin matching failing on the face. The
topology of the generated facet mesh is valid
but may contain superfluous 'slit edges' around
the specified facet.
This warning is only relevant in cases where an
application walks the returned facet mesh.
PK_facet_fault_vertex_point_c The coordinate of the specified vertex (whose
index is given) did not match any vertex_point
coordinates on adjacent faces. For example, this
can happen if topology matching has failed.
The facet mesh may contain small gaps close to
this point.
PK_facet_fault_vertex_normal_c The facet function was unable to calculate an
accurate face normal value at the position
of the facet vertex (whose index is given).
The vector referenced by this vertex's
'vertex_normal' table should not be used.
PK_facet_fault_vertex_param_c The facet function was unable to calculate
accurate parameter values at the position
of the facet vertex (whose index is given).
The uv, dp and/or the d2p parameter values
referenced by this vertex's 'vertex_param' table
should not be used.
PK_facet_fault_thin_face_c No facets were output for the specified
PK_FACE_t entity because the face is very thin.
Although a facet may not be output for a given
face, this is not an indication that facetting
has failed.
PK_facet_fault_mangled_facet_c The specified facet (whose index is given) does
not satisfy the facetting tolerances, or is
self-intersecting, or is severely creased.
PK_facet_fault_missing_face_c The specified PK_FACE_t entity is required
in order to define a facetted perimeter for
incremental facetting
PK_facet_fault_refinement_c The specified PK_FACE_t entity cannot be
incrementally facetted and satisfy the facetting
controls - geometry matching may be lost
PK_facet_fault_incr_facet_c The specified PK_FACE_t entity has failed to
facet due to an unspecified error during
incremental facetting