PK_EDGE_find_extreme   


PK_ERROR_code_t    PK_EDGE_find_extreme
(
--- received arguments ---
PK_EDGE_t          edge,        --- edge on which extreme sought
PK_VECTOR_t        direction_1, --- first direction
PK_VECTOR_t        direction_2, --- second direction
PK_VECTOR_t        direction_3, --- third direction

--- returned arguments ---
PK_VECTOR_t *const extreme,     --- position of extreme point
PK_TOPOL_t  *const topol        --- topology on which extreme point lies
)


This function finds the extreme point on the given edge in direction_1.
If this extreme is not a single point, then direction_2 and direction_3
are used successively to reduce the number of extreme points to one.


Specific Errors:
    PK_ERROR_coplanar               directions are coplanar
    PK_ERROR_missing_geom           insufficient geometry
    PK_ERROR_cant_find_extreme      failed to find extreme point


topol returns the topological entity of the lowest dimensionality on which
the extreme lies (in order of precedence: vertex, edge).

The edge must not have missing geometry.
The three directions must not be coplanar.