PK_SURF_make_cus_isocline   

PK_ERROR_code_t       PK_SURF_make_cus_isocline
(
--- received arguments ---
PK_SURF_t             surf,            --- surf to search for isoclines
PK_UVBOX_t            uvbox,           --- surf parameter box
PK_VECTOR1_t          direction,       --- isocline direction
double                angle,           --- isocline angle
double                tolerance,       --- accuracy for representing curves
const PK_SURF_make_cus_isocline_o_t *options,
                                       --- options structure

--- returned arguments ---
int            *const n_curves,        --- number of isocline curves (>= 0)
PK_CURVE_t    **const curves,          --- isocline curves
PK_INTERVAL_t **const bounds           --- bounds of curves
)


This function creates isocline curves on the given surface.


The isocline is specified by a 'direction' and an 'angle'.

The function may, at times, have to use approximate geometry.  For such cases,
'tolerance' specifies an upper bound on the distance by which a point on the
actual geometry may deviate from its ideal position.
While the function will usually satisfy this constraint, it is not guaranteed.

The extent of the returned 'curves' will be sufficient, at least, to include
all that part of any isocline curve which enters the 'uvbox'.  As a corollary,
any or all of the extent of a returned curve may lie outside the uvbox.

The number of isocline curves created is returned as 'n_curves', and the
curves themselves as 'curves'. The bounds, in parameter space, are returned
for each curve in the returned 'curves' array.

If the given 'surf' belongs to a part, then the created curves will become
construction curves of that part, otherwise they will become orphan curves
in the current partition.