Knot Vector Generator¶
The knotvector
module provides utility functions related to knot vector generation and validation.
Function Reference¶
-
geomdl.knotvector.
generate
(degree, num_ctrlpts, **kwargs)¶ Generates an equally spaced knot vector.
It uses the following equality to generate knot vector:
where;
- , degree
- , number of control points
- , number of knots
Keyword Arguments:
clamped
: Flag to choose from clamped or unclamped knot vector options. Default: True
Parameters: - degree (int) – degree
- num_ctrlpts (int) – number of control points
Returns: knot vector
Return type: list
-
geomdl.knotvector.
normalize
(knot_vector, decimals=18)¶ Normalizes the input knot vector to [0, 1] domain.
Parameters: - knot_vector (list, tuple) – knot vector to be normalized
- decimals (int) – rounding number
Returns: normalized knot vector
Return type: list
-
geomdl.knotvector.
check
(degree, knot_vector, num_ctrlpts)¶ Checks the validity of the input knot vector.
Please refer to The NURBS Book (2nd Edition), p.50 for details.
Parameters: - degree (int) – degree of the curve or the surface
- knot_vector (list, tuple) – knot vector to be checked
- num_ctrlpts (int) – number of control points
Returns: True if the knot vector is valid, False otherwise
Return type: bool