 |
PK_BSURF_remove_knots |
|
PK_ERROR_code_t PK_BSURF_remove_knots
(
--- received arguments ---
PK_BSURF_t bsurf, --- b-surface
PK_PARAM_direction_t u_or_v, --- which knot direction
--- to remove
const PK_BSURF_remove_knots_o_t *options, --- options
--- returned arguments ---
int *const n_knots_removed, --- number of knots removed
double **const knots_removed, --- the knots removed
int **const multiplicities --- the number of times
--- each knot was removed
)
This function modifies the given 'bsurf' by removing knots in the parameter
direction given by 'u_or_v'.
Specific Errors:
PK_ERROR_is_attached 'bsurf' is attached to topology (MILD)
PK_ERROR_illegal_owner 'bsurf' is owned by other geometry (MILD)
PK_ERROR_bad_index an entry in 'knot_indices' is out of range
(MILD)
PK_ERROR_bad_value an entry in 'remove_multiplicities' is too high
(MILD)
PK_ERROR_bad_tolerance 'tolerance' is invalid (MILD)
This function modifies a b-surface by removing knots, if possible.
A b-surface cannot be modified if it is attached to topology or if it is owned
by other geometry.
The number of distinct knots removed, if any, is returned in
'n_knots_removed'. The values of any knots that were removed will be returned
in 'knots_removed' and the number of times each of these knots was removed,
i.e. the decrease in its multiplicity, will be returned in 'multiplicities'.
See here for more information about modifying B-surfaces.