 |
PK_BCURVE_remove_knots |
|
PK_ERROR_code_t PK_BCURVE_remove_knots
(
--- received arguments ---
PK_BCURVE_t bcurve, --- b-curve
const PK_BCURVE_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 'bcurve' by removing knots.
Specific Errors:
PK_ERROR_is_attached 'bcurve' is attached to topology (MILD)
PK_ERROR_illegal_owner 'bcurve' 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-curve by removing knots, if possible.
A b-curve 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-curves.