PK_ERROR_code_t PK_EDGE_find_g1_edges
(
--- received arguments ---
PK_EDGE_t edge, --- starting edge
double tolerance, --- angular tolerance on tangency
PK_LOGICAL_t convexity, --- convexity checking switch
--- returned arguments ---
int *const n_edges, --- number of edges (>= 1)
PK_EDGE_t **const edges --- received edge and tangent edges
)
This function returns the set of tangent edges for a given edge.
Specific Errors:
PK_ERROR_bad_edge received edge unsuitable for function.
PK_ERROR_bad_angle received angular tolerance out of range.
The function receives an edge, an angular tolerance, and
a logical switch and returns an unordered array containing
the received edge and connected tangent edges lying within
the given angular tolerance.
If the convexity logical is set to true, then the function
only considers tangent edges with the same convexity as
the received edge.
If the convexity checking is switched on then the body must be
of type solid or sheet otherwise the function returns PK_ERROR_bad_edge.
If convexity checking is switched off then the function accepts all
body types.
The function returns PK_ERROR_bad_edge if convexity checking
is switched on and the first edge has variable convexity.
If, while searching along a chain of edges, the function
encounters a vertex with more than one possible tangent edge,
then no attempt is made to propagate the search beyond the
vertex.